Fix remaining references to "substitute-binary".
* nix/nix-daemon/guix-daemon.cc (main): Change substitute-binary to
substitute.
* po/guix/POTFILES.in: Likewise.
* tests/guix-daemon.sh: Likewise.
* tests/guix-system.sh: Likewise.
Rename 'guix substitute-binary' to 'guix substitute'.
* guix/scripts/substitute-binary.scm: Rename to...
* guix/scripts/substitute.scm: ... this. Adjust module name, entry
point, comments, and help string accordingly.
* nix/scripts/substitute-binary.in: Rename to...
* nix/scripts/substitute.in: ... this.
* pre-inst-env.in (NIX_SUBSTITUTERS): Adjust accordingly.
* tests/substitute-binary.scm: Rename to...
* tests/substitute.scm: ... this. Adjust references to (guix scripts
substitute) accordingly.
* guix/ui.scm (show-guix-help)[internal?]: Change "substitute-binary" to
"substitute".
* Makefile.am (MODULES, SCM_TESTS): Adjust to file renames.
* daemon.am (nodist_pkglibexec_SCRIPTS): Likewise.
* config-daemon.ac: Likewise.
* guix/tests.scm (call-with-derivation-narinfo): Adjust comments and
docstring.
daemon: Flush upon '\r' when reading the substituter's stderr.
* nix/libstore/local-store.cc (LocalStore::getLineFromSubstituter):
Flush when the line contains '\r'.
build: Make 'chroot' a hard requirement.
* config-daemon.ac: Error out when $ac_cv_func_chroot is not "yes".
* nix/nix-daemon/guix-daemon.cc (options): Remove #ifdef HAVE_CHROOT.
(main): Likewise.
Merge branch 'master' into core-updates
Merge commit a1dd396cc02922372314c35c8035a38bfeea08df of branch 'nix'.
Merge branch 'master' into core-updates
Remove 'nix-upstream' submodule.
* nix/sync-with-upstream: Remove.
* bootstrap: Remove uses of 'git submodule' and 'sync-with-usptream'.
* .gitmodules: Remove.
Merge branch 'nix' into 'master'.
Merge branch 'master' into 'core-updates'.
daemon: Default to '--cores=0'.
Suggested by Deck Pickard <deck.r.pickard@gmail.com>.
* nix/nix-daemon/guix-daemon.cc (main): Set 'settings.buildCores' to 0.
* doc/guix.texi (Invoking guix-daemon): Adjust accordingly.
daemon: Add '--substitute-urls' option.
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_SUBSTITUTE_URLS): New macro.
(GUIX_OPT_NO_BUILD_HOOK, GUIX_OPT_GC_KEEP_OUTPUTS,
GUIX_OPT_GC_KEEP_DERIVATIONS): Renumber.
(options): Add '--substitute-urls'.
(parse_opt): Honor it.
(main): Add 'settings.set' call for the default "substitute-urls"
value.
* guix/scripts/substitute-binary.scm (daemon-options,
find-daemon-option): New procedures.
(%cache-url): Define based on the "substitute-urls" daemon option.
* doc/guix.texi (Invoking guix-daemon): Document '--substitute-urls'.
(Substitutes): Mention it.
Merge branch 'master' into core-updates
sync-with-upstream: Generate 'nix/AUTHORS'.
* nix/sync-with-upstream: Use 'git shortlog' to generate nix/AUTHORS.
daemon: Rename '--disable-store-optimization' to '--disable-deduplication'.
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_DISABLE_STORE_OPTIMIZATION):
Rename to...
(GUIX_OPT_DISABLE_DEDUPLICATION): ... this. Adjust user accordingly.
(options): Add "disable-deduplication". Make
"disable-store-optimization" a hidden alias.
* doc/guix.texi (Invoking guix-daemon): Adjust to new option name. Add
index entry. Improve description.
daemon: Really enable automatic deduplication by default.
* nix/nix-daemon/guix-daemon.cc (main): Set 'autoStoreOptimise' to
true. Add 'printMsg' call.
* tests/derivations.scm ("identical files are deduplicated"): New test.
Merge branch 'master' into core-updates
guix-register: By default, attempt to deduplicate registered items.
* nix/guix-register/guix-register.cc (GUIX_OPT_DEDUPLICATE): New macro.
(options): Add --no-deduplication.
(deduplication): New variable.
(parse_opt): Handle GUIX_OPT_DEDUPLICATE.
(register_validity): Add 'optimize' parameter and honor it.
(main): Move 'store' instanatiation after 'settings.nixStore'
assignment.
* tests/guix-register.sh: Add test for deduplication.
* guix/nar.scm (finalize-store-file): Update comment above
'register-path' call.
guix-register: Add '--state-directory' parameter.
* nix/guix-register/guix-register.cc (GUIX_OPT_STATE_DIRECTORY): New
macro.
(parse_opt): Honor it.
* tests/guix-register.sh: Add test with '--state-directory'.
* guix/store.scm (register-path): Add #:state-directory parameter.