Commit graph

17 commits

Author SHA1 Message Date
Rodion Goritskov
65432c00fc
tests: Add Fedora foreign distribution test.
* gnu/tests/foreign.scm (qcow-image-with-marionette):
  - Create .autorelabel file to make copied Guile work
    on SELinux-enabled systems.
(resize-lvm-xfs-partition): New variable.
(run-foreign-install-test): Increase RAM for VM to 1024
  as 512 is not sufficient to run Guix installation
  on Fedora.
(fedora-qcow2): New variable.
(%test-fedora-install): New variable.

Change-Id: Ib247a174dfea8630d830763410391077516a8c16
Merges: #5007
2025-12-28 12:38:29 +01:00
Rutherther
f1c1fb9340
tests: foreign: Add Ubuntu test.
This one is a bit more complicated than the other ones, because the qcow2
image is too small to hold the tarball contents.  So I have decided to add in
logic to resize the qemu img, the partition and the filesystem.

* gnu/tests/foreign.scm
(ubuntu-qcow2): New variable.
(ubuntu-uidmap-deb-file): New variable.
(ubuntu-libsuid4-deb-file): New variable.
(%test-ubuntu-install): New variable.

Change-Id: Ib705cfe0aeab5e6ede284b8eff06483aea617349e
Signed-off-by: Rutherther <rutherther@ditigal.xyz>

Merges: #4997
Change-Id: I17472d160665fa4965d1c1ee00d671746bd5fb74
2025-12-28 12:38:28 +01:00
Rutherther
0c74e5835e
tests: foreign: Add utilities for resizing foreign images.
* gnu/tests/foreign.scm
(qcow-image-with-marionette): Add resize-image and
resize-proc to resize the image, the partition and the file system.
(resize-ext4-partition): New variable.
(run-foreign-install-test): Add resize-image and resize-proc; Pass them to
qcow-image-with-marionette.

Change-Id: I92dbe0cdcafb5ff0a0b6c3e9b96205b4ad9d10e8
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-28 12:38:27 +01:00
Rutherther
e51032b257
tests: foreign: Add test restarting guix-daemon.
* gnu/tests/foreign.scm (run-foreign-install-test): Restart the
daemon, build and gc afterwards.

Followup of 9a78e76076.

Change-Id: Ia2304d6b9c83b5b8f410426ce00e078c2f004198
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-25 13:18:48 +01:00
Efraim Flashner
28d60948a1
tests: debian-install: Use download mirror for uidmap source.
* gnu/tests/foreign.scm (debian-uidmap-deb-file): Download using a
mirror-url.

Change-Id: I6036c553e6caba132c961658cb542d06d05e29b3
2025-11-24 19:09:39 +02:00
Efraim Flashner
acf95352b9
tests: debian-install: Fix debian-13 qcow2 image.
* gnu/tests/foreign.scm (debian-13-qcow2): Adjust source uri to point to
the same image.

Change-Id: I975140f2febcf0781e6a9c67981b3896629de050
2025-11-24 19:09:39 +02:00
Ludovic Courtès
ab01e5adb2
tests: debian-install: Install the ‘uidmap’ package.
* gnu/tests/foreign.scm (run-foreign-install-test): Add #:deb-files.
[test]("install extra .deb packages"): New test.
(debian-uidmap-deb-file): New variable.
(%test-debian-install): Pass it via #:deb-files.

Change-Id: I489056131d6ff20763457c29610af71866a396b2
2025-10-21 16:52:02 +02:00
Rodion Goritskov
21ce6b392a
tests: Update Archlinux image for foreign install test.
* guix/tests/foreign.scm (archlinux-qcow2): update URL and checksum.
  (%test-archlinux-install): add comment on possible test failure.

Change-Id: Ib1d6040f416a0a1117f956bc15111a0240dfb86b
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2025-10-20 10:52:25 +03:00
Rodion Goritskov
1d1778da39
tests: Update Debian image for foreign install test to Debian 13.
* guix/tests/foreign.scm (debian-12-qcow2): rename to debian-13-qcow2.
  (debian-13-qcow2): new URL and checksum.
  (%test-debian-install): use new variable.
  (%test-debian-install): add comment on possible test failures.

Change-Id: I0eb241b5c88f73a822edb20815fe09f8c76a2b6b
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2025-10-20 10:52:22 +03:00
Ludovic Courtès
951e39718a
tests: foreign: Add ‘archlinux-install’ test.
* gnu/tests/foreign.scm (archlinux-qcow2, %test-archlinux-install): New
variables.

Co-authored-by: Ivan Popovych <ivan@ipvych.com>
Change-Id: I2fce962a2eafa58fafaf2bdff25fc23df28fd687
2025-07-18 00:43:51 +02:00
Ludovic Courtès
bf79804508
tests: foreign: Parameterize root partition device.
* gnu/tests/foreign.scm (run-foreign-install-test): Add #:device
parameter and honor it.

Change-Id: I68bddaa25e9ba4131fc10366efed6772a3586a31
2025-07-18 00:43:50 +02:00
Ludovic Courtès
9596822a6c
tests: foreign: Forcefully delete /bin/{wget,gpg}.
* gnu/tests/foreign.scm (run-foreign-install-test)[build]: Attempt to
delete /bin/{wget,gpg} before recreating them.

Change-Id: I5260cae7f706ce9a492a86b1859591c8446e04a3
2025-07-18 00:43:50 +02:00
Ludovic Courtès
08c23d2c13
tests: foreign: Preserve distro image size.
* gnu/tests/foreign.scm (qcow-image-with-marionette): Remove the “10G”
argument to ‘qemu-img create’ since it could lead to corrupt
images—e.g., with the Arch Linux image.

Change-Id: I92d7551a16f325376c98d32e2cd6a01f8ed05e51
2025-07-18 00:43:50 +02:00
Ludovic Courtès
224361d3a3
tests: foreign: Catch failure to mount distro image.
* gnu/tests/foreign.scm (qcow-image-with-marionette)[build]: Call
‘error’ when ‘mount’ exits with a non-zero code.

Change-Id: I7c608e0aa7dff1447c9df778951d7a5256e47255
2025-07-18 00:43:50 +02:00
Ludovic Courtès
3511dab3f7
tests: Factorize ‘guix-daemon’ test cases.
* gnu/tests/base.scm (guix-daemon-test-cases): New procedure, with code
moved from…
(run-guix-daemon-test): … here. Use it.
* gnu/tests/foreign.scm (run-foreign-install-test): Likewise.

Change-Id: I6f2d03d30d7b7648b6eb7e77e36c3da54f80d79c
2025-03-10 15:41:34 +01:00
Ludovic Courtès
39c890cacf
tests: Factorize ‘%hello-dependencies-manifest’.
* gnu/tests/base.scm (%hello-dependencies-manifest): Export.
* gnu/tests/foreign.scm (%installation-tarball-manifest): Use it.

Change-Id: Id92232f479ab5d1f0c48036b0546e3745aa63e52
2025-03-10 15:41:33 +01:00
Ludovic Courtès
f57a660fc6
tests: Test installation on Debian.
* gnu/tests/foreign.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.

Change-Id: I1f24d83bdc298acbef15db2e19775cc1d3fbd56c
2025-03-05 20:34:04 +01:00