* Disable chroot builds for fixed-output derivations so that we don't
need /etc in the chroot (in particular, /etc/resolv.conf for fetchurl). Not having /etc/resolv.conf in the chroot is a good thing, since we don't want normal derivations to download files.
This commit is contained in:
parent
abec1c0004
commit
d06be428f6
1 changed files with 8 additions and 1 deletions
|
@ -1610,6 +1610,7 @@ void DerivationGoal::startBuilder()
|
||||||
}
|
}
|
||||||
|
|
||||||
// The same for derivations
|
// The same for derivations
|
||||||
|
// !!! urgh, cut&paste duplication
|
||||||
s = drv.env["exportBuildReferencesGraph"];
|
s = drv.env["exportBuildReferencesGraph"];
|
||||||
ss = tokenizeString(s);
|
ss = tokenizeString(s);
|
||||||
if (ss.size() % 2 != 0)
|
if (ss.size() % 2 != 0)
|
||||||
|
@ -1685,10 +1686,16 @@ void DerivationGoal::startBuilder()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Are we doing a chroot build? */
|
/* Are we doing a chroot build? Note that fixed-output
|
||||||
|
derivations are never done in a chroot, mainly so that
|
||||||
|
functions like fetchurl (which needs a proper /etc/resolv.conf)
|
||||||
|
work properly. Purity checking for fixed-output derivations
|
||||||
|
is somewhat pointless anyway. */
|
||||||
useChroot = queryBoolSetting("build-use-chroot", false);
|
useChroot = queryBoolSetting("build-use-chroot", false);
|
||||||
Path tmpRootDir;
|
Path tmpRootDir;
|
||||||
|
|
||||||
|
if (fixedOutput) useChroot = false;
|
||||||
|
|
||||||
if (useChroot) {
|
if (useChroot) {
|
||||||
#if CHROOT_ENABLED
|
#if CHROOT_ENABLED
|
||||||
/* Create a temporary directory in which we set up the chroot
|
/* Create a temporary directory in which we set up the chroot
|
||||||
|
|
Loading…
Reference in a new issue