diff options
author | eldritch horrors <pennae@lix.systems> | 2024-03-04 08:51:49 +0100 |
---|---|---|
committer | eldritch horrors <pennae@lix.systems> | 2024-03-04 08:51:49 +0100 |
commit | 9ef32cf3b8e645c9ed1e08b097d07db688cfb0a7 (patch) | |
tree | 13d3c652efe7f3d05af6e491f26bf037474f42c6 | |
parent | 625df32afca54cbc20c1dfe01159fc2b5e549aed (diff) |
Merge pull request #9930 from rvl/print-dev-env-unbound-variables
print-dev-env: Avoid using unbound shellHook variable
(cherry picked from commit 25385a408ef7281d966c8732608833e224b32586)
Change-Id: Id1aca13942adfa628f7bdcfc0b6fc03bb3bab9ea
-rw-r--r-- | src/nix/develop.cc | 2 | ||||
-rw-r--r-- | tests/functional/nix-shell.sh | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/nix/develop.cc b/src/nix/develop.cc index 07672a80a..2790ff154 100644 --- a/src/nix/develop.cc +++ b/src/nix/develop.cc @@ -318,7 +318,7 @@ struct Common : InstallableCommand, MixProfile for (auto & i : {"TMP", "TMPDIR", "TEMP", "TEMPDIR"}) out << fmt("export %s=\"$NIX_BUILD_TOP\"\n", i); - out << "eval \"$shellHook\"\n"; + out << "eval \"${shellHook:-}\"\n"; auto script = out.str(); diff --git a/tests/functional/nix-shell.sh b/tests/functional/nix-shell.sh index 13403fadb..04c83138e 100644 --- a/tests/functional/nix-shell.sh +++ b/tests/functional/nix-shell.sh @@ -118,10 +118,10 @@ diff $TEST_ROOT/dev-env{,2}.json # Ensure `nix print-dev-env --json` contains variable assignments. [[ $(jq -r .variables.arr1.value[2] $TEST_ROOT/dev-env.json) = '3 4' ]] -# Run tests involving `source <(nix print-dev-inv)` in subshells to avoid modifying the current +# Run tests involving `source <(nix print-dev-env)` in subshells to avoid modifying the current # environment. -set +u # FIXME: Make print-dev-env `set -u` compliant (issue #7951) +set -u # Ensure `source <(nix print-dev-env)` modifies the environment. ( |