gnu: linux: Really build 9p/virtio modules.
* gnu/packages/linux.scm (linux-libre): Add CONFIG_NET_9P and
CONFIG_9P_FS.
gnu: linux-initrd: Recognize 9p file systems.
* gnu/system/linux-initrd.scm (qemu-initrd)[virtio-9p-modules]: New
variable.
[linux-modules]: Append VIRTIO-9P-MODULES when a 9p file system is in
MOUNTS.
* guix/build/linux-initrd.scm (mount-qemu-9p): New procedure.
(boot-system): Recognize '9p' in MOUNTS, and use 'mount-qemu-9p'.
gnu: linux-initrd: Match kernel module file names exactly.
* gnu/system/linux-initrd.scm (expression->initrd)[string->regexp]: New
procedure. Use it in the call to 'find-files'.
gnu: linux-initrd: Properly distinguish between /dev/sda* and /dev/vda*.
* guix/build/linux-initrd.scm (make-essential-device-nodes): Rename
devices with major = 8 to /dev/sda*. Make /dev/vda* devices.
* gnu/system/vm.scm (qemu-image): Change '/dev/vda' to '/dev/sda'.
* gnu/system.scm (operating-system-derivation): Likewise.
gnu: linux-initrd: Start a REPL when the root could not be mounted.
* guix/build/linux-initrd.scm (boot-system): Catch errors when mounting
ROOT and call 'start-repl' upon error.
gnu: linux-libre: Build more virtio modules.
* gnu/packages/linux.scm (linux-libre): Append CONFIG_NET_9P_VIRTIO and
CONFIG_VIRTIO_{NET,BLK,BALLOON} to '.config'.
gnu: vm: Run QEMU with '-enable-kvm'.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Pass QEMU
'-enable-kvm'.
gnu: Add GNU Octave.
* gnu/packages/maths.scm (octave): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
gnu: linux-libre: Build virtio modules.
* gnu/packages/linux.scm (linux-libre): Build modules matching
CONFIG.*VIRTIO.
gnu: linux-libre: Upgrade to 3.13.
* gnu/packages/linux.scm (linux-libre): Upgrade to 3.13.
gnu: gnunet: Add gnurl 7.34.0.
* gnu/packages/gnunet.scm (gnurl): New variable. Thanks to Zerwas for
the initial recipe.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
gnu: libgcrypt: Upgrade to 1.6.1.
* gnu/packages/gnupg.scm (libgcrypt): Upgrade to 1.6.1.
gnu: linux-initrd: Factorize boot code.
* guix/build/linux-initrd.scm (boot-system): New procedure.
* gnu/system/linux-initrd.scm (qemu-initrd): Add keyword parameters
'guile-modules-in-chroot?' and 'mounts'. Change builder to simply
call 'boot-system'.
(gnu-system-initrd): Change to a simple call to 'qemu-initrd'.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Call
'qemu-initrd' with #:guile-modules-in-chroot?.
gnu: Lower initrd makers from packages to monadic procedures.
* gnu/packages/linux-initrd.scm: Remove.
* gnu/system/linux-initrd.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/system.scm (<operating-system>): Change default 'initrd' value
to (gnu-system-initrd).
(operating-system-derivation): Bind 'operating-system-initrd'. Pass
'menu-entry' an initrd file name instead of a package.
* gnu/system/grub.scm (grub-configuration-file): Expect 'initrd' to be
file name.
monads: Add 'imported-modules' and 'compiled-modules'.
* guix/monads.scm (package-file): Fix typo.
(imported-modules, compiled-modules): New procedures.
gnu: qemu-initrd: Adjust to allow booting with a non-empty /root.
* gnu/packages/linux-initrd.scm (qemu-initrd): Use 'mkdir-p' instead of
'mkdir' for /root/xchg and /root/{share,lib}. When TO-LOAD is a
symlink, resolve it.
(gnu-system-initrd): Fix typo in message.
download: Add archive.apache.org to the Apache mirrors.
* guix/download.scm (%mirrors)[apache]: Add archive.apache.org as a last
resort.
offload: Do not try to retrieve anything upon build failure.
* guix/scripts/offload.scm (offload): Add 'log-port' keyword parameter.
Handle log display here. Return the result of (close-pipe pipe).
(process-request): Adjust 'offload' call site accordingly. Call
'retrieve-files' only when 'offload' returns zero; exit when 'offload'
returns non-zero.
gnu: iotop: Fix typos.
* gnu/packages/linux.scm (iotop): Fix typos introduced by myself.
gnu: linux: Add iotop-0.6.
* gnu/packages/linux.scm (iotop): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>