Merge branch 'core-updates'
Conflicts:
guix/build/union.scm
daemon: Fix warning message when running as root without a build user group.
* nix/nix-daemon/guix-daemon.cc (main): Fix warning message when running
as root without `--build-users-group'.
guix-daemon: Rename `--build-cores' for consistency with `guix-build'.
* nix/nix-daemon/guix-daemon.cc (options): Change `--build-cores' to
`--cores', and `-C' to `-c'.
(parse_opt): Adjust accordingly.
Update a few more license headers.
* distro/packages/openssl.scm, m4/guix.m4, nix/sync-with-upstream:
Update headers.
Merge branch 'master' into core-updates
Conflicts:
build-aux/download.scm
distro/packages/autotools.scm
distro/packages/base.scm
distro/packages/bootstrap.scm
distro/packages/lsh.scm
distro/packages/make-bootstrap.scm
distro/packages/ncurses.scm
distro/packages/perl.scm
tests/derivations.scm
tests/union.scm
Update license headers.
Change all license headers, except guix/build/* and ld-wrapper.scm, with
this code:
(use-modules (guix build utils)
(srfi srfi-1))
(fluid-set! %default-port-encoding "UTF-8")
(substitute* (remove (lambda (f)
(or (string-contains f ".tar.")
(string-contains f ".git/")
(string-contains f ".so")
(string-suffix? ".o" f)
(string-suffix? ".a" f)
(string-suffix? ".go" f)
(string-suffix? ".pdf" f)
(string-suffix? ".png" f)
(string-suffix? ".info" f)
(equal? (basename f) "guix-daemon")
(equal? (basename f) "nix-setuid-helper")
(string-contains f "nix-upstream/")
(string-contains f "distro/packages/bootstrap/")))
(find-files "." "\\.[a-z]+$"))
(("^([[:graph:]]+) This file is part of Guix." _ comment-start)
(string-append comment-start " This file is part of GNU Guix."))
(("^([[:graph:]]+) Guix --- Nix package management.*" _ comment-start)
(string-append comment-start
" GNU Guix --- Functional package management for GNU\n"))
(("^([[:graph:]]+) Guix is " _ comment-start)
(string-append comment-start " GNU Guix is "))
(("^([[:graph:]]+) along with Guix." _ comment-start)
(string-append comment-start " along with GNU Guix."))
(("^([[:graph:]]+) Copyright \\(C\\)" _ comment-start)
(string-append comment-start " Copyright ©")))
Change headers using C-style comments manually.
daemon: Show the chroot contents upon `--debug'.
* nix/nix-daemon/guix-daemon.cc (main)[HAVE_CHROOT]: Display the
contents of `settings.dirsInChroot' at `lvlDebug'.
daemon: Properly initialize libgcrypt.
* nix/nix-daemon/guix-daemon.cc (main): Call `gcry_check_version'.
daemon: Gracefully handle Nix errors.
* nix/nix-daemon/guix-daemon.cc (main): Run Nix code in an exception
handler; gracefully print error messages, and exit with EXIT_FAILURE.
daemon: Warn against running as root without `--build-users-group'.
* nix/nix-daemon/guix-daemon.cc (main): Recommend using
`--build-users-group' when running as root without a build users
group.
daemon: Add `--chroot-directory'.
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_CHROOT_DIR): New macro.
(options): Add `--chroot-directory'.
(parse_opt): Handle it.
Merge branch 'master' into core-updates
Conflicts:
distro/packages/multiprecision.scm
daemon: Add `--debug' option.
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_DEBUG): New macro.
(options): Add `--debug'.
(parse_opt): Set `verbosity' upon GUIX_OPT_DEBUG.
daemon: Disable use of substitutes for now.
* nix/nix-daemon/guix-daemon.cc (main): Set `settings.useSubstitutes' to
false, and `settings.substituters' to the empty list.
build: Avoid brace expansion in `nix/sync-with-upstream'.
* nix/sync-with-upstream: Avoid brace expansion, for the sake of Dash.
Merge branch 'nix-integration'
Conflicts:
tests/guix-package.sh
daemon: Add more options.
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_BUILD_USERS_GROUP,
GUIX_OPT_CACHE_FAILURES, GUIX_OPT_LOSE_LOGS,
GUIX_OPT_DISABLE_STORE_OPTIMIZATION, GUIX_OPT_IMPERSONATE_LINUX_26):
New macros.
(options)["build-users-group", "cache-failures", "lose-logs",
"disable-store-optimization", "impersonate-linux-2.6"]: New options.
(parse_opt): Handle them.
daemon: Add `list-runtime-roots' script.
* nix/scripts/list-runtime-roots.in: New file.
* config-daemon.ac: Add `AC_CONFIG_FILES' invocation for it.
* daemon.am (nodist_pkglibexec_SCRIPTS): New variable.
(AM_TESTS_ENVIRONMENT): Define `top_builddir'.
* tests/guix-daemon.sh: Export `NIX_ROOT_FINDER'.
* nix/sync-with-upstream: Substitute the path to the root finder in
libstore/gc.cc.
daemon: Disable use of chroots when support is lacking.
* nix/nix-daemon/guix-daemon.cc (options)[!HAVE_CHROOT]: Mention that
`--disable-chroot' has no effect.
(main)[!HAVE_CHROOT]: Set `useChroot' to false.
daemon: Fix typo in libgcrypt bindings.
* nix/libutil/md5.h (MD5_Final): Pass RESBUF as the first argument to
`guix_hash_final'.
* nix/libutil/sha1.h (SHA1_Final): Likewise.
* nix/libutil/sha256.h (SHA256_Final): Likewise.