summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorNoé Lopez <noelopez@free.fr>2025-11-18 17:46:38 +0900
committerVagrant Cascadian <vagrant@debian.org>2026-04-10 18:24:56 -0700
commit1078e42a60655a1512e41f01d0b1d75df70bf9df (patch)
tree6e928ad045fe22cd592e3111a4c16af51bcb5a6c /tests
parent3cbd6bd79c8d26079be5b39583e3d7c10567acb2 (diff)
tests: Fix non-deterministic AppImage tests.
The tested AppImages were not actually relocatable and would rely on items being available on the environment’s store (apart from glibc). * guix/scripts/pack.scm (wrapped-manifest): New function. (guix-pack): Extract relocatable manifest to wrapped-manifest. * tests/pack.scm: Use relocatable profiles in AppImage tests. Fixes: <https://issues.guix.gnu.org/76850> Change-Id: Ib3123054913fce903d215dc0629d806e9fceebc7 Reported-by: Reepca Russelstein <reepca@russelstein.xyz> Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
Diffstat (limited to 'tests')
-rw-r--r--tests/pack.scm26
1 files changed, 15 insertions, 11 deletions
diff --git a/tests/pack.scm b/tests/pack.scm
index d0a1b72eb94..5422e156b90 100644
--- a/tests/pack.scm
+++ b/tests/pack.scm
@@ -3,7 +3,7 @@
3;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> 3;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
4;;; Copyright © 2021, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop> 4;;; Copyright © 2021, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
5;;; Copyright © 2023 Oleg Pykhalov <go.wigust@gmail.com> 5;;; Copyright © 2023 Oleg Pykhalov <go.wigust@gmail.com>
6;;; Copyright © 2024 Noé Lopez <noelopez@free.fr> 6;;; Copyright © 2024-2025 Noé Lopez <noelopez@free.fr>
7;;; 7;;;
8;;; This file is part of GNU Guix. 8;;; This file is part of GNU Guix.
9;;; 9;;;
@@ -337,11 +337,13 @@
337 (mlet* %store-monad 337 (mlet* %store-monad
338 ((guile (set-guile-for-build (default-guile))) 338 ((guile (set-guile-for-build (default-guile)))
339 (profile -> (profile 339 (profile -> (profile
340 ;; When using '--appimage-extract-and-run', the dynamic 340 ;; When using '--appimage-extract-and-run', the dynamic
341 ;; linker is necessary, hence glibc below. 341 ;; linker is necessary, hence glibc below.
342 (content (packages->manifest (list hello glibc))) 342 (content (wrapped-manifest
343 (hooks '()) 343 (packages->manifest (list hello glibc))))
344 (locales? #f))) 344 (relative-symlinks? #t)
345 (hooks '())
346 (locales? #f)))
345 (image (self-contained-appimage "hello-appimage" profile 347 (image (self-contained-appimage "hello-appimage" profile
346 #:entry-point "bin/hello" 348 #:entry-point "bin/hello"
347 #:extra-options 349 #:extra-options
@@ -369,11 +371,13 @@
369 (mlet* %store-monad 371 (mlet* %store-monad
370 ((guile (set-guile-for-build (default-guile))) 372 ((guile (set-guile-for-build (default-guile)))
371 (profile -> (profile 373 (profile -> (profile
372 ;; When using '--appimage-extract-and-run', the dynamic 374 ;; When using '--appimage-extract-and-run', the dynamic
373 ;; linker is necessary, hence glibc below. 375 ;; linker is necessary, hence glibc below.
374 (content (packages->manifest (list guile-3.0 glibc))) 376 (content (wrapped-manifest
375 (hooks '()) 377 (packages->manifest (list guile-3.0 glibc))))
376 (locales? #f))) 378 (relative-symlinks? #t)
379 (hooks '())
380 (locales? #f)))
377 (image (self-contained-appimage "guile-appimage" profile 381 (image (self-contained-appimage "guile-appimage" profile
378 #:entry-point "bin/guile" 382 #:entry-point "bin/guile"
379 #:localstatedir? #t 383 #:localstatedir? #t