guix/nix
Eelco Dolstra b23b4d394a daemon: Allow builds to be repeated.
This makes it easy to detect non-deterministic builds.

* nix/libstore/build.cc (DerivationGoal): Remove 'InodesSeen'; add
'curRound', 'nrRound', and 'prevInfos'.
(DerivationGoal::inputsRealised): Initialize 'nrRound'.
(NotDeterministic): New error type.
(DerivationGoal::buildDone): Check whether we need to repeat.
(DerivationGoal::startBuilder): Adjust message.
(DerivationGoal::registerOutputs): Check whether we get the same result.
* nix/libstore/globals.cc (Settings::get(const string & name, int def)):
New method.
* nix/libstore/globals.hh (Settings): Add it.
* nix/libstore/store-api.hh (ValidPathInfo): Add operator ==.
* nix/nix-daemon/nix-daemon.cc (performOp): Allow "build-repeat" for
"untrusted" users.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2015-12-08 23:58:12 +01:00
..
boost
guix-register guix-register: Use C++11 range 'for' loop instead of 'foreach' macro. 2015-06-10 13:55:23 +02:00
libstore daemon: Allow builds to be repeated. 2015-12-08 23:58:12 +01:00
libutil daemon: Fix namespace issue. 2015-12-02 19:37:59 +02:00
nix-daemon daemon: Allow builds to be repeated. 2015-12-08 23:58:12 +01:00
scripts
.gitignore
AUTHORS
COPYING