profiles: emacs-subdirs: Avoid building circular lists. This is a follow-up to e9b13294700de7082ee23aa6e1c17b4a8c8828ec. If the EMACSNATIVELOADPATH environment variable (by mistake) has duplicated paths, Emacs fails to start up with a message along the lines of List contains a loop: ("$HOME/.guix-profile/lib/emacs/native-site-lisp" […] . #2) To prevent this issue in the face of possibly duplicated search path elements, use non-destructive methods where possible. * guix/profiles.scm (emacs-subdirs): Use 'append' rather than 'nconc'. Change-Id: If646b806f24666b5247850d30d2819c7482c130b Fixes: Emacs "List contains a loop" <https://issues.guix.gnu.org/75709> Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
1 files changed, 6 insertions(+), 2 deletions(-) M guix/profiles.scm
M guix/profiles.scm => guix/profiles.scm +6 -2
@@ 1230,8 1230,12 @@ MANIFEST. Single-file bundles are required by programs such as Git and Lynx." (setq native-comp-eln-load-path (mapcan (lambda (dir) (if (equal dir needle) (nconc ',native-comp-dirs (list dir)) ;; Note: needle may be found ;; multiple times, so don't use ;; destructive procedures like ;; nconc. (append ',native-comp-dirs (list dir)) (list dir))) native-comp-eln-load-path)))) port)