diff options
author | Vladimír Čunát <v@cunat.cz> | 2019-05-09 08:42:07 +0200 |
---|---|---|
committer | Vladimír Čunát <v@cunat.cz> | 2019-05-09 08:46:22 +0200 |
commit | 79bd4ad5794163b8a65acc86809a6603ee7c7ce7 (patch) | |
tree | fd27ca49e9222b55f354fc608f5c8d1d4a580842 /pkgs | |
parent | 9d3d5e98bc415935265d48f59f538cdda52fc3bb (diff) |
stdenv, cacert: consider $NIX_SSL_CERT_FILE in hooks
Some SSL libs don't react to $SSL_CERT_FILE.
That actually makes sense to me, as we add this behavior
as nixpkgs-specific, so it seems "safer" to use $NIX_*.
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/data/misc/cacert/setup-hook.sh | 2 | ||||
-rw-r--r-- | pkgs/development/interpreters/gauche/default.nix | 2 | ||||
-rw-r--r-- | pkgs/stdenv/generic/setup.sh | 7 |
3 files changed, 8 insertions, 3 deletions
diff --git a/pkgs/data/misc/cacert/setup-hook.sh b/pkgs/data/misc/cacert/setup-hook.sh index b704a6a919e0..e969596752f3 100644 --- a/pkgs/data/misc/cacert/setup-hook.sh +++ b/pkgs/data/misc/cacert/setup-hook.sh @@ -1,4 +1,6 @@ cacertHook() { + export NIX_SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt + # left for compatibility export SSL_CERT_FILE=@out@/etc/ssl/certs/ca-bundle.crt } diff --git a/pkgs/development/interpreters/gauche/default.nix b/pkgs/development/interpreters/gauche/default.nix index 5481c4e7d05a..bb3294e2097b 100644 --- a/pkgs/development/interpreters/gauche/default.nix +++ b/pkgs/development/interpreters/gauche/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { "--with-iconv=${libiconv}" "--with-dbm=gdbm" "--with-zlib=${zlib}" - "--with-ca-bundle=$SSL_CERT_FILE" + "--with-ca-bundle=$NIX_SSL_CERT_FILE" # TODO: Enable slib # Current slib in nixpkgs is specialized to Guile # "--with-slib=${slibGuile}/lib/slib" diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 6f1a654a38ac..9cc5cd89f3b7 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -646,9 +646,12 @@ fi export NIX_BUILD_CORES -# Prevent OpenSSL-based applications from using certificates in -# /etc/ssl. +# Prevent SSL libraries from using certificates in /etc/ssl, unless set explicitly. # Leave it in shells for convenience. +if [ -z "${NIX_SSL_CERT_FILE:-}" ] && [ -z "${IN_NIX_SHELL:-}" ]; then + export NIX_SSL_CERT_FILE=/no-cert-file.crt +fi +# Another variant left for compatibility. if [ -z "${SSL_CERT_FILE:-}" ] && [ -z "${IN_NIX_SHELL:-}" ]; then export SSL_CERT_FILE=/no-cert-file.crt fi |