From eec5409a69054cf21214c3f5846ec0310fcb8228 Mon Sep 17 00:00:00 2001 From: Manav Rathi Date: Thu, 3 Nov 2016 22:32:29 +0530 Subject: [PATCH] installation: allow profile modification to be skipped (#1072) The current behaviour modifies the first writeable file from amongst .bash_profile, .bash_login and .profile. So .bash_profile (if it is writable) would be modified even if a user has already sourced nix.sh in, say, .profile. This commit introduces a new environment variable, NIX_INSTALLER_NO_MODIFY_PROFILE. If this is set during installation, then the modifications are unconditionally skipped. This is useful for users who have a manually curated set of dotfiles that they are porting to a new machine. In such scenarios, nix.sh is already sourced at a place where the user prefers. Without this change, the nix installer would insist on modifying .bash_profile if it exists. This commit also add documentations for both the current behaviour and the new override. --- doc/manual/installation/installing-binary.xml | 8 +++++ scripts/install-nix-from-closure.sh | 30 +++++++++++-------- 2 files changed, 25 insertions(+), 13 deletions(-) diff --git a/doc/manual/installation/installing-binary.xml b/doc/manual/installation/installing-binary.xml index da54e2bed..2a9beec98 100644 --- a/doc/manual/installation/installing-binary.xml +++ b/doc/manual/installation/installing-binary.xml @@ -26,6 +26,14 @@ $ mkdir /nix $ chown alice /nix +The install script will modify the first writable file from amongst +.bash_profile, .bash_login +and .profile to source +~/.nix-profile/etc/profile.d/nix.sh. You can set +the NIX_INSTALLER_NO_MODIFY_PROFILE environment +variable before executing the install script to disable this +behaviour. +