shellHook: make it actually run
When we changed this in I91cb6eb6668f3a8eace36ecbdb01eb367861d77b to not run in nested shells, we didn't predict that `nix develop` would do something ridiculous and append -env to things silently. `nix-shell` of course does not do this, so we need to tolerate both. Change-Id: Ibe7cf546823d7358ebc0414ecbe154e3e3194f45
This commit is contained in:
parent
2f104bbe3b
commit
e6e5cacabe
1 changed files with 4 additions and 1 deletions
|
@ -449,7 +449,10 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
shellHook = ''
|
||||
# don't re-run the hook in (other) nested nix-shells
|
||||
function lixShellHook() {
|
||||
if [[ $name != lix-shell-env ]]; then
|
||||
# n.b. how the heck does this become -env-env? well, `nix develop` does it:
|
||||
# https://git.lix.systems/lix-project/lix/src/commit/7575db522e9008685c4009423398f6900a16bcce/src/nix/develop.cc#L240-L241
|
||||
# this is, of course, absurd.
|
||||
if [[ $name != lix-shell-env && $name != lix-shell-env-env ]]; then
|
||||
return;
|
||||
fi
|
||||
|
||||
|
|
Loading…
Reference in a new issue