Allow nested login shells to retain nix in PATH #14697
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This reverts commit 2b4e3fa.
This commit prevents PATH from being configured when a login shell is started nested in another login shell.
Linux distros might reset PATH when running a login shell (or when executing /etc/profile manually) but nix-daemon.sh will be skipped because __ETC_PROFILE_NIX_SOURCED will remain set. As a result PATH will no longer contain the path to the nix binary.
This PR fixes #13255 and #13355.
In my opinion it is better to have duplicates in your PATH than it not being set at all because nested login shells are used.