diff options
author | regnat <rg@regnat.ovh> | 2021-04-23 10:54:38 +0200 |
---|---|---|
committer | regnat <rg@regnat.ovh> | 2021-04-23 10:54:38 +0200 |
commit | cc5b30c6ac03273cfd76975ba83744a210f1704d (patch) | |
tree | 7a56b4dd1d5bf7ab4a22420ab6e1fb0a020f65c9 /pkgs/stdenv | |
parent | 2f4562567398e145083e8df79e839f9f2728e4e8 (diff) | |
download | nixpkgs-cc5b30c6ac03273cfd76975ba83744a210f1704d.tar nixpkgs-cc5b30c6ac03273cfd76975ba83744a210f1704d.tar.gz nixpkgs-cc5b30c6ac03273cfd76975ba83744a210f1704d.tar.bz2 nixpkgs-cc5b30c6ac03273cfd76975ba83744a210f1704d.tar.lz nixpkgs-cc5b30c6ac03273cfd76975ba83744a210f1704d.tar.xz nixpkgs-cc5b30c6ac03273cfd76975ba83744a210f1704d.tar.zst nixpkgs-cc5b30c6ac03273cfd76975ba83744a210f1704d.zip |
Make it easy to build everything as content-addressed
Add a config field `contentAddressedByDefault` and an associated environment variable `NIXPKGS_CA_BY_DEFAULT` to make every nixpkgs derivation content-addressed by default
Diffstat (limited to 'pkgs/stdenv')
-rw-r--r-- | pkgs/stdenv/generic/make-derivation.nix | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix index 5b446b11826..2bceb9e4333 100644 --- a/pkgs/stdenv/generic/make-derivation.nix +++ b/pkgs/stdenv/generic/make-derivation.nix @@ -89,7 +89,10 @@ in rec { , patches ? [] - , __contentAddressed ? false + , __contentAddressed ? + (! attrs ? outputHash) # Fixed-output drvs can't be content addressed too + && (config.contentAddressedByDefault or false + || builtins.getEnv "NIXPKGS_CA_BY_DEFAULT" == "1") , ... } @ attrs: |