aboutsummaryrefslogtreecommitdiff
path: root/nix/nix-daemon/guix-daemon.cc
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-02-04 14:17:46 +0100
committerLudovic Courtès <ludo@gnu.org>2019-02-04 16:20:01 +0100
commit4d4a38f620520acc787ff5db2be3736923e14235 (patch)
treef562db4b438358b74cab73cd471308ed7051dc1e /nix/nix-daemon/guix-daemon.cc
parent44cfbb6233408255d948c02f6c32cbd43707864e (diff)
downloadguix-4d4a38f620520acc787ff5db2be3736923e14235.tar
guix-4d4a38f620520acc787ff5db2be3736923e14235.tar.gz
daemon: Remove the 'NIX_SUBSTITUTERS' environment variable.
* nix/libstore/globals.cc (Settings:update): Remove changes to 'substituters'. * nix/nix-daemon/guix-daemon.cc (main): Set 'settings.substituters' directly instead of changing the 'NIX_SUBSTITUTERS' environment variable. * build-aux/pre-inst-env.in: Remove reference to 'NIX_SUBSTITUTERS'.
Diffstat (limited to 'nix/nix-daemon/guix-daemon.cc')
-rw-r--r--nix/nix-daemon/guix-daemon.cc23
1 files changed, 10 insertions, 13 deletions
diff --git a/nix/nix-daemon/guix-daemon.cc b/nix/nix-daemon/guix-daemon.cc
index 8fdab2d116..23ef46ef8c 100644
--- a/nix/nix-daemon/guix-daemon.cc
+++ b/nix/nix-daemon/guix-daemon.cc
@@ -1,5 +1,5 @@
/* GNU Guix --- Functional package management for GNU
- Copyright (C) 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+ Copyright (C) 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
Copyright (C) 2006, 2010, 2012, 2014 Eelco Dolstra <e.dolstra@tudelft.nl>
This file is part of GNU Guix.
@@ -499,22 +499,19 @@ main (int argc, char *argv[])
if (settings.useSubstitutes)
{
- string subs = getEnv ("NIX_SUBSTITUTERS", "default");
-
- if (subs == "default")
- {
- string subst =
- settings.nixLibexecDir + "/guix/substitute";
- setenv ("NIX_SUBSTITUTERS", subst.c_str (), 1);
- }
+ /* XXX: Hack our way to use the 'substitute' script from
+ 'LIBEXECDIR/guix' or just 'LIBEXECDIR', depending on whether
+ we're running uninstalled or not. */
+ const string subdir = getenv("GUIX_UNINSTALLED") != NULL
+ ? "" : "/guix";
+
+ settings.substituters.push_back (settings.nixLibexecDir
+ + subdir + "/substitute");
}
else
/* Clear the substituter list to make sure nothing ever gets
substituted, regardless of the client's settings. */
- setenv ("NIX_SUBSTITUTERS", "", 1);
-
- /* Effect the $NIX_SUBSTITUTERS change. */
- settings.update ();
+ settings.substituters.clear ();
if (geteuid () == 0 && settings.buildUsersGroup.empty ())
fprintf (stderr, _("warning: daemon is running as root, so \