This is a follow-up to 35ce3e5de6, fixing
Disarchive recovery when the download script is run from a 'guix pull'
profile.
* guix/self.scm (specification->package): Add "guile-lzma".
(compiled-guix): Add GUILE-LZMA to DEPENDENCIES in
the #:dependencies argument to 'guix-command'.
This test has probably never been working. Rename it nfs-full, and test that
an NFS server can be started in a VM and mounted in another VM.
* gnu/tests/nfs.scm (run-nfs-root-fs-test): Rename it ...
(run-nfs-full-test): ... this way.
(%test-nfs-root-fs): Rename it ...
(%test-nfs-full): ... this way.
The docker tests are broken because the docker overlay doesn't support running
on our own storage overlay. Use the new <virtual-machine> volatile? field to
spawn a VM with a persistent storage and no overlay.
* gnu/tests/docker.scm (run-docker-test): Add the docker-tarball to the gc
roots as the host store is not shared anymore. Spawn a VM without volatile
storage.
(run-docker-system-test): Ditto.
(%test-docker-system): Adapt it to use the image API.
* guix/scripts/system.scm (system-derivation-for-action): Add new volatile?
argument and pass it to system-qemu-image/shared-store-script.
(perform-action): Add new volatile? argument and pass it to
system-derivation-for-action.
(process-action): Pass the volatile? argument to perform-action.
* guix/scripts/system.scm (system-derivation-for-action): Use the image API to
generate the docker images and deprecate the docker-image command.
(process-action): Ditto.
* doc/guix.texi (Invoking guix system): Adapt it.
This code duplicates the (gnu system image) and (gnu build image) code. Using
VM for image generation is not needed, not portable and really slow. Remove
all the VM image generation code to make sure that only the image API is used.
* gnu/build/vm.scm: Remove it. Move the qemu-command procedure to ...
* gnu/build/marionette.scm: ... here.
* gnu/local.mk (GNU_SYSTEM_MODULES): Adapt it.
* tests/modules.scm: Ditto.
* gnu/tests/install.scm: Ditto.
* gnu/system/vm.scm: Adapt it and remove expression->derivation-in-linux-vm,
qemu-img, system-qemu-image/shared-store and system-docker-image procedures.
* doc/guix.texi (G-Expressions): Adapt it.
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.
* 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>
This is a follow-up to commit d64bd1254a.
* gnu/packages/virtualization.scm (qemu-minimal)[native-inputs]: Filter static
outputs and remove "gettext-minimal" instead of "gettext".
...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/build/chromium-extension.scm (make-crx): Use a Chromium profile relative
to the build directory instead of /tmp. While here, remove obsolete comment.
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.
Fixes <https://issues.guix.gnu.org/issue/52051>.
* gnu/services/dbus.scm (dbus-configuration-directory): Set a 60 second
authentication timeout in the D-Bus configuration.
Fixes <https://issues.guix.gnu.org/52694>.
Reported by Carl Dong <contact@carldong.me>.
Use of #:re-export-and-replace would prevent upgrades from 1.2.0, whose
'source-module-closure' procedure did not recognize #:re-export-and-replace.
* guix/packages.scm: Remove #:re-export-and-replace and add top-level
call to 'module-re-export!'