⮞ node --version
v16.15.0
⮞ file (which node)
/home/james/.nix-profile/bin/node: symbolic link to /nix/store/nyvl94ibcdzvkkz99s44skfyxh4mdkc5-home-manager-path/bin/node
⮞ nix shell nixpkgs#nodejs-18_x
⮞ node --version
v16.15.0
⮞ file (which node)
/home/james/.nix-profile/bin/node: symbolic link to /nix/store/nyvl94ibcdzvkkz99s44skfyxh4mdkc5-home-manager-path/bin/node
I would expect nodejs 18 to be available inside the nix shell
, shadowing the one I installed with home-manager
. Is that what should happen? Why is it not?
Could this be related to the fact that I’m using fish?
2 Likes
Please echo $PATH
for both cases.
1 Like
Note that 16 and 18 will now be reversed, as I’ve since installed 18 with home-manager, and am now using nix shell to get 16.
⮞ node --version
v18.7.0
⮞ file (which node)
/home/james/.nix-profile/bin/node: symbolic link to /nix/store/4bf0yidjk19fw5ys0lh38mshvqv9g0af-home-manager-path/bin/node
⮞ echo $PATH
/home/james/.nix-profile/bin /home/james/.pack/bin /home/james/.poetry/bin /home/james/.npm-global/bin /home/james/.nix-profile/bin /home/james/.nix-profile/bin /home/james/.local/bin /usr/local/bin /usr/bin /bin /usr/local/sbin /usr/lib/jvm/default/bin /usr/bin/site_perl /usr/bin/vendor_perl /usr/bin/core_perl /var/lib/snapd/snap/bin /home/james/.cabal/bin /home/james/.ghcup/bin
⮞ nix shell nixpkgs#nodejs-16_x
⮞ file (which node)
/home/james/.nix-profile/bin/node: symbolic link to /nix/store/4bf0yidjk19fw5ys0lh38mshvqv9g0af-home-manager-path/bin/node
⮞ echo $PATH
/home/james/.nix-profile/bin /home/james/.pack/bin /home/james/.poetry/bin /home/james/.npm-global/bin /nix/store/s6isdp5wxcz0hfcj72wfb9wvpkkh7ppg-nodejs-16.16.0/bin /home/james/.nix-profile/bin /home/james/.nix-profile/bin /home/james/.nix-profile/bin /home/james/.local/bin /usr/local/bin /usr/bin /bin /usr/local/sbin /usr/lib/jvm/default/bin /usr/bin/site_perl /usr/bin/vendor_perl /usr/bin/core_perl /var/lib/snapd/snap/bin /home/james/.cabal/bin /home/james/.ghcup/bin
Could this be caused by GitHub - lilyball/nix-env.fish: Nix environment setup for the fish shell, which I’m installing with home-manager?
Possibly. At least something (apparently unrelated) is prepending stuff to your $PATH
on shell initialization.
1 Like