From ba5717a6f5d2e474a4caf65a1be5750469b447bd Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Mon, 17 Sep 2018 14:13:43 -0500 Subject: [PATCH] stdenv: fix HOST_PATH change MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit a4630c65caf was incorrect in assuming $SHELL would be a path to the bash derivation. In fact $SHELL will be a path to the bash executable. Unfortunately this did not fix the original issue. So instead, we just have to reuse initialPath can be added like PATH is. Sorry for the inconvenience! I hadn’t thought through the effects of the last commit. /cc @copumpkin @ericson2314 --- pkgs/stdenv/generic/setup.sh | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 9a620abfbade..11d0f1fbce43 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -261,6 +261,13 @@ HOST_PATH= for i in $initialPath; do if [ "$i" = / ]; then i=; fi addToSearchPath PATH "$i/bin" + + # For backward compatibility, we add initial path to HOST_PATH so + # it can be used in auto patch-shebangs. Unfortunately this will + # not work with cross compilation. + if [ -z "${strictDeps-}" ]; then + addToSearchPath HOST_PATH "$i/bin" + fi done if (( "${NIX_DEBUG:-0}" >= 1 )); then @@ -273,13 +280,6 @@ if [ -z "${SHELL:-}" ]; then echo "SHELL not set"; exit 1; fi BASH="$SHELL" export CONFIG_SHELL="$SHELL" -# For backward compatibility, we add SHELL to HOST_PATH so it can be -# used in auto patch-shebangs. Unfortunately this will not work with -# cross compilation because it will be for the builder’s platform. -if [ -z "${strictDeps-}" ]; then - addToSearchPath HOST_PATH "$SHELL/bin" -fi - # Dummy implementation of the paxmark function. On Linux, this is # overwritten by paxctl's setup hook. paxmark() { true; }