diff options
author | Dan Peebles <pumpkin@me.com> | 2017-10-17T23·15-0400 |
---|---|---|
committer | Dan Peebles <pumpkin@me.com> | 2017-10-17T23·15-0400 |
commit | 6e5165b77370c76bfa39d4b55e9f83673f3bd466 (patch) | |
tree | 2647351258a0de9d3b120f61f6687a8b2142dfe0 /src/libstore/build.cc | |
parent | 1dd29d7aebae706f3e90a18bbfae727f2ed03c70 (diff) |
Shift Darwin sandbox to separate installed files
This makes it slightly more manageable to see at a glance what in a build's sandbox profile is unique to the build and what is standard. Also a first step to factoring more of our Darwin logic into scheme functions that will allow us a bit more flexibility. And of course less of that nasty codegen in C++! 😀
Diffstat (limited to 'src/libstore/build.cc')
-rw-r--r-- | src/libstore/build.cc | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/src/libstore/build.cc b/src/libstore/build.cc index 64cbc19bd96f..88c51654614a 100644 --- a/src/libstore/build.cc +++ b/src/libstore/build.cc @@ -2774,14 +2774,10 @@ void DerivationGoal::runChild() sandboxProfile += "(deny default (with no-log))\n"; } - sandboxProfile += - #include "sandbox-defaults.sb.gen.hh" - ; + sandboxProfile += "(import \"sandbox-defaults.sb\")"; if (fixedOutput) - sandboxProfile += - #include "sandbox-network.sb.gen.hh" - ; + sandboxProfile += "(import \"sandbox-network.sb\")"; /* Our rwx outputs */ sandboxProfile += "(allow file-read* file-write* process-exec\n"; @@ -2824,9 +2820,7 @@ void DerivationGoal::runChild() sandboxProfile += additionalSandboxProfile; } else - sandboxProfile += - #include "sandbox-minimal.sb.gen.hh" - ; + sandboxProfile += "(import \"sandbox-minimal.sb\")"; debug("Generated sandbox profile:"); debug(sandboxProfile); @@ -2848,6 +2842,8 @@ void DerivationGoal::runChild() args.push_back(sandboxFile); args.push_back("-D"); args.push_back("_GLOBAL_TMP_DIR=" + globalTmpDir); + args.push_back("-D"); + args.push_back("IMPORT_DIR=" + settings.nixDataDir + "/nix/sandbox/"); args.push_back(drv->builder); } #endif |