* Compatibility hack so that Nixpkgs can continue to do hash checking
in `fetchurl' in Nix <= 0.7, but doesn't in Nix 0.8.
This commit is contained in:
parent
3c1630131e
commit
eda2c3c253
|
@ -989,6 +989,15 @@ void DerivationGoal::startBuilder()
|
||||||
/* Also set TMPDIR and variants to point to this directory. */
|
/* Also set TMPDIR and variants to point to this directory. */
|
||||||
env["TMPDIR"] = env["TEMPDIR"] = env["TMP"] = env["TEMP"] = tmpDir;
|
env["TMPDIR"] = env["TEMPDIR"] = env["TMP"] = env["TEMP"] = tmpDir;
|
||||||
|
|
||||||
|
/* Compatibility hack with Nix <= 0.7: if this is a fixed-output
|
||||||
|
derivation, tell the builder, so that for instance `fetchurl'
|
||||||
|
can skip checking the output. On older Nixes, this environment
|
||||||
|
variable won't be set, so `fetchurl' will do the check. */
|
||||||
|
for (DerivationOutputs::iterator i = drv.outputs.begin();
|
||||||
|
i != drv.outputs.end(); ++i)
|
||||||
|
if (i->second.hash != "")
|
||||||
|
env["NIX_OUTPUT_CHECKED"] = "1";
|
||||||
|
|
||||||
/* Run the builder. */
|
/* Run the builder. */
|
||||||
printMsg(lvlChatty, format("executing builder `%1%'") %
|
printMsg(lvlChatty, format("executing builder `%1%'") %
|
||||||
drv.builder);
|
drv.builder);
|
||||||
|
|
|
@ -209,7 +209,7 @@ static void printDrvTree(const Path & drvPath,
|
||||||
i != drv.inputDrvs.end(); ++i)
|
i != drv.inputDrvs.end(); ++i)
|
||||||
inputs.insert(i->first);
|
inputs.insert(i->first);
|
||||||
|
|
||||||
/* Topologically sorted under the relation A < B iff A \in
|
/* Topologically sort under the relation A < B iff A \in
|
||||||
closure(B). That is, if derivation A is an (possibly indirect)
|
closure(B). That is, if derivation A is an (possibly indirect)
|
||||||
input of B, then A is printed first. This has the effect of
|
input of B, then A is printed first. This has the effect of
|
||||||
flattening the tree, preventing deeply nested structures. */
|
flattening the tree, preventing deeply nested structures. */
|
||||||
|
|
Loading…
Reference in a new issue