system: vm: Use the image API to generate QEMU images. Also add a volatile? argument to the virtual-machine record. When volatile? is true generate a QEMU script that mounts an overlay on top of a read only storage. When volatile? is false, use a persistent, read-write storage. * gnu/system/vm.scm (common-qemu-options): Add a rw-image? argument to use a persistent storage. (system-qemu-image/shared-store-script): Add a volatile? argument and honor it. Use the image API to build the QEMU image. (<virtual-machine>)[volatile?]: New field. (virtual-machine-compiler): Pass the volatile? argument to the system-qemu-image/shared-store-script procedure.
system: image: Add docker support. * gnu/system/image.scm (docker-image, docker-image-type): New variables. (system-docker-image): New procedure. (image->root-file-system): Add docker image support. (system-image): Ditto.
image: Add a shared-network? field. * gnu/image.scm (<image>)[shared-network?]: New field.
image: Add a shared-store? field. * gnu/image.scm (<image>)[shared-store?]: New field.
build: image: Add optional closure copy support. * gnu/build/image.scm (initialize-root-partition): Add a closure-copy? argument and honor it.
gnu: pre-commit: Update to 2.16.0. * gnu/packages/version-control.scm (pre-commit): Update to 2.16.0. Signed-off-by: Leo Famulari <leo@famulari.name>
gnu: gsequencer: Update to 3.14.5. * gnu/packages/music.scm (gsequencer): Update to 3.14.5. [source]<origin>: Update url. Signed-off-by: Leo Famulari <leo@famulari.name>
gnu: gsequencer: Build with libsoup 2. * gnu/packages/music.scm (gsequencer)[native-inputs]: Use the new style. [inputs]: Replace libsoup with libsoup-minimal-2 and webkitgtk with webkitgtk-with-libsoup2. Use the new style. Signed-off-by: Leo Famulari <leo@famulari.name>
gnu: gnome-commander: Update to 1.12.3.1. * gnu/packages/gnome.scm (gnome-commander): Update to 1.12.3.1. Signed-off-by: Leo Famulari <leo@famulari.name>
gnu: openexr: Update to 3.1.3. * gnu/packages/graphics.scm (openexr): Update to 3.1.3. Signed-off-by: Leo Famulari <leo@famulari.name>
gnu: libksba: Fix cross-compilation. * gnu/packages/gnupg.scm (libksba)[native-inputs]: Remove.
gnu: qemu-minimal: Actually remove unnecessary native-inputs. This is a follow-up to commit d64bd1254a015dfc999431dc65b6c5f210e8e334. * gnu/packages/virtualization.scm (qemu-minimal)[native-inputs]: Filter static outputs and remove "gettext-minimal" instead of "gettext".
gnu: seabios: Build vgabios targets. * gnu/packages/firmware.scm (seabios)[arguments]: Add new phase to build various vgabiosen. While at it, create a "bios-256k.bin" as expected by QEMU.
gnu: seabios: Encode version information in the binary. ...to make the build deterministic. * gnu/packages/firmware.scm (seabios)[arguments]: Create a ".version" file as expected by the build system. While at it, set EXTRAVERSION as recommended by upstream.
gnu: seabios: Update to 1.15.0. * gnu/packages/firmware.scm (seabios): Update to 1.15.0. [arguments]: Remove trailing #t's. [native-inputs]: Remove label.
gnu: gcl: Avoid referencing GCC from the top-level. * gnu/packages/lisp.scm (gcl)[arguments]: Use SEARCH-INPUT-FILE instead of referencing the GCC variable.
gnu: rsync: Remove 3.1.3. * gnu/packages/rsync.scm (rsync-next): Remove variable. (rsync): Update to 3.2.3. While at it, remove input labels.
chromium-extension: Avoid another usage of the store-mapped /tmp. * gnu/build/chromium-extension.scm (make-crx): Use a Chromium profile relative to the build directory instead of /tmp. While here, remove obsolete comment.
gnu: emacs-eldev: Adjust to changes in emacs-build-system. * gnu/packages/emacs-xyz.scm (emacs-eldev)[install-eldev-executable]: Use elpa-directory for ELDEV_LOCAL.
gnu: xorg-server: Update to 21.1.2 [security fixes]. Fixes CVE-2021-4008, CVE-2021-4009, CVE-2021-4010, and CVE-2021-4011. * gnu/packages/xorg.scm (xorg-server): Update to 21.1.2. (xorg-server-for-tests): Use version 21.1.1.