gnu: sbcl: Remove Coreutils reference from closure.
* gnu/packages/lisp.scm (sbcl)[arguments]: Add phase to do it. This shrinks SBCL from 167MiB to 150MiB. Most importantly, this propagates to all sbcl-* packages.
This commit is contained in:
parent
1051db2526
commit
d14070bd29
1 changed files with 15 additions and 0 deletions
|
@ -605,6 +605,21 @@ an interpreter, a compiler, a debugger, and much more.")
|
||||||
(string-append "(sb-ext:set-sbcl-source-location \""
|
(string-append "(sb-ext:set-sbcl-source-location \""
|
||||||
source-dir "\")") )))
|
source-dir "\")") )))
|
||||||
#t)))
|
#t)))
|
||||||
|
(add-after 'install 'remove-coreutils-references
|
||||||
|
;; They are only useful on non-Linux, non-SBCL.
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(share-dir (string-append out "/share/sbcl/")))
|
||||||
|
(substitute* (string-append share-dir "src/code/run-program.lisp")
|
||||||
|
(("\\(run-program \".*uname\"")
|
||||||
|
"(run-program \"uname\""))
|
||||||
|
(substitute* (string-append share-dir "contrib/asdf/asdf.lisp")
|
||||||
|
(("\\(\".*/usr/bin/env\"")
|
||||||
|
"(\"/usr/bin/env\""))
|
||||||
|
(substitute* (string-append share-dir "contrib/asdf/uiop.lisp")
|
||||||
|
(("\\(\".*/usr/bin/env\"")
|
||||||
|
"(\"/usr/bin/env\""))
|
||||||
|
#t)))
|
||||||
(add-after 'install 'install-shared-library
|
(add-after 'install 'install-shared-library
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
|
Reference in a new issue