GNU bug report logs -
#43277
emacs-next is broke, "seq" missing
Previous Next
Reported by: Martin Becze <mjbecze <at> riseup.net>
Date: Tue, 8 Sep 2020 12:14:01 UTC
Severity: important
Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#43277: emacs-next is broke, "seq" missing
which was filed against the guix package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 43277 <at> debbugs.gnu.org.
--
43277: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=43277
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Hello!
[...]
>> gnu/packages/emacs.scm | 37 ++++++++++++++++---------------------
>> 1 file changed, 16 insertions(+), 21 deletions(-)
>>
>> diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
>> index 03c28ee7a7..b3d099257d 100644
>> --- a/gnu/packages/emacs.scm
>> +++ b/gnu/packages/emacs.scm
>> @@ -196,11 +196,12 @@
>> (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.
>> + ;; able to track emacs back to emacs.desktop. It's done using
>> + ;; this-package so emacs-next can reuse it
>> (with-directory-excursion (assoc-ref outputs "out")
>> (copy-file (string-append
>> "bin/emacs-"
>> - ,(version-major+minor (package-version emacs)))
>> + ,(car (string-split (package-version this-package) #\-)))
>
> I agree in general it's good to reuse code, however in this particular
> case it's probably better to keep the phases duplicated. For example,
> in the future one could update the emacs-next package to not require a
> revision number anymore, and it's likely they'd forget to update the
> emacs package since it'll still work.
It's unlikely the emacs-next package would be pegged against a stable
version, but in the event it would, the above code would still work.
[...]
>> `(("autoconf" ,autoconf)
>> - ,@(package-native-inputs emacs))))))
>> + ,@(package-native-inputs emacs)))
>> +
>> + (native-search-paths
>> + (list (search-path-specification
>> + (variable "EMACSLOADPATH")
>> + ;; The versioned entry is for the Emacs' builtin libraries.
>> + (files (list "share/emacs/site-lisp"
>> + (string-append "share/emacs/" (car (string-split version #\-)) "/lisp"))))
>
> nit: This line seems to be a bit long.
Reformatted, and edited the commit message to match our standards.
I made minor, cosmetic changes like below:
modified gnu/packages/emacs.scm
@@ -196,12 +196,16 @@
(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. It's done using
- ;; this-package so emacs-next can reuse it
+ ;; able to track emacs back to emacs.desktop. The version is
+ ;; accessed using using THIS-PACKAGE so it "just works" for
+ ;; inherited Emacs packages of different versions.
(with-directory-excursion (assoc-ref outputs "out")
(copy-file (string-append
"bin/emacs-"
- ,(car (string-split (package-version this-package) #\-)))
+ ,(let ((this-version (package-version this-package)))
+ (or (false-if-exception
+ (version-major+minor+point this-version))
+ (version-major+minor this-version))))
"bin/emacs")
#t)))
(add-before 'reset-gzip-timestamps 'make-compressed-files-writable
@@ -304,7 +308,9 @@ languages.")
(variable "EMACSLOADPATH")
;; The versioned entry is for the Emacs' builtin libraries.
(files (list "share/emacs/site-lisp"
- (string-append "share/emacs/" (car (string-split version #\-)) "/lisp"))))
+ (string-append "share/emacs/"
+ (version-major+minor+point version)
+ "/lisp"))))
(search-path-specification
(variable "INFOPATH")
(files '("share/info"))))))))
Verified it produced a correct EMACSLOADPATH and ran using:
--8<---------------cut here---------------start------------->8---
$ guix environment --pure --ad-hoc emacs-next
[...]
[env]$ echo $EMACSLOADPATH
/gnu/store/6s7p3yi969pm2xmkdd45dljbnwy5107g-profile/share/emacs/site-lisp:/gnu/store/6s7p3yi969pm2xmkdd45dljbnwy5107g-profile/share/emacs/28.0.50/
[env]$ emacs --version
GNU Emacs 28.0.50
--8<---------------cut here---------------end--------------->8---
And pushed to master as commit 0f88fea0eaa.
Thanks everyone!
Closing,
Maxim
[Message part 3 (message/rfc822, inline)]
[Message part 4 (text/plain, inline)]
emacs-next recently broke. It now has this error on start up.
"require: Cannot open load file: No such file or directory, seq"
I think this must have happened relatively recently (with the last 3
weeks) since it was working fine earlier.
[signature.asc (application/pgp-signature, attachment)]
This bug report was last modified 4 years and 230 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.