From 1aba0bf0fa831ffee628ae50730eade5b19a544f Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 27 Jun 2012 16:58:15 -0400 Subject: nix-store -r: do substitutions in parallel MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit I.e. when multiple non-derivation arguments are passed to ‘nix-store -r’ to be substituted, do them in parallel. --- src/libstore/store-api.hh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/libstore/store-api.hh') diff --git a/src/libstore/store-api.hh b/src/libstore/store-api.hh index fa766d12e119..bf3269f57818 100644 --- a/src/libstore/store-api.hh +++ b/src/libstore/store-api.hh @@ -172,13 +172,15 @@ public: the Nix store. */ virtual Paths importPaths(bool requireSignature, Source & source) = 0; - /* Ensure that the output paths of the derivation are valid. If + /* For each path, if it's a derivation, build it. Building a + derivation means ensuring that the output paths are valid. If they are already valid, this is a no-op. Otherwise, validity can be reached in two ways. First, if the output paths is substitutable, then build the path that way. Second, the output paths can be created by running the builder, after - recursively building any sub-derivations. */ - virtual void buildDerivations(const PathSet & drvPaths) = 0; + recursively building any sub-derivations. For inputs that are + not derivations, substitute them. */ + virtual void buildPaths(const PathSet & paths) = 0; /* Ensure that a path is valid. If it is not currently valid, it may be made valid by running a substitute (if defined for the -- cgit 1.4.1