help-guix
[Top][All Lists]
Advanced

[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/

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]