diff --git a/misc/docker/Dockerfile b/misc/docker/Dockerfile
index 342c28eda..d57892ea8 100644
--- a/misc/docker/Dockerfile
+++ b/misc/docker/Dockerfile
@@ -13,11 +13,11 @@ RUN set -x \
ONBUILD ENV \
ENV=/etc/profile \
PATH=/root/.nix-profile/bin:/root/.nix-profile/sbin:/bin:/sbin:/usr/bin:/usr/sbin \
- GIT_SSL_CAINFO=/root/.nix-profile/etc/ca-bundle.crt \
- SSL_CERT_FILE=/root/.nix-profile/etc/ca-bundle.crt
+ GIT_SSL_CAINFO=/root/.nix-profile/etc/ssl/certs/ca-bundle.crt \
+ NIX_SSL_CERT_FILE=/root/.nix-profile/etc/ssl/certs/ca-bundle.crt
ENV \
ENV=/etc/profile \
PATH=/root/.nix-profile/bin:/root/.nix-profile/sbin:/bin:/sbin:/usr/bin:/usr/sbin \
- GIT_SSL_CAINFO=/root/.nix-profile/etc/ca-bundle.crt \
- SSL_CERT_FILE=/root/.nix-profile/etc/ca-bundle.crt
+ GIT_SSL_CAINFO=/root/.nix-profile/etc/ssl/certs/ca-bundle.crt \
+ NIX_SSL_CERT_FILE=/root/.nix-profile/etc/ssl/certs/ca-bundle.crt
diff --git a/misc/launchd/org.nixos.nix-daemon.plist.in b/misc/launchd/org.nixos.nix-daemon.plist.in
index 0dd665db6..c5ef97ee9 100644
--- a/misc/launchd/org.nixos.nix-daemon.plist.in
+++ b/misc/launchd/org.nixos.nix-daemon.plist.in
@@ -14,7 +14,7 @@
/dev/null
EnvironmentVariables
- SSL_CERT_FILE
+ NIX_SSL_CERT_FILE
/nix/var/nix/profiles/default/etc/ssl/certs/ca-bundle.crt
diff --git a/scripts/download-from-binary-cache.pl.in b/scripts/download-from-binary-cache.pl.in
index a4f858610..fa2a2f60a 100644
--- a/scripts/download-from-binary-cache.pl.in
+++ b/scripts/download-from-binary-cache.pl.in
@@ -41,7 +41,7 @@ my $activeRequests = 0;
my $curlIdCount = 1;
my %requests;
my %scheduled;
-my $caBundle = $ENV{"SSL_CERT_FILE"} // $ENV{"CURL_CA_BUNDLE"} // $ENV{"OPENSSL_X509_CERT_FILE"};
+my $caBundle = $ENV{"NIX_SSL_CERT_FILE"} // $ENV{"SSL_CERT_FILE"} // $ENV{"CURL_CA_BUNDLE"} // $ENV{"OPENSSL_X509_CERT_FILE"};
$caBundle = "/etc/ssl/certs/ca-bundle.crt" if !$caBundle && -f "/etc/ssl/certs/ca-bundle.crt";
$caBundle = "/etc/ssl/certs/ca-certificates.crt" if !$caBundle && -f "/etc/ssl/certs/ca-certificates.crt";
diff --git a/scripts/install-nix-from-closure.sh b/scripts/install-nix-from-closure.sh
index 465cc1013..d7098691b 100644
--- a/scripts/install-nix-from-closure.sh
+++ b/scripts/install-nix-from-closure.sh
@@ -73,9 +73,9 @@ if ! $nix/bin/nix-env -i "$nix"; then
fi
# Install an SSL certificate bundle.
-if [ -z "$SSL_CERT_FILE" -o ! -f "$SSL_CERT_FILE" ]; then
+if [ -z "$NIX_SSL_CERT_FILE" -o ! -f "$NIX_SSL_CERT_FILE" ]; then
$nix/bin/nix-env -i "$cacert"
- export SSL_CERT_FILE="$HOME/.nix-profile/etc/ssl/certs/ca-bundle.crt"
+ export NIX_SSL_CERT_FILE="$HOME/.nix-profile/etc/ssl/certs/ca-bundle.crt"
fi
# Subscribe the user to the Nixpkgs channel and fetch it.
diff --git a/scripts/nix-profile.sh.in b/scripts/nix-profile.sh.in
index 672d1f035..6a0acc04d 100644
--- a/scripts/nix-profile.sh.in
+++ b/scripts/nix-profile.sh.in
@@ -20,16 +20,18 @@ if [ -n "$HOME" ]; then
# channel.
export NIX_PATH=${NIX_PATH:+$NIX_PATH:}nixpkgs=$HOME/.nix-defexpr/channels/nixpkgs
- # Set $SSL_CERT_FILE so that Nixpkgs applications like curl work.
+ # Set $NIX_SSL_CERT_FILE so that Nixpkgs applications like curl work.
if [ -e /etc/ssl/certs/ca-certificates.crt ]; then # NixOS, Ubuntu, Debian, Gentoo, Arch
- export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
+ export NIX_SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
+ elif [ -e /etc/ssl/ca-bundle.pem ]; then # openSUSE Tumbleweed
+ export NIX_SSL_CERT_FILE=/etc/ssl/ca-bundle.pem
elif [ -e /etc/ssl/certs/ca-bundle.crt ]; then # Old NixOS
- export SSL_CERT_FILE=/etc/ssl/certs/ca-bundle.crt
+ export NIX_SSL_CERT_FILE=/etc/ssl/certs/ca-bundle.crt
elif [ -e /etc/pki/tls/certs/ca-bundle.crt ]; then # Fedora, CentOS
- export SSL_CERT_FILE=/etc/pki/tls/certs/ca-bundle.crt
+ export NIX_SSL_CERT_FILE=/etc/pki/tls/certs/ca-bundle.crt
elif [ -e "$NIX_LINK/etc/ssl/certs/ca-bundle.crt" ]; then # fall back to cacert in Nix profile
- export SSL_CERT_FILE="$NIX_LINK/etc/ssl/certs/ca-bundle.crt"
+ export NIX_SSL_CERT_FILE="$NIX_LINK/etc/ssl/certs/ca-bundle.crt"
elif [ -e "$NIX_LINK/etc/ca-bundle.crt" ]; then # old cacert in Nix profile
- export SSL_CERT_FILE="$NIX_LINK/etc/ca-bundle.crt"
+ export NIX_SSL_CERT_FILE="$NIX_LINK/etc/ca-bundle.crt"
fi
fi
diff --git a/src/libstore/download.cc b/src/libstore/download.cc
index 3bc02e3c4..82f5f7aa9 100644
--- a/src/libstore/download.cc
+++ b/src/libstore/download.cc
@@ -129,7 +129,8 @@ struct Curl
curl_easy_setopt(curl, CURLOPT_URL, url.c_str());
if (options.verifyTLS)
- curl_easy_setopt(curl, CURLOPT_CAINFO, getEnv("SSL_CERT_FILE", "/etc/ssl/certs/ca-certificates.crt").c_str());
+ curl_easy_setopt(curl, CURLOPT_CAINFO,
+ getEnv("NIX_SSL_CERT_FILE", getEnv("SSL_CERT_FILE", "/etc/ssl/certs/ca-certificates.crt")).c_str());
else {
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0);