aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2012-12-19 12:34:53 +0100
committerLudovic Courtès <ludo@gnu.org>2012-12-19 12:34:53 +0100
commitea8fbbf2f2d8beccad1c7a98077c0a31fb40e578 (patch)
tree0fc94e09da1c32762648c533d3a6665d7dc16c57
parentc3ee7448c9c10d0fdcc52fd1d57031cf6677aafc (diff)
downloadgnu-guix-ea8fbbf2f2d8beccad1c7a98077c0a31fb40e578.tar
gnu-guix-ea8fbbf2f2d8beccad1c7a98077c0a31fb40e578.tar.gz
distro: make: Change default shell from /bin/sh to the actual shell.
* distro/packages/base.scm (gnu-make): Add `set-default-shell' phase. (gnu-make-boot0): Adjust phases accordingly.
-rw-r--r--distro/packages/base.scm46
1 files changed, 29 insertions, 17 deletions
diff --git a/distro/packages/base.scm b/distro/packages/base.scm
index f0dd150e12..4bd8070827 100644
--- a/distro/packages/base.scm
+++ b/distro/packages/base.scm
@@ -289,8 +289,18 @@ are expected to exist on every operating system.")
(build-system gnu-build-system)
(native-inputs
`(("patch/impure-dirs" ,(search-patch "make-impure-dirs.patch"))))
- (arguments `(#:patches (list (assoc-ref %build-inputs
- "patch/impure-dirs"))))
+ (arguments
+ '(#:patches (list (assoc-ref %build-inputs "patch/impure-dirs"))
+ #:phases (alist-cons-before
+ 'build 'set-default-shell
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Change the default shell from /bin/sh.
+ (let ((bash (assoc-ref inputs "bash")))
+ (substitute* "job.c"
+ (("default_shell\\[\\] =.*$")
+ (format #f "default_shell[] = \"~a/bin/bash\";\n"
+ bash)))))
+ %standard-phases)))
(synopsis "GNU Make, a program controlling the generation of non-source
files from sources")
(description
@@ -534,21 +544,23 @@ with the Linux kernel.")
(package (inherit gnu-make)
(name "make-boot0")
(location (source-properties->location (current-source-location)))
- (arguments `(#:guile ,%bootstrap-guile
- #:implicit-inputs? #f
- #:tests? #f ; cannot run "make check"
- #:phases
- (alist-replace
- 'build (lambda _
- (zero? (system* "./build.sh")))
- (alist-replace
- 'install (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin")))
- (mkdir-p bin)
- (copy-file "make"
- (string-append bin "/make"))))
- %standard-phases))))
+ (arguments
+ `(#:guile ,%bootstrap-guile
+ #:implicit-inputs? #f
+ #:tests? #f ; cannot run "make check"
+ ,@(substitute-keyword-arguments (package-arguments gnu-make)
+ ((#:phases phases)
+ `(alist-replace
+ 'build (lambda _
+ (zero? (system* "./build.sh")))
+ (alist-replace
+ 'install (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (mkdir-p bin)
+ (copy-file "make"
+ (string-append bin "/make"))))
+ ,phases))))))
(inputs %bootstrap-inputs))))
(define diffutils-boot0