|
From: | brettg |
Subject: | bug#38261: Recent changes to emacs build system |
Date: | Tue, 19 Nov 2019 01:27:39 +0100 |
User-agent: | Posteo Webmail |
On 18.11.2019 22:34, address@hidden wrote:
On 18.11.2019 21:33, address@hidden wrote:On 18.11.2019 21:28, address@hidden wrote:On 18.11.2019 20:01, address@hidden wrote:Hey all, the recent changes to the emacs build system result in a few broken packages like emacs-pdf-tools, or basically anything that usesa phase for emacs-set-emacs-load-path. For example, I borrowed the technique used by emacs-pdf-tools to package emacs-telega, resulting in both packages failing to build: Here is the code for emacs-telega: https://git.sr.ht/~brettgilio/cfg/tree/master/channel/non-gnu/packages/emacs-xyz.scm#L99The issue is in this phase for both emacs-pdf-tools and my channel package:(add-after 'compress-documentation 'emacs-set-emacs-load-path (assoc-ref emacs:%standard-phases 'set-emacs-load-path)) Resulting in: starting phase `emacs-set-emacs-load-path' Backtrace:5 (primitive-load "/gnu/store/5b1p1gsvfyi4fbx4s42rhab2dns…")In ice-9/eval.scm: 191:35 4 (_ _) In ice-9/boot-9.scm:829:9 3 (catch _ _ #<procedure 7ffff3bbb518 at /gnu/store/zmkg…> …)In srfi/srfi-1.scm:863:16 2 (every1 #<procedure 7ffff30ae160 at /gnu/store/zmkgrvv…> …)In /gnu/store/zmkgrvvhmrix2b1z7id6zrg9bb7qxzdl-module-import/guix/build/gnu-build-system.scm: 839:30 1 (_ _) In unknown file:0 (_ #:source "/gnu/store/qw8xbmk6ryl9a2jrp0gip3yffmsdix…" …)ERROR: Wrong type to apply: #f If we suspect that changes are going to be non-backwards compatible could we use the news system to pass along that message? Much appreciated. Thanks. Brett GilioI applied a hotfix to the package by replacing 'set-emacs-load-path with 'add-source-to-load-path. I believe this fix would work for all other affected packages.https://git.sr.ht/~brettgilio/cfg/commit/c24a6db9d25151c487e9db675bd74e4bb3912173Ricardo, just wanted to make you aware that this emacs-build-system change does break your guile-studio. I discovered this because I adopted some of your ideas of autoloading in the generated emacs lisp from guile-studio when creating my own emacs configuration dependent on guix, which resulted in progn: Wrong number of arguments: (lambda nil "Autoload Emacs packages found in EMACSLOADPATH. 'Autoload' means to load the 'autoloads' files matching `guix-emacs-autoloads-regexp'." (interactive) (let* ((emacs-load-path (getenv "EMACSLOADPATH")) (emacs-non-core-load-path-directories (seq-filter (function (lambda (dir) (string-match-p "/share/emacs/site-lisp" dir))) (split-string emacs-load-path ":"))) (autoloads (mapcan (function guix-emacs-find-autoloads) emacs-non-core-load-path-directories))) (mapc (function (lambda (f) (load f (quote noerror)))) autoloads))), 78 I'll let you know if I can find any fix for this when I get some time. But just wanted to pass the message along. Brett
I tried removing the arguments passed to `guix-emacs-autoload-packages' as the updated version (http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/aux-files/emacs/guix-emacs.el?id=47b3b4c2aa49e21f4cc32c97ff7bbbd069bb849c) does not carry arguments anymore, instead depending on a variable EMACSLOADPATH. However, whenever that is done it returns
split-string: Wrong type argument: stringp, nil possibly because my system is not finding EMACSLOADPATH. I will keep investigating.
[Prev in Thread] | Current Thread | [Next in Thread] |