aboutsummaryrefslogtreecommitdiff
path: root/src/libmain
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2004-06-28 10:42:57 +0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2004-06-28 10:42:57 +0000
commit91dc023665e22eb5637bf08c405e91ac9060c357 (patch)
tree566e96b4670653bc9ab68f042e94808dcdcb5b29 /src/libmain
parentb113edeab780216b0590045b932be685d1399e9b (diff)
* Added a switch `--fallback'. From the manual:
Whenever Nix attempts to realise a derivation for which a closure is already known, but this closure cannot be realised, fall back on normalising the derivation. The most common scenario in which this is useful is when we have registered substitutes in order to perform binary distribution from, say, a network repository. If the repository is down, the realisation of the derivation will fail. When this option is specified, Nix will build the derivation instead. Thus, binary installation falls back on a source installation. This option is not the default since it is generally not desirable for a transient failure in obtaining the substitutes to lead to a full build from source (with the related consumption of resources).
Diffstat (limited to 'src/libmain')
-rw-r--r--src/libmain/shared.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/libmain/shared.cc b/src/libmain/shared.cc
index 13ad4fede..6aad03a37 100644
--- a/src/libmain/shared.cc
+++ b/src/libmain/shared.cc
@@ -139,6 +139,8 @@ static void initAndRun(int argc, char * * argv)
keepFailed = true;
else if (arg == "--keep-going" || arg == "-k")
keepGoing = true;
+ else if (arg == "--fallback")
+ tryFallback = true;
else if (arg == "--max-jobs" || arg == "-j") {
++i;
if (i == args.end()) throw UsageError("`--max-jobs' requires an argument");