nix инструкция дает указание выполнить
source ~/.nix-profile/etc/profile.d/nix.sh
но инструкции, напечатанные после казни, говорят, что надо делать (точно не помню)
./~/.nix-profile/etc/profile.d/nix.sh
и эта же команда вставляется в ~/.profile
. Причиной проблемы является разница между .
и source
(см. https://superuser.com/questions/46139/what-does-source-do).. Сценарий настраивает переменную $ PATH в среде и дает желаемый эффект * source
, но без .
(который работает в своей собственной оболочке и закрывает его в конце).
Лечение:
измените строку в .profile
(или лучше переместите ее на .bashrc
) на
if [ -e /home/xxx/.nix-profile/etc/profile.d/nix.sh ]; then source /home/xxx/.nix-profile/etc/profile.d/nix.sh; fi
(xxx
- ваше имя пользователя),