mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2025-01-30 22:36:50 +01:00
profiles: emacs-subdirs: Also expand native-comp-eln-load-path.
This patch ensures that the pinned natively compiled Emacs packages can actually be found in the respective load path. The rationale for expanding it mimics the rationale previously applied to load-path for byte compilation: We want to be able to `guix upgrade' emacs (or similar) without yanking compiled packages from underneath. * guix/profiles.scm (emacs-subdirs): Write an additional “line” of code to deal with ‘native-comp-eln-load-path’.
This commit is contained in:
parent
dbc4a98cfa
commit
b58764b3b2
1 changed files with 21 additions and 1 deletions
|
@ -1206,7 +1206,15 @@ (define build
|
|||
(scandir dir (negate (cute member <> '("." "..")))))))
|
||||
(filter file-exists?
|
||||
(map (cute string-append <> "/share/emacs/site-lisp")
|
||||
'#$(manifest-inputs manifest))))))
|
||||
'#$(manifest-inputs manifest)))))
|
||||
(native-comp-needle
|
||||
;; Dynamically find native-site-lisp relative to profile.
|
||||
;; We can not hard-code the path here, because the output
|
||||
;; isn't known yet.
|
||||
'(expand-file-name "../../../lib/emacs/native-site-lisp"))
|
||||
(native-comp-dirs
|
||||
(search-path-as-list '("lib/emacs/native-site-lisp")
|
||||
'#$(manifest-inputs manifest))))
|
||||
(mkdir-p destdir)
|
||||
(with-directory-excursion destdir
|
||||
(call-with-output-file "subdirs.el"
|
||||
|
@ -1216,6 +1224,18 @@ (define build
|
|||
(list ,@(delete-duplicates subdirs)))
|
||||
port)
|
||||
(newline port)
|
||||
(write
|
||||
`(when (boundp 'native-comp-eln-load-path)
|
||||
(let ((needle ,native-comp-needle))
|
||||
(setq native-comp-eln-load-path
|
||||
(mapcan (lambda (dir)
|
||||
(if (equal dir needle)
|
||||
(nconc ',native-comp-dirs
|
||||
(list dir))
|
||||
(list dir)))
|
||||
native-comp-eln-load-path))))
|
||||
port)
|
||||
(newline port)
|
||||
#t)))))))
|
||||
(gexp->derivation "emacs-subdirs" build
|
||||
#:system system
|
||||
|
|
Loading…
Reference in a new issue