[PATCH] gnu: emacs: Update to 30.1

  • Done
  • quality assurance status badge
Details
3 participants
  • Morgan Smith
  • Liam Hupfer
  • Liliana Marie Prikler
Owner
unassigned
Submitted by
Morgan Smith
Severity
normal

Debbugs page

Morgan Smith wrote 2 weeks ago
[PATCH] gnu: emacs-next-minimal: Update to 30.1-rc1.
(address . guix-patches@gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
CH3PR84MB3424F5308F307B42D1A16A1EC5C02@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
* gnu/packages/emacs.scm (emacs-next-minimal): Update to 30.1-rc1.
[phases]: Work around the phase 'patch-program-file-names' expecting the file
"lisp/obsolete/terminal.el" in the same way that guile-emacs does.
(emacs->emacs-next)[phases]: Add the same workaround as above.

Change-Id: Ia83ee362fb70ec437b6930ae661b76cb14589b0b
---

Installed this locally on my system. Everything works as expected. It can
find the eln files just fine. Used it to native compile my local manifest of
Emacs packages and loaded those. Everything worked great. It found those eln
files. None of the eln files have a hash in their filename (as expected).

Honestly I was expecting to have to adjust the patches so I am pleasantly
surprised.

gnu/packages/emacs.scm | 32 ++++++++++++++++++++++++--------
1 file changed, 24 insertions(+), 8 deletions(-)

Toggle diff (70 lines)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index c5e671c6a9..2e59e85f6f 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -573,21 +573,19 @@ (define-public emacs-wide-int
#~(cons "--with-wide-int" #$flags))))))
(define-public emacs-next-minimal
- (let ((commit "881d593a9879f3355733f1b627af7cc0c12b429e")
- (revision "0"))
- (package
+ (package
(inherit emacs-minimal)
(name "emacs-next-minimal")
- (version (git-version "30.0.92" revision commit))
+ (version "30.1-rc1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.savannah.gnu.org/git/emacs.git")
- (commit commit)))
+ (commit (string-append "emacs-" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0nj3a7wsl5piqf6a8wnmfyjbpxp2dwl0r48flv9q624jx4nxfr2p"))
+ (base32 "172q4jsfhlccp5i9z7vsn9z1n8amdwb8ak1jqm7ybwpr5941whbr"))
(patches
(search-patches "emacs-disable-jit-compilation.patch"
"emacs-next-exec-path.patch"
@@ -595,7 +593,18 @@ (define-public emacs-next-minimal
"emacs-next-native-comp-driver-options.patch"
"emacs-next-native-comp-fix-filenames.patch"
"emacs-native-comp-pin-packages.patch"
- "emacs-pgtk-super-key-fix.patch")))))))
+ "emacs-pgtk-super-key-fix.patch"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments emacs-minimal)
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-before 'patch-program-file-names 'help-patch-progam-file-names
+ (lambda _
+ (call-with-output-file "lisp/obsolete/terminal.el"
+ (lambda (port) (display port)))))
+ (add-after 'patch-program-file-names 'remove-help-patch-progam-file-names
+ (lambda _
+ (delete-file "lisp/obsolete/terminal.el")))))))))
(define* (emacs->emacs-next emacs #:optional name
#:key (version (package-version emacs-next-minimal))
@@ -629,7 +638,14 @@ (define* (emacs->emacs-next emacs #:optional name
#$(local-file
(search-auxiliary-file
"emacs/comp-integrity-next.el"))
- "-f" "ert-run-tests-batch-and-exit")))))))))))
+ "-f" "ert-run-tests-batch-and-exit")))))
+ (add-before 'patch-program-file-names 'help-patch-progam-file-names
+ (lambda _
+ (call-with-output-file "lisp/obsolete/terminal.el"
+ (lambda (port) (display port)))))
+ (add-after 'patch-program-file-names 'remove-help-patch-progam-file-names
+ (lambda _
+ (delete-file "lisp/obsolete/terminal.el")))))))))
(define-public emacs-next (emacs->emacs-next emacs))
(define-public emacs-next-pgtk (emacs->emacs-next emacs-pgtk))

base-commit: 61428ccf41f21f5ea1e4f1eec722ef9b1efc3a0e
--
2.48.1
Liliana Marie Prikler wrote 2 weeks ago
043f08e74564c57ba07a9958afcf39df11bc1367.camel@gmail.com
Am Montag, dem 24.02.2025 um 14:53 -0500 schrieb Morgan Smith:
Toggle quote (4 lines)
> * gnu/packages/emacs.scm (emacs-next-minimal): Update to 30.1-rc1.
> [phases]: Work around the phase 'patch-program-file-names' expecting
> the file "lisp/obsolete/terminal.el" in the same way that guile-emacs
> does.
Since emacs-next-minimal is soon-to-become emacs proper, perhaps we
should instead replace ‘patch-program-file-names’. WDYT?
Toggle quote (13 lines)
> (emacs->emacs-next)[phases]: Add the same workaround as above.
>
> Change-Id: Ia83ee362fb70ec437b6930ae661b76cb14589b0b
> ---
>
> Installed this locally on my system.  Everything works as expected. 
> It can find the eln files just fine.  Used it to native compile my
> local manifest of Emacs packages and loaded those.  Everything worked
> great.  It found those eln files.  None of the eln files have a hash
> in their filename (as expected).
>
> Honestly I was expecting to have to adjust the patches so I am
> pleasantly surprised.
SGTM :)


