diff options
author | Ludovic Courtès <ludo@gnu.org> | 2015-08-19 14:40:59 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2015-08-29 01:25:07 +0200 |
commit | 6c7f44efc24ce089c2c8e3c41b014ac05e20e119 (patch) | |
tree | 153da127f64dd947a7f680a82b04321404f80d5d | |
parent | ced200328ca6337ac446e4557c645629e7d7a997 (diff) | |
download | guix-6c7f44efc24ce089c2c8e3c41b014ac05e20e119.tar guix-6c7f44efc24ce089c2c8e3c41b014ac05e20e119.tar.gz |
gnu: Add 'bash-static'.
* gnu/packages/bash.scm (static-bash): New variable.
-rw-r--r-- | gnu/packages/bash.scm | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gnu/packages/bash.scm b/gnu/packages/bash.scm index 6b2d0b855d..fcfa337fab 100644 --- a/gnu/packages/bash.scm +++ b/gnu/packages/bash.scm @@ -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") |