[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/07: daemon: Filter build-chroot-dirs entries that conflict with deriv
From: |
Ludovic Courtès |
Subject: |
02/07: daemon: Filter build-chroot-dirs entries that conflict with derivation outputs. |
Date: |
Wed, 02 Dec 2015 17:39:09 +0000 |
civodul pushed a commit to branch master
in repository guix.
commit 60c7c364f81309adb6e22e2cbf250669916b7d11
Author: Eelco Dolstra <address@hidden>
Date: Wed Sep 2 14:54:12 2015 +0200
daemon: Filter build-chroot-dirs entries that conflict with derivation
outputs.
Fixes https://github.com/NixOS/nixpkgs/issues/9504.
Note that this means we may have a non-functional /bin/sh in the
chroot while rebuilding Bash or one of its dependencies. Ideally those
packages don't rely on /bin/sh though.
---
nix/libstore/build.cc | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc
index ab33f57..64678a5 100644
--- a/nix/libstore/build.cc
+++ b/nix/libstore/build.cc
@@ -1870,13 +1870,13 @@ void DerivationGoal::startBuilder()
}
}
- /* If we're repairing or checking, it's possible that we're
+ /* If we're repairing, checking or rebuilding part of a
+ multiple-outputs derivation, it's possible that we're
rebuilding a path that is in settings.dirsInChroot
(typically the dependencies of /bin/sh). Throw them
out. */
- if (buildMode != bmNormal)
- foreach (DerivationOutputs::iterator, i, drv.outputs)
- dirsInChroot.erase(i->second.path);
+ for (auto & i : drv.outputs)
+ dirsInChroot.erase(i.second.path);
#else
throw Error("chroot builds are not supported on this platform");
- branch master updated (18b3151 -> 708d907), Ludovic Courtès, 2015/12/02
- 04/07: daemon: Support SHA-512 hashes., Ludovic Courtès, 2015/12/02
- 03/07: daemon: int2String -> std::to_string., Ludovic Courtès, 2015/12/02
- 07/07: daemon: Add 'buildMode' parameter to 'buildPaths' RPC., Ludovic Courtès, 2015/12/02
- 06/07: daemon: optimizePath: Detect some .links corruptions., Ludovic Courtès, 2015/12/02
- 05/07: daemon: Fix namespace issue., Ludovic Courtès, 2015/12/02
- 02/07: daemon: Filter build-chroot-dirs entries that conflict with derivation outputs.,
Ludovic Courtès <=
- 01/07: daemon: Prevent .chroot from being GC'ed when using LocalStore::buildDerivation(), Ludovic Courtès, 2015/12/02