guix_mirror_bot pushed a commit to branch master
in repository guix.

commit ab01e5adb21810f865c6e13e91a6d1ffc349d943
Author: Ludovic Courtès <[email protected]>
AuthorDate: Tue Jun 10 11:27:24 2025 +0200

    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
---
 gnu/tests/foreign.scm | 27 ++++++++++++++++++++++++---
 1 file changed, 24 insertions(+), 3 deletions(-)

diff --git a/gnu/tests/foreign.scm b/gnu/tests/foreign.scm
index 4e2f10de43..2d587953dd 100644
--- a/gnu/tests/foreign.scm
+++ b/gnu/tests/foreign.scm
@@ -159,10 +159,12 @@ system is expected to be on DEVICE."
   (file-append (package-source guix) "/etc/guix-install.sh"))
 
 (define* (run-foreign-install-test image name
-                                   #:key (device "/dev/vdb1"))
+                                   #:key (device "/dev/vdb1")
+                                   (deb-files '()))
   "Run an installation of Guix in IMAGE, the QCOW2 image of a systemd-based
 GNU/Linux distro, and check that the installation is functional.  The root
-partition of IMAGE is expected to be on DEVICE."
+partition of IMAGE is expected to be on DEVICE.  Prior to that, install all
+of DEB-FILES with 'dpkg -i'."
   (define instrumented-image
     (qcow-image-with-marionette image
                                 #:name (string-append name ".qcow2")
@@ -234,6 +236,14 @@ partition of IMAGE is expected to be on DEVICE."
                                 #t)
                              marionette))
 
+          (test-assert "install extra .deb packages"
+            (marionette-eval
+             '(and #$@(map (lambda (deb)
+                             #~(system* "dpkg" "-i"
+                                        (in-vicinity "/host" (basename 
#$deb))))
+                           deb-files))
+             marionette))
+
           (test-assert "run install script"
             (marionette-eval '(system
                                (string-append
@@ -283,6 +293,16 @@ partition of IMAGE is expected to be on DEVICE."
      (base32
       "0g7kcvz2yzr0xchlv5kc8d2rd2lzk4akh02i43i92cmys7q3r05c"))))
 
+(define debian-uidmap-deb-file
+  ;; This package provides 'newgidmap' & co., used by the unprivileged daemon.
+  (origin
+    (uri
+     
"http://ftp.debian.org/debian/pool/main/s/shadow/uidmap_4.13+dfsg1-1+deb12u1_amd64.deb";)
+    (method url-fetch)
+    (sha256
+     (base32
+      "0iqhljzmnni3k3jc1xb0mrb7cqywkzrmdc2322kd8b1wpw45zv8l"))))
+
 ;; This test starts failing when derivations in repo for GNU Hello and its 
dependencies
 ;; differs from versions in current Guix package. The simple way to fix it is 
to update
 ;; Guix package version.
@@ -292,7 +312,8 @@ partition of IMAGE is expected to be on DEVICE."
    (description
     "Test installation of Guix on Debian using the @file{guix-install.sh}
 script.")
-   (value (run-foreign-install-test debian-13-qcow2 name))))
+   (value (run-foreign-install-test debian-13-qcow2 name
+                                    #:deb-files (list 
debian-uidmap-deb-file)))))
 
 (define archlinux-qcow2
   ;; Images generated by <https://gitlab.archlinux.org/archlinux/arch-boxes>;

Reply via email to