From 2001895f3d2668549feb60a182aa624a7b6292eb Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 2 Oct 2012 17:13:46 -0400 Subject: Add a --repair flag to ‘nix-store -r’ to repair derivation outputs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit With this flag, if any valid derivation output is missing or corrupt, it will be recreated by using a substitute if available, or by rebuilding the derivation. The latter may use hash rewriting if chroots are not available. --- src/libstore/remote-store.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/libstore/remote-store.cc') diff --git a/src/libstore/remote-store.cc b/src/libstore/remote-store.cc index 11712b48774b..2a895593b25c 100644 --- a/src/libstore/remote-store.cc +++ b/src/libstore/remote-store.cc @@ -474,8 +474,9 @@ Paths RemoteStore::importPaths(bool requireSignature, Source & source) } -void RemoteStore::buildPaths(const PathSet & drvPaths) +void RemoteStore::buildPaths(const PathSet & drvPaths, bool repair) { + if (repair) throw Error("`--repair' is not supported when building through the Nix daemon"); openConnection(); writeInt(wopBuildPaths, to); writeStrings(drvPaths, to); -- cgit 1.4.1