* [bug#54829] [PATCH 1/2] gnu: emacs: Update to 28.1.
2022-04-09 10:29 [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation Liliana Marie Prikler
@ 2022-04-09 8:15 ` Liliana Marie Prikler
2022-04-10 10:21 ` Maxime Devos
2022-04-10 10:23 ` Maxime Devos
2022-04-09 10:28 ` [bug#54829] [PATCH 2/2] gnu: emacs: Add support for socket activation Liliana Marie Prikler
` (7 subsequent siblings)
8 siblings, 2 replies; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-09 8:15 UTC (permalink / raw)
To: 54829
* gnu/packages/emacs.scm (emacs): Update to 28.1
[origin]<patches>: Drop ‘emacs-ignore-empty-xim-styles.patch’.
[arguments]: Convert to list of G-Expressions.
Use search-input-file instead of input labels.
Inline reference to auxiliary files.
[inputs, native-inputs]: Drop labels.
* gnu/packages/patches/emacs-exec-path.patch: Update accordingly.
* gnu/packages/patches/emacs-ignore-empty-xim-styles.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it from here.
---
gnu/local.mk | 1 -
gnu/packages/emacs.scm | 330 +++++++++---------
gnu/packages/patches/emacs-exec-path.patch | 12 +-
.../emacs-ignore-empty-xim-styles.patch | 24 --
4 files changed, 169 insertions(+), 198 deletions(-)
delete mode 100644 gnu/packages/patches/emacs-ignore-empty-xim-styles.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index a44815bdbb..9d6d81b3e0 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1028,7 +1028,6 @@ dist_patch_DATA = \
%D%/packages/patches/elogind-revert-polkit-detection.patch \
%D%/packages/patches/emacs-exec-path.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
- %D%/packages/patches/emacs-ignore-empty-xim-styles.patch \
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-hyperbole-toggle-messaging.patch \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index bfb3f9790e..894b9cd7de 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -41,6 +41,7 @@
(define-module (gnu packages emacs)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
+ #:use-module (guix gexp)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
@@ -79,17 +80,16 @@ (define-module (gnu packages emacs)
(define-public emacs
(package
(name "emacs")
- (version "27.2")
+ (version "28.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/emacs/emacs-"
version ".tar.xz"))
(sha256
(base32
- "1ff182gjw9wqsbx1kj5gl2r5pbqhp4ar54g04j33fgz6g17cr9xl"))
+ "1qbmmmhnjhn4lvzsnyk7l5ganbi6wzbm38jc1a7hhyh3k78b7c98"))
(patches (search-patches "emacs-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
- "emacs-ignore-empty-xim-styles.patch"
"emacs-source-date-epoch.patch"))
(modules '((guix build utils)))
(snippet
@@ -124,179 +124,175 @@ (define-public emacs
#t))))
(build-system glib-or-gtk-build-system)
(arguments
- `(#:tests? #f ; no check target
- #:configure-flags (list "--with-modules"
- "--with-cairo"
- "--disable-build-details")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-program-file-names
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* '("src/callproc.c"
- "lisp/term.el"
- "lisp/htmlfontify.el"
- "lisp/textmodes/artist.el"
- "lisp/progmodes/sh-script.el")
- (("\"/bin/sh\"")
- (format #f "~s" (which "sh"))))
- (substitute* "lisp/doc-view.el"
- (("\"(gs|dvipdf|ps2pdf)\"" all what)
- (let ((ghostscript (assoc-ref inputs "ghostscript")))
- (if ghostscript
- (string-append "\"" ghostscript "/bin/" what "\"")
- all)))
- (("\"(pdftotext)\"" all what)
- (let ((poppler (assoc-ref inputs "poppler")))
- (if poppler
- (string-append "\"" poppler "/bin/" what "\"")
- all))))
- ;; match ".gvfs-fuse-daemon-real" and ".gvfsd-fuse-real"
- ;; respectively when looking for GVFS processes.
- (substitute* "lisp/net/tramp-gvfs.el"
- (("\\(tramp-compat-process-running-p \"(.*)\"\\)" all process)
- (format #f "(or ~a (tramp-compat-process-running-p ~s))"
- all (string-append "." process "-real"))))
- #t))
- (add-before 'configure 'fix-/bin/pwd
- (lambda _
- ;; Use `pwd', not `/bin/pwd'.
- (substitute* (find-files "." "^Makefile\\.in$")
- (("/bin/pwd")
- "pwd"))
- #t))
- (add-after 'install 'install-site-start
- ;; Use 'guix-emacs' in "site-start.el", which is used autoload the
- ;; Elisp packages found in EMACSLOADPATH.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lisp-dir (string-append out "/share/emacs/site-lisp"))
- (emacs (string-append out "/bin/emacs")))
+ (list
+ #:tests? #f ; no check target
+ #:configure-flags #~(list "--with-modules"
+ "--with-cairo"
+ "--disable-build-details")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-program-file-names
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("src/callproc.c"
+ "lisp/term.el"
+ "lisp/htmlfontify.el"
+ "lisp/textmodes/artist.el"
+ "lisp/progmodes/sh-script.el")
+ (("\"/bin/sh\"")
+ (format #f "~s" (which "sh"))))
+ (substitute* "lisp/doc-view.el"
+ (("\"(gs|dvipdf|ps2pdf|pdftotext)\"" all what)
+ (let ((replacement (search-input-file
+ inputs
+ (string-append "/bin/" what))))
+ (if replacement
+ (string-append "\"" replacement "\"")
+ all))))
+ ;; match ".gvfs-fuse-daemon-real" and ".gvfsd-fuse-real"
+ ;; respectively when looking for GVFS processes.
+ (substitute* "lisp/net/tramp-gvfs.el"
+ (("\\(tramp-compat-process-running-p \"(.*)\"\\)" all process)
+ (format #f "(or ~a (tramp-compat-process-running-p ~s))"
+ all (string-append "." process "-real"))))))
+ (add-before 'configure 'fix-/bin/pwd
+ (lambda _
+ ;; Use `pwd', not `/bin/pwd'.
+ (substitute* (find-files "." "^Makefile\\.in$")
+ (("/bin/pwd")
+ "pwd"))))
+ (add-after 'install 'install-site-start
+ ;; Use 'guix-emacs' in "site-start.el", which is used autoload the
+ ;; Elisp packages found in EMACSLOADPATH.
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (lisp-dir (string-append out "/share/emacs/site-lisp"))
+ (emacs (string-append out "/bin/emacs")))
- ;; This is duplicated from emacs-utils to prevent coupling.
- (define* (emacs-byte-compile-directory dir)
- (let ((expr `(progn
- (setq byte-compile-debug t)
- (byte-recompile-directory
- (file-name-as-directory ,dir) 0 1))))
- (invoke emacs "--quick" "--batch"
- (format #f "--eval=~s" expr))))
+ ;; This is duplicated from emacs-utils to prevent coupling.
+ (define* (emacs-byte-compile-directory dir)
+ (let ((expr `(progn
+ (setq byte-compile-debug t)
+ (byte-recompile-directory
+ (file-name-as-directory ,dir) 0 1))))
+ (invoke emacs "--quick" "--batch"
+ (format #f "--eval=~s" expr))))
- (copy-file (assoc-ref inputs "guix-emacs.el")
- (string-append lisp-dir "/guix-emacs.el"))
- (with-output-to-file (string-append lisp-dir "/site-start.el")
- (lambda ()
- (display
- (string-append
- "(when (require 'guix-emacs nil t)\n"
- " (guix-emacs-autoload-packages)\n"
- " (advice-add 'package-load-all-descriptors"
- " :after #'guix-emacs-load-package-descriptors))"))))
- ;; Remove the extraneous subdirs.el file, as it causes Emacs to
- ;; add recursively all the the sub-directories of a profile's
- ;; share/emacs/site-lisp union when added to EMACSLOADPATH,
- ;; which leads to conflicts.
- (delete-file (string-append lisp-dir "/subdirs.el"))
- ;; Byte compile the site-start files.
- (emacs-byte-compile-directory lisp-dir))
- #t))
- (add-after 'glib-or-gtk-wrap 'restore-emacs-pdmp
- ;; restore the dump file that Emacs installs somewhere in
- ;; libexec/ to its original state
- (lambda* (#:key outputs target #:allow-other-keys)
- (let* ((libexec (string-append (assoc-ref outputs "out")
- "/libexec"))
- ;; each of these ought to only match a single file,
- ;; but even if not (find-files) sorts by string<,
- ;; so the Nth element in one maps to the Nth element of
- ;; the other
- (pdmp (find-files libexec "\\.pdmp$"))
- (pdmp-real (find-files libexec "\\.pdmp-real$")))
- (for-each rename-file pdmp-real pdmp))))
- (add-after 'glib-or-gtk-wrap 'strip-double-wrap
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Directly copy emacs-X.Y to emacs, so that it is not wrapped
- ;; twice. This also fixes a minor issue, where WMs would not be
- ;; able to track emacs back to emacs.desktop.
- (with-directory-excursion (assoc-ref outputs "out")
- (copy-file
- (car (find-files "bin" "^emacs-([0-9]+\\.)+[0-9]+$"))
- "bin/emacs")
- #t)))
- (add-after 'strip-double-wrap 'wrap-emacs-paths
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lisp-dirs (find-files (string-append out "/share/emacs")
- "^lisp$"
- #:directories? #t)))
- (for-each
- (lambda (prog)
- (wrap-program prog
- ;; emacs-next and variants rely on uname being in PATH for
- ;; Tramp. Tramp paths can't be hardcoded, because they
- ;; need to be portable.
- `("PATH" suffix
- ,(map (lambda (in) (string-append in "/bin"))
- (list (assoc-ref inputs "gzip")
- (assoc-ref inputs "coreutils"))))
- `("EMACSLOADPATH" suffix ,lisp-dirs)))
- (find-files (string-append out "/bin")
- ;; Matches versioned and unversioned emacs binaries.
- ;; We don't patch emacsclient, because it takes its
- ;; environment variables from emacs.
- ;; Likewise, we don't need to patch helper binaries
- ;; like etags, ctags or ebrowse.
- "^emacs(-[0-9]+(\\.[0-9]+)*)?$"))))))))
+ (copy-file #$(local-file
+ (search-auxiliary-file "emacs/guix-emacs.el"))
+ (string-append lisp-dir "/guix-emacs.el"))
+ (with-output-to-file (string-append lisp-dir "/site-start.el")
+ (lambda ()
+ (display
+ (string-append
+ "(when (require 'guix-emacs nil t)\n"
+ " (guix-emacs-autoload-packages)\n"
+ " (advice-add 'package-load-all-descriptors"
+ " :after #'guix-emacs-load-package-descriptors))"))))
+ ;; Remove the extraneous subdirs.el file, as it causes Emacs to
+ ;; add recursively all the the sub-directories of a profile's
+ ;; share/emacs/site-lisp union when added to EMACSLOADPATH,
+ ;; which leads to conflicts.
+ (delete-file (string-append lisp-dir "/subdirs.el"))
+ ;; Byte compile the site-start files.
+ (emacs-byte-compile-directory lisp-dir))
+ #t))
+ (add-after 'glib-or-gtk-wrap 'restore-emacs-pdmp
+ ;; restore the dump file that Emacs installs somewhere in
+ ;; libexec/ to its original state
+ (lambda* (#:key outputs target #:allow-other-keys)
+ (let* ((libexec (string-append (assoc-ref outputs "out")
+ "/libexec"))
+ ;; each of these ought to only match a single file,
+ ;; but even if not (find-files) sorts by string<,
+ ;; so the Nth element in one maps to the Nth element of
+ ;; the other
+ (pdmp (find-files libexec "\\.pdmp$"))
+ (pdmp-real (find-files libexec "\\.pdmp-real$")))
+ (for-each rename-file pdmp-real pdmp))))
+ (add-after 'glib-or-gtk-wrap 'strip-double-wrap
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; Directly copy emacs-X.Y to emacs, so that it is not wrapped
+ ;; twice. This also fixes a minor issue, where WMs would not be
+ ;; able to track emacs back to emacs.desktop.
+ (with-directory-excursion (assoc-ref outputs "out")
+ (copy-file
+ (car (find-files "bin" "^emacs-([0-9]+\\.)+[0-9]+$"))
+ "bin/emacs")
+ #t)))
+ (add-after 'strip-double-wrap 'wrap-emacs-paths
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (lisp-dirs (find-files (string-append out "/share/emacs")
+ "^lisp$"
+ #:directories? #t)))
+ (for-each
+ (lambda (prog)
+ (wrap-program prog
+ ;; emacs-next and variants rely on uname being in PATH for
+ ;; Tramp. Tramp paths can't be hardcoded, because they
+ ;; need to be portable.
+ `("PATH" suffix
+ ,(map dirname
+ (list (search-input-file inputs "/bin/gzip")
+ ;; for coreutils
+ (search-input-file inputs "/bin/yes"))))
+ `("EMACSLOADPATH" suffix ,lisp-dirs)))
+ (find-files (string-append out "/bin")
+ ;; Matches versioned and unversioned emacs binaries.
+ ;; We don't patch emacsclient, because it takes its
+ ;; environment variables from emacs.
+ ;; Likewise, we don't need to patch helper binaries
+ ;; like etags, ctags or ebrowse.
+ "^emacs(-[0-9]+(\\.[0-9]+)*)?$"))))))))
(inputs
- `(("gnutls" ,gnutls)
- ("ncurses" ,ncurses)
+ (list gnutls
+ ncurses
- ;; Required for "core" functionality, such as dired and compression.
- ("coreutils" ,coreutils)
- ("gzip" ,gzip)
+ ;; Required for "core" functionality, such as dired and compression.
+ coreutils
+ gzip
- ;; Avoid Emacs's limited movemail substitute that retrieves POP3 email
- ;; only via insecure channels. This is not needed for (modern) IMAP.
- ("mailutils" ,mailutils)
+ ;; Avoid Emacs's limited movemail substitute that retrieves POP3
+ ;; email only via insecure channels.
+ ;; This is not needed for (modern) IMAP.
+ mailutils
- ;; TODO: Add the optional dependencies.
- ("gpm" ,gpm)
- ("libx11" ,libx11)
- ("gtk+" ,gtk+)
- ("cairo" ,cairo)
- ("pango" ,pango)
- ("harfbuzz" ,harfbuzz)
- ("libxft" ,libxft)
- ("libtiff" ,libtiff)
- ("giflib" ,giflib)
- ("libjpeg" ,libjpeg-turbo)
- ("acl" ,acl)
- ("jansson" ,jansson)
- ("gmp" ,gmp)
- ("ghostscript" ,ghostscript)
- ("poppler" ,poppler)
+ ;; TODO: Add the optional dependencies.
+ gpm
+ libx11
+ gtk+
+ cairo
+ pango
+ harfbuzz
+ libxft
+ libtiff
+ giflib
+ libjpeg-turbo
+ acl
+ jansson
+ gmp
+ ghostscript
+ poppler
- ;; When looking for libpng `configure' links with `-lpng -lz', so we
- ;; must also provide zlib as an input.
- ("libpng" ,libpng)
- ("zlib" ,zlib)
- ("librsvg" ,@(if (target-x86-64?)
- (list librsvg-bootstrap)
- (list librsvg-2.40)))
- ("libxpm" ,libxpm)
- ("libxml2" ,libxml2)
- ("libice" ,libice)
- ("libsm" ,libsm)
- ("alsa-lib" ,alsa-lib)
- ("dbus" ,dbus)
+ ;; When looking for libpng `configure' links with `-lpng -lz', so we
+ ;; must also provide zlib as an input.
+ libpng
+ zlib
+ (if (target-x86-64?)
+ librsvg-bootstrap
+ librsvg-2.40)
+ libxpm
+ libxml2
+ libice
+ libsm
+ alsa-lib
+ dbus
- ;; multilingualization support
- ("libotf" ,libotf)
- ("m17n-lib" ,m17n-lib)))
+ ;; multilingualization support
+ libotf
+ m17n-lib))
(native-inputs
- `(("guix-emacs.el" ,(search-auxiliary-file "emacs/guix-emacs.el"))
- ("pkg-config" ,pkg-config)
- ("texinfo" ,texinfo)))
-
+ (list pkg-config texinfo))
(native-search-paths
(list (search-path-specification
(variable "EMACSLOADPATH")
diff --git a/gnu/packages/patches/emacs-exec-path.patch b/gnu/packages/patches/emacs-exec-path.patch
index 7303599df1..9a76b0237d 100644
--- a/gnu/packages/patches/emacs-exec-path.patch
+++ b/gnu/packages/patches/emacs-exec-path.patch
@@ -4,13 +4,13 @@ with things like GCC being referenced.
--- a/lisp/loadup.el
+++ b/lisp/loadup.el
-@@ -481,7 +481,8 @@ lost after dumping")))
+@@ -530,7 +530,8 @@ lost after dumping")))
((equal dump-mode "dump") "emacs")
((equal dump-mode "bootstrap") "emacs")
((equal dump-mode "pbootstrap") "bootstrap-emacs.pdmp")
-- (t (error "unrecognized dump mode %s" dump-mode)))))
-+ (t (error "unrecognized dump mode %s" dump-mode))))
+- (t (error "Unrecognized dump mode %s" dump-mode)))))
++ (t (error "Unrecognized dump mode %s" dump-mode))))
+ (exec-path nil))
- (message "Dumping under the name %s" output)
- (condition-case ()
- (delete-file output)
+ (when (and (featurep 'native-compile)
+ (equal dump-mode "pdump"))
+ ;; Don't enable this before bootstrap is completed, as the
diff --git a/gnu/packages/patches/emacs-ignore-empty-xim-styles.patch b/gnu/packages/patches/emacs-ignore-empty-xim-styles.patch
deleted file mode 100644
index 398e65bdc8..0000000000
--- a/gnu/packages/patches/emacs-ignore-empty-xim-styles.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Fix contributed upstream here:
-https://debbugs.gnu.org/cgi/bugreport.cgi?bug=42694.
-
-Index: emacs-26.3/src/xfns.c
-===================================================================
---- emacs-26.3.orig/src/xfns.c
-+++ emacs-26.3/src/xfns.c
-@@ -2628,6 +2628,8 @@ xic_free_xfontset (struct frame *f)
- static XIMStyle
- best_xim_style (XIMStyles *xim)
- {
-+ if (xim == NULL) goto out;
-+
- int i, j;
- int nr_supported = ARRAYELTS (supported_xim_styles);
-
-@@ -2636,6 +2638,7 @@ best_xim_style (XIMStyles *xim)
- if (supported_xim_styles[i] == xim->supported_styles[j])
- return supported_xim_styles[i];
-
-+ out:
- /* Return the default style. */
- return XIMPreeditNothing | XIMStatusNothing;
- }
--
2.34.0
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 1/2] gnu: emacs: Update to 28.1.
2022-04-09 8:15 ` [bug#54829] [PATCH 1/2] gnu: emacs: Update to 28.1 Liliana Marie Prikler
@ 2022-04-10 10:21 ` Maxime Devos
2022-04-10 10:23 ` Maxime Devos
1 sibling, 0 replies; 26+ messages in thread
From: Maxime Devos @ 2022-04-10 10:21 UTC (permalink / raw)
To: Liliana Marie Prikler, 54829
[-- Attachment #1: Type: text/plain, Size: 719 bytes --]
Liliana Marie Prikler schreef op za 09-04-2022 om 10:15 [+0200]:
> + (substitute* '("src/callproc.c"
> + "lisp/term.el"
> + "lisp/htmlfontify.el"
> + "lisp/textmodes/artist.el"
> + "lisp/progmodes/sh-script.el")
> + (("\"/bin/sh\"")
> + (format #f "~s" (which "sh"))))
Unrelated to the socket activation, but for cross-compilation,
this needs to be (search-input-file inputs "bin/sh).
Greetings,
Maxime.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 1/2] gnu: emacs: Update to 28.1.
2022-04-09 8:15 ` [bug#54829] [PATCH 1/2] gnu: emacs: Update to 28.1 Liliana Marie Prikler
2022-04-10 10:21 ` Maxime Devos
@ 2022-04-10 10:23 ` Maxime Devos
1 sibling, 0 replies; 26+ messages in thread
From: Maxime Devos @ 2022-04-10 10:23 UTC (permalink / raw)
To: Liliana Marie Prikler, 54829
[-- Attachment #1: Type: text/plain, Size: 372 bytes --]
Liliana Marie Prikler schreef op za 09-04-2022 om 10:15 [+0200]:
> diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
> index bfb3f9790e..894b9cd7de 100644
> --- a/gnu/packages/emacs.scm
> +++ b/gnu/packages/emacs.scm
It's a bit difficult to read this patch because it mixes style changes
and other changes. Could they be split?
Greetings,
Maxime.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 2/2] gnu: emacs: Add support for socket activation.
2022-04-09 10:29 [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation Liliana Marie Prikler
2022-04-09 8:15 ` [bug#54829] [PATCH 1/2] gnu: emacs: Update to 28.1 Liliana Marie Prikler
@ 2022-04-09 10:28 ` Liliana Marie Prikler
2022-04-10 11:23 ` [bug#54829] [PATCH v2 1/3] gnu: emacs: Update to 28.1 Liliana Marie Prikler
` (6 subsequent siblings)
8 siblings, 0 replies; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-09 10:28 UTC (permalink / raw)
To: 54829
* gnu/packages/emacs.scm (emacs)[#:phases]: Add ‘enable-elogind’.
[inputs]: Add elogind.
[native-inputs]: Add autoconf.
---
gnu/packages/emacs.scm | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 894b9cd7de..818166c552 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -52,6 +52,7 @@ (define-module (gnu packages emacs)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages fontutils)
+ #:use-module (gnu packages freedesktop)
#:use-module (gnu packages fribidi)
#:use-module (gnu packages gd)
#:use-module (gnu packages gettext)
@@ -131,6 +132,11 @@ (define-public emacs
"--disable-build-details")
#:phases
#~(modify-phases %standard-phases
+ (add-after 'unpack 'enable-elogind
+ (lambda _
+ (substitute* "configure.ac"
+ (("libsystemd") "libelogind"))
+ (delete-file "configure")))
(add-after 'unpack 'patch-program-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("src/callproc.c"
@@ -273,6 +279,7 @@ (define* (emacs-byte-compile-directory dir)
gmp
ghostscript
poppler
+ elogind
;; When looking for libpng `configure' links with `-lpng -lz', so we
;; must also provide zlib as an input.
@@ -292,7 +299,7 @@ (define* (emacs-byte-compile-directory dir)
libotf
m17n-lib))
(native-inputs
- (list pkg-config texinfo))
+ (list autoconf pkg-config texinfo))
(native-search-paths
(list (search-path-specification
(variable "EMACSLOADPATH")
--
2.34.0
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH v2 1/3] gnu: emacs: Update to 28.1.
2022-04-09 10:29 [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation Liliana Marie Prikler
2022-04-09 8:15 ` [bug#54829] [PATCH 1/2] gnu: emacs: Update to 28.1 Liliana Marie Prikler
2022-04-09 10:28 ` [bug#54829] [PATCH 2/2] gnu: emacs: Add support for socket activation Liliana Marie Prikler
@ 2022-04-10 11:23 ` Liliana Marie Prikler
2022-04-11 8:53 ` Michael Rohleder
2022-04-12 8:15 ` [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation zimoun
2022-04-10 11:23 ` [bug#54829] [PATCH v3 1/3] gnu: emacs: Update to 28.1 Liliana Marie Prikler
` (5 subsequent siblings)
8 siblings, 2 replies; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-10 11:23 UTC (permalink / raw)
To: Maxime Devos, 54829
* gnu/packages/emacs.scm (emacs): Update to 28.1
* gnu/packages/patches/emacs-exec-path.patch: Adjust accordingly.
* gnu/packages/patches/emacs-ignore-empty-xim-styles.patch: Delete file.
* gnu/local.mk: Remove it here.
---
gnu/local.mk | 1 -
gnu/packages/emacs.scm | 5 ++--
gnu/packages/patches/emacs-exec-path.patch | 12 +++++-----
.../emacs-ignore-empty-xim-styles.patch | 24 -------------------
4 files changed, 8 insertions(+), 34 deletions(-)
delete mode 100644 gnu/packages/patches/emacs-ignore-empty-xim-styles.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index a44815bdbb..9d6d81b3e0 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1028,7 +1028,6 @@ dist_patch_DATA = \
%D%/packages/patches/elogind-revert-polkit-detection.patch \
%D%/packages/patches/emacs-exec-path.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
- %D%/packages/patches/emacs-ignore-empty-xim-styles.patch \
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-hyperbole-toggle-messaging.patch \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index bfb3f9790e..7d791250d2 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -79,17 +79,16 @@ (define-module (gnu packages emacs)
(define-public emacs
(package
(name "emacs")
- (version "27.2")
+ (version "28.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/emacs/emacs-"
version ".tar.xz"))
(sha256
(base32
- "1ff182gjw9wqsbx1kj5gl2r5pbqhp4ar54g04j33fgz6g17cr9xl"))
+ "1qbmmmhnjhn4lvzsnyk7l5ganbi6wzbm38jc1a7hhyh3k78b7c98"))
(patches (search-patches "emacs-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
- "emacs-ignore-empty-xim-styles.patch"
"emacs-source-date-epoch.patch"))
(modules '((guix build utils)))
(snippet
diff --git a/gnu/packages/patches/emacs-exec-path.patch b/gnu/packages/patches/emacs-exec-path.patch
index 7303599df1..9a76b0237d 100644
--- a/gnu/packages/patches/emacs-exec-path.patch
+++ b/gnu/packages/patches/emacs-exec-path.patch
@@ -4,13 +4,13 @@ with things like GCC being referenced.
--- a/lisp/loadup.el
+++ b/lisp/loadup.el
-@@ -481,7 +481,8 @@ lost after dumping")))
+@@ -530,7 +530,8 @@ lost after dumping")))
((equal dump-mode "dump") "emacs")
((equal dump-mode "bootstrap") "emacs")
((equal dump-mode "pbootstrap") "bootstrap-emacs.pdmp")
-- (t (error "unrecognized dump mode %s" dump-mode)))))
-+ (t (error "unrecognized dump mode %s" dump-mode))))
+- (t (error "Unrecognized dump mode %s" dump-mode)))))
++ (t (error "Unrecognized dump mode %s" dump-mode))))
+ (exec-path nil))
- (message "Dumping under the name %s" output)
- (condition-case ()
- (delete-file output)
+ (when (and (featurep 'native-compile)
+ (equal dump-mode "pdump"))
+ ;; Don't enable this before bootstrap is completed, as the
diff --git a/gnu/packages/patches/emacs-ignore-empty-xim-styles.patch b/gnu/packages/patches/emacs-ignore-empty-xim-styles.patch
deleted file mode 100644
index 398e65bdc8..0000000000
--- a/gnu/packages/patches/emacs-ignore-empty-xim-styles.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Fix contributed upstream here:
-https://debbugs.gnu.org/cgi/bugreport.cgi?bug=42694.
-
-Index: emacs-26.3/src/xfns.c
-===================================================================
---- emacs-26.3.orig/src/xfns.c
-+++ emacs-26.3/src/xfns.c
-@@ -2628,6 +2628,8 @@ xic_free_xfontset (struct frame *f)
- static XIMStyle
- best_xim_style (XIMStyles *xim)
- {
-+ if (xim == NULL) goto out;
-+
- int i, j;
- int nr_supported = ARRAYELTS (supported_xim_styles);
-
-@@ -2636,6 +2638,7 @@ best_xim_style (XIMStyles *xim)
- if (supported_xim_styles[i] == xim->supported_styles[j])
- return supported_xim_styles[i];
-
-+ out:
- /* Return the default style. */
- return XIMPreeditNothing | XIMStatusNothing;
- }
--
2.34.0
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH v2 1/3] gnu: emacs: Update to 28.1.
2022-04-10 11:23 ` [bug#54829] [PATCH v2 1/3] gnu: emacs: Update to 28.1 Liliana Marie Prikler
@ 2022-04-11 8:53 ` Michael Rohleder
2022-04-12 8:15 ` [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation zimoun
1 sibling, 0 replies; 26+ messages in thread
From: Michael Rohleder @ 2022-04-11 8:53 UTC (permalink / raw)
To: 54829
[-- Attachment #1: Type: text/plain, Size: 932 bytes --]
> * gnu/packages/emacs.scm (emacs): Update to 28.1
> * gnu/packages/patches/emacs-exec-path.patch: Adjust accordingly.
> * gnu/packages/patches/emacs-ignore-empty-xim-styles.patch: Delete file.
> * gnu/local.mk: Remove it here.
> ---
> gnu/local.mk | 1 -
> gnu/packages/emacs.scm | 5 ++--
> gnu/packages/patches/emacs-exec-path.patch | 12 +++++-----
> .../emacs-ignore-empty-xim-styles.patch | 24 -------------------
> 4 files changed, 8 insertions(+), 34 deletions(-)
> delete mode 100644 gnu/packages/patches/emacs-ignore-empty-xim-styles.patch
LGTM!
Building emacs, emacs-minimal, emacs-xwidgets, emacs-no-x,
emacs-no-x-toolkit, emacs-wide-int (and running them) with this v2 1/3
patch worked well me.
--
Perfection (in design) is achieved not when there is nothing more to
add, but rather when there is nothing more to take away.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 511 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-10 11:23 ` [bug#54829] [PATCH v2 1/3] gnu: emacs: Update to 28.1 Liliana Marie Prikler
2022-04-11 8:53 ` Michael Rohleder
@ 2022-04-12 8:15 ` zimoun
2022-04-12 18:19 ` Liliana Marie Prikler
1 sibling, 1 reply; 26+ messages in thread
From: zimoun @ 2022-04-12 8:15 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: Maxime Devos, 54829
Hi Liliana,
Applying patch v2 1/3, I get:
--8<---------------cut here---------------start------------->8---
error: corrupt patch at line 71
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Applying: gnu: emacs: Update to 28.1.
Patch failed at 0001 gnu: emacs: Update to 28.1.
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
--8<---------------cut here---------------end--------------->8---
I do not know what is wrong. Could you provide the commit against which
this patch applies? See 'git format-patch --base='.
Moreover, since the upgrade of Emacs leads to an emacs-world rebuild, it
could be nice to also remove all the trailing #t. WDYT?
Cheers,
simon
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-12 8:15 ` [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation zimoun
@ 2022-04-12 18:19 ` Liliana Marie Prikler
2022-04-13 10:29 ` zimoun
0 siblings, 1 reply; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-12 18:19 UTC (permalink / raw)
To: zimoun; +Cc: Maxime Devos, 54829
Am Dienstag, dem 12.04.2022 um 10:15 +0200 schrieb zimoun:
> Hi Liliana,
>
> Applying patch v2 1/3, I get:
>
> --8<---------------cut here---------------start------------->8---
> error: corrupt patch at line 71
> hint: Use 'git am --show-current-patch=diff' to see the failed patch
> Applying: gnu: emacs: Update to 28.1.
> Patch failed at 0001 gnu: emacs: Update to 28.1.
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> To restore the original branch and stop patching, run "git am --
> abort".
> --8<---------------cut here---------------end--------------->8---
>
> I do not know what is wrong. Could you provide the commit against
> which this patch applies? See 'git format-patch --base='.
I have some unfinished work below this, so it's not clean, but I'm
doing somewhat regular rebases on master. The last commit is
47b6451eb55d74161d6e5899f0079e219cfa8a00.
> Moreover, since the upgrade of Emacs leads to an emacs-world rebuild,
> it could be nice to also remove all the trailing #t. WDYT?
Sure, those should go towards 2/3, but perhaps I didn't catch (all of)
them.
Cheers
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-12 18:19 ` Liliana Marie Prikler
@ 2022-04-13 10:29 ` zimoun
0 siblings, 0 replies; 26+ messages in thread
From: zimoun @ 2022-04-13 10:29 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: Maxime Devos, 54829
Hi Liliana,
On Tue, 12 Apr 2022 at 20:19, Liliana Marie Prikler <liliana.prikler@gmail.com> wrote:
> Am Dienstag, dem 12.04.2022 um 10:15 +0200 schrieb zimoun:
>> Applying patch v2 1/3, I get:
>>
>> --8<---------------cut here---------------start------------->8---
>> error: corrupt patch at line 71
>> hint: Use 'git am --show-current-patch=diff' to see the failed patch
>> Applying: gnu: emacs: Update to 28.1.
>> Patch failed at 0001 gnu: emacs: Update to 28.1.
>> When you have resolved this problem, run "git am --continue".
>> If you prefer to skip this patch, run "git am --skip" instead.
>> To restore the original branch and stop patching, run "git am --
>> abort".
>> --8<---------------cut here---------------end--------------->8---
>>
>> I do not know what is wrong. Could you provide the commit against
>> which this patch applies? See 'git format-patch --base='.
>
> I have some unfinished work below this, so it's not clean, but I'm
> doing somewhat regular rebases on master. The last commit is
> 47b6451eb55d74161d6e5899f0079e219cfa8a00.
For some reasons I totally miss, the patch v2 1/3 does not apply for me
with the same message as above, even against 47b6451eb55d74161d6e5899f0.
Anyway, I can wait for v3. :-)
Cheers,
simon
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH v3 1/3] gnu: emacs: Update to 28.1.
2022-04-09 10:29 [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation Liliana Marie Prikler
` (2 preceding siblings ...)
2022-04-10 11:23 ` [bug#54829] [PATCH v2 1/3] gnu: emacs: Update to 28.1 Liliana Marie Prikler
@ 2022-04-10 11:23 ` Liliana Marie Prikler
2022-04-10 11:28 ` [bug#54829] [PATCH v3 2/3] gnu: emacs: Use new package style Liliana Marie Prikler
` (4 subsequent siblings)
8 siblings, 0 replies; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-10 11:23 UTC (permalink / raw)
To: 54829; +Cc: Maxime Devos, zimoun
* gnu/packages/emacs.scm (emacs): Update to 28.1
* gnu/packages/patches/emacs-exec-path.patch: Adjust accordingly.
* gnu/packages/patches/emacs-ignore-empty-xim-styles.patch: Delete file.
* gnu/local.mk: Remove it here.
---
gnu/local.mk | 1 -
gnu/packages/emacs.scm | 5 ++--
gnu/packages/patches/emacs-exec-path.patch | 12 +++++-----
.../emacs-ignore-empty-xim-styles.patch | 24 -------------------
4 files changed, 8 insertions(+), 34 deletions(-)
delete mode 100644 gnu/packages/patches/emacs-ignore-empty-xim-styles.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 70133e6502..585a605138 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1029,7 +1029,6 @@ dist_patch_DATA = \
%D%/packages/patches/elogind-revert-polkit-detection.patch \
%D%/packages/patches/emacs-exec-path.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
- %D%/packages/patches/emacs-ignore-empty-xim-styles.patch \
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-hyperbole-toggle-messaging.patch \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index bfb3f9790e..7d791250d2 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -79,17 +79,16 @@ (define-module (gnu packages emacs)
(define-public emacs
(package
(name "emacs")
- (version "27.2")
+ (version "28.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/emacs/emacs-"
version ".tar.xz"))
(sha256
(base32
- "1ff182gjw9wqsbx1kj5gl2r5pbqhp4ar54g04j33fgz6g17cr9xl"))
+ "1qbmmmhnjhn4lvzsnyk7l5ganbi6wzbm38jc1a7hhyh3k78b7c98"))
(patches (search-patches "emacs-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
- "emacs-ignore-empty-xim-styles.patch"
"emacs-source-date-epoch.patch"))
(modules '((guix build utils)))
(snippet
diff --git a/gnu/packages/patches/emacs-exec-path.patch b/gnu/packages/patches/emacs-exec-path.patch
index 7303599df1..9a76b0237d 100644
--- a/gnu/packages/patches/emacs-exec-path.patch
+++ b/gnu/packages/patches/emacs-exec-path.patch
@@ -4,13 +4,13 @@ with things like GCC being referenced.
--- a/lisp/loadup.el
+++ b/lisp/loadup.el
-@@ -481,7 +481,8 @@ lost after dumping")))
+@@ -530,7 +530,8 @@ lost after dumping")))
((equal dump-mode "dump") "emacs")
((equal dump-mode "bootstrap") "emacs")
((equal dump-mode "pbootstrap") "bootstrap-emacs.pdmp")
-- (t (error "unrecognized dump mode %s" dump-mode)))))
-+ (t (error "unrecognized dump mode %s" dump-mode))))
+- (t (error "Unrecognized dump mode %s" dump-mode)))))
++ (t (error "Unrecognized dump mode %s" dump-mode))))
+ (exec-path nil))
- (message "Dumping under the name %s" output)
- (condition-case ()
- (delete-file output)
+ (when (and (featurep 'native-compile)
+ (equal dump-mode "pdump"))
+ ;; Don't enable this before bootstrap is completed, as the
diff --git a/gnu/packages/patches/emacs-ignore-empty-xim-styles.patch b/gnu/packages/patches/emacs-ignore-empty-xim-styles.patch
deleted file mode 100644
index 398e65bdc8..0000000000
--- a/gnu/packages/patches/emacs-ignore-empty-xim-styles.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Fix contributed upstream here:
-https://debbugs.gnu.org/cgi/bugreport.cgi?bug=42694.
-
-Index: emacs-26.3/src/xfns.c
-===================================================================
---- emacs-26.3.orig/src/xfns.c
-+++ emacs-26.3/src/xfns.c
-@@ -2628,6 +2628,8 @@ xic_free_xfontset (struct frame *f)
- static XIMStyle
- best_xim_style (XIMStyles *xim)
- {
-+ if (xim == NULL) goto out;
-+
- int i, j;
- int nr_supported = ARRAYELTS (supported_xim_styles);
-
-@@ -2636,6 +2638,7 @@ best_xim_style (XIMStyles *xim)
- if (supported_xim_styles[i] == xim->supported_styles[j])
- return supported_xim_styles[i];
-
-+ out:
- /* Return the default style. */
- return XIMPreeditNothing | XIMStatusNothing;
- }
base-commit: 5059e7f01e1d299a2a52b1649251fa49f1992385
--
2.34.0
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH v3 2/3] gnu: emacs: Use new package style.
2022-04-09 10:29 [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation Liliana Marie Prikler
` (3 preceding siblings ...)
2022-04-10 11:23 ` [bug#54829] [PATCH v3 1/3] gnu: emacs: Update to 28.1 Liliana Marie Prikler
@ 2022-04-10 11:28 ` Liliana Marie Prikler
2022-04-10 11:28 ` [bug#54829] [PATCH v2 " Liliana Marie Prikler
` (3 subsequent siblings)
8 siblings, 0 replies; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-10 11:28 UTC (permalink / raw)
To: 54829; +Cc: Maxime Devos, zimoun
* gnu/packages/emacs.scm (emacs)[source]<snippet>: Drop trailing ‘#t’.
[arguments]: Convert to list of G-Expressions.
Use ‘search-input-file’ where possible.
Inline references to auxiliary files.
Drop trailing ‘#t’s.
[inputs, native-inputs]: Drop labels.
---
gnu/packages/emacs.scm | 327 ++++++++++++++++++++---------------------
1 file changed, 161 insertions(+), 166 deletions(-)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 7d791250d2..a32fe624dd 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -41,6 +41,7 @@
(define-module (gnu packages emacs)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
+ #:use-module (guix gexp)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
@@ -51,6 +52,7 @@ (define-module (gnu packages emacs)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages fontutils)
+ #:use-module (gnu packages freedesktop)
#:use-module (gnu packages fribidi)
#:use-module (gnu packages gd)
#:use-module (gnu packages gettext)
@@ -119,183 +121,176 @@ (define-public emacs
(list line
"\"~/.guix-profile/include\""
"\"/var/guix/profiles/system/profile/include\"")
- " ")))
- #t))))
+ " ")))))))
(build-system glib-or-gtk-build-system)
(arguments
- `(#:tests? #f ; no check target
- #:configure-flags (list "--with-modules"
- "--with-cairo"
- "--disable-build-details")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-program-file-names
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* '("src/callproc.c"
- "lisp/term.el"
- "lisp/htmlfontify.el"
- "lisp/textmodes/artist.el"
- "lisp/progmodes/sh-script.el")
- (("\"/bin/sh\"")
- (format #f "~s" (which "sh"))))
- (substitute* "lisp/doc-view.el"
- (("\"(gs|dvipdf|ps2pdf)\"" all what)
- (let ((ghostscript (assoc-ref inputs "ghostscript")))
- (if ghostscript
- (string-append "\"" ghostscript "/bin/" what "\"")
- all)))
- (("\"(pdftotext)\"" all what)
- (let ((poppler (assoc-ref inputs "poppler")))
- (if poppler
- (string-append "\"" poppler "/bin/" what "\"")
- all))))
- ;; match ".gvfs-fuse-daemon-real" and ".gvfsd-fuse-real"
- ;; respectively when looking for GVFS processes.
- (substitute* "lisp/net/tramp-gvfs.el"
- (("\\(tramp-compat-process-running-p \"(.*)\"\\)" all process)
- (format #f "(or ~a (tramp-compat-process-running-p ~s))"
- all (string-append "." process "-real"))))
- #t))
- (add-before 'configure 'fix-/bin/pwd
- (lambda _
- ;; Use `pwd', not `/bin/pwd'.
- (substitute* (find-files "." "^Makefile\\.in$")
- (("/bin/pwd")
- "pwd"))
- #t))
- (add-after 'install 'install-site-start
- ;; Use 'guix-emacs' in "site-start.el", which is used autoload the
- ;; Elisp packages found in EMACSLOADPATH.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lisp-dir (string-append out "/share/emacs/site-lisp"))
- (emacs (string-append out "/bin/emacs")))
+ (list
+ #:tests? #f ; no check target
+ #:configure-flags #~(list "--with-modules"
+ "--with-cairo"
+ "--disable-build-details")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-program-file-names
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("src/callproc.c"
+ "lisp/term.el"
+ "lisp/htmlfontify.el"
+ "lisp/textmodes/artist.el"
+ "lisp/progmodes/sh-script.el")
+ (("\"/bin/sh\"")
+ (format #f "~s" (search-input-file inputs "/bin/sh"))))
+ (substitute* "lisp/doc-view.el"
+ (("\"(gs|dvipdf|ps2pdf|pdftotext)\"" all what)
+ (let ((replacement (search-input-file
+ inputs
+ (string-append "/bin/" what))))
+ (if replacement
+ (string-append "\"" replacement "\"")
+ all))))
+ ;; match ".gvfs-fuse-daemon-real" and ".gvfsd-fuse-real"
+ ;; respectively when looking for GVFS processes.
+ (substitute* "lisp/net/tramp-gvfs.el"
+ (("\\(tramp-compat-process-running-p \"(.*)\"\\)" all process)
+ (format #f "(or ~a (tramp-compat-process-running-p ~s))"
+ all (string-append "." process "-real"))))))
+ (add-before 'configure 'fix-/bin/pwd
+ (lambda _
+ ;; Use `pwd', not `/bin/pwd'.
+ (substitute* (find-files "." "^Makefile\\.in$")
+ (("/bin/pwd")
+ "pwd"))))
+ (add-after 'install 'install-site-start
+ ;; Use 'guix-emacs' in "site-start.el", which is used autoload the
+ ;; Elisp packages found in EMACSLOADPATH.
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (lisp-dir (string-append out "/share/emacs/site-lisp"))
+ (emacs (string-append out "/bin/emacs")))
- ;; This is duplicated from emacs-utils to prevent coupling.
- (define* (emacs-byte-compile-directory dir)
- (let ((expr `(progn
- (setq byte-compile-debug t)
- (byte-recompile-directory
- (file-name-as-directory ,dir) 0 1))))
- (invoke emacs "--quick" "--batch"
- (format #f "--eval=~s" expr))))
+ ;; This is duplicated from emacs-utils to prevent coupling.
+ (define* (emacs-byte-compile-directory dir)
+ (let ((expr `(progn
+ (setq byte-compile-debug t)
+ (byte-recompile-directory
+ (file-name-as-directory ,dir) 0 1))))
+ (invoke emacs "--quick" "--batch"
+ (format #f "--eval=~s" expr))))
- (copy-file (assoc-ref inputs "guix-emacs.el")
- (string-append lisp-dir "/guix-emacs.el"))
- (with-output-to-file (string-append lisp-dir "/site-start.el")
- (lambda ()
- (display
- (string-append
- "(when (require 'guix-emacs nil t)\n"
- " (guix-emacs-autoload-packages)\n"
- " (advice-add 'package-load-all-descriptors"
- " :after #'guix-emacs-load-package-descriptors))"))))
- ;; Remove the extraneous subdirs.el file, as it causes Emacs to
- ;; add recursively all the the sub-directories of a profile's
- ;; share/emacs/site-lisp union when added to EMACSLOADPATH,
- ;; which leads to conflicts.
- (delete-file (string-append lisp-dir "/subdirs.el"))
- ;; Byte compile the site-start files.
- (emacs-byte-compile-directory lisp-dir))
- #t))
- (add-after 'glib-or-gtk-wrap 'restore-emacs-pdmp
- ;; restore the dump file that Emacs installs somewhere in
- ;; libexec/ to its original state
- (lambda* (#:key outputs target #:allow-other-keys)
- (let* ((libexec (string-append (assoc-ref outputs "out")
- "/libexec"))
- ;; each of these ought to only match a single file,
- ;; but even if not (find-files) sorts by string<,
- ;; so the Nth element in one maps to the Nth element of
- ;; the other
- (pdmp (find-files libexec "\\.pdmp$"))
- (pdmp-real (find-files libexec "\\.pdmp-real$")))
- (for-each rename-file pdmp-real pdmp))))
- (add-after 'glib-or-gtk-wrap 'strip-double-wrap
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Directly copy emacs-X.Y to emacs, so that it is not wrapped
- ;; twice. This also fixes a minor issue, where WMs would not be
- ;; able to track emacs back to emacs.desktop.
- (with-directory-excursion (assoc-ref outputs "out")
- (copy-file
- (car (find-files "bin" "^emacs-([0-9]+\\.)+[0-9]+$"))
- "bin/emacs")
- #t)))
- (add-after 'strip-double-wrap 'wrap-emacs-paths
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lisp-dirs (find-files (string-append out "/share/emacs")
- "^lisp$"
- #:directories? #t)))
- (for-each
- (lambda (prog)
- (wrap-program prog
- ;; emacs-next and variants rely on uname being in PATH for
- ;; Tramp. Tramp paths can't be hardcoded, because they
- ;; need to be portable.
- `("PATH" suffix
- ,(map (lambda (in) (string-append in "/bin"))
- (list (assoc-ref inputs "gzip")
- (assoc-ref inputs "coreutils"))))
- `("EMACSLOADPATH" suffix ,lisp-dirs)))
- (find-files (string-append out "/bin")
- ;; Matches versioned and unversioned emacs binaries.
- ;; We don't patch emacsclient, because it takes its
- ;; environment variables from emacs.
- ;; Likewise, we don't need to patch helper binaries
- ;; like etags, ctags or ebrowse.
- "^emacs(-[0-9]+(\\.[0-9]+)*)?$"))))))))
+ (copy-file #$(local-file
+ (search-auxiliary-file "emacs/guix-emacs.el"))
+ (string-append lisp-dir "/guix-emacs.el"))
+ (with-output-to-file (string-append lisp-dir "/site-start.el")
+ (lambda ()
+ (display
+ (string-append
+ "(when (require 'guix-emacs nil t)\n"
+ " (guix-emacs-autoload-packages)\n"
+ " (advice-add 'package-load-all-descriptors"
+ " :after #'guix-emacs-load-package-descriptors))"))))
+ ;; Remove the extraneous subdirs.el file, as it causes Emacs to
+ ;; add recursively all the the sub-directories of a profile's
+ ;; share/emacs/site-lisp union when added to EMACSLOADPATH,
+ ;; which leads to conflicts.
+ (delete-file (string-append lisp-dir "/subdirs.el"))
+ ;; Byte compile the site-start files.
+ (emacs-byte-compile-directory lisp-dir))))
+ (add-after 'glib-or-gtk-wrap 'restore-emacs-pdmp
+ ;; restore the dump file that Emacs installs somewhere in
+ ;; libexec/ to its original state
+ (lambda* (#:key outputs target #:allow-other-keys)
+ (let* ((libexec (string-append (assoc-ref outputs "out")
+ "/libexec"))
+ ;; each of these ought to only match a single file,
+ ;; but even if not (find-files) sorts by string<,
+ ;; so the Nth element in one maps to the Nth element of
+ ;; the other
+ (pdmp (find-files libexec "\\.pdmp$"))
+ (pdmp-real (find-files libexec "\\.pdmp-real$")))
+ (for-each rename-file pdmp-real pdmp))))
+ (add-after 'glib-or-gtk-wrap 'strip-double-wrap
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; Directly copy emacs-X.Y to emacs, so that it is not wrapped
+ ;; twice. This also fixes a minor issue, where WMs would not be
+ ;; able to track emacs back to emacs.desktop.
+ (with-directory-excursion (assoc-ref outputs "out")
+ (copy-file
+ (car (find-files "bin" "^emacs-([0-9]+\\.)+[0-9]+$"))
+ "bin/emacs"))))
+ (add-after 'strip-double-wrap 'wrap-emacs-paths
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (lisp-dirs (find-files (string-append out "/share/emacs")
+ "^lisp$"
+ #:directories? #t)))
+ (for-each
+ (lambda (prog)
+ (wrap-program prog
+ ;; emacs-next and variants rely on uname being in PATH for
+ ;; Tramp. Tramp paths can't be hardcoded, because they
+ ;; need to be portable.
+ `("PATH" suffix
+ ,(map dirname
+ (list (search-input-file inputs "/bin/gzip")
+ ;; for coreutils
+ (search-input-file inputs "/bin/yes"))))
+ `("EMACSLOADPATH" suffix ,lisp-dirs)))
+ (find-files (string-append out "/bin")
+ ;; Matches versioned and unversioned emacs binaries.
+ ;; We don't patch emacsclient, because it takes its
+ ;; environment variables from emacs.
+ ;; Likewise, we don't need to patch helper binaries
+ ;; like etags, ctags or ebrowse.
+ "^emacs(-[0-9]+(\\.[0-9]+)*)?$"))))))))
(inputs
- `(("gnutls" ,gnutls)
- ("ncurses" ,ncurses)
+ (list gnutls
+ ncurses
- ;; Required for "core" functionality, such as dired and compression.
- ("coreutils" ,coreutils)
- ("gzip" ,gzip)
+ ;; Required for "core" functionality, such as dired and compression.
+ coreutils
+ gzip
- ;; Avoid Emacs's limited movemail substitute that retrieves POP3 email
- ;; only via insecure channels. This is not needed for (modern) IMAP.
- ("mailutils" ,mailutils)
+ ;; Avoid Emacs's limited movemail substitute that retrieves POP3
+ ;; email only via insecure channels.
+ ;; This is not needed for (modern) IMAP.
+ mailutils
- ;; TODO: Add the optional dependencies.
- ("gpm" ,gpm)
- ("libx11" ,libx11)
- ("gtk+" ,gtk+)
- ("cairo" ,cairo)
- ("pango" ,pango)
- ("harfbuzz" ,harfbuzz)
- ("libxft" ,libxft)
- ("libtiff" ,libtiff)
- ("giflib" ,giflib)
- ("libjpeg" ,libjpeg-turbo)
- ("acl" ,acl)
- ("jansson" ,jansson)
- ("gmp" ,gmp)
- ("ghostscript" ,ghostscript)
- ("poppler" ,poppler)
+ ;; TODO: Add the optional dependencies.
+ gpm
+ libx11
+ gtk+
+ cairo
+ pango
+ harfbuzz
+ libxft
+ libtiff
+ giflib
+ libjpeg-turbo
+ acl
+ jansson
+ gmp
+ ghostscript
+ poppler
- ;; When looking for libpng `configure' links with `-lpng -lz', so we
- ;; must also provide zlib as an input.
- ("libpng" ,libpng)
- ("zlib" ,zlib)
- ("librsvg" ,@(if (target-x86-64?)
- (list librsvg-bootstrap)
- (list librsvg-2.40)))
- ("libxpm" ,libxpm)
- ("libxml2" ,libxml2)
- ("libice" ,libice)
- ("libsm" ,libsm)
- ("alsa-lib" ,alsa-lib)
- ("dbus" ,dbus)
+ ;; When looking for libpng `configure' links with `-lpng -lz', so we
+ ;; must also provide zlib as an input.
+ libpng
+ zlib
+ (if (target-x86-64?)
+ librsvg-bootstrap
+ librsvg-2.40)
+ libxpm
+ libxml2
+ libice
+ libsm
+ alsa-lib
+ dbus
- ;; multilingualization support
- ("libotf" ,libotf)
- ("m17n-lib" ,m17n-lib)))
+ ;; multilingualization support
+ libotf
+ m17n-lib))
(native-inputs
- `(("guix-emacs.el" ,(search-auxiliary-file "emacs/guix-emacs.el"))
- ("pkg-config" ,pkg-config)
- ("texinfo" ,texinfo)))
-
+ (list pkg-config texinfo))
(native-search-paths
(list (search-path-specification
(variable "EMACSLOADPATH")
--
2.34.0
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH v2 2/3] gnu: emacs: Use new package style.
2022-04-09 10:29 [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation Liliana Marie Prikler
` (4 preceding siblings ...)
2022-04-10 11:28 ` [bug#54829] [PATCH v3 2/3] gnu: emacs: Use new package style Liliana Marie Prikler
@ 2022-04-10 11:28 ` Liliana Marie Prikler
2022-04-10 11:32 ` [bug#54829] [PATCH v2 3/3] gnu: emacs: Add support for socket activation Liliana Marie Prikler
` (2 subsequent siblings)
8 siblings, 0 replies; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-10 11:28 UTC (permalink / raw)
To: Maxime Devos, 54829
* gnu/packages/emacs.scm (emacs)[arguments]: Convert to list of G-Expressions.
Use ‘search-input-file’ where possible.
Inline references to auxiliary files.
[inputs, native-inputs]: Drop labels.
---
gnu/packages/emacs.scm | 326 ++++++++++++++++++++---------------------
1 file changed, 162 insertions(+), 164 deletions(-)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 7d791250d2..ae062dadf1 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -41,6 +41,7 @@
(define-module (gnu packages emacs)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
+ #:use-module (guix gexp)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
@@ -51,6 +52,7 @@ (define-module (gnu packages emacs)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages fontutils)
+ #:use-module (gnu packages freedesktop)
#:use-module (gnu packages fribidi)
#:use-module (gnu packages gd)
#:use-module (gnu packages gettext)
@@ -123,179 +125,175 @@ (define-public emacs
#t))))
(build-system glib-or-gtk-build-system)
(arguments
- `(#:tests? #f ; no check target
- #:configure-flags (list "--with-modules"
- "--with-cairo"
- "--disable-build-details")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-program-file-names
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* '("src/callproc.c"
- "lisp/term.el"
- "lisp/htmlfontify.el"
- "lisp/textmodes/artist.el"
- "lisp/progmodes/sh-script.el")
- (("\"/bin/sh\"")
- (format #f "~s" (which "sh"))))
- (substitute* "lisp/doc-view.el"
- (("\"(gs|dvipdf|ps2pdf)\"" all what)
- (let ((ghostscript (assoc-ref inputs "ghostscript")))
- (if ghostscript
- (string-append "\"" ghostscript "/bin/" what "\"")
- all)))
- (("\"(pdftotext)\"" all what)
- (let ((poppler (assoc-ref inputs "poppler")))
- (if poppler
- (string-append "\"" poppler "/bin/" what "\"")
- all))))
- ;; match ".gvfs-fuse-daemon-real" and ".gvfsd-fuse-real"
- ;; respectively when looking for GVFS processes.
- (substitute* "lisp/net/tramp-gvfs.el"
- (("\\(tramp-compat-process-running-p \"(.*)\"\\)" all process)
- (format #f "(or ~a (tramp-compat-process-running-p ~s))"
- all (string-append "." process "-real"))))
- #t))
- (add-before 'configure 'fix-/bin/pwd
- (lambda _
- ;; Use `pwd', not `/bin/pwd'.
- (substitute* (find-files "." "^Makefile\\.in$")
- (("/bin/pwd")
- "pwd"))
- #t))
- (add-after 'install 'install-site-start
- ;; Use 'guix-emacs' in "site-start.el", which is used autoload the
- ;; Elisp packages found in EMACSLOADPATH.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lisp-dir (string-append out "/share/emacs/site-lisp"))
- (emacs (string-append out "/bin/emacs")))
+ (list
+ #:tests? #f ; no check target
+ #:configure-flags #~(list "--with-modules"
+ "--with-cairo"
+ "--disable-build-details")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-program-file-names
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("src/callproc.c"
+ "lisp/term.el"
+ "lisp/htmlfontify.el"
+ "lisp/textmodes/artist.el"
+ "lisp/progmodes/sh-script.el")
+ (("\"/bin/sh\"")
+ (format #f "~s" (search-input-file inputs "/bin/sh"))))
+ (substitute* "lisp/doc-view.el"
+ (("\"(gs|dvipdf|ps2pdf|pdftotext)\"" all what)
+ (let ((replacement (search-input-file
+ inputs
+ (string-append "/bin/" what))))
+ (if replacement
+ (string-append "\"" replacement "\"")
+ all))))
+ ;; match ".gvfs-fuse-daemon-real" and ".gvfsd-fuse-real"
+ ;; respectively when looking for GVFS processes.
+ (substitute* "lisp/net/tramp-gvfs.el"
+ (("\\(tramp-compat-process-running-p \"(.*)\"\\)" all process)
+ (format #f "(or ~a (tramp-compat-process-running-p ~s))"
+ all (string-append "." process "-real"))))))
+ (add-before 'configure 'fix-/bin/pwd
+ (lambda _
+ ;; Use `pwd', not `/bin/pwd'.
+ (substitute* (find-files "." "^Makefile\\.in$")
+ (("/bin/pwd")
+ "pwd"))))
+ (add-after 'install 'install-site-start
+ ;; Use 'guix-emacs' in "site-start.el", which is used autoload the
+ ;; Elisp packages found in EMACSLOADPATH.
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (lisp-dir (string-append out "/share/emacs/site-lisp"))
+ (emacs (string-append out "/bin/emacs")))
- ;; This is duplicated from emacs-utils to prevent coupling.
- (define* (emacs-byte-compile-directory dir)
- (let ((expr `(progn
- (setq byte-compile-debug t)
- (byte-recompile-directory
- (file-name-as-directory ,dir) 0 1))))
- (invoke emacs "--quick" "--batch"
- (format #f "--eval=~s" expr))))
+ ;; This is duplicated from emacs-utils to prevent coupling.
+ (define* (emacs-byte-compile-directory dir)
+ (let ((expr `(progn
+ (setq byte-compile-debug t)
+ (byte-recompile-directory
+ (file-name-as-directory ,dir) 0 1))))
+ (invoke emacs "--quick" "--batch"
+ (format #f "--eval=~s" expr))))
- (copy-file (assoc-ref inputs "guix-emacs.el")
- (string-append lisp-dir "/guix-emacs.el"))
- (with-output-to-file (string-append lisp-dir "/site-start.el")
- (lambda ()
- (display
- (string-append
- "(when (require 'guix-emacs nil t)\n"
- " (guix-emacs-autoload-packages)\n"
- " (advice-add 'package-load-all-descriptors"
- " :after #'guix-emacs-load-package-descriptors))"))))
- ;; Remove the extraneous subdirs.el file, as it causes Emacs to
- ;; add recursively all the the sub-directories of a profile's
- ;; share/emacs/site-lisp union when added to EMACSLOADPATH,
- ;; which leads to conflicts.
- (delete-file (string-append lisp-dir "/subdirs.el"))
- ;; Byte compile the site-start files.
- (emacs-byte-compile-directory lisp-dir))
- #t))
- (add-after 'glib-or-gtk-wrap 'restore-emacs-pdmp
- ;; restore the dump file that Emacs installs somewhere in
- ;; libexec/ to its original state
- (lambda* (#:key outputs target #:allow-other-keys)
- (let* ((libexec (string-append (assoc-ref outputs "out")
- "/libexec"))
- ;; each of these ought to only match a single file,
- ;; but even if not (find-files) sorts by string<,
- ;; so the Nth element in one maps to the Nth element of
- ;; the other
- (pdmp (find-files libexec "\\.pdmp$"))
- (pdmp-real (find-files libexec "\\.pdmp-real$")))
- (for-each rename-file pdmp-real pdmp))))
- (add-after 'glib-or-gtk-wrap 'strip-double-wrap
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Directly copy emacs-X.Y to emacs, so that it is not wrapped
- ;; twice. This also fixes a minor issue, where WMs would not be
- ;; able to track emacs back to emacs.desktop.
- (with-directory-excursion (assoc-ref outputs "out")
- (copy-file
- (car (find-files "bin" "^emacs-([0-9]+\\.)+[0-9]+$"))
- "bin/emacs")
- #t)))
- (add-after 'strip-double-wrap 'wrap-emacs-paths
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lisp-dirs (find-files (string-append out "/share/emacs")
- "^lisp$"
- #:directories? #t)))
- (for-each
- (lambda (prog)
- (wrap-program prog
- ;; emacs-next and variants rely on uname being in PATH for
- ;; Tramp. Tramp paths can't be hardcoded, because they
- ;; need to be portable.
- `("PATH" suffix
- ,(map (lambda (in) (string-append in "/bin"))
- (list (assoc-ref inputs "gzip")
- (assoc-ref inputs "coreutils"))))
- `("EMACSLOADPATH" suffix ,lisp-dirs)))
- (find-files (string-append out "/bin")
- ;; Matches versioned and unversioned emacs binaries.
- ;; We don't patch emacsclient, because it takes its
- ;; environment variables from emacs.
- ;; Likewise, we don't need to patch helper binaries
- ;; like etags, ctags or ebrowse.
- "^emacs(-[0-9]+(\\.[0-9]+)*)?$"))))))))
+ (copy-file #$(local-file
+ (search-auxiliary-file "emacs/guix-emacs.el"))
+ (string-append lisp-dir "/guix-emacs.el"))
+ (with-output-to-file (string-append lisp-dir "/site-start.el")
+ (lambda ()
+ (display
+ (string-append
+ "(when (require 'guix-emacs nil t)\n"
+ " (guix-emacs-autoload-packages)\n"
+ " (advice-add 'package-load-all-descriptors"
+ " :after #'guix-emacs-load-package-descriptors))"))))
+ ;; Remove the extraneous subdirs.el file, as it causes Emacs to
+ ;; add recursively all the the sub-directories of a profile's
+ ;; share/emacs/site-lisp union when added to EMACSLOADPATH,
+ ;; which leads to conflicts.
+ (delete-file (string-append lisp-dir "/subdirs.el"))
+ ;; Byte compile the site-start files.
+ (emacs-byte-compile-directory lisp-dir))
+ #t))
+ (add-after 'glib-or-gtk-wrap 'restore-emacs-pdmp
+ ;; restore the dump file that Emacs installs somewhere in
+ ;; libexec/ to its original state
+ (lambda* (#:key outputs target #:allow-other-keys)
+ (let* ((libexec (string-append (assoc-ref outputs "out")
+ "/libexec"))
+ ;; each of these ought to only match a single file,
+ ;; but even if not (find-files) sorts by string<,
+ ;; so the Nth element in one maps to the Nth element of
+ ;; the other
+ (pdmp (find-files libexec "\\.pdmp$"))
+ (pdmp-real (find-files libexec "\\.pdmp-real$")))
+ (for-each rename-file pdmp-real pdmp))))
+ (add-after 'glib-or-gtk-wrap 'strip-double-wrap
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; Directly copy emacs-X.Y to emacs, so that it is not wrapped
+ ;; twice. This also fixes a minor issue, where WMs would not be
+ ;; able to track emacs back to emacs.desktop.
+ (with-directory-excursion (assoc-ref outputs "out")
+ (copy-file
+ (car (find-files "bin" "^emacs-([0-9]+\\.)+[0-9]+$"))
+ "bin/emacs")
+ #t)))
+ (add-after 'strip-double-wrap 'wrap-emacs-paths
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (lisp-dirs (find-files (string-append out "/share/emacs")
+ "^lisp$"
+ #:directories? #t)))
+ (for-each
+ (lambda (prog)
+ (wrap-program prog
+ ;; emacs-next and variants rely on uname being in PATH for
+ ;; Tramp. Tramp paths can't be hardcoded, because they
+ ;; need to be portable.
+ `("PATH" suffix
+ ,(map dirname
+ (list (search-input-file inputs "/bin/gzip")
+ ;; for coreutils
+ (search-input-file inputs "/bin/yes"))))
+ `("EMACSLOADPATH" suffix ,lisp-dirs)))
+ (find-files (string-append out "/bin")
+ ;; Matches versioned and unversioned emacs binaries.
+ ;; We don't patch emacsclient, because it takes its
+ ;; environment variables from emacs.
+ ;; Likewise, we don't need to patch helper binaries
+ ;; like etags, ctags or ebrowse.
+ "^emacs(-[0-9]+(\\.[0-9]+)*)?$"))))))))
(inputs
- `(("gnutls" ,gnutls)
- ("ncurses" ,ncurses)
+ (list gnutls
+ ncurses
- ;; Required for "core" functionality, such as dired and compression.
- ("coreutils" ,coreutils)
- ("gzip" ,gzip)
+ ;; Required for "core" functionality, such as dired and compression.
+ coreutils
+ gzip
- ;; Avoid Emacs's limited movemail substitute that retrieves POP3 email
- ;; only via insecure channels. This is not needed for (modern) IMAP.
- ("mailutils" ,mailutils)
+ ;; Avoid Emacs's limited movemail substitute that retrieves POP3
+ ;; email only via insecure channels.
+ ;; This is not needed for (modern) IMAP.
+ mailutils
- ;; TODO: Add the optional dependencies.
- ("gpm" ,gpm)
- ("libx11" ,libx11)
- ("gtk+" ,gtk+)
- ("cairo" ,cairo)
- ("pango" ,pango)
- ("harfbuzz" ,harfbuzz)
- ("libxft" ,libxft)
- ("libtiff" ,libtiff)
- ("giflib" ,giflib)
- ("libjpeg" ,libjpeg-turbo)
- ("acl" ,acl)
- ("jansson" ,jansson)
- ("gmp" ,gmp)
- ("ghostscript" ,ghostscript)
- ("poppler" ,poppler)
+ ;; TODO: Add the optional dependencies.
+ gpm
+ libx11
+ gtk+
+ cairo
+ pango
+ harfbuzz
+ libxft
+ libtiff
+ giflib
+ libjpeg-turbo
+ acl
+ jansson
+ gmp
+ ghostscript
+ poppler
- ;; When looking for libpng `configure' links with `-lpng -lz', so we
- ;; must also provide zlib as an input.
- ("libpng" ,libpng)
- ("zlib" ,zlib)
- ("librsvg" ,@(if (target-x86-64?)
- (list librsvg-bootstrap)
- (list librsvg-2.40)))
- ("libxpm" ,libxpm)
- ("libxml2" ,libxml2)
- ("libice" ,libice)
- ("libsm" ,libsm)
- ("alsa-lib" ,alsa-lib)
- ("dbus" ,dbus)
+ ;; When looking for libpng `configure' links with `-lpng -lz', so we
+ ;; must also provide zlib as an input.
+ libpng
+ zlib
+ (if (target-x86-64?)
+ librsvg-bootstrap
+ librsvg-2.40)
+ libxpm
+ libxml2
+ libice
+ libsm
+ alsa-lib
+ dbus
- ;; multilingualization support
- ("libotf" ,libotf)
- ("m17n-lib" ,m17n-lib)))
+ ;; multilingualization support
+ libotf
+ m17n-lib))
(native-inputs
- `(("guix-emacs.el" ,(search-auxiliary-file "emacs/guix-emacs.el"))
- ("pkg-config" ,pkg-config)
- ("texinfo" ,texinfo)))
-
+ (list pkg-config texinfo))
(native-search-paths
(list (search-path-specification
(variable "EMACSLOADPATH")
--
2.34.0
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH v2 3/3] gnu: emacs: Add support for socket activation.
2022-04-09 10:29 [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation Liliana Marie Prikler
` (5 preceding siblings ...)
2022-04-10 11:28 ` [bug#54829] [PATCH v2 " Liliana Marie Prikler
@ 2022-04-10 11:32 ` Liliana Marie Prikler
2022-04-10 11:32 ` [bug#54829] [PATCH v3 " Liliana Marie Prikler
2022-04-26 21:27 ` [bug#54829] Other emacs packages Luis Henrique Gomes Higino
8 siblings, 0 replies; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-10 11:32 UTC (permalink / raw)
To: Maxime Devos, 54829
* gnu/packages/emacs.scm (emacs)[#:phases]: Add ‘enable-elogind’.
[inputs]: Add elogind.
[native-inputs]: Add autoconf.
---
gnu/packages/emacs.scm | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index ae062dadf1..85154da72b 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -132,6 +132,11 @@ (define-public emacs
"--disable-build-details")
#:phases
#~(modify-phases %standard-phases
+ (add-after 'unpack 'enable-elogind
+ (lambda _
+ (substitute* "configure.ac"
+ (("libsystemd") "libelogind"))
+ (delete-file "configure")))
(add-after 'unpack 'patch-program-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("src/callproc.c"
@@ -274,6 +279,7 @@ (define* (emacs-byte-compile-directory dir)
gmp
ghostscript
poppler
+ elogind
;; When looking for libpng `configure' links with `-lpng -lz', so we
;; must also provide zlib as an input.
@@ -293,7 +299,7 @@ (define* (emacs-byte-compile-directory dir)
libotf
m17n-lib))
(native-inputs
- (list pkg-config texinfo))
+ (list autoconf pkg-config texinfo))
(native-search-paths
(list (search-path-specification
(variable "EMACSLOADPATH")
--
2.34.0
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH v3 3/3] gnu: emacs: Add support for socket activation.
2022-04-09 10:29 [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation Liliana Marie Prikler
` (6 preceding siblings ...)
2022-04-10 11:32 ` [bug#54829] [PATCH v2 3/3] gnu: emacs: Add support for socket activation Liliana Marie Prikler
@ 2022-04-10 11:32 ` Liliana Marie Prikler
2022-04-28 12:15 ` [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add " Ludovic Courtès
2022-04-26 21:27 ` [bug#54829] Other emacs packages Luis Henrique Gomes Higino
8 siblings, 1 reply; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-10 11:32 UTC (permalink / raw)
To: 54829; +Cc: Maxime Devos, zimoun
* gnu/packages/emacs.scm (emacs)[#:phases]: Add ‘enable-elogind’.
[inputs]: Add elogind.
[native-inputs]: Add autoconf.
---
gnu/packages/emacs.scm | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index a32fe624dd..847731b95d 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -131,6 +131,11 @@ (define-public emacs
"--disable-build-details")
#:phases
#~(modify-phases %standard-phases
+ (add-after 'unpack 'enable-elogind
+ (lambda _
+ (substitute* "configure.ac"
+ (("libsystemd") "libelogind"))
+ (delete-file "configure")))
(add-after 'unpack 'patch-program-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("src/callproc.c"
@@ -271,6 +276,7 @@ (define* (emacs-byte-compile-directory dir)
gmp
ghostscript
poppler
+ elogind
;; When looking for libpng `configure' links with `-lpng -lz', so we
;; must also provide zlib as an input.
@@ -290,7 +296,7 @@ (define* (emacs-byte-compile-directory dir)
libotf
m17n-lib))
(native-inputs
- (list pkg-config texinfo))
+ (list autoconf pkg-config texinfo))
(native-search-paths
(list (search-path-specification
(variable "EMACSLOADPATH")
--
2.34.0
^ permalink raw reply related [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-10 11:32 ` [bug#54829] [PATCH v3 " Liliana Marie Prikler
@ 2022-04-28 12:15 ` Ludovic Courtès
2022-04-28 15:06 ` Maxime Devos
2022-04-28 16:58 ` Liliana Marie Prikler
0 siblings, 2 replies; 26+ messages in thread
From: Ludovic Courtès @ 2022-04-28 12:15 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: Maxime Devos, 54829, zimoun
Hi,
Liliana Marie Prikler <liliana.prikler@gmail.com> skribis:
> * gnu/packages/emacs.scm (emacs)[#:phases]: Add ‘enable-elogind’.
> [inputs]: Add elogind.
> [native-inputs]: Add autoconf.
[...]
> + (add-after 'unpack 'enable-elogind
> + (lambda _
> + (substitute* "configure.ac"
> + (("libsystemd") "libelogind"))
I suggest making that substitution in ‘configure’…
> (native-inputs
> - (list pkg-config texinfo))
> + (list autoconf pkg-config texinfo))
… so you don’t need this extra dependency.
Otherwise it LGTM.
Perhaps you can push to a ‘wip-emacs-28’ branch, and then ping me or
another admin on #guix so we can tell ci.guix to build it. Once it’s
built and we don’t see regressions, we can merge in ‘master’ (should
take a day or two at most I suppose).
Thanks,
Ludo’.
PS: First time it takes more than a few hours for a new Emacs version to
land in Guix! :-)
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-28 12:15 ` [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add " Ludovic Courtès
@ 2022-04-28 15:06 ` Maxime Devos
2022-04-28 15:31 ` Liliana Marie Prikler
2022-04-28 20:15 ` Ludovic Courtès
2022-04-28 16:58 ` Liliana Marie Prikler
1 sibling, 2 replies; 26+ messages in thread
From: Maxime Devos @ 2022-04-28 15:06 UTC (permalink / raw)
To: Ludovic Courtès, Liliana Marie Prikler; +Cc: 54829, zimoun
[-- Attachment #1: Type: text/plain, Size: 760 bytes --]
Ludovic Courtès schreef op do 28-04-2022 om 14:15 [+0200]:
> > + (add-after 'unpack 'enable-elogind
> > + (lambda _
> > + (substitute* "configure.ac"
> > + (("libsystemd") "libelogind"))
>
> I suggest making that substitution in ‘configure’…
>
> > (native-inputs
> > - (list pkg-config texinfo))
> > + (list autoconf pkg-config texinfo))
>
> … so you don’t need this extra dependency.
I thought the idea was to, long term, build 'configure' from source
(except for packages low on the graph where there would be bootstrap
problems)?
https://lists.gnu.org/archive/html/guix-devel/2022-04/msg00065.html
Greetings,
Maxime.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-28 15:06 ` Maxime Devos
@ 2022-04-28 15:31 ` Liliana Marie Prikler
2022-04-28 20:15 ` Ludovic Courtès
1 sibling, 0 replies; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-28 15:31 UTC (permalink / raw)
To: Maxime Devos, Ludovic Courtès; +Cc: 54829, zimoun
Am Donnerstag, dem 28.04.2022 um 17:06 +0200 schrieb Maxime Devos:
> Ludovic Courtès schreef op do 28-04-2022 om 14:15 [+0200]:
> > > + (add-after 'unpack 'enable-elogind
> > > + (lambda _
> > > + (substitute* "configure.ac"
> > > + (("libsystemd") "libelogind"))
> >
> > I suggest making that substitution in ‘configure’…
> >
> > > (native-inputs
> > > - (list pkg-config texinfo))
> > > + (list autoconf pkg-config texinfo))
> >
> > … so you don’t need this extra dependency.
>
> I thought the idea was to, long term, build 'configure' from source
> (except for packages low on the graph where there would be bootstrap
> problems)?
>
> https://lists.gnu.org/archive/html/guix-devel/2022-04/msg00065.html
To add to this, configure doesn't exist in emacs-next variants, so I
find it better to just wrap the existing code in a (when (file-exists?
...) ...) rather than boot from blessed blobs in this particular
instance.
Cheers
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-28 15:06 ` Maxime Devos
2022-04-28 15:31 ` Liliana Marie Prikler
@ 2022-04-28 20:15 ` Ludovic Courtès
1 sibling, 0 replies; 26+ messages in thread
From: Ludovic Courtès @ 2022-04-28 20:15 UTC (permalink / raw)
To: Maxime Devos; +Cc: zimoun, Liliana Marie Prikler, 54829
Maxime Devos <maximedevos@telenet.be> skribis:
> Ludovic Courtès schreef op do 28-04-2022 om 14:15 [+0200]:
>> > + (add-after 'unpack 'enable-elogind
>> > + (lambda _
>> > + (substitute* "configure.ac"
>> > + (("libsystemd") "libelogind"))
>>
>> I suggest making that substitution in ‘configure’…
>>
>> > (native-inputs
>> > - (list pkg-config texinfo))
>> > + (list autoconf pkg-config texinfo))
>>
>> … so you don’t need this extra dependency.
>
> I thought the idea was to, long term, build 'configure' from source
> (except for packages low on the graph where there would be bootstrap
> problems)?
>
> https://lists.gnu.org/archive/html/guix-devel/2022-04/msg00065.html
Ah yes, that too. See? The power of habits, the beauty of
self-contradiction. :-)
Liliana: I guess Maxime is right, you can keep this version.
Thanks,
Ludo’.
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-28 12:15 ` [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add " Ludovic Courtès
2022-04-28 15:06 ` Maxime Devos
@ 2022-04-28 16:58 ` Liliana Marie Prikler
2022-04-29 3:22 ` Feng Shu
1 sibling, 1 reply; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-28 16:58 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: Maxime Devos, 54829, zimoun
Hi,
Am Donnerstag, dem 28.04.2022 um 14:15 +0200 schrieb Ludovic Courtès:
> Perhaps you can push to a ‘wip-emacs-28’ branch, and then ping me or
> another admin on #guix so we can tell ci.guix to build it. Once it’s
> built and we don’t see regressions, we can merge in ‘master’ (should
> take a day or two at most I suppose).
I pushed an ‘emacs-28’ branch (dropped the ‘wip-’ by accident), in
which emacs, emacs-next and emacs-next-pgtk are all updated. Native
compilation in emacs is still missing though, but someone with commit
access and enough time to spare could add it.
Cheers
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-28 16:58 ` Liliana Marie Prikler
@ 2022-04-29 3:22 ` Feng Shu
2022-04-29 18:53 ` Liliana Marie Prikler
0 siblings, 1 reply; 26+ messages in thread
From: Feng Shu @ 2022-04-29 3:22 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: Ludovic Courtès, Maxime Devos, 54829, zimoun
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> Hi,
>
> Am Donnerstag, dem 28.04.2022 um 14:15 +0200 schrieb Ludovic Courtès:
>> Perhaps you can push to a ‘wip-emacs-28’ branch, and then ping me or
>> another admin on #guix so we can tell ci.guix to build it. Once it’s
>> built and we don’t see regressions, we can merge in ‘master’ (should
>> take a day or two at most I suppose).
> I pushed an ‘emacs-28’ branch (dropped the ‘wip-’ by accident), in
> which emacs, emacs-next and emacs-next-pgtk are all updated. Native
What about add --with-xinput2 emacs-next, use version 2 of the X Input Extension for input
> compilation in emacs is still missing though, but someone with commit
> access and enough time to spare could add it.
>
> Cheers
--
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-29 3:22 ` Feng Shu
@ 2022-04-29 18:53 ` Liliana Marie Prikler
2022-04-29 21:56 ` [bug#54829] " tumashu
2022-05-18 4:13 ` Maxim Cournoyer
0 siblings, 2 replies; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-04-29 18:53 UTC (permalink / raw)
To: Feng Shu; +Cc: Ludovic Courtès, Maxime Devos, 54829, zimoun
Am Freitag, dem 29.04.2022 um 11:22 +0800 schrieb Feng Shu:
> Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
>
> > Hi,
> >
> > Am Donnerstag, dem 28.04.2022 um 14:15 +0200 schrieb Ludovic
> > Courtès:
> > > Perhaps you can push to a ‘wip-emacs-28’ branch, and then ping me
> > > or another admin on #guix so we can tell ci.guix to build it.
> > > Once it’s built and we don’t see regressions, we can merge in
> > > ‘master’ (should take a day or two at most I suppose).
> > I pushed an ‘emacs-28’ branch (dropped the ‘wip-’ by accident), in
> > which emacs, emacs-next and emacs-next-pgtk are all updated.
> > Native
>
> What about add --with-xinput2 emacs-next, use version 2 of the X
> Input Extension for input
I'm probably not up to date to all the Emacs stuff, but given that
"guix show xinput" only delivers 1.6, I don't think that's relevant
yet. Or is it?
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] Re: [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-29 18:53 ` Liliana Marie Prikler
@ 2022-04-29 21:56 ` tumashu
2022-05-18 4:13 ` Maxim Cournoyer
1 sibling, 0 replies; 26+ messages in thread
From: tumashu @ 2022-04-29 21:56 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: Ludovic Courtès, Maxime Devos, 54829, zimoun
[-- Attachment #1: Type: text/plain, Size: 1377 bytes --]
--
发自我的网易邮箱手机智能版
<br/><br/><br/>
----- Original Message -----
From: "Liliana Marie Prikler" <liliana.prikler@gmail.com>
To: "Feng Shu" <tumashu@163.com>
Cc: "Ludovic Courtès" <ludo@gnu.org>, "Maxime Devos" <maximedevos@telenet.be>, 54829@debbugs.gnu.org, zimoun <zimon.toutoune@gmail.com>
Sent: Fri, 29 Apr 2022 20:53:03 +0200
Subject: Re: [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
Am Freitag, dem 29.04.2022 um 11:22 +0800 schrieb Feng Shu:
> Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
>
> > Hi,
> >
> > Am Donnerstag, dem 28.04.2022 um 14:15 +0200 schrieb Ludovic
> > Courtès:
> > > Perhaps you can push to a ‘wip-emacs-28’ branch, and then ping me
> > > or another admin on #guix so we can tell ci.guix to build it.
> > > Once it’s built and we don’t see regressions, we can merge in
> > > ‘master’ (should take a day or two at most I suppose).
> > I pushed an ‘emacs-28’ branch (dropped the ‘wip-’ by accident), in
> > which emacs, emacs-next and emacs-next-pgtk are all updated.
> > Native
>
> What about add --with-xinput2 emacs-next, use version 2 of the X
> Input Extension for input
I'm probably not up to date to all the Emacs stuff, but given that
"guix show xinput" only delivers 1.6, I don't think that's relevant
yet. Or is it?
no, i think it use X11/extensions/XInput2.h
[-- Attachment #2: Type: text/html, Size: 2713 bytes --]
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-04-29 18:53 ` Liliana Marie Prikler
2022-04-29 21:56 ` [bug#54829] " tumashu
@ 2022-05-18 4:13 ` Maxim Cournoyer
2022-05-18 17:47 ` bug#54829: " Liliana Marie Prikler
1 sibling, 1 reply; 26+ messages in thread
From: Maxim Cournoyer @ 2022-05-18 4:13 UTC (permalink / raw)
To: Liliana Marie Prikler
Cc: Feng Shu, Ludovic Courtès, Maxime Devos, 54829, zimoun
Hi,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> Am Freitag, dem 29.04.2022 um 11:22 +0800 schrieb Feng Shu:
>> Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
>>
>> > Hi,
>> >
>> > Am Donnerstag, dem 28.04.2022 um 14:15 +0200 schrieb Ludovic
>> > Courtès:
>> > > Perhaps you can push to a ‘wip-emacs-28’ branch, and then ping me
>> > > or another admin on #guix so we can tell ci.guix to build it.
>> > > Once it’s built and we don’t see regressions, we can merge in
>> > > ‘master’ (should take a day or two at most I suppose).
>> > I pushed an ‘emacs-28’ branch (dropped the ‘wip-’ by accident), in
>> > which emacs, emacs-next and emacs-next-pgtk are all updated.
>> > Native
>>
>> What about add --with-xinput2 emacs-next, use version 2 of the X
>> Input Extension for input
> I'm probably not up to date to all the Emacs stuff, but given that
> "guix show xinput" only delivers 1.6, I don't think that's relevant
> yet. Or is it?
As it seems this change was merge, don't forget to close it if
everything mentioned here was taken care of :-)
Thanks,
Maxim
^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#54829: [PATCH 0/2] Update Emacs to 28.1 and add socket activation
2022-05-18 4:13 ` Maxim Cournoyer
@ 2022-05-18 17:47 ` Liliana Marie Prikler
0 siblings, 0 replies; 26+ messages in thread
From: Liliana Marie Prikler @ 2022-05-18 17:47 UTC (permalink / raw)
To: Maxim Cournoyer
Cc: Feng Shu, Ludovic Courtès, zimoun, Maxime Devos, 54829-done
Am Mittwoch, dem 18.05.2022 um 00:13 -0400 schrieb Maxim Cournoyer:
> As it seems this change was merge, don't forget to close it if
> everything mentioned here was taken care of :-)
Well, it's not literally "everything" related to Emacs 28, but it is at
least this series, so I'll mark it as done. Also deleted the emacs-28
branch as it's no longer relevant.
Cheers
^ permalink raw reply [flat|nested] 26+ messages in thread
* [bug#54829] Other emacs packages
2022-04-09 10:29 [bug#54829] [PATCH 0/2] Update Emacs to 28.1 and add socket activation Liliana Marie Prikler
` (7 preceding siblings ...)
2022-04-10 11:32 ` [bug#54829] [PATCH v3 " Liliana Marie Prikler
@ 2022-04-26 21:27 ` Luis Henrique Gomes Higino
8 siblings, 0 replies; 26+ messages in thread
From: Luis Henrique Gomes Higino @ 2022-04-26 21:27 UTC (permalink / raw)
To: 54829; +Cc: Liliana Marie Prikler
Hi Liliana,
I think the emacs-next packages should be updated as well on this
patch series. Also, you could add a version with
native-compilation, like we have for wide-int and xwidgets.
Regards,
--
Luis H. Higino
^ permalink raw reply [flat|nested] 26+ messages in thread