From cfaebf1b09c71585b5513629005e7cf3c5d17508 Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Sun, 1 Oct 2017 14:32:04 +0200 Subject: [PATCH] gnu: python-numpy: Give sh store location instead of setting $SHELL. * gnu/packages/python.scm (python-numpy): [arguments] Don't set $SHELL in the environment, but embed the location of bash as a default shell. Otherwise, we have to set $SHELL for every package which uses numpy's distutils. --- gnu/packages/python.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index e95c22de1..267715b0f 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3742,8 +3742,6 @@ between language specification and implementation aspects.") (modify-phases %standard-phases (add-before 'build 'set-environment-variables (lambda* (#:key inputs #:allow-other-keys) - ;; numpy's distutils uses $SHELL to run external commands. - (setenv "SHELL" "bash") (call-with-output-file "site.cfg" (lambda (port) (format port @@ -3762,6 +3760,10 @@ include_dirs = ~a/include (assoc-ref inputs "openblas") (assoc-ref inputs "lapack") (assoc-ref inputs "lapack")))) + ;; Insert bash store location for default shell /bin/sh. + (substitute* "numpy/distutils/exec_command.py" + (("(os.environ.get\\('SHELL', ')(/bin/sh'\\))" match match-start match-end) + (string-append match-start (assoc-ref inputs "bash") match-end))) ;; Use "gcc" executable, not "cc". (substitute* "numpy/distutils/system_info.py" (("c = distutils\\.ccompiler\\.new_compiler\\(\\)") -- 2.14.1