guix-devel/nix/libstore
Ludovic Courtès f6919ebdc6
daemon: Run 'guix substitute' directly and assume a single substituter.
The daemon had a mechanism that allows it to handle a list of
substituters and try them sequentially; this removes it.

* nix/scripts/substitute.in: Remove.
* nix/local.mk (nodist_pkglibexec_SCRIPTS): Remove.
* config-daemon.ac: Don't output 'nix/scripts/substitute'.
* nix/libstore/build.cc (SubstitutionGoal)[subs, sub, hasSubstitute]:
Remove.
[tryNext]: Make private.
(SubstitutionGoal::SubstitutionGoal, SubstitutionGoal::init): Remove now
unneeded initializers.
(SubstitutionGoal::tryNext): Adjust to assume a single substituter: call
'amDone' upfront when we couldn't find substitutes.
(SubstitutionGoal::tryToRun): Adjust to run 'guix substitute' via
'settings.guixProgram'.
(SubstitutionGoal::finished): Call 'amDone(ecFailed)' upon failure
instead of setting 'state' to 'tryNext'.
* nix/libstore/globals.hh (Settings)[substituters]: Remove.
* nix/libstore/local-store.cc (LocalStore::~LocalStore): Adjust to
handle a single substituter.
(LocalStore::startSubstituter): Remove 'path' parameter.  Adjust to
invoke 'settings.guixProgram'.  Don't refer to 'run.program', which no
longer exists.
(LocalStore::querySubstitutablePaths): Adjust for 'runningSubstituters'
being a singleton instead of a list.
(LocalStore::querySubstitutablePathInfos): Likewise, and remove
'substituter' parameter.
* nix/libstore/local-store.hh (RunningSubstituter)[program]: Remove.
(LocalStore)[runningSubstituters]: Remove.
[runningSubstituter]: New field.
[querySubstitutablePathInfos]: Remove 'substituter' parameter.
[startSubstituter]: Remove 'substituter' parameter.
* nix/nix-daemon/guix-daemon.cc (main): Remove references to
'settings.substituters'.
* nix/nix-daemon/nix-daemon.cc (performOp): Ignore the user's
"build-use-substitutes" value when 'settings.useSubstitutes' is false.
2019-09-08 11:49:24 +02:00
..
.gitignore build: Include a copy of Nix's libstore and daemon; build it. 2012-12-03 23:05:08 +01:00
build.cc daemon: Run 'guix substitute' directly and assume a single substituter. 2019-09-08 11:49:24 +02:00
builtins.cc daemon: Run 'guix perform-download' directly. 2019-09-08 11:49:24 +02:00
builtins.hh daemon: Allow check builds of 'builtin:download' derivations. 2017-01-11 17:06:31 +01:00
derivations.cc Merge branch 'nix'. 2015-07-03 00:30:55 +02:00
derivations.hh Merge branch 'nix'. 2015-07-03 00:30:55 +02:00
gc.cc daemon: Invoke 'guix gc --list-busy' instead of 'list-runtime-roots'. 2019-09-08 11:49:24 +02:00
globals.cc daemon: Invoke 'guix gc --list-busy' instead of 'list-runtime-roots'. 2019-09-08 11:49:24 +02:00
globals.hh daemon: Run 'guix substitute' directly and assume a single substituter. 2019-09-08 11:49:24 +02:00
local-store.cc daemon: Run 'guix substitute' directly and assume a single substituter. 2019-09-08 11:49:24 +02:00
local-store.hh daemon: Run 'guix substitute' directly and assume a single substituter. 2019-09-08 11:49:24 +02:00
misc.cc daemon: Remove dead code. 2018-03-30 23:42:07 +02:00
misc.hh daemon: Remove dead code. 2018-03-30 23:42:07 +02:00
optimise-store.cc Remove traces of "GuixSD". 2019-03-13 23:12:43 +01:00
pathlocks.cc daemon: ~PathLocks(): Handle exceptions. 2016-05-31 14:25:28 +02:00
pathlocks.hh Merge branch 'nix' into 'master'. 2014-12-19 22:47:37 +01:00
references.cc Merge branch 'nix' into 'master'. 2014-12-19 22:47:37 +01:00
references.hh Merge branch 'nix' into 'master'. 2014-12-19 22:47:37 +01:00
sqlite.cc daemon: Improve the SQLite wrapper API. 2016-10-28 22:30:17 +02:00
sqlite.hh daemon: Improve the SQLite wrapper API. 2016-10-28 22:30:17 +02:00
store-api.cc daemon: Replace "illegal" by "invalid" in error messages. 2019-06-13 00:44:01 +02:00
store-api.hh Remove 'guix-register' and its traces. 2018-06-14 11:17:00 +02:00
worker-protocol.hh daemon: Support multiplexed build output. 2018-10-15 22:40:35 +02:00