guix: licenses: Add CeCILL-C license.
* guix/licenses.scm (cecill-c): New variable.
system: Prevent grub.cfg from being GC'd.
* guix/build/install.scm (install-grub): Use 'copy-file' instead of
'symlink' for GRUB.CFG.
system: Add 'grub-configuration' record.
* gnu/system/grub.scm (<grub-configuration>): New record type.
(grub-configuration-file): Add 'config' parameter; remove
#:default-entry and #:timeout. Honor CONFIG.
* gnu/system.scm (<operating-system>): Remove 'bootloader-entries'
field; remove default value for 'bootloader' field.
(operating-system-grub.cfg): Pass the 'bootloader' field to
'grub-configuration-file'.
* build-aux/hydra/demo-os.scm (bootloader): New field.
guix system: Add 'init' sub-command.
* guix/scripts/system.scm (install): New procedure.
(guix-system)[parse-option]: Remove check for extraneous arguments.
[match-pair, option-arguments]: New procedures.
Use 'option-arguments'. Honor 'init'.
(show-help): Document 'init'.
* doc/guix.texi (Invoking guix system): Document 'init'.
store: Change #:store parameter to #:prefix.
* guix/store.scm (register-path): Change #:store to #:prefix.
vm: Avoid resetting timestamps twice.
* guix/build/vm.scm (initialize-hard-disk): Don't call
'reset-timestamps' when REGISTER-CLOSURES? is true.
* guix/build/install.scm (register-closure): Mention timestamps in
docstring.
gnu: openmpi: Add memchecker support.
* gnu/packages/mpi.scm (openmpi) [inputs]: Add valgrind. Unpropagate
gfortran. [arguments]: Add configure flags for memchecker.
system: Make /run/current-system at activation time.
* gnu/system.scm (etc-directory): Change default value of #:profile.
Change contents of SHELLS. Use /run/current-system/profile/{s,}bin in
BASHRC.
(operating-system-boot-script)[%modules]: Add (guix build
linux-initrd). Add call to 'activate-current-system' in gexp.
(operating-system-initrd-file, operating-system-grub.cfg): New
procedures.
(operating-system-derivation): Don't build grub.cfg here and remove it
from the file union.
* gnu/system/vm.scm (qemu-image): Remove #:populate.
(operating-system-build-gid, operating-system-default-contents):
Remove.
(system-qemu-image): Remove call to
'operating-system-default-contents'. Use 'operating-system-grub.cfg'
to get grub.cfg. Add GRUB.CFG to #:inputs.
(system-qemu-image/shared-store): Likewise, but don't add GRUB.CFG to
#:inputs.
(system-qemu-image/shared-store-script): Pass --system kernel option.
* guix/build/activation.scm (%booted-system, %current-system): New
variables.
(boot-time-system, activate-current-system): New procedures.
* guix/build/install.scm (evaluate-populate-directive): Add case
for ('directory name uid gid mode).
(directives, populate-root-file-system): New procedures.
* guix/build/vm.scm (initialize-hard-disk): Replace calls to
'evaluate-populate-directive' by a call to
'populate-root-file-system'.
* gnu/services/dmd.scm (dmd-configuration-file): Use
/run/current-system/profile/bin.
* gnu/services/xorg.scm (slim-service): Likewise.
gnu: soprano: Add input redland.
* gnu/packages/rdf.scm (soprano): Add inputs redland and rasqal, drop raptor2
(propagated by rasqal).
gnu: Add redland.
* gnu/packages/rdf.scm (redland): New variable.
gnu: rasqal: Propagate input raptor2.
* gnu/packages/rdf.scm (rasqal): Propagate input raptor2 as indicated in
the pkg-config file.
build: Add --with-libgcrypt-libdir=DIR to support Debian's multi-arch layout.
* configure.ac: Remove 'LIBGCRYPT_PREFIX' and use 'LIBGCRYPT_LIBDIR'
instead. Add --with-libgcrypt-libdir=DIR option.
* Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Pass
'--with-libgcrypt-libdir'.
* config-daemon.ac: Honor $LIBGCRYPT_LIBDIR when computing
LIBGCRYPT_LIBS.
gnu: Add rasqal.
* gnu/packages/rdf.scm (rasqal): New variable.
store: Add #:store parameter to 'register-path'.
* guix/store.scm (register-path): Add #:store and honor it.
linux-initrd: Factorize kernel command-line option parsing.
* guix/build/linux-initrd.scm (find-long-option): New procedure.
(boot-system): Use it instead of the local 'option'.
hydra: Add dummy root file system declaration.
* build-aux/hydra/demo-os.scm (file-systems): Add "/" file system.
guix system: Add 'build' action.
* guix/scripts/system.scm (show-help): Document 'build' action.
(guix-system): Honor 'build' action.
* doc/guix.texi (Invoking guix system): Add 'build' action.
gnu: Add libuv.
* gnu/packages/libevent.scm (libuv): New variable.
authenticate: Add compatibility hack for Guile 2.0.5.
* guix/scripts/authenticate.scm (%default-port-conversion-strategy): New
variable. Reported by Andreas Enge <andreas@enge.fr>.
list-runtime-roots: Don't display a backtrace on 2.0.5 when lsof is lacking.
* nix/scripts/list-runtime-roots.in (lsof-roots): Fix typo in 'catch'
tag. Add 'parent' variable. Wrap 'open-pipe*' call in 'catch'.
Reported by Andreas Enge <andreas@enge.fr>.