GNU bug report logs - #76850
tests/pack.scm failure (AppImage)

Previous Next

Package: guix;

Reported by: Reepca Russelstein <reepca <at> russelstein.xyz>

Date: Sat, 8 Mar 2025 03:47:02 UTC

Severity: normal

Full log


View this message in rfc822 format

From: Reepca Russelstein <reepca <at> russelstein.xyz>
To: 76850 <at> debbugs.gnu.org
Subject: bug#76850: tests/pack.scm failure (AppImage)
Date: Fri, 07 Mar 2025 21:45:22 -0600
[Message part 1 (text/plain, inline)]
Or perhaps it would be more accurate to say that it is nondeterministic.
This is because it currently succeeds more or less by accident: the
AppRun symlink points to ./gnu/store/...-profile/bin/hello, which points
to /gnu/store/...-hello-2.12.1/bin/hello (note: absolute path!).  There
shouldn't be any reason for that to exist inside the chroot, except that
the daemon's reference scanner has noticed that some of the inputs to
the appimage-building derivation *may* have their hashes visible in the
built appimage.  I say "may" because the appimage is compressed with
squashfs, so it's a matter of luck whether a hash is actually directly
visible.  Currently, in the master branch, it happens to be visible, but
in my local repository it isn't, and so it fails for me.

To demonstrate this without relying on the fickle compression, find the
store path of the appimage built during the tests/pack.scm "appimage"
test case after running "make check TESTS=tests/pack.scm" (the
"check-appimage" derivation is printed into tests/pack.log, from there
you can find the appimage derivation and its output path), and call it
$IMAGE.  Then:

$ IMAGE=/gnu/store/2c8m9in2pkgkf8p9qgv17dqz19jfxmmm-hello-appimage.AppImage
$ mkdir test-root
$ mkdir test-root/proc
$ mkdir test-root/tmp
$ cp "$IMAGE" test-root/test-image
$ unshare --user --mount --map-root-user

then, in the subshell spawned by unshare:

$ mount --bind /proc test-root/proc
$ chroot ./test-root /test-image --appimage-extract-and-run

you should see "Failed to run
/tmp/appimage_extracted_e331827d4eb2f579cccf6fb79143c261/AppRun: No such
file or directory" or something like it.

- reepca
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 132 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.