Closed zot closed 11 months ago
Just upgraded from Emacs 28 to 29 and now I don't get that error with new installs so it's probably a compatibility issue.
Thanks for taking the time to fill out a bug report.
Unfortunately, I'm unable to reproduce your issue locally with Emacs 28.1 and 28.2 using the current installer.
elapca-use-package
byte-compilation expectedly fails due to use-package not being installed.
After the installation script finishes, use-package is automatically installed as a dependency of elpaca-use-package
and byte compiles correctly, though.
Could you please share:
Also, is Emacs blocked after this failure, so that you have to use C-g
to interact with it?
Thanks
Just upgraded from Emacs 28 to 29 and now I don't get that error with new installs so it's probably a compatibility issue.
Unlikely considering I'm unable to reproduce it locally in Docker. Glad you got it worked out, though. Thanks for letting me know.
This init file works in 29 but not in 28. I'm getting different behavior in 28 now -- it had been blocking on startup, requiring a ctrl-g but now it gets up to the first use-package
and then fails. Successive startups also fail at the first use of use-package.
In case you're curious -- it might be some config thing on my part since you can't reproduce
Thanks for sharing. One thing I notice off the bat is that lexical binding is not enabled for the file. You'll want to enable it.
This init file works in 29 but not in 28. I'm getting different behavior in 28 now -- it had been blocking on startup, requiring a ctrl-g but now it gets up to the first
use-package
and then fails. Successive startups also fail at the first use of use-package.
The reason that file works in 29, but not in 28 is because use-package is already installed in 29.
;; Install use-package support
(elpaca elpaca-use-package
;; Enable :elpaca use-package keyword.
(elpaca-use-package-mode)
;; Assume :elpaca t unless otherwise specified.
(setq elpaca-use-package-by-default t))
;(elpaca-wait)
(use-package org)
That will load the built-in version of Org rather than installing the development version.
The elpaca-wait
needs to be there to allow elpaca-use-package-mode
to be activated before the Org declaration if you want the following line to install Org. Otherwise (use-package org)
will load the built-in Org. Any subsequent use-package
declaration which you expect Elpaca integration to work for will fail, too.
Let's set your personal configuration aside for a moment. Try evaluating the following test case in an Emacs 28 *scratch* buffer and sharing the output once the test finishes:
elpaca | a788378 HEAD -> master, origin/master, origin/HEAD |
isntaller | 0.6 |
emacs | GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.38, cairo version 1.18.0) of 2023-11-02 |
git | git version 2.42.0 |
Thanks for those pointers!
Uncommenting that elpaca-wait
again made the rest of my config start up. I have the vast majority of my config in an org file so that makes sense (I commented it out when I was trying to diagnose the failures).
Elpaca Version
Elpaca e60ab3c HEAD -> master, origin/master, origin/HEAD installer: 0.6 emacs-version: GNU Emacs 28.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.34, cairo version 1.16.0) git --version: git version 2.41.0
Operating System
Linux
Description
The
init.el
snippet in the docs uses aload-path
of only ".", which does not containuse-package.el
. It works if I installuse-package
insite-lisp
and change the compilation expression fromto
Manually installing
use-package
doesn't seem like a good solution to this, though -- I think it would be better to install it with(elpaca use-package)
instead but compilingelpaca-use-package
would have to be specifically deferred until after(elpaca use-package)
.