SLY: Fix sbcl-nyxt-site implementation to use dedicated image.

master
Pierre Neidhardt 2020-12-18 17:40:01 +01:00
parent efa70a55e4
commit cee33bff61
1 changed files with 13 additions and 9 deletions

View File

@ -157,9 +157,6 @@ returns a string."
(setq sly-lisp-implementations
`((sbcl-ambrevar ("lisp-repl-core-dumper" "sbcl" "ambrevar"))
(sbcl ("lisp-repl-core-dumper" "sbcl"))
(sbcl-nyxt-site ("guix" "environment" "--pure"
"-m" ,(expand-file-name "~/common-lisp/nyxt-site/guix-manifest.scm")
"--" "sbcl"))
;; Simple REPL environment (no container):
(sbcl-nyxt ("guix" "environment" "--pure"
"--preserve=^PERSONAL$" ; To find personal config, like engines and bookmarks.
@ -171,7 +168,8 @@ returns a string."
(sbcl-nyxt-fast
(lambda ()
;; TODO: Replace root when source has changed?
(let ((root (expand-file-name "~/.guix-temp-profiles/nyxt")))
(let ((root (expand-file-name "~/.guix-temp-profiles/nyxt"))
(cache (expand-file-name "~/.cache/lisp-repl-core-nyxt")))
(unless (file-exists-p root)
(make-directory (file-name-directory root) :parents)
(call-process "guix" nil nil nil
@ -182,13 +180,19 @@ returns a string."
"--ad-hoc" "glib" "glib-networking" "gsettings-desktop-schemas"
;; "nss-certs" ; Only needed in containers.
;; "libfixposix" ; TODO: We should not need this.
"gnupg" "lisp-repl-core-dumper"
"--" "lisp-repl-core-dumper" "sbcl"))
"gnupg"
"coreutils"
"lisp-repl-core-dumper"
"--" "env" (concat "LISP_REPL_CORE_PATH=" cache)
"lisp-repl-core-dumper" "sbcl"))
;; TODO: Include Nyxt Lisp deps in core dump?
`(("bash" "-c" ,(concat
(format "source '%s/etc/profile'" root)
" && "
;; TODO:
"lisp-repl-core-dumper sbcl"))))))
" && LISP_REPL_CORE_PATH=" cache
" lisp-repl-core-dumper sbcl"))))))
(sbcl-nyxt-site ("guix" "environment" "--pure"
"-m" ,(expand-file-name "~/common-lisp/nyxt-site/guix-manifest.scm")
"--" "sbcl"))
(ccl ("lisp-repl-core-dumper" "ccl"))
(clisp ("lisp-repl-core-dumper" "clisp"))
(ecl ("ecl")))))