gnu: guix: Update to 0.4.
* gnu/packages/package-management.scm (guix): Update to 0.4.
(guix-0.4): Remove.
* gnu/system/vm.scm (qemu-image, system-qemu-image): Use GUIX instead of
GUIX-0.4.
gnu: vm: Remove erroneous store reference.
* gnu/system/vm.scm (system-qemu-image): Remove reference from BOOT to
MINGETTY since MINGETTY may not be valid yet.
gnu: vm: Add more packages to the profile.
* gnu/system/vm.scm (system-qemu-image): Add grep, sed, and Findutils to
the profile.
gnu: vm: Add a few packages to the default profile.
* gnu/system/vm.scm (system-qemu-image): Add procps, psmisc, and Zile to
the default profile. Increase the image size to 550 MiB.
gnu: dmd: Make the 'networking' service slightly more robust.
* gnu/system/dmd.scm (static-networking-service)[start]: Sleep before
running 'route', to leave time for the interface to come up.
[stop]: Run "route del -net default".
gnu: vm: Set the right permissions and ownership on directories.
* gnu/system/vm.scm (qemu-image): Change the store's mode to #o1775.
Support 'populate' clauses that specify a UID and GID.
(system-qemu-image): Make sure /nix/store has owner 'root' and group
'guixbuild'. Set the right owner for /home/guest. Create
/var/nix/profiles/per-user/{root,guest}.
gnu: vm: Add build users.
* gnu/system/shadow.scm (guix-build-accounts): New procedure.
* gnu/system/vm.scm (system-qemu-image): Use it. Add the "guixbuild"
group.
* gnu/system/dmd.scm (guix-service): Add 'builder-group' parameter.
Pass 'guix-daemon' the '--build-users-group' option.
gnu: vm: Add /etc/{services,protocols,rpc} to the image.
* gnu/system/vm.scm (system-qemu-image): Link
/etc/{services,protocols,rpc}. Add net-base as an input.
gnu: vm: Add a 'guest' account.
* gnu/system/vm.scm (system-qemu-image): Add a "guest" user and a
"users" user group. Make /home/guest. Add /etc/group. Update
/etc/issue to mention it.
gnu: shadow: Add record type for user groups.
* gnu/system/shadow.scm (<user-group>): New record type.
(group-file): New procedure.
* gnu/system/vm.scm (system-qemu-image): Use it.
gnu: shadow: Add record type for user accounts.
* gnu/system/shadow.scm (<user-account>): New record type.
(passwd-file): Use it.
* gnu/system/vm.scm (system-qemu-image): Adjust accordingly.
gnu: vm: Set the default networking route.
* gnu/system/dmd.scm (static-networking-service): Add #:gateway
parameter and honor it.
* gnu/system/vm.scm (system-qemu-image): Pass #:gateway to
'static-networking-service'.
Merge branch 'master' into core-updates
gnu: vm: Add nscd service.
* gnu/system/dmd.scm (nscd-service): New procedure.
* gnu/system/vm.scm (system-qemu-image): Use it. Make /var/run/nscd.
gnu: vm: Add 'networking' service.
* gnu/system/vm.scm (system-qemu-image): Use
'static-networking-service'. Add /etc/resolv.conf. Add Inetutils to
the profile.
* gnu/system/dmd.scm (static-networking-service): New procedure.
gnu: vm: Register the profile as a GC root.
* gnu/system/vm.scm (system-qemu-image): Register PROFILE as a GC root.
gnu: vm: Add 'host-name' service.
* gnu/system/dmd.scm (host-name-service): New procedure.
(mingetty-service): Require the 'host-name' service.
* gnu/system/vm.scm (system-qemu-image): Add the 'host-name' service.
Set PS1 in /etc/bashrc to something sensible.
gnu: vm: Add /etc/issue and a motd.
* gnu/system/vm.scm (system-qemu-image): Build a 'motd' and an 'issue'
file. Pass 'unix-pam-service' that motd. Have /etc/issue point to
the 'issue' file.
gnu: vm: Change #:populate to a list of directives.
* gnu/system/vm.scm (qemu-image): Change 'populate' parameter to be a
list of directives.
(system-qemu-image): Adjust accordingly.
gnu: vm: Add more ttys.
* gnu/system/vm.scm (system-qemu-image): Add more ttys.