summaryrefslogtreecommitdiff
path: root/nix/nix-daemon/guix-daemon.cc
diff options
context:
space:
mode:
Diffstat (limited to 'nix/nix-daemon/guix-daemon.cc')
-rw-r--r--nix/nix-daemon/guix-daemon.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/nix/nix-daemon/guix-daemon.cc b/nix/nix-daemon/guix-daemon.cc
index 4f9fa4c525..cf87e39354 100644
--- a/nix/nix-daemon/guix-daemon.cc
+++ b/nix/nix-daemon/guix-daemon.cc
@@ -195,6 +195,10 @@ main (int argc, char *argv[])
exit (EXIT_FAILURE);
}
+ /* Tell Libgcrypt that initialization has completed, as per the Libgcrypt
+ 1.6.0 manual (although this does not appear to be strictly needed.) */
+ gcry_control (GCRYCTL_INITIALIZATION_FINISHED, 0);
+
/* Set the umask so that the daemon does not end up creating group-writable
files, which would lead to "suspicious ownership or permission" errors.
See <http://lists.gnu.org/archive/html/bug-guix/2013-07/msg00033.html>. */
@@ -212,6 +216,12 @@ main (int argc, char *argv[])
{
settings.processEnvironment ();
+ /* Hackily help 'local-store.cc' find our 'guix-authenticate' program, which
+ is known as 'OPENSSL_PATH' here. */
+ std::string search_path (getenv ("PATH"));
+ search_path = settings.nixLibexecDir + ":" + search_path;
+ setenv ("PATH", search_path.c_str (), 1);
+
/* Use our substituter by default. */
settings.substituters.clear ();
settings.useSubstitutes = true;