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>.
system: Add (guix build install) module. * guix/build/vm.scm (install-grub, evaluate-populate-directive, reset-timestamps, register-closure): Move to... * guix/build/install.scm: ... here. New file. * Makefile.am (MODULES): Add it. * gnu/system/vm.scm (expression->derivation-in-linux-vm): Add (guix build install) to #:modules.
vm: Support initialization of the store DB when the store is shared. * gnu/system/vm.scm (qemu-image): Rename #:inputs-to-copy to #:inputs, and #:initialize-store? to #:register-closures?. Add #:copy-inputs?. Adjust build gexp accordingly. (system-qemu-image): Remove #:initialize-store? argument and add #:copy-inputs?. (system-qemu-image/shared-store): Add #:inputs, #:register-closures?, and #:copy-inputs? arguments. * guix/build/vm.scm (register-closure): New procedure. (MS_BIND): New variable. (initialize-hard-disk): Rename #:initialize-store? to #:register-closures?, #:closures-to-copy to #:closures, and add #:copy-closures?. Add 'target-directory' and 'target-store' variables. Call 'populate-store' only when COPY-CLOSURES?. Bind-mount the store to TARGET-STORE when REGISTER-CLOSURES? and not COPY-CLOSURES?. Add call to 'register-closure'.
build: Remove fusectl from the default file systems in the demo OS. * build-aux/hydra/demo-os.scm (file-systems): Comment out %FUSE-CONTROL-FILE-SYSTEM, since fuse.ko is missing by default in the freestanding VM image.
system: Provide declarations for the 'fusectl' and 'binfmt_misc' file systems. * gnu/system.scm (%fuse-control-file-system, %binary-format-file-system): New variables. * build-aux/hydra/demo-os.scm (file-systems): New field.
vm: Keep acceptable file systems from the original OS. * gnu/system/vm.scm (virtualized-operating-system): Instead of completely overriding 'file-systems', use 'remove' to filter out some of those declared in OS. (system-qemu-image): Likewise.
gnu: xterm: Upgrade to 304. * gnu/packages/xorg.scm (xterm): Upgrade to 304. Switch to a version-specific URL.
activation: Silence warning from 'useradd'. * guix/build/activation.scm (add-user): Don't pass '--create-home' when HOME already exists.
linux-initrd: Make /dev/ttyS0, for debugging. * guix/build/linux-initrd.scm (make-essential-device-nodes): Make /dev/ttyS0.
system: When unionfs-fuse is used for /, don't kill it when halting. * guix/build/linux-initrd.scm (pidof): New procedure. (mount-root-file-system)[mark-as-not-killable]: New procedure. Use it for unionfs when VOLATILE-ROOT?. * gnu/services/base.scm (%do-not-kill-file): New variable. (user-processes-service)[stop]: Honor it.
syscalls: Add 'processes' to list all the live processes. * guix/build/syscalls.scm (kernel?, processes): New procedures.
gnu: libsm: Propagate input libice. * gnu/packages/xorg.scm (libsm): Propagate input libice.