Cheers
Morgan Smith wrote 2 weeks ago
[PATCH 1/4] gnu: emacs: Update to 30.1.
(address . 76529@debbugs.gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
CH3PR84MB342436240ACB59104B4D44D8C5C02@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
* gnu/packages/emacs.scm (emacs-minimal): Update to 30.1.
(guile-emacs): Remove now unneeded phase.
* gnu/packages/aux-files/emacs/comp-integrity.el: Update with new type names.
* gnu/packages/patches/emacs-exec-path.patch: Replace with 'emacs-next-...'
patch.
* gnu/packages/patches/emacs-native-comp-driver-options.patch: Likewise
* gnu/packages/patches/emacs-native-comp-fix-filenames.patch: Likewise

Change-Id: Ic144329bfe5a126a5d7e86dd0fdb726cf92de175
---
.../aux-files/emacs/comp-integrity.el | 6 +-
gnu/packages/emacs.scm | 9 +-
gnu/packages/patches/emacs-exec-path.patch | 26 +++---
.../emacs-native-comp-driver-options.patch | 7 +-
.../emacs-native-comp-fix-filenames.patch | 93 ++++++++++---------
5 files changed, 73 insertions(+), 68 deletions(-)

Toggle diff (309 lines)
diff --git a/gnu/packages/aux-files/emacs/comp-integrity.el b/gnu/packages/aux-files/emacs/comp-integrity.el
index abe7e7c0c9..4e8233a276 100644
--- a/gnu/packages/aux-files/emacs/comp-integrity.el
+++ b/gnu/packages/aux-files/emacs/comp-integrity.el
@@ -16,9 +16,9 @@
(let ((desc (substring-no-properties
(with-output-to-string
(help-fns-function-description-header ',fun)))))
- (cond ((string-search "native-compiled" desc) 'native)
- ((string-search "byte-compiled" desc) 'byte)
- ((string-search "built-in" desc) 'built-in)
+ (cond ((string-search "native-comp-function" desc) 'native)
+ ((string-search "byte-code-function" desc) 'byte)
+ ((string-search "primitive-function" desc) 'built-in)
(t nil))))))))
(defmacro expect-native (fun &optional feature)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index c5e671c6a9..4d14feb38b 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -100,7 +100,7 @@ (define (%emacs-modules build-system)
(define-public emacs-minimal
(package
(name "emacs-minimal")
- (version "29.4")
+ (version "30.1")
;; Note: When using (replacement …), ensure that comp-native-version-dir
;; stays the same across grafts.
;; Run `make check-system TESTS=emacs-native-comp' to ensure that grafts
@@ -111,7 +111,7 @@ (define-public emacs-minimal
version ".tar.xz"))
(sha256
(base32
- "0dd2mh6maa7dc5f49qdzj7bi4hda4wfm1cvvgq560djcz537k2ds"))
+ "13qkdx515qv7m8b2mpd37p16frs0xgl7bw8xvv397bz6fspc3jkc"))
(patches (search-patches "emacs-disable-jit-compilation.patch"
"emacs-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
@@ -172,7 +172,6 @@ (define-public emacs-minimal
"lisp/mail/feedmail.el"
"lisp/obsolete/pgg-pgp.el"
"lisp/obsolete/pgg-pgp5.el"
- "lisp/obsolete/terminal.el"
"lisp/org/ob-eval.el"
"lisp/textmodes/artist.el"
"lisp/progmodes/sh-script.el"
@@ -721,10 +720,6 @@ (define-public guile-emacs
;; Likewise, we don't need to patch helper binaries
;; like etags, ctags or ebrowse.
"^emacs(-[0-9]+(\\.[0-9]+)*)?$")))))
- (add-after 'unpack 'help-patch-progam-file-names
- (lambda _
- (call-with-output-file "lisp/obsolete/terminal.el"
- (lambda (port) (display port)))))
(add-after 'configure 'touch-lisp/finder-inf.el
(lambda _
(call-with-output-file "lisp/finder-inf.el"
diff --git a/gnu/packages/patches/emacs-exec-path.patch b/gnu/packages/patches/emacs-exec-path.patch
index 9a76b0237d..6e33e25258 100644
--- a/gnu/packages/patches/emacs-exec-path.patch
+++ b/gnu/packages/patches/emacs-exec-path.patch
@@ -2,15 +2,17 @@ Do not capture the build-time value of $PATH in the 'emacs' executable
since this can noticeably increase the size of the closure of Emacs
with things like GCC being referenced.
---- a/lisp/loadup.el
-+++ b/lisp/loadup.el
-@@ -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))))
-+ (exec-path nil))
- (when (and (featurep 'native-compile)
- (equal dump-mode "pdump"))
- ;; Don't enable this before bootstrap is completed, as the
+Index: emacs-next/lisp/loadup.el
+===================================================================
+--- emacs-next.orig/lisp/loadup.el
++++ emacs-next/lisp/loadup.el
+@@ -599,7 +599,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))))
++ (exec-path nil))
+ (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-native-comp-driver-options.patch b/gnu/packages/patches/emacs-native-comp-driver-options.patch
index 308c4f1212..e4ed5a48f1 100644
--- a/gnu/packages/patches/emacs-native-comp-driver-options.patch
+++ b/gnu/packages/patches/emacs-native-comp-driver-options.patch
@@ -2,12 +2,13 @@ We substitute this anyway, so let's make it easier to substitute.
--- a/lisp/emacs-lisp/comp.el
+++ b/lisp/emacs-lisp/comp.el
-@@ -178,8 +178,7 @@ and above."
+@@ -203,9 +203,7 @@ and above."
:type '(repeat string)
:version "28.1")
--(defcustom native-comp-driver-options (when (eq system-type 'darwin)
-- '("-Wl,-w"))
+-(defcustom native-comp-driver-options
+- (cond ((eq system-type 'darwin) '("-Wl,-w"))
+- ((eq system-type 'cygwin) '("-Wl,-dynamicbase")))
+(defcustom native-comp-driver-options nil
"Options passed verbatim to the native compiler's back-end driver.
Note that not all options are meaningful; typically only the options
diff --git a/gnu/packages/patches/emacs-native-comp-fix-filenames.patch b/gnu/packages/patches/emacs-native-comp-fix-filenames.patch
index 169323f290..7897fa9b04 100644
--- a/gnu/packages/patches/emacs-native-comp-fix-filenames.patch
+++ b/gnu/packages/patches/emacs-native-comp-fix-filenames.patch
@@ -12,11 +12,11 @@ way into the actual variable despite attempts to remove it by calling
The user-visible procedure ‘startup-redirect-eln-cache’ is kept, as
packages may require it, but only pushes the new value now.
-Index: emacs-29.2/src/comp.c
+Index: emacs-next/src/comp.c
===================================================================
---- emacs-29.2.orig/src/comp.c
-+++ emacs-29.2/src/comp.c
-@@ -4396,26 +4396,17 @@ DEFUN ("comp-el-to-eln-rel-filename", Fc
+--- emacs-next.orig/src/comp.c
++++ emacs-next/src/comp.c
+@@ -4403,26 +4403,17 @@ DEFUN ("comp-el-to-eln-rel-filename", Fc
Scomp_el_to_eln_rel_filename, 1, 1, 0,
doc: /* Return the relative name of the .eln file for FILENAME.
FILENAME must exist, and if it's a symlink, the target must exist.
@@ -49,7 +49,7 @@ Index: emacs-29.2/src/comp.c
if (NILP (Ffile_exists_p (filename)))
xsignal1 (Qfile_missing, filename);
-@@ -4423,64 +4414,55 @@ one for the file name and another for it
+@@ -4430,64 +4421,55 @@ one for the file name and another for it
filename = Fw32_long_file_name (filename);
#endif
@@ -157,7 +157,7 @@ Index: emacs-29.2/src/comp.c
}
DEFUN ("comp-el-to-eln-filename", Fcomp_el_to_eln_filename,
-@@ -4494,13 +4476,7 @@ If BASE-DIR is non-nil, use it as the di
+@@ -4501,13 +4483,7 @@ If BASE-DIR is non-nil, use it as the di
non-absolute BASE-DIR is interpreted as relative to `invocation-directory'.
If BASE-DIR is omitted or nil, look for the first writable directory
in `native-comp-eln-load-path', and use as BASE-DIR its subdirectory
@@ -172,7 +172,7 @@ Index: emacs-29.2/src/comp.c
(Lisp_Object filename, Lisp_Object base_dir)
{
Lisp_Object source_filename = filename;
-@@ -4548,10 +4524,11 @@ the latter is supposed to be used by the
+@@ -4555,10 +4531,11 @@ the latter is supposed to be used by the
Lisp_Object lisp_preloaded =
Fgetenv_internal (build_string ("LISP_PRELOADED"), Qnil);
base_dir = Fexpand_file_name (Vcomp_native_version_dir, base_dir);
@@ -186,7 +186,7 @@ Index: emacs-29.2/src/comp.c
CALL1I (split-string, lisp_preloaded))))))
base_dir = Fexpand_file_name (build_string ("preloaded"), base_dir);
-@@ -5863,10 +5840,7 @@ The last directory of this list is assum
+@@ -5875,10 +5852,7 @@ The last directory of this list is assum
the system *.eln files, which are the files produced when building
Emacs. */);
@@ -198,11 +198,11 @@ Index: emacs-29.2/src/comp.c
DEFVAR_LISP ("native-comp-enable-subr-trampolines",
Vnative_comp_enable_subr_trampolines,
-Index: emacs-29.2/lisp/startup.el
+Index: emacs-next/lisp/startup.el
===================================================================
---- emacs-29.2.orig/lisp/startup.el
-+++ emacs-29.2/lisp/startup.el
-@@ -545,9 +545,6 @@ DIRS are relative."
+--- emacs-next.orig/lisp/startup.el
++++ emacs-next/lisp/startup.el
+@@ -527,9 +527,6 @@ DIRS are relative."
(defvar native-comp-jit-compilation)
(defvar native-comp-enable-subr-trampolines)
@@ -212,7 +212,7 @@ Index: emacs-29.2/lisp/startup.el
(defun startup-redirect-eln-cache (cache-directory)
"Redirect the user's eln-cache directory to CACHE-DIRECTORY.
CACHE-DIRECTORY must be a single directory, a string.
-@@ -558,22 +555,10 @@ to `user-emacs-directory'.
+@@ -540,22 +537,10 @@ to `user-emacs-directory'.
For best results, call this function in your early-init file,
so that the rest of initialization and package loading uses
the updated value."
@@ -232,10 +232,10 @@ Index: emacs-29.2/lisp/startup.el
- (setq startup--original-eln-load-path
- (copy-sequence native-comp-eln-load-path))))
-
- (defun normal-top-level ()
- "Emacs calls this function when it first starts up.
- It sets `command-line-processed', processes the command-line,
-@@ -1362,12 +1347,6 @@ please check its value")
+ (defun startup--rescale-elt-match-p (font-pattern font-object)
+ "Test whether FONT-OBJECT matches an element of `face-font-rescale-alist'.
+ FONT-OBJECT is a font-object that specifies a font to test.
+@@ -1383,12 +1368,6 @@ please check its value")
startup-init-directory)))
(setq early-init-file user-init-file)
@@ -248,7 +248,7 @@ Index: emacs-29.2/lisp/startup.el
;; If any package directory exists, initialize the package system.
(and user-init-file
package-enable-at-startup
-@@ -1502,12 +1481,6 @@ please check its value")
+@@ -1523,12 +1502,6 @@ please check its value")
startup-init-directory))
t)
@@ -261,10 +261,10 @@ Index: emacs-29.2/lisp/startup.el
(when (and deactivate-mark transient-mark-mode)
(with-current-buffer (window-buffer)
(deactivate-mark)))
-Index: emacs-29.2/lisp/loadup.el
+Index: emacs-next/lisp/loadup.el
===================================================================
---- emacs-29.2.orig/lisp/loadup.el
-+++ emacs-29.2/lisp/loadup.el
+--- emacs-next.orig/lisp/loadup.el
++++ emacs-next/lisp/loadup.el
@@ -53,6 +53,14 @@
(setq redisplay--inhibit-bidi t)
@@ -280,9 +280,16 @@ Index: emacs-29.2/lisp/loadup.el
;; Add subdirectories to the load-path for files that might get
;; autoloaded when bootstrapping or running Emacs normally.
-@@ -494,22 +502,20 @@ lost after dumping")))
- (concat eln-dest-dir "native-lisp/" comp-native-version-dir "/"))
+@@ -538,27 +546,25 @@ This to have it working when installed o
+ directory got moved. This is set to be a pair in the form of:
+ \(rel-filename-from-install-bin . rel-filename-from-local-bin)."
+ (when (and load--bin-dest-dir load--eln-dest-dir)
+- (setq eln-dest-dir
+- (concat load--eln-dest-dir "native-lisp/" comp-native-version-dir "/"))
++ (setq load--eln-versioned-dest-dir
++ (concat load--eln-dest-dir "native-lisp/" comp-native-version-dir "/"))
(maphash (lambda (_ cu)
+ (when (stringp (native-comp-unit-file cu))
(let* ((file (native-comp-unit-file cu))
- (preloaded (equal (substring (file-name-directory file)
- -10 -1)
@@ -302,33 +309,33 @@ Index: emacs-29.2/lisp/loadup.el
- (file-name-nondirectory
- file)
- eln-dest-dir-eff)
-- bin-dest-dir)
+- load--bin-dest-dir)
+ (file-relative-name
+ (expand-file-name
+ (save-match-data
+ (string-match native-lisp-needle file)
+ (substring file (match-end 0)))
-+ eln-dest-dir)
-+ bin-dest-dir)
++ load--eln-versioned-dest-dir)
++ load--bin-dest-dir)
;; Relative filename from the built uninstalled binary.
- (file-relative-name file invocation-directory)))))
- comp-loaded-comp-units-h)))
-@@ -557,7 +563,9 @@ lost after dumping")))
- (equal dump-mode "pdump"))
- ;; Don't enable this before bootstrap is completed, as the
- ;; compiler infrastructure may not be usable yet.
-- (setq native-comp-enable-subr-trampolines t))
-+ (setq native-comp-enable-subr-trampolines t
-+ ;; We loaded everything we could.
-+ comp-file-preloaded-p nil))
- (message "Dumping under the name %s" output)
- (condition-case ()
- (delete-file output)
-Index: emacs-29.2/src/Makefile.in
+ (file-relative-name file invocation-directory))))))
+ comp-loaded-comp-units-h)))
+@@ -644,7 +650,9 @@ directory got moved. This is set to be
+ (equal dump-mode "pdump"))
+ ;; Don't enable this before bootstrap is completed, as the
+ ;; compiler infrastructure may not be usable yet.
+- (setq native-comp-enable-subr-trampolines t))
++ (setq native-comp-enable-subr-trampolines t
++ ;; We loaded everything we could.
++ comp-file-preloaded-p nil))
+ (message "Dumping under the name %s" output)
+ (condition-case ()
+ (delete-file output)
+Index: emacs-next/src/Makefile.in
===================================================================
---- emacs-29.2.orig/src/Makefile.in
-+++ emacs-29.2/src/Makefile.in
-@@ -553,6 +553,7 @@ shortlisp := $(filter-out ${shortlisp_fi
+--- emacs-next.orig/src/Makefile.in
++++ emacs-next/src/Makefile.in
+@@ -591,6 +591,7 @@ shortlisp := $(filter-out ${shortlisp_fi
## We don't really need to sort, but may as well use it to remove duplicates.
shortlisp := loaddefs.el loadup.el $(sort ${shortlisp})
export LISP_PRELOADED = ${shortlisp}

base-commit: 61428ccf41f21f5ea1e4f1eec722ef9b1efc3a0e
--
2.48.1
Morgan Smith wrote 2 weeks ago
[PATCH 2/4] gnu: emacs-next: Update to 31.0.50-0.60232a3.
(address . 76529@debbugs.gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
CH3PR84MB342403FFA00175038116BADEC5C02@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
* gnu/packages/emacs.scm (emacs-next-minimal): Update to 31.0.50-0.60232a3.
* gnu/packages/patches/emacs-next-exec-path.patch: Regenerate.
* gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch: Regenerate.
* gnu/packages/patches/emacs-next-native-comp-driver-options.patch: Delete.
* gnu/local.mk: Remove deleted patch.

Change-Id: Id89d7445a978566139b7c0a7d15f8c5eac2d111e
---
gnu/local.mk | 1 -
gnu/packages/emacs.scm | 10 +-
.../patches/emacs-next-exec-path.patch | 28 +-
...macs-next-native-comp-driver-options.patch | 18 -
...emacs-next-native-comp-fix-filenames.patch | 325 +++++++++---------
5 files changed, 189 insertions(+), 193 deletions(-)
delete mode 100644 gnu/packages/patches/emacs-next-native-comp-driver-options.patch

Toggle diff (352 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 45a9cb635e..48711dc385 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1229,7 +1229,6 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-native-comp-fix-filenames.patch \
%D%/packages/patches/emacs-native-comp-pin-packages.patch \
%D%/packages/patches/emacs-next-exec-path.patch \
- %D%/packages/patches/emacs-next-native-comp-driver-options.patch \
%D%/packages/patches/emacs-next-native-comp-fix-filenames.patch \
%D%/packages/patches/emacs-pasp-mode-quote-file-names.patch \
%D%/packages/patches/emacs-pgtk-super-key-fix.patch \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 4d14feb38b..5de87720b4 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -572,12 +572,12 @@ (define-public emacs-wide-int
#~(cons "--with-wide-int" #$flags))))))
(define-public emacs-next-minimal
- (let ((commit "881d593a9879f3355733f1b627af7cc0c12b429e")
+ (let ((commit "60232a30e360c00fb303cb033d4aec15a9e41342")
(revision "0"))
- (package
+ (package
(inherit emacs-minimal)
(name "emacs-next-minimal")
- (version (git-version "30.0.92" revision commit))
+ (version (git-version "31.0.50" revision commit))
(source
(origin
(method git-fetch)
@@ -586,12 +586,12 @@ (define-public emacs-next-minimal
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32 "0nj3a7wsl5piqf6a8wnmfyjbpxp2dwl0r48flv9q624jx4nxfr2p"))
+ (base32 "1n1i20j92a8sqv224yzvyzk804h9x0lgyp3jlny3b6g08ka91034"))
(patches
(search-patches "emacs-disable-jit-compilation.patch"
"emacs-next-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
- "emacs-next-native-comp-driver-options.patch"
+ "emacs-native-comp-driver-options.patch"
"emacs-next-native-comp-fix-filenames.patch"
"emacs-native-comp-pin-packages.patch"
"emacs-pgtk-super-key-fix.patch")))))))
diff --git a/gnu/packages/patches/emacs-next-exec-path.patch b/gnu/packages/patches/emacs-next-exec-path.patch
index 6e33e25258..d815301578 100644
--- a/gnu/packages/patches/emacs-next-exec-path.patch
+++ b/gnu/packages/patches/emacs-next-exec-path.patch
@@ -1,18 +1,24 @@
-Do not capture the build-time value of $PATH in the 'emacs' executable
-since this can noticeably increase the size of the closure of Emacs
-with things like GCC being referenced.
+Do not capture the build-time value of $PATH in the 'emacs'
+executable since this can noticeably increase the size of the closure of
+Emacs with things like GCC being referenced.
+---
+ lisp/loadup.el | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
-Index: emacs-next/lisp/loadup.el
-===================================================================
---- emacs-next.orig/lisp/loadup.el
-+++ emacs-next/lisp/loadup.el
-@@ -599,7 +599,8 @@ lost after dumping")))
- ((equal dump-mode "dump") "emacs")
- ((equal dump-mode "bootstrap") "emacs")
- ((equal dump-mode "pbootstrap") "bootstrap-emacs.pdmp")
+diff --git a/lisp/loadup.el b/lisp/loadup.el
+index 9089da9a988..3d1b9e45dd1 100644
+--- a/lisp/loadup.el
++++ b/lisp/loadup.el
+@@ -603,7 +603,8 @@ comp-subr-arities-h
+ (if (eq system-type 'ms-dos)
+ "b-emacs.pdmp"
+ "bootstrap-emacs.pdmp"))
- (t (error "Unrecognized dump mode %s" dump-mode)))))
+ (t (error "Unrecognized dump mode %s" dump-mode))))
+ (exec-path nil))
(when (and (featurep 'native-compile)
(equal dump-mode "pdump"))
;; Don't enable this before bootstrap is completed, as the
+--
+2.48.1
+
diff --git a/gnu/packages/patches/emacs-next-native-comp-driver-options.patch b/gnu/packages/patches/emacs-next-native-comp-driver-options.patch
deleted file mode 100644
index e4ed5a48f1..0000000000
--- a/gnu/packages/patches/emacs-next-native-comp-driver-options.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-We substitute this anyway, so let's make it easier to substitute.
-
---- a/lisp/emacs-lisp/comp.el
-+++ b/lisp/emacs-lisp/comp.el
-@@ -203,9 +203,7 @@ and above."
- :type '(repeat string)
- :version "28.1")
-
--(defcustom native-comp-driver-options
-- (cond ((eq system-type 'darwin) '("-Wl,-w"))
-- ((eq system-type 'cygwin) '("-Wl,-dynamicbase")))
-+(defcustom native-comp-driver-options nil
- "Options passed verbatim to the native compiler's back-end driver.
- Note that not all options are meaningful; typically only the options
- affecting the assembler and linker are likely to be useful.
---
-2.38.0
-
diff --git a/gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch b/gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch
index 7897fa9b04..830d58cc00 100644
--- a/gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch
+++ b/gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch
@@ -11,12 +11,163 @@ way into the actual variable despite attempts to remove it by calling
‘startup--update-eln-cache’.
The user-visible procedure ‘startup-redirect-eln-cache’ is kept, as
packages may require it, but only pushes the new value now.
+---
+ lisp/loadup.el | 38 ++++++++------
+ lisp/startup.el | 27 ----------
+ src/Makefile.in | 1 +
+ src/comp.c | 134 +++++++++++++++++++-----------------------------
+ 4 files changed, 78 insertions(+), 122 deletions(-)
-Index: emacs-next/src/comp.c
-===================================================================
---- emacs-next.orig/src/comp.c
-+++ emacs-next/src/comp.c
-@@ -4403,26 +4403,17 @@ DEFUN ("comp-el-to-eln-rel-filename", Fc
+diff --git a/lisp/loadup.el b/lisp/loadup.el
+index 3d1b9e45dd1..398ecfd519e 100644
+--- a/lisp/loadup.el
++++ b/lisp/loadup.el
+@@ -53,6 +53,14 @@
+ (setq redisplay--inhibit-bidi t)
+
+ (message "Dump mode: %s" dump-mode)
++;; Compensate for native-comp-eln-load-path being empty by Guix' default.
++(and (featurep 'native-compile)
++ dump-mode
++ (setq
++ native-comp-eln-load-path
++ (cons (expand-file-name "../native-lisp" invocation-directory)
++ native-comp-eln-load-path)
++ comp-file-preloaded-p t))
+
+ ;; Add subdirectories to the load-path for files that might get
+ ;; autoloaded when bootstrapping or running Emacs normally.
+@@ -522,27 +530,25 @@ load--fixup-all-elns
+ directory got moved. This is set to be a pair in the form of:
+ \(rel-filename-from-install-bin . rel-filename-from-local-bin)."
+ (when (and load--bin-dest-dir load--eln-dest-dir)
+- (setq eln-dest-dir
+- (concat load--eln-dest-dir "native-lisp/" comp-native-version-dir "/"))
++ (setq load--eln-versioned-dest-dir
++ (concat load--eln-dest-dir "native-lisp/" comp-native-version-dir "/"))
+ (maphash (lambda (_ cu)
+ (when (stringp (native-comp-unit-file cu))
+ (let* ((file (native-comp-unit-file cu))
+- (preloaded (equal (substring (file-name-directory file)
+- -10 -1)
+- "preloaded"))
+- (eln-dest-dir-eff (if preloaded
+- (expand-file-name "preloaded"
+- eln-dest-dir)
+- eln-dest-dir)))
++ (native-lisp-needle
++ (regexp-quote (concat "native-lisp/"
++ comp-native-version-dir "/"))))
+ (native-comp-unit-set-file
+ cu
+ (cons
+ ;; Relative filename from the installed binary.
+- (file-relative-name (expand-file-name
+- (file-name-nondirectory
+- file)
+- eln-dest-dir-eff)
+- load--bin-dest-dir)
++ (file-relative-name
++ (expand-file-name
++ (save-match-data
++ (string-match native-lisp-needle file)
++ (substring file (match-end 0)))
++ load--eln-versioned-dest-dir)
++ load--bin-dest-dir)
+ ;; Relative filename from the built uninstalled binary.
+ (file-relative-name file invocation-directory))))))
+ comp-loaded-comp-units-h)))
+@@ -609,7 +615,9 @@ comp-subr-arities-h
+ (equal dump-mode "pdump"))
+ ;; Don't enable this before bootstrap is completed, as the
+ ;; compiler infrastructure may not be usable yet.
+- (setq native-comp-enable-subr-trampolines t))
++ (setq native-comp-enable-subr-trampolines t
++ ;; We loaded everything we could.
++ comp-file-preloaded-p nil))
+ (message "Dumping under the name %s" output)
+ (condition-case ()
+ (delete-file output)
+diff --git a/lisp/startup.el b/lisp/startup.el
+index c240fbbe28a..f038ace6695 100644
+--- a/lisp/startup.el
++++ b/lisp/startup.el
+@@ -520,9 +520,6 @@ native-comp-eln-load-path
+ (defvar native-comp-jit-compilation)
+ (defvar native-comp-enable-subr-trampolines)
+
+-(defvar startup--original-eln-load-path nil
+- "Original value of `native-comp-eln-load-path'.")
+-
+ (defun startup-redirect-eln-cache (cache-directory)
+ "Redirect the user's eln-cache directory to CACHE-DIRECTORY.
+ CACHE-DIRECTORY must be a single directory, a string.
+@@ -533,22 +530,10 @@ startup-redirect-eln-cache
+ For best results, call this function in your early-init file,
+ so that the rest of initialization and package loading uses
+ the updated value."
+- ;; Remove the original eln-cache.
+- (setq native-comp-eln-load-path (cdr native-comp-eln-load-path))
+- ;; Add the new eln-cache.
+ (push (expand-file-name (file-name-as-directory cache-directory)
+ user-emacs-directory)
+ native-comp-eln-load-path))
+
+-(defun startup--update-eln-cache ()
+- "Update the user eln-cache directory due to user customizations."
+- ;; Don't override user customizations!
+- (when (equal native-comp-eln-load-path
+- startup--original-eln-load-path)
+- (startup-redirect-eln-cache "eln-cache")
+- (setq startup--original-eln-load-path
+- (copy-sequence native-comp-eln-load-path))))
+-
+ (defun startup--rescale-elt-match-p (font-pattern font-object)
+ "Test whether FONT-OBJECT matches an element of `face-font-rescale-alist'.
+ FONT-OBJECT is a font-object that specifies a font to test.
+@@ -1385,12 +1370,6 @@ command-line
+ startup-init-directory)))
+ (setq early-init-file user-init-file)
+
+- ;; Amend `native-comp-eln-load-path', since the early-init file may
+- ;; have altered `user-emacs-directory' and/or changed the eln-cache
+- ;; directory.
+- (when (featurep 'native-compile)
+- (startup--update-eln-cache))
+-
+ ;; If any package directory exists, initialize the package system.
+ (and user-init-file
+ package-enable-at-startup
+@@ -1525,12 +1504,6 @@ command-line
+ startup-init-directory))
+ t)
+
+- ;; Amend `native-comp-eln-load-path' again, since the early-init
+- ;; file may have altered `user-emacs-directory' and/or changed the
+- ;; eln-cache directory.
+- (when (featurep 'native-compile)
+- (startup--update-eln-cache))
+-
+ (when (and deactivate-mark transient-mark-mode)
+ (with-current-buffer (window-buffer)
+ (deactivate-mark)))
+diff --git a/src/Makefile.in b/src/Makefile.in
+index 8296329f136..13f1cb2eeda 100644
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -567,6 +567,7 @@ shortlisp :=
+ ## We don't really need to sort, but may as well use it to remove duplicates.
+ shortlisp := loaddefs.el loadup.el $(sort ${shortlisp})
+ export LISP_PRELOADED = ${shortlisp}
++export NATIVE_COMP_BOGUS_DIRS =
+ lisp = $(addprefix ${lispsource}/,${shortlisp})
+
+ ## Construct full set of libraries to be linked.
+diff --git a/src/comp.c b/src/comp.c
+index 36c45f1315d..e9d1bce555b 100644
+--- a/src/comp.c
++++ b/src/comp.c
+@@ -4279,26 +4279,17 @@ DEFUN ("comp-el-to-eln-rel-filename", Fcomp_el_to_eln_rel_filename,
Scomp_el_to_eln_rel_filename, 1, 1, 0,
doc: /* Return the relative name of the .eln file for FILENAME.
FILENAME must exist, and if it's a symlink, the target must exist.
@@ -49,7 +200,7 @@ Index: emacs-next/src/comp.c
if (NILP (Ffile_exists_p (filename)))
xsignal1 (Qfile_missing, filename);
-@@ -4430,64 +4421,55 @@ one for the file name and another for it
+@@ -4306,64 +4297,55 @@ DEFUN ("comp-el-to-eln-rel-filename", Fcomp_el_to_eln_rel_filename,
filename = Fw32_long_file_name (filename);
#endif
@@ -131,7 +282,7 @@ Index: emacs-next/src/comp.c
+
+ if (!NILP (bogus_dirs))
+ {
-+ tail = CALL2I (split-string, bogus_dirs, build_string (":"));
++ tail = CALLNI (split-string, bogus_dirs, build_string (":"));
+
+ FOR_EACH_TAIL_SAFE (tail)
+ {
@@ -157,7 +308,7 @@ Index: emacs-next/src/comp.c
}
DEFUN ("comp-el-to-eln-filename", Fcomp_el_to_eln_filename,
-@@ -4501,13 +4483,7 @@ If BASE-DIR is non-nil, use it as the di
+@@ -4377,13 +4359,7 @@ DEFUN ("comp-el-to-eln-filename", Fcomp_el_to_eln_filename,
non-absolute BASE-DIR is interpreted as relative to `invocation-directory'.
If BASE-DIR is omitted or nil, look for the first writable directory
in `native-comp-eln-load-path', and use as BASE-DIR its subdirectory
@@ -172,21 +323,21 @@ Index: emacs-next/src/comp.c
(Lisp_Object filename, Lisp_Object base_dir)
{
Lisp_Object source_filename = filename;
-@@ -4555,10 +4531,11 @@ the latter is supposed to be used by the
+@@ -4431,10 +4407,11 @@ DEFUN ("comp-el-to-eln-filename", Fcomp_el_to_eln_filename,
Lisp_Object lisp_preloaded =
Fgetenv_internal (build_string ("LISP_PRELOADED"), Qnil);
base_dir = Fexpand_file_name (Vcomp_native_version_dir, base_dir);
+ bool preloaded = comp_file_preloaded_p;
if (comp_file_preloaded_p
|| (!NILP (lisp_preloaded)
-- && !NILP (Fmember (CALL1I (file-name-base, source_filename),
+- && !NILP (Fmember (CALLNI (file-name-base, source_filename),
- Fmapcar (intern_c_string ("file-name-base"),
-+ && !NILP (Fmember (CALL1I (file-name-sans-extension, source_filename),
++ && !NILP (Fmember (CALLNI (file-name-sans-extension, source_filename),
+ Fmapcar (intern_c_string ("file-name-sans-extension"),
- CALL1I (split-string, lisp_preloaded))))))
+ CALLNI (split-string, lisp_preloaded))))))
base_dir = Fexpand_file_name (build_string ("preloaded"), base_dir);
-@@ -5875,10 +5852,7 @@ The last directory of this list is assum
+@@ -5741,10 +5718,7 @@ syms_of_comp (void)
the system *.eln files, which are the files produced when building
Emacs. */);
@@ -198,148 +349,6 @@ Index: emacs-next/src/comp.c
DEFVAR_LISP ("native-comp-enable-subr-trampolines",
Vnative_comp_enable_subr_trampolines,
-Index: emacs-next/lisp/startup.el
-===================================================================
---- emacs-next.orig/lisp/startup.el
-+++ emacs-next/lisp/startup.el
-@@ -527,9 +527,6 @@ DIRS are relative."
- (defvar native-comp-jit-compilation)
- (defvar native-comp-enable-subr-trampolines)
-
--(defvar startup--original-eln-load-path nil
-- "Original value of `native-comp-eln-load-path'.")
--
- (defun startup-redirect-eln-cache (cache-directory)
- "Redirect the user's eln-cache directory to CACHE-DIRECTORY.
- CACHE-DIRECTORY must be a single directory, a string.
-@@ -540,22 +537,10 @@ to `user-emacs-directory'.
- For best results, call this function in your early-init file,
- so that the rest of initialization and package loading uses
- the updated value."
-- ;; Remove the original eln-cache.
-- (setq native-comp-eln-load-path (cdr native-comp-eln-load-path))
-- ;; Add the new eln-cache.
- (push (expand-file-name (file-name-as-directory cache-directory)
- user-emacs-directory)
- native-comp-eln-load-path))
-
--(defun startup--update-eln-cache ()
-- "Update the user eln-cache directory due to user customizations."
-- ;; Don't override user customizations!
-- (when (equal native-comp-eln-load-path
-- startup--original-eln-load-path)
-- (startup-redirect-eln-cache "eln-cache")
-- (setq startup--original-eln-load-path
-- (copy-sequence native-comp-eln-load-path))))
--
- (defun startup--rescale-elt-match-p (font-pattern font-object)
- "Test whether FONT-OBJECT matches an element of `face-font-rescale-alist'.
- FONT-OBJECT is a font-object that specifies a font to test.
-@@ -1383,12 +1368,6 @@ please check its value")
- startup-init-directory)))
- (setq early-init-file user-init-file)
-
-- ;; Amend `native-comp-eln-load-path', since the early-init file may
-- ;; have altered `user-emacs-directory' and/or changed the eln-cache
-- ;; directory.
-- (when (featurep 'native-compile)
-- (startup--update-eln-cache))
--
- ;; If any package directory exists, initialize the package system.
- (and user-init-file
- package-enable-at-startup
-@@ -1523,12 +1502,6 @@ please check its value")
- startup-init-directory))
- t)
-
-- ;; Amend `native-comp-eln-load-path' again, since the early-init
-- ;; file may have altered `user-emacs-directory' and/or changed the
-- ;; eln-cache directory.
-- (when (featurep 'native-compile)
-- (startup--update-eln-cache))
--
- (when (and deactivate-mark transient-mark-mode)
- (with-current-buffer (window-buffer)
- (deactivate-mark)))
-Index: emacs-next/lisp/loadup.el
-===================================================================
---- emacs-next.orig/lisp/loadup.el
-+++ emacs-next/lisp/loadup.el
-@@ -53,6 +53,14 @@
- (setq redisplay--inhibit-bidi t)
-
- (message "Dump mode: %s" dump-mode)
-+;; Compensate for native-comp-eln-load-path being empty by Guix' default.
-+(and (featurep 'native-compile)
-+ dump-mode
-+ (setq
-+ native-comp-eln-load-path
-+ (cons (expand-file-name "../native-lisp" invocation-directory)
-+ native-comp-eln-load-path)
-+ comp-file-preloaded-p t))
-
- ;; Add subdirectories to the load-path for files that might get
- ;; autoloaded when bootstrapping or running Emacs normally.
-@@ -538,27 +546,25 @@ This to have it working when installed o
- directory got moved. This is set to be a pair in the form of:
- \(rel-filename-from-install-bin . rel-filename-from-local-bin)."
- (when (and load--bin-dest
This message was truncated. Download the full message here.
Morgan Smith wrote 2 weeks ago
[PATCH 3/4] guix: emacs-utils: Be more verbose in build phase.
(address . 76529@debbugs.gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
CH3PR84MB3424C1BCFD14C21CBD3F7781C5C02@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
* guix/build/emacs-utils.scm (emacs-compile-directory): Display the filename
of each file before compiling.

Change-Id: I275a086ed92f7cfb2907aea9b4feb59012cc8dd5
---
guix/build/emacs-utils.scm | 1 +
1 file changed, 1 insertion(+)

Toggle diff (14 lines)
diff --git a/guix/build/emacs-utils.scm b/guix/build/emacs-utils.scm
index aeb364133a..729dd2bdc4 100644
--- a/guix/build/emacs-utils.scm
+++ b/guix/build/emacs-utils.scm
@@ -146,6 +146,7 @@ (define* (emacs-compile-directory dir)
'comp--write-bytecode-file)))))
(mapc
(lambda (file)
+ (message "Compiling `%s'" (file-relative-name file ,dir))
(let (byte-to-native-output-buffer-file
;; First entry is the eln-cache of the homeless shelter,
;; second entry is the install directory.
--
2.48.1
Morgan Smith wrote 2 weeks ago
[PATCH 4/4] teams: Register the comp-integrity.el file to the Emacs team.
(address . 76529@debbugs.gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
CH3PR84MB34248A507F29119ADBBD9198C5C02@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
* etc/teams.scm (emacs): Add the
"gnu/packages/aux-files/emacs/comp-integrity.el" file to the scope of the Emacs
team.

Change-Id: I66014b94e73fd87eeb3aceaf5f61f08abc875c44
---
etc/teams.scm | 1 +
1 file changed, 1 insertion(+)

Toggle diff (14 lines)
diff --git a/etc/teams.scm b/etc/teams.scm
index 33730155a0..f2bbb43f9a 100755
--- a/etc/teams.scm
+++ b/etc/teams.scm
@@ -317,6 +317,7 @@ (define-team emacs
#:description "The extensible, customizable text editor and its
ecosystem."
#:scope (list "gnu/packages/aux-files/emacs/guix-emacs.el"
+ "gnu/packages/aux-files/emacs/comp-integrity.el"
(make-regexp* "^gnu/packages/emacs(-.+|)\\.scm$")
"gnu/packages/tree-sitter.scm"
"guix/build/emacs-build-system.scm"
--
2.48.1
Morgan Smith wrote 2 weeks ago
control message for bug #76529
(address . control@debbugs.gnu.org)
CH3PR84MB3424F6DF11688A62D689F980C5C02@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
retitle 76529 [PATCH] gnu: emacs: Update to 30.1
quit
Morgan Smith wrote 2 weeks ago
Re: [bug#76529] [PATCH] gnu: emacs-next-minimal: Update to 30.1-rc1.
(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
CH3PR84MB3424CC8EE33FEBB4F44E6CD8C5C02@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:

Toggle quote (8 lines)
> Am Montag, dem 24.02.2025 um 14:53 -0500 schrieb Morgan Smith:
>> * gnu/packages/emacs.scm (emacs-next-minimal): Update to 30.1-rc1.
>> [phases]: Work around the phase 'patch-program-file-names' expecting
>> the file "lisp/obsolete/terminal.el" in the same way that guile-emacs
>> does.
> Since emacs-next-minimal is soon-to-become emacs proper, perhaps we
> should instead replace ‘patch-program-file-names’. WDYT?

I did not realize Emacs had a new release as of yesterday. I suppose
that was something I was supposed to check before sending in this patch
:P.

Anyways enjoy the new patch series I sent to update emacs.

Do we have some patch QA thing running at the moment? I'm curious how
much my patch series ruins everything.

Toggle quote (16 lines)
>> (emacs->emacs-next)[phases]: Add the same workaround as above.
>>
>> Change-Id: Ia83ee362fb70ec437b6930ae661b76cb14589b0b
>> ---
>>
>> Installed this locally on my system.  Everything works as expected. 
>> It can find the eln files just fine.  Used it to native compile my
>> local manifest of Emacs packages and loaded those.  Everything worked
>> great.  It found those eln files.  None of the eln files have a hash
>> in their filename (as expected).
>>
>> Honestly I was expecting to have to adjust the patches so I am
>> pleasantly surprised.
> SGTM :)
>
> Cheers
Liliana Marie Prikler wrote 2 weeks ago
Re: [bug#76529] [PATCH 2/4] gnu: emacs-next: Update to 31.0.50-0.60232a3.
b39f2452d5960a356cd2dfaa1cc1d71ddfb2ae44.camel@gmail.com
Am Montag, dem 24.02.2025 um 17:56 -0500 schrieb Morgan Smith:
Toggle quote (8 lines)
> * gnu/packages/emacs.scm (emacs-next-minimal): Update to 31.0.50-
> 0.60232a3.
> * gnu/packages/patches/emacs-next-exec-path.patch: Regenerate.
> * gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch:
> Regenerate.
> * gnu/packages/patches/emacs-next-native-comp-driver-options.patch:
> Delete.
> * gnu/local.mk: Remove deleted patch.
Please use quilt to regenerate the patches, to make the diffs more
manageable. Also, check whether we can use the ones for emacs itself.

Cheers
Liliana Marie Prikler wrote 2 weeks ago
Re: [bug#76529] [PATCH 1/4] gnu: emacs: Update to 30.1.
23595833a1637d8807c0d52765a844cc2bcf5964.camel@gmail.com
Am Montag, dem 24.02.2025 um 17:56 -0500 schrieb Morgan Smith:
Toggle quote (4 lines)
> * gnu/packages/emacs.scm (emacs-minimal): Update to 30.1.
> (guile-emacs): Remove now unneeded phase.
> * gnu/packages/aux-files/emacs/comp-integrity.el: Update with new
> type names.
There should be a comp-integrity-next.el that you should use to replace
this file with.
Toggle quote (3 lines)
> * gnu/packages/patches/emacs-exec-path.patch: Replace with 'emacs-
> next-...'
> patch.
Write these out.
Toggle quote (4 lines)
> * gnu/packages/patches/emacs-native-comp-driver-options.patch:
> Likewise
> * gnu/packages/patches/emacs-native-comp-fix-filenames.patch:
> Likewise
It is a good idea to update emacs-next accordingly, unless said changes
would be reverted in the next commit.

Please use --reroll-count for submitting v2.
I will take some time to prepare emacs-team for the patches.


Cheers
Morgan Smith wrote 2 weeks ago
(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
CH3PR84MB34246AD8BD8CE11C476834C1C5C22@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:

Toggle quote (8 lines)
> Am Montag, dem 24.02.2025 um 17:56 -0500 schrieb Morgan Smith:
>> * gnu/packages/emacs.scm (emacs-minimal): Update to 30.1.
>> (guile-emacs): Remove now unneeded phase.
>> * gnu/packages/aux-files/emacs/comp-integrity.el: Update with new
>> type names.
> There should be a comp-integrity-next.el that you should use to replace
> this file with.

Good catch! Done!

Toggle quote (5 lines)
>> * gnu/packages/patches/emacs-exec-path.patch: Replace with 'emacs-
>> next-...'
>> patch.
> Write these out.

Done!

Toggle quote (7 lines)
>> * gnu/packages/patches/emacs-native-comp-driver-options.patch:
>> Likewise
>> * gnu/packages/patches/emacs-native-comp-fix-filenames.patch:
>> Likewise
> It is a good idea to update emacs-next accordingly, unless said changes
> would be reverted in the next commit.

The commits are somewhat large so I separated them logically into
"everything to get emacs working" and then a second of "everything to
get emacs-next working". This has been helpful for me while working on
this. If you'd like I can squash both commits into 1.

Toggle quote (4 lines)
>
> Please use --reroll-count for submitting v2.
> I will take some time to prepare emacs-team for the patches.

Sounds good! Will do right now!

Toggle quote (2 lines)
>
> Cheers
Morgan Smith wrote 2 weeks ago
Re: [bug#76529] [PATCH 2/4] gnu: emacs-next: Update to 31.0.50-0.60232a3.
(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
CH3PR84MB34246669F0BD7A13DA2B3A0CC5C22@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:

Toggle quote (12 lines)
> Am Montag, dem 24.02.2025 um 17:56 -0500 schrieb Morgan Smith:
>> * gnu/packages/emacs.scm (emacs-next-minimal): Update to 31.0.50-
>> 0.60232a3.
>> * gnu/packages/patches/emacs-next-exec-path.patch: Regenerate.
>> * gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch:
>> Regenerate.
>> * gnu/packages/patches/emacs-next-native-comp-driver-options.patch:
>> Delete.
>> * gnu/local.mk: Remove deleted patch.
> Please use quilt to regenerate the patches, to make the diffs more
> manageable.

Done!

Toggle quote (2 lines)
> Also, check whether we can use the ones for emacs itself.

I have delete "emacs-next-native-comp-driver-options.patch" as we can
just use the emacs one for that. All of the other patches are needed.

Toggle quote (2 lines)
>
> Cheers
Morgan Smith wrote 2 weeks ago
[PATCH v2 1/4] gnu: emacs: Update to 30.1.
(address . 76529@debbugs.gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
CH3PR84MB3424FC9757B983DCC01877C5C5C22@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
* gnu/packages/emacs.scm (emacs-minimal): Update to 30.1.
(guile-emacs): Remove now unneeded phase.

* gnu/packages/aux-files/emacs/comp-integrity.el: Replace with
gnu/packages/aux-files/emacs/comp-integrity-next.el.
* gnu/packages/aux-files/emacs/comp-integrity-next.el: Delete.
* Makefile.am: Unregister gnu/packages/aux-files/emacs/comp-integrity-next.el.
* gnu/packages/patches/emacs-exec-path.patch: Replace with
gnu/packages/patches/emacs-next-exec-path.patch.
* gnu/packages/patches/emacs-native-comp-driver-options.patch: Replace with
gnu/packages/patches/emacs-next-native-comp-driver-options.patch.
* gnu/packages/patches/emacs-native-comp-fix-filenames.patch: Replace with
gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch.

Change-Id: Ic144329bfe5a126a5d7e86dd0fdb726cf92de175
---
Makefile.am | 1 -
.../aux-files/emacs/comp-integrity-next.el | 121 ------------------
.../aux-files/emacs/comp-integrity.el | 39 ++----
gnu/packages/emacs.scm | 9 +-
gnu/packages/patches/emacs-exec-path.patch | 26 ++--
.../emacs-native-comp-driver-options.patch | 7 +-
.../emacs-native-comp-fix-filenames.patch | 93 +++++++-------
7 files changed, 84 insertions(+), 212 deletions(-)
delete mode 100644 gnu/packages/aux-files/emacs/comp-integrity-next.el

Toggle diff (432 lines)
diff --git a/Makefile.am b/Makefile.am
index 4091a52387..2eee49c78e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -438,7 +438,6 @@ dist_noinst_DATA = \
AUX_FILES = \
gnu/packages/aux-files/chromium/master-preferences.json \
gnu/packages/aux-files/emacs/comp-integrity.el \
- gnu/packages/aux-files/emacs/comp-integrity-next.el \
gnu/packages/aux-files/emacs/guix-emacs.el \
gnu/packages/aux-files/findclass.php \
gnu/packages/aux-files/guix.vim \
diff --git a/gnu/packages/aux-files/emacs/comp-integrity-next.el b/gnu/packages/aux-files/emacs/comp-integrity-next.el
deleted file mode 100644
index 74ee0952f4..0000000000
--- a/gnu/packages/aux-files/emacs/comp-integrity-next.el
+++ /dev/null
@@ -1,121 +0,0 @@
-(require 'ert)
-
-(eval-when-compile
- (defmacro expect-feature (&optional feature)
- `(progn
- (eval-when-compile
- (or (not ',feature)
- (require ',feature)))))
-
- (defmacro expect-native (fun &optional feature)
- `(progn
- (expect-feature ,feature)
- (should (native-comp-function-p (symbol-function ',fun)))))
-
-
- (defmacro expect-native-if-bound (fun &optional feature)
- `(and (expect-feature ,feature)
- (boundp ',fun)
- (should (native-comp-function-p (symbol-function ',fun)))))
-
- (defmacro expect-builtin (fun &optional feature)
- `(should (primitive-function-p (symbol-function ',fun)))))
-
-(expect-native abbrev-mode)
-(expect-native backquote-process)
-(expect-native mode-line-widen)
-(expect-native buffer-menu)
-(expect-native button-mode)
-(expect-native byte-run-strip-symbol-positions)
-(expect-native case-table-get-table)
-(expect-native cconv-convert)
-(expect-native use-default-char-width-table)
-(expect-native cl-generic-p)
-(expect-native cl-struct-define)
-(expect-native-if-bound x-setup-function-keys)
-(expect-native encode-composition-rule)
-(expect-native custom-declare-face)
-(expect-native minibuffer-prompt-properties--setter)
-(expect-native custom-add-choice)
-(expect-native debug-early)
-(expect-native display-table-slot disp-table)
-(expect-native dnd-open-file)
-(expect-native dos-mode25 dos-fns)
-(expect-native find-file-text dos-w32)
-(expect-native-if-bound dynamic-setting-handle-config-changed-event)
-(expect-native easy-menu-item-present-p)
-(expect-native eldoc-mode)
-(expect-native electric-indent-mode)
-(expect-native elisp-mode-syntax-propertize)
-(expect-native getenv)
-(expect-native epa-file-find-file-hook)
-(expect-native face-list)
-(expect-native find-file-noselect)
-(expect-native fill-region)
-(expect-native font-lock-change-mode)
-(expect-native font-lock-add-keywords)
-(expect-native-if-bound fontset-plain-name)
-(expect-native format-read)
-(expect-native frame-edges)
-(expect-native-if-bound fringe-mode)
-(expect-native help-quick)
-(expect-native-if-bound image-type)
-(expect-native indent-region)
-(expect-native indian-compose-regexp)
-(expect-native msdos-setup-keyboard term/internal)
-(expect-native isearch-abort)
-(expect-native iso-transl-set-language)
-(expect-native jit-lock-mode)
-(expect-native jka-compr-build-file-regexp)
-(expect-native keymap-global-set)
-(expect-native forward-sexp)
-(expect-native lisp-string-in-doc-position-p)
-(expect-native ls-lisp-set-options ls-lisp)
-(expect-native macroexp-compiling-p)
-(expect-native map-y-or-n-p)
-(expect-native menu-find-file-existing)
-(expect-native completion-boundaries)
-(expect-native egyptian-shape-grouping)
-(expect-native mouse-double-click-time)
-(expect-native convert-define-charset-argument)
-(expect-native coding-system-change-eol-conversion)
-(expect-native store-substring mule-util)
-(expect-native-if-bound mouse-wheel-change-button)
-(expect-native advice-function-mapc)
-(expect-native comment-string-strip)
-(expect-builtin obarray-make)
-(expect-native obarray-map)
-(expect-native oclosure-type)
-(expect-native forward-page)
-(expect-native sentence-end)
-(expect-native show-paren-function)
-(expect-native pgtk-dnd-init-frame pgtk-dnd)
-(expect-native prog-context-menu)
-(expect-native-if-bound regexp-opt)
-(expect-native get-register)
-(expect-native query-replace-descr)
-(expect-native rfn-eshadow-setup-minibuffer)
-(expect-native read-multiple-choice)
-(expect-native-if-bound scroll-bar-scale)
-(expect-native gui-select-text)
-(expect-native seq-first)
-(expect-native hack-read-symbol-shorthands)
-(expect-native next-error-find-buffer)
-(expect-native exit-splash-screen)
-(expect-native buffer-local-boundp)
-(expect-native syntax-propertize-multiline)
-(expect-native tab-bar-mode)
-(expect-native tabulated-list-put-tag)
-(expect-native text-mode)
-(expect-native timer-activate)
-(expect-native tool-bar-mode)
-(expect-native tooltip-mode)
-(expect-native tty-color-desc)
-(expect-native ucs-normalize-hfs-nfd-comp-p ucs-normalize)
-(expect-native uniquify-item-p)
-(expect-native vc-mode)
-(expect-native emacs-version)
-(expect-native define-widget)
-(expect-native window-right)
-(expect-native x-dnd-init-frame x-dnd)
-(expect-native-if-bound x-handle-no-bitmap-icon)
diff --git a/gnu/packages/aux-files/emacs/comp-integrity.el b/gnu/packages/aux-files/emacs/comp-integrity.el
index abe7e7c0c9..74ee0952f4 100644
--- a/gnu/packages/aux-files/emacs/comp-integrity.el
+++ b/gnu/packages/aux-files/emacs/comp-integrity.el
@@ -1,34 +1,25 @@
(require 'ert)
(eval-when-compile
- (require 'help-fns)
-
- (defmacro expect-help (fun result &optional feature)
+ (defmacro expect-feature (&optional feature)
`(progn
- (eval-when-compile (when ',feature
- (require ',feature)))
-
- (ert-deftest ,(intern (concat "expect-" (symbol-name fun)
- "-" (symbol-name result)))
- ()
- (should
- (eq ',result
- (let ((desc (substring-no-properties
- (with-output-to-string
- (help-fns-function-description-header ',fun)))))
- (cond ((string-search "native-compiled" desc) 'native)
- ((string-search "byte-compiled" desc) 'byte)
- ((string-search "built-in" desc) 'built-in)
- (t nil))))))))
+ (eval-when-compile
+ (or (not ',feature)
+ (require ',feature)))))
(defmacro expect-native (fun &optional feature)
- `(progn (expect-help ,fun native ,feature)))
+ `(progn
+ (expect-feature ,feature)
+ (should (native-comp-function-p (symbol-function ',fun)))))
+
- (defmacro expect-native-if-bound (fun)
- `(and (boundp ',fun) (expect-help ,fun native)))
+ (defmacro expect-native-if-bound (fun &optional feature)
+ `(and (expect-feature ,feature)
+ (boundp ',fun)
+ (should (native-comp-function-p (symbol-function ',fun)))))
(defmacro expect-builtin (fun &optional feature)
- `(progn (expect-help ,fun built-in ,feature))))
+ `(should (primitive-function-p (symbol-function ',fun)))))
(expect-native abbrev-mode)
(expect-native backquote-process)
@@ -92,9 +83,7 @@
(expect-native-if-bound mouse-wheel-change-button)
(expect-native advice-function-mapc)
(expect-native comment-string-strip)
-(if (>= emacs-major-version 30)
- (expect-builtin obarray-make)
- (expect-native obarray-make))
+(expect-builtin obarray-make)
(expect-native obarray-map)
(expect-native oclosure-type)
(expect-native forward-page)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index c5e671c6a9..4d14feb38b 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -100,7 +100,7 @@ (define (%emacs-modules build-system)
(define-public emacs-minimal
(package
(name "emacs-minimal")
- (version "29.4")
+ (version "30.1")
;; Note: When using (replacement …), ensure that comp-native-version-dir
;; stays the same across grafts.
;; Run `make check-system TESTS=emacs-native-comp' to ensure that grafts
@@ -111,7 +111,7 @@ (define-public emacs-minimal
version ".tar.xz"))
(sha256
(base32
- "0dd2mh6maa7dc5f49qdzj7bi4hda4wfm1cvvgq560djcz537k2ds"))
+ "13qkdx515qv7m8b2mpd37p16frs0xgl7bw8xvv397bz6fspc3jkc"))
(patches (search-patches "emacs-disable-jit-compilation.patch"
"emacs-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
@@ -172,7 +172,6 @@ (define-public emacs-minimal
"lisp/mail/feedmail.el"
"lisp/obsolete/pgg-pgp.el"
"lisp/obsolete/pgg-pgp5.el"
- "lisp/obsolete/terminal.el"
"lisp/org/ob-eval.el"
"lisp/textmodes/artist.el"
"lisp/progmodes/sh-script.el"
@@ -721,10 +720,6 @@ (define-public guile-emacs
;; Likewise, we don't need to patch helper binaries
;; like etags, ctags or ebrowse.
"^emacs(-[0-9]+(\\.[0-9]+)*)?$")))))
- (add-after 'unpack 'help-patch-progam-file-names
- (lambda _
- (call-with-output-file "lisp/obsolete/terminal.el"
- (lambda (port) (display port)))))
(add-after 'configure 'touch-lisp/finder-inf.el
(lambda _
(call-with-output-file "lisp/finder-inf.el"
diff --git a/gnu/packages/patches/emacs-exec-path.patch b/gnu/packages/patches/emacs-exec-path.patch
index 9a76b0237d..6e33e25258 100644
--- a/gnu/packages/patches/emacs-exec-path.patch
+++ b/gnu/packages/patches/emacs-exec-path.patch
@@ -2,15 +2,17 @@ Do not capture the build-time value of $PATH in the 'emacs' executable
since this can noticeably increase the size of the closure of Emacs
with things like GCC being referenced.
---- a/lisp/loadup.el
-+++ b/lisp/loadup.el
-@@ -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))))
-+ (exec-path nil))
- (when (and (featurep 'native-compile)
- (equal dump-mode "pdump"))
- ;; Don't enable this before bootstrap is completed, as the
+Index: emacs-next/lisp/loadup.el
+===================================================================
+--- emacs-next.orig/lisp/loadup.el
++++ emacs-next/lisp/loadup.el
+@@ -599,7 +599,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))))
++ (exec-path nil))
+ (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-native-comp-driver-options.patch b/gnu/packages/patches/emacs-native-comp-driver-options.patch
index 308c4f1212..e4ed5a48f1 100644
--- a/gnu/packages/patches/emacs-native-comp-driver-options.patch
+++ b/gnu/packages/patches/emacs-native-comp-driver-options.patch
@@ -2,12 +2,13 @@ We substitute this anyway, so let's make it easier to substitute.
--- a/lisp/emacs-lisp/comp.el
+++ b/lisp/emacs-lisp/comp.el
-@@ -178,8 +178,7 @@ and above."
+@@ -203,9 +203,7 @@ and above."
:type '(repeat string)
:version "28.1")
--(defcustom native-comp-driver-options (when (eq system-type 'darwin)
-- '("-Wl,-w"))
+-(defcustom native-comp-driver-options
+- (cond ((eq system-type 'darwin) '("-Wl,-w"))
+- ((eq system-type 'cygwin) '("-Wl,-dynamicbase")))
+(defcustom native-comp-driver-options nil
"Options passed verbatim to the native compiler's back-end driver.
Note that not all options are meaningful; typically only the options
diff --git a/gnu/packages/patches/emacs-native-comp-fix-filenames.patch b/gnu/packages/patches/emacs-native-comp-fix-filenames.patch
index 169323f290..7897fa9b04 100644
--- a/gnu/packages/patches/emacs-native-comp-fix-filenames.patch
+++ b/gnu/packages/patches/emacs-native-comp-fix-filenames.patch
@@ -12,11 +12,11 @@ way into the actual variable despite attempts to remove it by calling
The user-visible procedure ‘startup-redirect-eln-cache’ is kept, as
packages may require it, but only pushes the new value now.
-Index: emacs-29.2/src/comp.c
+Index: emacs-next/src/comp.c
===================================================================
---- emacs-29.2.orig/src/comp.c
-+++ emacs-29.2/src/comp.c
-@@ -4396,26 +4396,17 @@ DEFUN ("comp-el-to-eln-rel-filename", Fc
+--- emacs-next.orig/src/comp.c
++++ emacs-next/src/comp.c
+@@ -4403,26 +4403,17 @@ DEFUN ("comp-el-to-eln-rel-filename", Fc
Scomp_el_to_eln_rel_filename, 1, 1, 0,
doc: /* Return the relative name of the .eln file for FILENAME.
FILENAME must exist, and if it's a symlink, the target must exist.
@@ -49,7 +49,7 @@ Index: emacs-29.2/src/comp.c
if (NILP (Ffile_exists_p (filename)))
xsignal1 (Qfile_missing, filename);
-@@ -4423,64 +4414,55 @@ one for the file name and another for it
+@@ -4430,64 +4421,55 @@ one for the file name and another for it
filename = Fw32_long_file_name (filename);
#endif
@@ -157,7 +157,7 @@ Index: emacs-29.2/src/comp.c
}
DEFUN ("comp-el-to-eln-filename", Fcomp_el_to_eln_filename,
-@@ -4494,13 +4476,7 @@ If BASE-DIR is non-nil, use it as the di
+@@ -4501,13 +4483,7 @@ If BASE-DIR is non-nil, use it as the di
non-absolute BASE-DIR is interpreted as relative to `invocation-directory'.
If BASE-DIR is omitted or nil, look for the first writable directory
in `native-comp-eln-load-path', and use as BASE-DIR its subdirectory
@@ -172,7 +172,7 @@ Index: emacs-29.2/src/comp.c
(Lisp_Object filename, Lisp_Object base_dir)
{
Lisp_Object source_filename = filename;
-@@ -4548,10 +4524,11 @@ the latter is supposed to be used by the
+@@ -4555,10 +4531,11 @@ the latter is supposed to be used by the
Lisp_Object lisp_preloaded =
Fgetenv_internal (build_string ("LISP_PRELOADED"), Qnil);
base_dir = Fexpand_file_name (Vcomp_native_version_dir, base_dir);
@@ -186,7 +186,7 @@ Index: emacs-29.2/src/comp.c
CALL1I (split-string, lisp_preloaded))))))
base_dir = Fexpand_file_name (build_string ("preloaded"), base_dir);
-@@ -5863,10 +5840,7 @@ The last directory of this list is assum
+@@ -5875,10 +5852,7 @@ The last directory of this list is assum
the system *.eln files, which are the files produced when building
Emacs. */);
@@ -198,11 +198,11 @@ Index: emacs-29.2/src/comp.c
DEFVAR_LISP ("native-comp-enable-subr-trampolines",
Vnative_comp_enable_subr_trampolines,
-Index: emacs-29.2/lisp/startup.el
+Index: emacs-next/lisp/startup.el
===================================================================
---- emacs-29.2.orig/lisp/startup.el
-+++ emacs-29.2/lisp/startup.el
-@@ -545,9 +545,6 @@ DIRS are relative."
+--- emacs-next.orig/lisp/startup.el
++++ emacs-next/lisp/startup.el
+@@ -527,9 +527,6 @@ DIRS are relative."
(defvar native-comp-jit-compilation)
(defvar native-comp-enable-subr-trampolines)
@@ -212,7 +212,7 @@ Index: emacs-29.2/lisp/startup.el
(defun startup-redirect-eln-cache (cache-directory)
"Redirect the user's eln-cache directory to CACHE-DIRECTORY.
CACHE-DIRECTORY must be a single directory, a string.
-@@ -558,22 +555,10 @@ to `user-emacs-directory'.
+@@ -540,22 +537,10 @@ to `user-emacs-directory'.
For best results, call this function in your early-init file,
so that the rest of initialization and package loading uses
the updated value."
@@ -232,10 +232,10 @@ Index: emacs-29.2/lisp/startup.el
- (setq startup--original-eln-load-path
- (copy-sequence native-comp-eln-load-path))))
-
- (defun normal-top-level ()
- "Emacs calls this function when it first starts up.
- It sets `command-line-processed', processes the command-line,
-@@ -1362,12 +1347,6 @@ please check its value")
+ (defun startup--rescale-elt-match-p (font-pattern font-object)
+ "Test whether FONT-OBJECT matches an element of `face-font-rescale-alist'.
+ FONT-OBJECT is a font-object that specifies a font to test.
+@@ -1383,12 +1368,6 @@ please check its value")
startup-init-directory)))
(setq early-init-file user-init-file)
@@ -248,7 +248,7 @@ Index: emacs-29.2/lisp/startup.el
;; If any package directory exists, initialize the package system.
(and user-init-file
package-enable-at-startup
-@@ -1502,12 +1481,6 @@ please check its value")
+@@ -1523,12 +1502,6 @@ please check its value")
startup-init-directory))
t)
@@ -261,10 +261,10 @@ Index: emacs-29.2/lisp/startup.el
(when (and deactivate-mark transient-mark-mode)
(with-current-buffer (window-buffer)
(deactivate-mark)))
-Index: emacs-29.2/lisp/loadup.el
+Index: emacs-next/lisp/loadup.el
===================================================================
---- emacs-29.2.orig/lisp/loadup.el
-+++ emacs-29.2/lisp/loadup.el
+--- emacs-next.orig/lisp/loadup.el
++++ emacs-next/lisp/loadup.el
@@ -53,6 +53,14 @@
(setq redisplay--inhibit-bidi t)
@@ -280,9 +280,16 @@ Index: emacs-29.2/lisp/loadup.el
;; Add subdirectories to the load-path for files that might get
;; autoloaded when bootstrapping or running Emacs normally.
-@@ -494,22 +502,20 @@ lost after dumping")))
- (concat eln-dest-dir "native-lisp/" comp-native-version-dir "/"))
+@@ -538,27 +546,25 @@ This to have it working when installed o
+ directory got moved. This is set to be a pair in the form of:
+ \(rel-filename-from-install-bin . rel-filename-from-local-bin)."
+ (when (and load--bin-dest-dir load--eln-dest-dir)
+- (setq eln-dest-dir
+- (concat load--eln-dest-dir "native-lisp/" comp-native-version-dir "/"))
++ (setq load--eln-versioned-dest-dir
++ (concat load--eln-dest-dir "native-lisp/" comp-native-version-dir "/"))
(maphash (lambda
This message was truncated. Download the full message here.
Morgan Smith wrote 2 weeks ago
[PATCH v2 2/4] gnu: emacs-next: Update to 31.0.50-0.60232a3.
(address . 76529@debbugs.gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
CH3PR84MB3424A0E79236DC5F9EFF9D8DC5C22@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
* gnu/packages/emacs.scm (emacs-next-minimal): Update to 31.0.50-0.60232a3.
* gnu/packages/patches/emacs-next-exec-path.patch: Regenerate.
* gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch: Regenerate.
* gnu/packages/patches/emacs-next-native-comp-driver-options.patch: Delete.
* gnu/local.mk: Remove deleted patch.

Change-Id: Id89d7445a978566139b7c0a7d15f8c5eac2d111e
---
gnu/local.mk | 1 -
gnu/packages/emacs.scm | 10 +-
.../patches/emacs-next-exec-path.patch | 14 +--
...macs-next-native-comp-driver-options.patch | 18 ----
...emacs-next-native-comp-fix-filenames.patch | 92 ++++++++++---------
5 files changed, 63 insertions(+), 72 deletions(-)
delete mode 100644 gnu/packages/patches/emacs-next-native-comp-driver-options.patch

Toggle diff (333 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 45a9cb635e..48711dc385 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1229,7 +1229,6 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-native-comp-fix-filenames.patch \
%D%/packages/patches/emacs-native-comp-pin-packages.patch \
%D%/packages/patches/emacs-next-exec-path.patch \
- %D%/packages/patches/emacs-next-native-comp-driver-options.patch \
%D%/packages/patches/emacs-next-native-comp-fix-filenames.patch \
%D%/packages/patches/emacs-pasp-mode-quote-file-names.patch \
%D%/packages/patches/emacs-pgtk-super-key-fix.patch \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 4d14feb38b..5de87720b4 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -572,12 +572,12 @@ (define-public emacs-wide-int
#~(cons "--with-wide-int" #$flags))))))
(define-public emacs-next-minimal
- (let ((commit "881d593a9879f3355733f1b627af7cc0c12b429e")
+ (let ((commit "60232a30e360c00fb303cb033d4aec15a9e41342")
(revision "0"))
- (package
+ (package
(inherit emacs-minimal)
(name "emacs-next-minimal")
- (version (git-version "30.0.92" revision commit))
+ (version (git-version "31.0.50" revision commit))
(source
(origin
(method git-fetch)
@@ -586,12 +586,12 @@ (define-public emacs-next-minimal
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32 "0nj3a7wsl5piqf6a8wnmfyjbpxp2dwl0r48flv9q624jx4nxfr2p"))
+ (base32 "1n1i20j92a8sqv224yzvyzk804h9x0lgyp3jlny3b6g08ka91034"))
(patches
(search-patches "emacs-disable-jit-compilation.patch"
"emacs-next-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
- "emacs-next-native-comp-driver-options.patch"
+ "emacs-native-comp-driver-options.patch"
"emacs-next-native-comp-fix-filenames.patch"
"emacs-native-comp-pin-packages.patch"
"emacs-pgtk-super-key-fix.patch")))))))
diff --git a/gnu/packages/patches/emacs-next-exec-path.patch b/gnu/packages/patches/emacs-next-exec-path.patch
index 6e33e25258..54091af262 100644
--- a/gnu/packages/patches/emacs-next-exec-path.patch
+++ b/gnu/packages/patches/emacs-next-exec-path.patch
@@ -2,14 +2,14 @@ Do not capture the build-time value of $PATH in the 'emacs' executable
since this can noticeably increase the size of the closure of Emacs
with things like GCC being referenced.
-Index: emacs-next/lisp/loadup.el
+Index: emacs/lisp/loadup.el
===================================================================
---- emacs-next.orig/lisp/loadup.el
-+++ emacs-next/lisp/loadup.el
-@@ -599,7 +599,8 @@ lost after dumping")))
- ((equal dump-mode "dump") "emacs")
- ((equal dump-mode "bootstrap") "emacs")
- ((equal dump-mode "pbootstrap") "bootstrap-emacs.pdmp")
+--- emacs.orig/lisp/loadup.el
++++ emacs/lisp/loadup.el
+@@ -603,7 +603,8 @@ directory got moved. This is set to be
+ (if (eq system-type 'ms-dos)
+ "b-emacs.pdmp"
+ "bootstrap-emacs.pdmp"))
- (t (error "Unrecognized dump mode %s" dump-mode)))))
+ (t (error "Unrecognized dump mode %s" dump-mode))))
+ (exec-path nil))
diff --git a/gnu/packages/patches/emacs-next-native-comp-driver-options.patch b/gnu/packages/patches/emacs-next-native-comp-driver-options.patch
deleted file mode 100644
index e4ed5a48f1..0000000000
--- a/gnu/packages/patches/emacs-next-native-comp-driver-options.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-We substitute this anyway, so let's make it easier to substitute.
-
---- a/lisp/emacs-lisp/comp.el
-+++ b/lisp/emacs-lisp/comp.el
-@@ -203,9 +203,7 @@ and above."
- :type '(repeat string)
- :version "28.1")
-
--(defcustom native-comp-driver-options
-- (cond ((eq system-type 'darwin) '("-Wl,-w"))
-- ((eq system-type 'cygwin) '("-Wl,-dynamicbase")))
-+(defcustom native-comp-driver-options nil
- "Options passed verbatim to the native compiler's back-end driver.
- Note that not all options are meaningful; typically only the options
- affecting the assembler and linker are likely to be useful.
---
-2.38.0
-
diff --git a/gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch b/gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch
index 7897fa9b04..54670218ed 100644
--- a/gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch
+++ b/gnu/packages/patches/emacs-next-native-comp-fix-filenames.patch
@@ -12,11 +12,11 @@ way into the actual variable despite attempts to remove it by calling
The user-visible procedure ‘startup-redirect-eln-cache’ is kept, as
packages may require it, but only pushes the new value now.
-Index: emacs-next/src/comp.c
+Index: emacs/src/comp.c
===================================================================
---- emacs-next.orig/src/comp.c
-+++ emacs-next/src/comp.c
-@@ -4403,26 +4403,17 @@ DEFUN ("comp-el-to-eln-rel-filename", Fc
+--- emacs.orig/src/comp.c
++++ emacs/src/comp.c
+@@ -4279,26 +4279,17 @@ DEFUN ("comp-el-to-eln-rel-filename", Fc
Scomp_el_to_eln_rel_filename, 1, 1, 0,
doc: /* Return the relative name of the .eln file for FILENAME.
FILENAME must exist, and if it's a symlink, the target must exist.
@@ -32,7 +32,7 @@ Index: emacs-next/src/comp.c
(Lisp_Object filename)
{
CHECK_STRING (filename);
-
+
- /* Resolve possible symlinks in FILENAME, so that path_hash below
- always compares equal. (Bug#44701). */
- filename = Fexpand_file_name (filename, Qnil);
@@ -44,15 +44,15 @@ Index: emacs-next/src/comp.c
- xfree (file_normalized);
- }
+ Lisp_Object rel_name = filename;
-
+
+ filename = Fexpand_file_name (filename, Qnil);
if (NILP (Ffile_exists_p (filename)))
xsignal1 (Qfile_missing, filename);
-
-@@ -4430,64 +4421,55 @@ one for the file name and another for it
+
+@@ -4306,64 +4297,55 @@ one for the file name and another for it
filename = Fw32_long_file_name (filename);
#endif
-
+
- Lisp_Object content_hash = comp_hash_source_file (filename);
-
- if (suffix_p (filename, ".gz"))
@@ -93,7 +93,7 @@ Index: emacs-next/src/comp.c
- }
+ Lisp_Object tail = Vload_path;
+ Lisp_Object name_len = Flength (filename);
-
+
- Lisp_Object lds_re_tail = loadsearch_re_list;
- FOR_EACH_TAIL (lds_re_tail)
+ FOR_EACH_TAIL_SAFE (tail)
@@ -131,7 +131,7 @@ Index: emacs-next/src/comp.c
+
+ if (!NILP (bogus_dirs))
+ {
-+ tail = CALL2I (split-string, bogus_dirs, build_string (":"));
++ tail = CALLNI (split-string, bogus_dirs, build_string (":"));
+
+ FOR_EACH_TAIL_SAFE (tail)
+ {
@@ -155,9 +155,9 @@ Index: emacs-next/src/comp.c
+ return concat2(Fsubstring (filename, Qnil, make_fixnum (-3)),
+ build_string (NATIVE_ELISP_SUFFIX));
}
-
+
DEFUN ("comp-el-to-eln-filename", Fcomp_el_to_eln_filename,
-@@ -4501,13 +4483,7 @@ If BASE-DIR is non-nil, use it as the di
+@@ -4377,13 +4359,7 @@ If BASE-DIR is non-nil, use it as the di
non-absolute BASE-DIR is interpreted as relative to `invocation-directory'.
If BASE-DIR is omitted or nil, look for the first writable directory
in `native-comp-eln-load-path', and use as BASE-DIR its subdirectory
@@ -172,47 +172,47 @@ Index: emacs-next/src/comp.c
(Lisp_Object filename, Lisp_Object base_dir)
{
Lisp_Object source_filename = filename;
-@@ -4555,10 +4531,11 @@ the latter is supposed to be used by the
+@@ -4431,10 +4407,11 @@ the latter is supposed to be used by the
Lisp_Object lisp_preloaded =
Fgetenv_internal (build_string ("LISP_PRELOADED"), Qnil);
base_dir = Fexpand_file_name (Vcomp_native_version_dir, base_dir);
+ bool preloaded = comp_file_preloaded_p;
if (comp_file_preloaded_p
|| (!NILP (lisp_preloaded)
-- && !NILP (Fmember (CALL1I (file-name-base, source_filename),
+- && !NILP (Fmember (CALLNI (file-name-base, source_filename),
- Fmapcar (intern_c_string ("file-name-base"),
-+ && !NILP (Fmember (CALL1I (file-name-sans-extension, source_filename),
++ && !NILP (Fmember (CALLNI (file-name-sans-extension, source_filename),
+ Fmapcar (intern_c_string ("file-name-sans-extension"),
- CALL1I (split-string, lisp_preloaded))))))
+ CALLNI (split-string, lisp_preloaded))))))
base_dir = Fexpand_file_name (build_string ("preloaded"), base_dir);
-
-@@ -5875,10 +5852,7 @@ The last directory of this list is assum
+
+@@ -5741,10 +5718,7 @@ The last directory of this list is assum
the system *.eln files, which are the files produced when building
Emacs. */);
-
+
- /* Temporary value in use for bootstrap. We can't do better as
- `invocation-directory' is still unset, will be fixed up during
- dump reload. */
- Vnative_comp_eln_load_path = Fcons (build_string ("../native-lisp/"), Qnil);
+ Vnative_comp_eln_load_path = Qnil;
-
+
DEFVAR_LISP ("native-comp-enable-subr-trampolines",
Vnative_comp_enable_subr_trampolines,
-Index: emacs-next/lisp/startup.el
+Index: emacs/lisp/startup.el
===================================================================
---- emacs-next.orig/lisp/startup.el
-+++ emacs-next/lisp/startup.el
-@@ -527,9 +527,6 @@ DIRS are relative."
+--- emacs.orig/lisp/startup.el
++++ emacs/lisp/startup.el
+@@ -520,9 +520,6 @@ DIRS are relative."
(defvar native-comp-jit-compilation)
(defvar native-comp-enable-subr-trampolines)
-
+
-(defvar startup--original-eln-load-path nil
- "Original value of `native-comp-eln-load-path'.")
-
(defun startup-redirect-eln-cache (cache-directory)
"Redirect the user's eln-cache directory to CACHE-DIRECTORY.
CACHE-DIRECTORY must be a single directory, a string.
-@@ -540,22 +537,10 @@ to `user-emacs-directory'.
+@@ -533,22 +530,10 @@ to `user-emacs-directory'.
For best results, call this function in your early-init file,
so that the rest of initialization and package loading uses
the updated value."
@@ -222,7 +222,7 @@ Index: emacs-next/lisp/startup.el
(push (expand-file-name (file-name-as-directory cache-directory)
user-emacs-directory)
native-comp-eln-load-path))
-
+
-(defun startup--update-eln-cache ()
- "Update the user eln-cache directory due to user customizations."
- ;; Don't override user customizations!
@@ -235,10 +235,20 @@ Index: emacs-next/lisp/startup.el
(defun startup--rescale-elt-match-p (font-pattern font-object)
"Test whether FONT-OBJECT matches an element of `face-font-rescale-alist'.
FONT-OBJECT is a font-object that specifies a font to test.
-@@ -1383,12 +1368,6 @@ please check its value")
+@@ -771,9 +756,6 @@ It is the default value of the variable
+ (unwind-protect
+ (command-line)
+
+- (when (featurep 'native-compile)
+- (startup--update-eln-cache))
+-
+ ;; Do this again, in case .emacs defined more abbreviations.
+ (if default-directory
+ (setq default-directory (abbreviate-file-name default-directory)))
+@@ -1385,12 +1367,6 @@ please check its value")
startup-init-directory)))
(setq early-init-file user-init-file)
-
+
- ;; Amend `native-comp-eln-load-path', since the early-init file may
- ;; have altered `user-emacs-directory' and/or changed the eln-cache
- ;; directory.
@@ -248,10 +258,10 @@ Index: emacs-next/lisp/startup.el
;; If any package directory exists, initialize the package system.
(and user-init-file
package-enable-at-startup
-@@ -1523,12 +1502,6 @@ please check its value")
+@@ -1525,12 +1501,6 @@ please check its value")
startup-init-directory))
t)
-
+
- ;; Amend `native-comp-eln-load-path' again, since the early-init
- ;; file may have altered `user-emacs-directory' and/or changed the
- ;; eln-cache directory.
@@ -261,10 +271,10 @@ Index: emacs-next/lisp/startup.el
(when (and deactivate-mark transient-mark-mode)
(with-current-buffer (window-buffer)
(deactivate-mark)))
-Index: emacs-next/lisp/loadup.el
+Index: emacs/lisp/loadup.el
===================================================================
---- emacs-next.orig/lisp/loadup.el
-+++ emacs-next/lisp/loadup.el
+--- emacs.orig/lisp/loadup.el
++++ emacs/lisp/loadup.el
@@ -53,6 +53,14 @@
(setq redisplay--inhibit-bidi t)
@@ -280,7 +290,7 @@ Index: emacs-next/lisp/loadup.el
;; Add subdirectories to the load-path for files that might get
;; autoloaded when bootstrapping or running Emacs normally.
-@@ -538,27 +546,25 @@ This to have it working when installed o
+@@ -522,27 +530,25 @@ This to have it working when installed o
directory got moved. This is set to be a pair in the form of:
\(rel-filename-from-install-bin . rel-filename-from-local-bin)."
(when (and load--bin-dest-dir load--eln-dest-dir)
@@ -320,7 +330,7 @@ Index: emacs-next/lisp/loadup.el
;; Relative filename from the built uninstalled binary.
(file-relative-name file invocation-directory))))))
comp-loaded-comp-units-h)))
-@@ -644,7 +650,9 @@ directory got moved. This is set to be
+@@ -609,7 +615,9 @@ directory got moved. This is set to be
(equal dump-mode "pdump"))
;; Don't enable this before bootstrap is completed, as the
;; compiler infrastructure may not be usable yet.
@@ -331,11 +341,11 @@ Index: emacs-next/lisp/loadup.el
(message "Dumping under the name %s" output)
(condition-case ()
(delete-file output)
-Index: emacs-next/src/Makefile.in
+Index: emacs/src/Makefile.in
===================================================================
---- emacs-next.orig/src/Makefile.in
-+++ emacs-next/src/Makefile.in
-@@ -591,6 +591,7 @@ shortlisp := $(filter-out ${shortlisp_fi
+--- emacs.orig/src/Makefile.in
++++ emacs/src/Makefile.in
+@@ -567,6 +567,7 @@ shortlisp := $(filter-out ${shortlisp_fi
## We don't really need to sort, but may as well use it to remove duplicates.
shortlisp := loaddefs.el loadup.el $(sort ${shortlisp})
export LISP_PRELOADED = ${shortlisp}
--
2.48.1
Morgan Smith wrote 2 weeks ago
[PATCH v2 3/4] guix: emacs-utils: Be more verbose in build phase.
(address . 76529@debbugs.gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
CH3PR84MB342462CFF35683D676FB16BDC5C22@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
* guix/build/emacs-utils.scm (emacs-compile-directory): Display the filename
of each file before compiling.

Change-Id: I275a086ed92f7cfb2907aea9b4feb59012cc8dd5
---
guix/build/emacs-utils.scm | 1 +
1 file changed, 1 insertion(+)

Toggle diff (14 lines)
diff --git a/guix/build/emacs-utils.scm b/guix/build/emacs-utils.scm
index aeb364133a..729dd2bdc4 100644
--- a/guix/build/emacs-utils.scm
+++ b/guix/build/emacs-utils.scm
@@ -146,6 +146,7 @@ (define* (emacs-compile-directory dir)
'comp--write-bytecode-file)))))
(mapc
(lambda (file)
+ (message "Compiling `%s'" (file-relative-name file ,dir))
(let (byte-to-native-output-buffer-file
;; First entry is the eln-cache of the homeless shelter,
;; second entry is the install directory.
--
2.48.1
Morgan Smith wrote 2 weeks ago
[PATCH v2 4/4] teams: Register the comp-integrity.el file to the Emacs team.
(address . 76529@debbugs.gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
CH3PR84MB3424AA50EE7643F413AA0922C5C22@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
* etc/teams.scm (emacs): Add the
"gnu/packages/aux-files/emacs/comp-integrity.el" file to the scope of the Emacs
team.

Change-Id: I66014b94e73fd87eeb3aceaf5f61f08abc875c44
---
etc/teams.scm | 1 +
1 file changed, 1 insertion(+)

Toggle diff (14 lines)
diff --git a/etc/teams.scm b/etc/teams.scm
index 33730155a0..f2bbb43f9a 100755
--- a/etc/teams.scm
+++ b/etc/teams.scm
@@ -317,6 +317,7 @@ (define-team emacs
#:description "The extensible, customizable text editor and its
ecosystem."
#:scope (list "gnu/packages/aux-files/emacs/guix-emacs.el"
+ "gnu/packages/aux-files/emacs/comp-integrity.el"
(make-regexp* "^gnu/packages/emacs(-.+|)\\.scm$")
"gnu/packages/tree-sitter.scm"
"guix/build/emacs-build-system.scm"
--
2.48.1
Morgan Smith wrote 2 weeks ago
[PATCH v2 5/4] build-system/emacs: Allow usage of #:{allowed/disallowed}-references key
(address . 76529@debbugs.gnu.org)(name . Morgan Smith)(address . Morgan.J.Smith@outlook.com)
CH3PR84MB3424F3E9C3AD06175A382A6AC5C22@CH3PR84MB3424.NAMPRD84.PROD.OUTLOOK.COM
* guix/build-system/emacs.scm (emacs-build): Pass '#:allowed-references' and
'#:disallowed-references' keys to builder.

Change-Id: Ib9a35a7b2115365b96675fb7ca3914b0ae7e67c7
---

oops. Forgot to add this one to the series. Going to sneek this in here

guix/build-system/emacs.scm | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

Toggle diff (32 lines)
diff --git a/guix/build-system/emacs.scm b/guix/build-system/emacs.scm
index 03273d738b..06eec43ec4 100644
--- a/guix/build-system/emacs.scm
+++ b/guix/build-system/emacs.scm
@@ -95,7 +95,9 @@ (define* (emacs-build name inputs
(imported-modules %emacs-build-system-modules)
(modules '((guix build emacs-build-system)
(guix build utils)
- (guix build emacs-utils))))
+ (guix build emacs-utils)))
+ allowed-references
+ disallowed-references)
"Build SOURCE using EMACS, and with INPUTS."
(define builder
(with-imported-modules imported-modules
@@ -120,6 +122,8 @@ (define* (emacs-build name inputs
system #:graft? #f)))
(gexp->derivation name builder
#:system system
+ #:allowed-references allowed-references
+ #:disallowed-references disallowed-references
#:guile-for-build guile)))
(define emacs-build-system

base-commit: 61428ccf41f21f5ea1e4f1eec722ef9b1efc3a0e
prerequisite-patch-id: c2ff0e5fe8ce40e8881779f771c56fee374bb48d
prerequisite-patch-id: 52a44595bd17d655afce51a485b930c44b4ff772
prerequisite-patch-id: c88c4e03afc4fdfb112a40f356bc97db80fb06b0
prerequisite-patch-id: cef5c8dde54b1d3790e6f84fdeafde5a9d8e619b
--
2.48.1
Liam Hupfer wrote 2 weeks ago
Re: [bug#76529] [PATCH 1/4] gnu: emacs: Update to 30.1.
878qpsf4qb.fsf@hpfr.net
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:

Toggle quote (2 lines)
> I will take some time to prepare emacs-team for the patches.

Good to hear! If it helps, here’s what I encountered trying out 30.1
locally with native compilation via package-input-rewriting:

• native compilation bug affecting emacs-aio: https://yhetil.org/emacs/87o6ypa9k0.fsf@linj.tech/
• tests failing for helpful:
• tests failing for notmuch (already fixed on master):

I hacked around these locally by disabling native compilation or tests,
but presumably patches (ideally from upstream) are preferred in Guix.

—Liam
Liliana Marie Prikler wrote 2 weeks ago
7d59f7a509522e2bdf7850a52c8fca0bf5883f45.camel@gmail.com
Am Mittwoch, dem 26.02.2025 um 21:26 -0600 schrieb Liam Hupfer:
Toggle quote (13 lines)
> Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
>
> > I will take some time to prepare emacs-team for the patches.
>
> Good to hear! If it helps, here’s what I encountered trying out 30.1
> locally with native compilation via package-input-rewriting:
>
> • native compilation bug affecting emacs-aio:
> <https://yhetil.org/emacs/87o6ypa9k0.fsf@linj.tech/>
> • tests failing for helpful:
>   <https://github.com/Wilfred/helpful/issues/351>
> • tests failing for notmuch (already fixed on master):
>   <https://yhetil.org/notmuch/87jz9ek7cu.fsf@hpfr.net/>
From a cursory glance, helpful also has a patch on master addressing
this. Feel free to submit patches bumping these packages and/or
disabling native compilation as needed.

Cheers
Liliana Marie Prikler wrote 2 weeks ago
(address . control@debbugs.gnu.org)
9ec9bd08d9f8a6ca6cc760be567e59b7be665c93.camel@gmail.com
reopen 76594
close 76529
thanks

Closed the wrong bug, sorry.
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 76529@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 76529
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help