~ruther/guix-local

63e48300d19b848dfe75880581338c2c73b7b0df — Ludovic Courtès 8 years ago 2976025
gnu: guile-static-stripped: Remove dependency on bash-minimal.

Previously guile-static-stripped, which is embedded in the initrd, would
depend on 'bash-minimal' and 'glibc'; the closure size was 77 MiB.  Now
the closure size is down to 45.7 MiB.

Reported by Danny Milosavljevic <dannym@scratchpost.org> in
<https://lists.gnu.org/archive/html/guix-devel/2018-02/msg00505.html>.

* gnu/packages/make-bootstrap.scm (%guile-static): Remove the
'pre-configure' phase.
(%guile-static-stripped)[arguments]: Add #:allowed-references.
1 files changed, 10 insertions(+), 1 deletions(-)

M gnu/packages/make-bootstrap.scm
M gnu/packages/make-bootstrap.scm => gnu/packages/make-bootstrap.scm +10 -1
@@ 532,6 532,13 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
                      ''("LDFLAGS=-ldl"))
                     ((#:phases phases '%standard-phases)
                      `(modify-phases ,phases

                         ;; Do not record the absolute file name of 'sh' in
                         ;; (ice-9 popen).  This makes 'open-pipe' unusable in
                         ;; a build chroot ('open-pipe*' is fine) but avoids
                         ;; keeping a reference to Bash.
                         (delete 'pre-configure)

                         (add-before 'configure 'static-guile
                           (lambda _
                             (substitute* "libguile/Makefile.in"


@@ 557,7 564,9 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
    (name "guile-static-stripped")
    (build-system trivial-build-system)
    (arguments
     `(#:modules ((guix build utils))
     ;; The end result should depend on nothing but itself.
     `(#:allowed-references ("out")
       #:modules ((guix build utils))
       #:builder
       (let ()
         (use-modules (guix build utils))