~ruther/guix-local

6c7f44efc24ce089c2c8e3c41b014ac05e20e119 — Ludovic Courtès 10 years ago ced2003
gnu: Add 'bash-static'.

* gnu/packages/bash.scm (static-bash): New variable.
1 files changed, 22 insertions(+), 0 deletions(-)

M gnu/packages/bash.scm
M gnu/packages/bash.scm => gnu/packages/bash.scm +22 -0
@@ 239,6 239,28 @@ without modification.")
                       '("bash_cv_job_control_missing=no")
                       '()))))))))

(define-public static-bash
  ;; Statically-linked Bash that contains nothing but the 'bash' binary and
  ;; 'sh' symlink, without any reference.
  (let ((bash (static-package bash-light)))
    (package
      (inherit bash)
      (name "bash-static")
      (arguments
       (substitute-keyword-arguments
           `(#:allowed-references ("out") ,@(package-arguments bash))
         ((#:phases phases)
          `(alist-cons-after
            'strip 'remove-everything-but-the-binary
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
                     (bin (string-append out "/bin")))
                (remove-store-references (string-append bin "/bash"))
                (delete-file (string-append bin "/bashbug"))
                (delete-file-recursively (string-append out "/share"))
                #t))
            ,phases)))))))

(define-public bash-completion
  (package
    (name "bash-completion")