[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: emacs-guix invalid byte opcode: op=183 ptr=25
From: |
Pierre Neidhardt |
Subject: |
Re: emacs-guix invalid byte opcode: op=183 ptr=25 |
Date: |
Thu, 28 Feb 2019 14:28:25 +0100 |
User-agent: |
mu4e 1.0; emacs 26.1 |
Zimoun, you are correct, Guix Emacs packages will only work with the Emacs that
is used in the build system, which corresponds to the `emacs` package.
With Guix, Emacs packages don't have Emacs as an input, so it's perfectly
possible to
install Emacs packages along the wrong version of Emacs. I think this is a
problem.
The problem is not specific to Emacs though, anything that is byte-compiled has
the same shortcoming. Some build systems have a variable for the compiler, so
it's easy to change it and recompile all packages for a new compiler. The
emacs-build-system does not do that though, see emacs-build-system.scm:
--8<---------------cut here---------------start------------->8---
(define* (build #:key outputs inputs #:allow-other-keys)
"Compile .el files."
(let* ((emacs (string-append (assoc-ref inputs "emacs") "/bin/emacs"))
(out (assoc-ref outputs "out"))
(elpa-name-ver (store-directory->elpa-name-version out))
(el-dir (string-append out %install-suffix "/" elpa-name-ver)))
(setenv "SHELL" "sh")
(parameterize ((%emacs emacs))
(emacs-byte-compile-directory el-dir))))
--8<---------------cut here---------------end--------------->8---
Thoughts?
--
Pierre Neidhardt
https://ambrevar.xyz/
signature.asc
Description: PGP signature