summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-02-03 22:10:06 +0100
committerLudovic Courtès <ludo@gnu.org>2019-02-04 00:03:30 +0100
commita87d66f371da2a84d7bba1cae58b71c9c9af73aa (patch)
treeb76d7573152a73dad1c51ac6d41538fe3a40ff66
parentf73ab814a54033e12f2fe71bff672198210bb8c2 (diff)
downloadguix-a87d66f371da2a84d7bba1cae58b71c9c9af73aa.tar.gz
daemon: Rename 'NIX_STATE_DIR' and 'NIX_DB_DIR' environment variables.
Fixes <https://bugs.gnu.org/22459>.
Reported by Jeff Mickey <j@codemac.net>.

* guix/config.scm.in (%state-directory): Change NIX_STATE_DIR to
GUIX_STATE_DIRECTORY.
(%store-database-directory): Change NIX_DB_DIR to
GUIX_DATABASE_DIRECTORY.
* nix/libstore/globals.cc (Settings::processEnvironment): Likewise.
* guix/self.scm (make-config.scm): Likewise.
* build-aux/build-self.scm (make-config.scm): Likewise.
* build-aux/test-env.in: Likewise.
* tests/derivations.scm ("derivation #:leaked-env-vars"): Likewise.
* tests/guix-build.sh (GUIX_DAEMON_SOCKET): Likewise.
* tests/guix-daemon.sh (socket): Likewise.
-rw-r--r--build-aux/build-self.scm4
-rw-r--r--build-aux/test-env.in22
-rw-r--r--guix/config.scm.in6
-rw-r--r--guix/self.scm4
-rw-r--r--nix/libstore/globals.cc6
-rw-r--r--tests/derivations.scm15
-rw-r--r--tests/guix-build.sh4
-rw-r--r--tests/guix-daemon.sh2
8 files changed, 32 insertions, 31 deletions
diff --git a/build-aux/build-self.scm b/build-aux/build-self.scm
index f70c3d91ff..d18b4504cf 100644
--- a/build-aux/build-self.scm
+++ b/build-aux/build-self.scm
@@ -114,11 +114,11 @@
                      (define %state-directory
                        ;; This must match `NIX_STATE_DIR' as defined in
                        ;; `nix/local.mk'.
-                       (or (getenv "NIX_STATE_DIR")
+                       (or (getenv "GUIX_STATE_DIRECTORY")
                            (string-append %localstatedir "/guix")))
 
                      (define %store-database-directory
-                       (or (getenv "NIX_DB_DIR")
+                       (or (getenv "GUIX_DATABASE_DIRECTORY")
                            (string-append %state-directory "/db")))
 
                      (define %config-directory
diff --git a/build-aux/test-env.in b/build-aux/test-env.in
index aaadcf205b..b1470bb953 100644
--- a/build-aux/test-env.in
+++ b/build-aux/test-env.in
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 # GNU Guix --- Functional package management for GNU
-# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 #
 # This file is part of GNU Guix.
 #
@@ -51,19 +51,19 @@ then
     NIX_STORE_DIR="`cd "@GUIX_TEST_ROOT@/store"; pwd -P`"
 
     NIX_LOCALSTATE_DIR="@GUIX_TEST_ROOT@/var"
-    NIX_LOG_DIR="@GUIX_TEST_ROOT@/var/log/guix"
-    NIX_DB_DIR="@GUIX_TEST_ROOT@/db"
+    GUIX_LOG_DIRECTORY="@GUIX_TEST_ROOT@/var/log/guix"
+    GUIX_DATABASE_DIRECTORY="@GUIX_TEST_ROOT@/db"
     NIX_ROOT_FINDER="@abs_top_builddir@/nix/scripts/list-runtime-roots"
 
     # Choose a PID-dependent name to allow for parallel builds.  Note
     # that the directory name must be chosen so that the socket's file
     # name is less than 108-char long (the size of `sun_path' in glibc).
     # Currently, in Nix builds, we're at ~106 chars...
-    NIX_STATE_DIR="@GUIX_TEST_ROOT@/var/$$"
+    GUIX_STATE_DIRECTORY="@GUIX_TEST_ROOT@/var/$$"
 
     # We can't exit when we reach the limit, because perhaps the test doesn't
     # actually rely on the daemon, but at least warn.
-    if test "`echo -n "$NIX_STATE_DIR/daemon-socket/socket" | wc -c`" -ge 108
+    if test "`echo -n "$GUIX_STATE_DIRECTORY/daemon-socket/socket" | wc -c`" -ge 108
     then
 	echo "warning: exceeding socket file name limit; test may fail!" >&2
     fi
@@ -82,22 +82,22 @@ then
     fi
 
     # A place to store data of the substituter.
-    GUIX_BINARY_SUBSTITUTE_URL="file://$NIX_STATE_DIR/substituter-data"
-    rm -rf "$NIX_STATE_DIR/substituter-data"
-    mkdir -p "$NIX_STATE_DIR/substituter-data"
+    GUIX_BINARY_SUBSTITUTE_URL="file://$GUIX_STATE_DIRECTORY/substituter-data"
+    rm -rf "$GUIX_STATE_DIRECTORY/substituter-data"
+    mkdir -p "$GUIX_STATE_DIRECTORY/substituter-data"
 
     # For a number of tests, we want to allow unsigned narinfos, for
     # simplicity.
     GUIX_ALLOW_UNAUTHENTICATED_SUBSTITUTES=yes
 
     # Place for the substituter's cache.
-    XDG_CACHE_HOME="$NIX_STATE_DIR/cache-$$"
+    XDG_CACHE_HOME="$GUIX_STATE_DIRECTORY/cache-$$"
 
     # For the (guix import snix) tests.
     NIXPKGS="@NIXPKGS@"
 
     export NIX_IGNORE_SYMLINK_STORE NIX_STORE_DIR		\
-	NIX_LOCALSTATE_DIR NIX_LOG_DIR NIX_STATE_DIR NIX_DB_DIR	\
+	NIX_LOCALSTATE_DIR GUIX_LOG_DIRECTORY GUIX_STATE_DIRECTORY GUIX_DATABASE_DIRECTORY	\
 	NIX_ROOT_FINDER GUIX_BINARY_SUBSTITUTE_URL		\
         GUIX_ALLOW_UNAUTHENTICATED_SUBSTITUTES			\
         GUIX_CONFIGURATION_DIRECTORY XDG_CACHE_HOME NIXPKGS
@@ -109,7 +109,7 @@ then
 	--substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL" &
 
     daemon_pid=$!
-    trap "kill $daemon_pid ; rm -rf $NIX_STATE_DIR" EXIT
+    trap "kill $daemon_pid ; rm -rf $GUIX_STATE_DIRECTORY" EXIT
 
     # The test suite expects the 'guile-bootstrap' package to be available.
     # Normally the Guile bootstrap tarball is downloaded by a fixed-output
diff --git a/guix/config.scm.in b/guix/config.scm.in
index 1a761b912e..d2ec9921c6 100644
--- a/guix/config.scm.in
+++ b/guix/config.scm.in
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2017 Caleb Ristvedt <caleb.ristvedt@cune.org>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -73,11 +73,11 @@
 
 (define %state-directory
   ;; This must match `NIX_STATE_DIR' as defined in `nix/local.mk'.
-  (or (getenv "NIX_STATE_DIR")
+  (or (getenv "GUIX_STATE_DIRECTORY")
       (string-append %localstatedir "/guix")))
 
 (define %store-database-directory
-  (or (getenv "NIX_DB_DIR")
+  (or (getenv "GUIX_DATABASE_DIRECTORY")
       (string-append %state-directory "/db")))
 
 (define %config-directory
diff --git a/guix/self.scm b/guix/self.scm
index f028bdbfdd..68f5641fec 100644
--- a/guix/self.scm
+++ b/guix/self.scm
@@ -786,11 +786,11 @@ Info manual."
                    (define %state-directory
                      ;; This must match `NIX_STATE_DIR' as defined in
                      ;; `nix/local.mk'.
-                     (or (getenv "NIX_STATE_DIR")
+                     (or (getenv "GUIX_STATE_DIRECTORY")
                          (string-append %localstatedir "/guix")))
 
                    (define %store-database-directory
-                     (or (getenv "NIX_DB_DIR")
+                     (or (getenv "GUIX_DATABASE_DIRECTORY")
                          (string-append %state-directory "/db")))
 
                    (define %config-directory
diff --git a/nix/libstore/globals.cc b/nix/libstore/globals.cc
index 25f80da2dd..ac92971887 100644
--- a/nix/libstore/globals.cc
+++ b/nix/libstore/globals.cc
@@ -67,9 +67,9 @@ void Settings::processEnvironment()
 {
     nixStore = canonPath(getEnv("NIX_STORE_DIR", getEnv("NIX_STORE", NIX_STORE_DIR)));
     nixDataDir = canonPath(getEnv("NIX_DATA_DIR", NIX_DATA_DIR));
-    nixLogDir = canonPath(getEnv("NIX_LOG_DIR", NIX_LOG_DIR));
-    nixStateDir = canonPath(getEnv("NIX_STATE_DIR", NIX_STATE_DIR));
-    nixDBPath = getEnv("NIX_DB_DIR", nixStateDir + "/db");
+    nixLogDir = canonPath(getEnv("GUIX_LOG_DIRECTORY", NIX_LOG_DIR));
+    nixStateDir = canonPath(getEnv("GUIX_STATE_DIRECTORY", NIX_STATE_DIR));
+    nixDBPath = getEnv("GUIX_DATABASE_DIRECTORY", nixStateDir + "/db");
     nixConfDir = canonPath(getEnv("GUIX_CONFIGURATION_DIRECTORY", GUIX_CONFIGURATION_DIRECTORY));
     nixLibexecDir = canonPath(getEnv("NIX_LIBEXEC_DIR", NIX_LIBEXEC_DIR));
     nixBinDir = canonPath(getEnv("NIX_BIN_DIR", NIX_BIN_DIR));
diff --git a/tests/derivations.scm b/tests/derivations.scm
index c0601c0e88..dbb5b584eb 100644
--- a/tests/derivations.scm
+++ b/tests/derivations.scm
@@ -650,18 +650,19 @@
       (build-derivations %store (list drv))
       #f)))
 
-;; Here we should get the value of $NIX_STATE_DIR that the daemon sees, which
-;; is a unique value for each test process; this value is the same as the one
-;; we see in the process executing this file since it is set by 'test-env'.
+;; Here we should get the value of $GUIX_STATE_DIRECTORY that the daemon sees,
+;; which is a unique value for each test process; this value is the same as
+;; the one we see in the process executing this file since it is set by
+;; 'test-env'.
 (test-equal "derivation #:leaked-env-vars"
-  (getenv "NIX_STATE_DIR")
-  (let* ((value (getenv "NIX_STATE_DIR"))
+  (getenv "GUIX_STATE_DIRECTORY")
+  (let* ((value (getenv "GUIX_STATE_DIRECTORY"))
          (drv   (derivation %store "leaked-env-vars" %bash
-                            '("-c" "echo -n $NIX_STATE_DIR > $out")
+                            '("-c" "echo -n $GUIX_STATE_DIRECTORY > $out")
                             #:hash (sha256 (string->utf8 value))
                             #:hash-algo 'sha256
                             #:inputs `((,%bash))
-                            #:leaked-env-vars '("NIX_STATE_DIR"))))
+                            #:leaked-env-vars '("GUIX_STATE_DIRECTORY"))))
     (and (build-derivations %store (list drv))
          (call-with-input-file (derivation->output-path drv)
            get-string-all))))
diff --git a/tests/guix-build.sh b/tests/guix-build.sh
index 7842ce87c6..66bf6be8d0 100644
--- a/tests/guix-build.sh
+++ b/tests/guix-build.sh
@@ -1,5 +1,5 @@
 # GNU Guix --- Functional package management for GNU
-# Copyright © 2012, 2013, 2014, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+# Copyright © 2012, 2013, 2014, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 #
 # This file is part of GNU Guix.
 #
@@ -37,7 +37,7 @@ guix build hello -d |				\
     grep -e '-hello-[0-9\.]\+\.drv$'
 
 # Passing a URI.
-GUIX_DAEMON_SOCKET="file://$NIX_STATE_DIR/daemon-socket/socket"	\
+GUIX_DAEMON_SOCKET="file://$GUIX_STATE_DIRECTORY/daemon-socket/socket"	\
 guix build -e '(@@ (gnu packages bootstrap) %bootstrap-guile)'
 
 ( if GUIX_DAEMON_SOCKET="weird://uri"					\
diff --git a/tests/guix-daemon.sh b/tests/guix-daemon.sh
index 4c19a55722..ce82cfd1e6 100644
--- a/tests/guix-daemon.sh
+++ b/tests/guix-daemon.sh
@@ -63,7 +63,7 @@ guile -c "
   (exit (has-substitutes? store \"$out\"))"
 
 # Now, run guix-daemon --no-substitutes.
-socket="$NIX_STATE_DIR/alternate-socket"
+socket="$GUIX_STATE_DIRECTORY/alternate-socket"
 guix-daemon --no-substitutes --listen="$socket" --disable-chroot &
 daemon_pid=$!
 trap 'kill $daemon_pid' EXIT