gnu: Move 'which' to (gnu packages base).
* gnu/packages/which.scm: Remove.
* gnu-system.am (GNU_SYSTEM_MODULES): Remove it.
* gnu/packages/base.scm (which): New variable.
* gnu/packages/aspell.scm, gnu/packages/audio.scm,
gnu/packages/autogen.scm, gnu/packages/cdrom.scm,
gnu/packages/compression.scm, gnu/packages/datamash.scm,
gnu/packages/games.scm, gnu/packages/glib.scm,
gnu/packages/gnu-pw-mgr.scm, gnu/packages/gnutls.scm,
gnu/packages/gps.scm, gnu/packages/guile.scm,
gnu/packages/java.scm, gnu/packages/libevent.scm,
gnu/packages/linux.scm, gnu/packages/lisp.scm,
gnu/packages/node.scm, gnu/packages/ntp.scm,
gnu/packages/orpheus.scm, gnu/packages/pciutils.scm,
gnu/packages/python.scm, gnu/packages/qt.scm,
gnu/packages/rsync.scm, gnu/packages/sawfish.scm,
gnu/packages/scheme.scm, gnu/packages/ssh.scm,
gnu/packages/statistics.scm, gnu/packages/texlive.scm,
gnu/packages/wdiff.scm: Adjust accordingly.
system: Add /etc/ssl symlink; set needed variables in /etc/profile.
* gnu/build/activation.scm (activate-etc): Create /etc/ssl symlink.
* gnu/system.scm (etc-directory): Set SSL_CERT_DIR, SSL_CERT_FILE,
and GIT_SSL_CAINFO in /etc/profile.
Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
system: Create a single-file certificate bundle in /etc/ssl/certs.
Suggested by Mark H Weaver <mhw@netris.org>.
* gnu/system.scm (certificate-bundle): New procedure.
(etc-directory): Use it.
[profile]: Set 'SSL_CERT_DIR', 'SSL_CERT_FILE', and 'GIT_SSL_CAINFO'.
system: Add 'x509-certificates' field, and populate /etc/ssl/certs.
* gnu/system.scm (<operating-system>)[x509-certificates]: New field.
(etc-directory): Add #:x509-certificates parameter and honor it.
(operating-system-etc-directory): Pass #:x509-certificates in
'etc-directory' call.
* doc/guix.texi (operating-system Reference): Document
'x509-certificates'.
system: Add bindings to configure libc's NSS.
* gnu/system/nss.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu.scm (%public-modules): Add it.
* gnu/system.scm (<operating-system>)[name-service-switch]: New field.
(etc-directory): Add #:nss parameter and honor it.
(operating-system-etc-directory): Adjust call accordingly.
* doc/guix.texi (operating-system Reference): Document
'name-service-switch'.
(Name Service Switch): New section.
system: Define $ASPELL_CONF in /etc/profile.
* gnu/system.scm (etc-directory)[profile]: Define 'ASPELL_CONF'.
system: Add 'XDG_DATA_DIRS' and 'XDG_CONFIG_DIRS' to /etc/profile.
* gnu/system.scm (etc-directory)[profile]: Set 'XDG_DATA_DIRS' and
'XDG_CONFIG_DIRS'.
system: Make D-Bus warnings non fatal.
* gnu/system.scm (etc-directory): Add 'DBUS_FATAL_WARNINGS' in PROFILE.
system: Create /etc/emacs/site-start.el.
* gnu/system.scm (emacs-site-file, emacs-site-directory): New
procedures.
(etc-directory): Add 'EMACSLOADPATH' setting to PROFILE. Call
'emacs-site-directory', and bind its result to /etc/emacs.
system: Add iw to '%base-packages'.
* gnu/system.scm (%base-packages): Add IW.
Merge branch 'master' into 'core-updates'.
system: Add sudo to '%base-packages'.
* gnu/system.scm (%base-packages): Add SUDO.
system: /etc/profile defines 'MANPATH', which includes the global profile.
* gnu/system.scm (etc-directory)[profile]: Set 'MANPATH'.
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.
system: Add 'man-db' to '%base-packages'.
Suggested by Tsutsukakushi on #guix.
* gnu/system.scm (%base-packages): Add MAN-DB.
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: 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?'.
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.