Add (guix build syscalls). * guix/build/syscalls.scm, tests/syscalls.scm: New files. * Makefile.am (MODULES): Add guix/build/syscalls.scm. (SCM_TESTS): Add tests/syscalls.scm. * guix/utils.scm (%libc-errno-pointer, errno): Remove; take from (guix build syscalls).
linux-initrd: Append to /etc/mtab. * guix/build/linux-initrd.scm (mount-file-system): Open /etc/mtab in append mode.
system: Automatically add essential services. * gnu/services/base.scm (%base-services): Remove calls to 'host-name-service', 'user-processes-service', and 'root-file-system-service'. * gnu/system.scm (<operating-system>)[operating-system-services]: Rename to... [operating-system-user-services]: ... this. (essential-services, operating-system-services): New procedures. (operating-system-accounts, operating-system-etc-directory, operating-system-boot-script, operating-system-derivation): Adjust to new 'operating-system-services' return type.
gnu: fftw: Factor out OpenMPI dependency. * gnu/packages/algebra.scm (fftw)[inputs,arguments]: Remove OpenMPI. (fftw-openmpi): New variable.
gnu: Add hwloc. * gnu/packages/mpi.scm (hwloc): New variable. (openmpi): Add TODO comment.
gnu: Add pciutils. * gnu/packages/pciutils.scm: New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it.
gnu: Add numactl. * gnu/packages/linux.scm (numactl): New variable.
gnu: openmpi: Fix typo in download uri * gnu/packages/mpi.scm (openmpi)[origin]: Fix typo.
gnu: fftw: Add dependency on openmpi. * gnu/packages/algebra.scm (fftw)[inputs,arguments]: Add OpenMPI.
gnu: fftw: Upgrade to 3.3.4 * gnu/packages/algebra.scm (fftw): Upgrade to 3.3.4.
services: Add service to cleanly unmount the root file system. * gnu/services/base.scm (root-file-system-service, user-processes-service): New procedures. (mingetty-service, nscd-service, syslog-service, guix-service): Add requirement on 'user-processes'. (%base-services): Add (user-processes-service) and (root-file-system-service). * gnu/services/xorg.scm (slim-service): Add requirement on 'user-processes'.
linux-initrd: Don't leak /dev/console file descriptors. * guix/build/linux-initrd.scm (switch-root): Simplify /dev/console code. This fixes a bug where we would leak the IN and OUT file descriptors.
doc: Mention Kiselyov's work on "staging". * doc/guix.texi (G-Expressions): Mention Oleg's work on "staging" in footnote.
git-download: Disable TLS certificate verification. * guix/build/git.scm (git-fetch): Add 'setenv' call.
gnu: openmpi: Avoid "open source" verbiage * gnu/packages/mpi.scm (openmpi)[synopsis,description]: Remove mention of "open source".
gnu: Add petsc-openmpi. * gnu/packages/maths.scm (petsc-openmpi): New variable. (petsc-complex-openmpi): New variable.
gnu: petsc: Clean some more leaked chroot references * gnu/packages/maths.scm (petsc)[arguments]: Scrub some config-generated header files before build. Only remove files if they exist.
gnu: Add OpenMPI * gnu/packages/mpi.scm: New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it.
Change 'nix-upstream' submodule URL. * .gitmodules: Use https, not http. Reported by Pjotr Prins <pjotr.public12@thebird.nl>.
linux-initrd: Update /etc/mtab. * guix/build/linux-initrd.scm (mount-root-file-system): Populate /root/etc/mtab. (mount-file-system): Update ROOT/etc/mtab.