aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/manual/nix-env.xml17
-rw-r--r--src/nix-env/nix-env.cc3
2 files changed, 16 insertions, 4 deletions
diff --git a/doc/manual/nix-env.xml b/doc/manual/nix-env.xml
index a5217450b..ff9f9c16a 100644
--- a/doc/manual/nix-env.xml
+++ b/doc/manual/nix-env.xml
@@ -93,11 +93,10 @@ also <xref linkend="sec-common-options" />.</phrase></para>
<listitem><para>Specifies the profile to be used by those
operations that operate on a profile (designated below as the
- <emphasis>active profile</emphasis>). A profile is sequence of
+ <emphasis>active profile</emphasis>). A profile is a sequence of
user environments called <emphasis>generations</emphasis>, one of
- which is the <emphasis>current generation</emphasis>. The default
- profile is the target of the symbolic link
- <filename>~/.nix-profile</filename> (see below).</para></listitem>
+ which is the <emphasis>current
+ generation</emphasis>.</para></listitem>
</varlistentry>
@@ -1256,6 +1255,16 @@ error: no generation older than the current (91) exists</screen>
<refsection condition="manpage"><title>Environment variables</title>
<variablelist>
+
+ <varlistentry><term><envar>NIX_PROFILE</envar></term>
+
+ <listitem><para>Location of the Nix profile. Defaults to the
+ target of the symlink <filename>~/.nix-profile</filename>, if it
+ exists, or <filename>/nix/var/nix/profiles/default</filename>
+ otherwise.</para></listitem>
+
+ </varlistentry>
+
<xi:include href="env-common.xml#xmlns(db=http://docbook.org/ns/docbook)xpointer(//db:variablelist[@xml:id='env-common']/*)" />
</variablelist>
diff --git a/src/nix-env/nix-env.cc b/src/nix-env/nix-env.cc
index b57e54c75..68a3e89d8 100644
--- a/src/nix-env/nix-env.cc
+++ b/src/nix-env/nix-env.cc
@@ -1350,6 +1350,9 @@ void run(Strings args)
if (!op) throw UsageError("no operation specified");
+ if (globals.profile == "")
+ globals.profile = getEnv("NIX_PROFILE", "");
+
if (globals.profile == "") {
Path profileLink = getHomeDir() + "/.nix-profile";
globals.profile = pathExists(profileLink)