From 286eb81143908a49e96fa800e01b302d8f4b7370 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Fri, 19 Nov 2021 02:28:20 +0000 Subject: [PATCH] "recursive-nix" system feature only with experimental feature --- src/libstore/globals.cc | 2 +- src/libstore/store-api.cc | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/libstore/globals.cc b/src/libstore/globals.cc index 9f1a88130..81ca9cc0f 100644 --- a/src/libstore/globals.cc +++ b/src/libstore/globals.cc @@ -122,7 +122,7 @@ StringSet Settings::getDefaultSystemFeatures() /* For backwards compatibility, accept some "features" that are used in Nixpkgs to route builds to certain machines but don't actually require anything special on the machines. */ - StringSet features{"nixos-test", "benchmark", "big-parallel", "recursive-nix"}; + StringSet features{"nixos-test", "benchmark", "big-parallel"}; #if __linux__ if (access("/dev/kvm", R_OK | W_OK) == 0) diff --git a/src/libstore/store-api.cc b/src/libstore/store-api.cc index c88dfe179..71350906e 100644 --- a/src/libstore/store-api.cc +++ b/src/libstore/store-api.cc @@ -355,8 +355,13 @@ ValidPathInfo Store::addToStoreSlow(std::string_view name, const Path & srcPath, StringSet StoreConfig::getDefaultSystemFeatures() { auto res = settings.systemFeatures.get(); + if (settings.isExperimentalFeatureEnabled(Xp::CaDerivations)) res.insert("ca-derivations"); + + if (settings.isExperimentalFeatureEnabled(Xp::RecursiveNix)) + res.insert("recursive-nix"); + return res; }