Merge branch 'master' into core-updates
install: Use a low-memory nscd caching policy. * gnu/system/install.scm (%nscd-minimal-caches): New variable. (installation-services): Use as 'nscd-service' argument.
Merge branch 'master' into 'core-updates'.
system: grub: Make sure the font and background image are always found. * gnu/system/grub.scm (eye-candy): Add 'search --file --set'.
system: Adjust 'grub.cfg' to work on systems with a separate /boot. Fixes <http://bugs.gnu.org/19220>. Reported by Nikita Karetnikov <nikita@karetnikov.org>. * gnu/system/grub.scm (grub-configuration-file)[entry->gexp]: Add 'search --file --set'. (grub-configuration-file)[builder]: Remove 'search.file'.
vm: Use QEMU's standard VGA emulation by default. * gnu/system/vm.scm (common-qemu-options): Add "-vga std".
system: Add skeleton '.zlogin'. * gnu/system/shadow.scm (default-skeletons): Add .zlogin.
system: Cleanup bash startup files. * gnu/system.scm (etc-directory) (bashrc): Rename to 'profile'. * gnu/system/shadow.scm (default-skeletons): Rename '.bashrc' to '.bash_profile'. Don't source /etc/profile.
linux-initrd: Add the 'virtio_console' module for QEMU guests. * gnu/system/linux-initrd.scm (base-initrd)[virtio-modules]: Add "virtio_console".
Revert "system: Add a 'needed-for-boot?' field to 'mapped-device'." This reverts commit 3b09332adf7ce8e976a4d117a62c586a53af04aa, which turned out to be a bad idea because we need to have dependency information between the device-mapping service and the file-system service that uses it.
system: locale: Fix typo in docstring. * gnu/system/locale.scm (localedef-command): Fix typo.
system: Add a 'needed-for-boot?' field to 'mapped-device'. * gnu/system/file-systems.scm (<mapped-device>)[needed-for-boot?]: New field. * gnu/system.scm (operating-system-user-mapped-devices, operating-system-boot-mapped-devices): Use it instead of trying to guess. Guessing doesn't work when one refers to a partition using its label, for instance. * doc/guix.texi (Mapped Devices): Document 'needed-for-boot?'.
system: Change "en_US.UTF-8" to "en_US.utf8". * build-aux/hydra/demo-os.scm (locale): Change to "en_US.utf8". * gnu/system/install.scm (installation-os)[locale]: Ditto.
linux-initrd: Remove the ".ko" suffix from module names in 'base-initrd'. * gnu/system/linux-initrd.scm (base-initrd): Remove the .ko suffix from module names.
linux-initrd: Remove now redundant module names. * gnu/system/linux-initrd.scm (base-initrd)[virtio-modules]: Remove "virtio.ko" and "virtio_ring.ko". [virtio-9p-modules]: Remove "fscache.ko" and "9pnet.ko". [linux-modules]: Remove "libahci.ko".
linux-boot: Load modules and their dependencies, à la 'modprobe'. * gnu/build/linux-boot.scm: Use (gnu build linux-modules). (load-linux-module*): Remove. (boot-system): Add #:linux-module-directory parameter. [lookup-module]: New procedure. Call 'current-module-debugging-port'. Pass #:lookup-module to 'load-linux-module*'. Map LOOKUP-MODULE on LINUX-MODULES. * gnu/system/linux-initrd.scm (base-initrd): Adjust 'boot-system' call accordingly. Adjust #:modules argument as well. * gnu/system.scm (operating-system-activation-script)[%modules]: Likewise. * gnu/system/vm.scm (expression->derivation-in-linux-vm): Likewise.
linux-initrd: Copy modules and their dependencies to the initrd. * gnu/system/linux-initrd.scm (flat-linux-module-directory)[build-exp]: Add 'lookup' procedure. Use 'recursive-module-dependencies' to compute the list of modules to copy. Adjust #:modules parameter.
system: Build system-wide locale definitions. * gnu/system/locale.scm: New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it. * gnu/system.scm (<operating-system>)[locale]: Change the default to "en_US.utf8". (operating-system-locale-directory): New procecure. (operating-system-derivation): Use it. * doc/guix.texi (Using the Configuration System): Change example locale to "fr_FR.utf8". (operating-system Reference): Add xref to "Locales". Document 'locale-definitions'. (Locales): New section. * po/guix/POTFILES.in: Add gnu/system.scm.
file-systems: 'file-system-needed-for-boot?' always returns #t for "/". Reported by Nikita Karetnikov. * gnu/system/file-systems.scm (<file-system>): Rename 'needed-for-boot?' accessor to '%file-system-needed-for-boot?'. (file-system-needed-for-boot?): New inlinable procedure. * gnu/system.scm (other-file-system-services)[file-systems]: Rely on 'file-system-needed-for-boot?' to handle the "/" case. (operating-system-initrd-file)[boot-file-systems]: Likewise.
install: Add wpa-supplicant to the image. Reported by Amirouche Boubekki <amirouche.boubekki@gmail.com>. * gnu/system/install.scm (installation-os)[packages]: Add WPA-SUPPLICANT.