diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index fa088e04fe5..a8dd048be02 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -227,6 +227,10 @@ in rec { inherit storeDir stateDir confDir boehmgc; }); + nixExperimental = nixUnstable.overrideAttrs (prev: { + patches = (prev.patches or []) ++ [ ./enable-all-experimental.patch ]; + }); + nixFlakes = nixUnstable.overrideAttrs (prev: { patches = (prev.patches or []) ++ [ ./enable-flakes.patch ]; }); diff --git a/pkgs/tools/package-management/nix/enable-all-experimental.patch b/pkgs/tools/package-management/nix/enable-all-experimental.patch new file mode 100644 index 00000000000..1712b7295a5 --- /dev/null +++ b/pkgs/tools/package-management/nix/enable-all-experimental.patch @@ -0,0 +1,14 @@ +diff --git a/src/libstore/globals.cc b/src/libstore/globals.cc +index d3b27d7be..e7d002e1d 100644 +--- a/src/libstore/globals.cc ++++ b/src/libstore/globals.cc +@@ -172,8 +172,7 @@ MissingExperimentalFeature::MissingExperimentalFeature(std::string feature) + + void Settings::requireExperimentalFeature(const std::string & name) + { +- if (!isExperimentalFeatureEnabled(name)) +- throw MissingExperimentalFeature(name); ++ return; + } + + bool Settings::isWSL1() diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 04effbffbd3..6437e2414fa 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30099,7 +30099,8 @@ in nix nixStable nixUnstable - nixFlakes; + nixFlakes + nixExperimental; nixStatic = pkgsStatic.nix;