Running from source: `Component "swank/exts" not found`
evertedsphere opened this issue · comments
Describe the bug
Following the recipe in the developer manual produces the following error in *Nyxt Guix shell compilation*
after some time at the C-u - M-x sly RET nyxt-sbcl RET
step:
debugger invoked on a ASDF/FIND-COMPONENT:MISSING-COMPONENT in thread
#<THREAD tid=410169 "main thread" RUNNING {1001488093}>:
Component "swank/exts" not found
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [RETRY ] Retry ASDF operation.
1: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the
configuration.
2: [RETRY ] Retry EVAL of current toplevel form.
3: [CONTINUE ] Ignore error and continue loading file "/gnu/store/ix0ccac5l39qikwl7habpihvci3fymjj-profile/bin/lisp-repl-core-dumper".
4: [ABORT ] Abort loading file "/gnu/store/ix0ccac5l39qikwl7habpihvci3fymjj-profile/bin/lisp-repl-core-dumper".
5: Ignore runtime option --eval "(with-open-file (s \"/gnu/store/ix0ccac5l39qikwl7habpihvci3fymjj-profile/bin/lisp-repl-core-dumper\")
(read-line s)
(load s))".
6: Skip rest of --eval and --load options.
7: Skip to toplevel READ/EVAL/PRINT loop.
8: [EXIT ] Exit SBCL (calling #'EXIT, killing the process).
((LAMBDA NIL :IN ASDF/SYSTEM:FIND-SYSTEM))
; File has been modified since compilation:
; SYS:CONTRIB;ASDF;ASDF.LISP.NEWEST
; Using form offset instead of character position.
error finding frame source: invalid feature expression: "#.(UIOP/UTILITY:SYMBOL-TEST-TO-FEATURE-EXPRESSION
'#:COMPILER-ERROR-CONTEXT-%SOURCE '#:SB-C)"
source: NIL
0]
Doing guix shell -D -f build-scripts/nyxt.scm -- sbcl
and then (asdf:load-system :nyxt/gi-gtk)
has the same effect, so it's not an Emacs-specific issue.
Information
- OS name+version: NixOS unstable
- How you installed Nyxt (Guix pack, package manager, build from source): source
- Information from
show-system-information
:- Nyxt version (from the
nyxt-version
command ornyxt --version
from a shell):655588b4981e2dd9ea0c736be980e75defd61261
- Lisp implementation/version (if built from source): SBCL 2.4.0
- Kernel name+version:
Linux 6.7.12 #1-NixOS SMP PREEMPT_DYNAMIC
- Nyxt version (from the
@evertedsphere it seems that the issue is related to the fact that Guix isn't up-to-date. Can you run guix pull
and then try again?
@aadcg tried it a few times since then, git pull --recurse-submodules
and guix pull
followed by running (asdf:load-system :nyxt/gi-gtk)
in the REPL consistently produces the same error.
Could it have to do with my Guix setup? I installed it so I could use Nyxt, but I don't know much about it otherwise. I do have the PATH
set up correctly, as far as I know:
$ which guix
/home/s/.config/guix/current/bin/guix
and my ~/.config/guix/channels.scm
contains (only) the snippet in the Nonguix readme.
@aadcg tried it a few times since then, git pull --recurse-submodules and guix pull followed by running (asdf:load-system :nyxt/gi-gtk) in the REPL consistently produces the same error.
The git submodules are irrelevant when the development environment is done via Guix. In other words, the swank/exts
system is coming from Guix, not from the git submodules. That's why I maintain that your Guix instance isn't up-to-date. What's the output of guix install emacs-slime --dry-run
? It should output emacs-slime 2.29.1
.
and my
~/.config/guix/channels.scm
contains (only) the snippet in the Nonguix readme.
Assuming you're using the default channel and nonguix, the channel file (at ~/.config/guix/channels.scm
) should look along the lines below:
(use-modules (guix ci))
(list (channel
(name 'nonguix)
(url "https://gitlab.com/nonguix/nonguix")
(introduction
(make-channel-introduction
"897c1a470da759236cc11798f4e0a5f7d4d59fbc"
(openpgp-fingerprint
"2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))))
(channel-with-substitutes-available %default-guix-channel
"https://ci.guix.gnu.org"))