gnu: Add rasqal.
* gnu/packages/rdf.scm (rasqal): New variable.
gnu: Add libuv.
* gnu/packages/libevent.scm (libuv): New variable.
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'.
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.
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.
gnu: libsm: Propagate input libice.
* gnu/packages/xorg.scm (libsm): Propagate input libice.
gnu: qt-4: Upgrade to 4.8.6.
* gnu/packages/qt.scm (qt-4): Upgrade to 4.8.6.
gnu: qt-4: Enable session management by adding libsm as an input.
* gnu/packages/qt.scm (qt-4): Add input qt-4.
vm: Pass '-serial stdio' in the run-vm.sh.
* gnu/system/vm.scm (system-qemu-image/shared-store-script): Add
'-serial stdio'.
system: Move skeleton code to (gnu system shadow).
* gnu/system.scm (default-skeletons, skeleton-directory): Move to...
* gnu/system/shadow.scm: ... here.
system: Add skeleton '.gdbinit'.
* gnu/system.scm (default-skeletons): Add .gdbinit.
gnu: openmpi: Use our hwloc.
* gnu/packages/mpi.scm (hwloc): Propagate numactl.
(openmpi)[inputs]: Add hwloc.
[native-inputs]: Add pkg-config.
[argument]: Add hwloc configure flags.
gnu: Add babl.
* gnu/packages/gimp.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
system: Populate /etc/skel.
* gnu/system.scm (<operating-system>)[skeletons]: New field.
(default-skeletons, skeleton-directory): New procedures.
(etc-directory): Add #:skeletons parameter. Call
'skeleton-directory', and produce the 'skel' sub-directory.
(operating-system-etc-directory): Pass #:skeletons to
'etc-directory'.
gnu: perl-tk: Patch for i686
* gnu/packages/patches/perl-tk-x11-discover.patch: New patch.
* gnu-system.am [dist_patch_DATA]: Add it.
* gnu/packages/tcl.scm (perl-tk)[origin]: Use it.
system: Make accounts and groups at activation time.
* gnu/services/base.scm (guix-build-accounts): Remove #:gid parameter;
add #:group. Remove 'password' and 'gid' fields in 'user-account'
form, and add 'group'.
(guix-service): Remove #:build-user-gid parameter. Remove 'id' field
in 'user-group' form.
* gnu/system.scm (etc-directory): Remove #:groups and #:accounts. No
longer produce files "passwd", "shadow", and "group". Adjust caller
accordingly.
(%root-account): New variable.
(operating-system-accounts): Add 'users' variable. Add %ROOT-ACCOUNT
only of 'operating-system-users' doesn't already contain a root
account.
(user-group->gexp, user-account->gexp): New procedures.
(operating-system-boot-script): Add calls to 'setenv' and
'activate-users+groups' in gexp.
* gnu/system/linux.scm (base-pam-services): Add PAM services for
"user{add,del,mode}" and "group{add,del,mod}".
* gnu/system/shadow.scm (<user-account>)[gid]: Rename to...
[group]: ... this.
[supplementary-groups]: New field.
[uid, password]: Default to #f.
(<user-group>)[id]: Default to #f.
(group-file, passwd-file): Remove.
* gnu/system/vm.scm (operating-system-default-contents)[user-directories]:
Remove. Add "/home" to the directives.
* guix/build/activation.scm (add-group, add-user,
activate-users+groups): New procedures.
services: xorg: Fix harmless typo in slim.cfg.
* gnu/services/xorg.scm (slim-service): Add missing whitespace in
XINITRC invocation.