Subject: ‘guix pack -R’ wrapper swallows exit code

From: Ludovic Courtès <[email-masked]>
Date: Fri, 24 Apr 2020 14:29:46 +0200

Hello!

As janneke reported earlier today, wrappers generated by ‘guix pack -R’
(or ‘-RR’) swallow the program’s exit code when running in user
namespace mode:

--8<---------------cut here---------------start------------->8---
$ mkdir /tmp/pack
$ (cd /tmp/pack; tar xf $(guix pack -R sed -S /bin=bin))
$ unshare -mrf sh -c 'mount -t tmpfs none /gnu; /tmp/pack/bin/sed --whatever'
/tmp/pack/bin/sed: unrecognized option '--whatever'

[...]

$ echo $?
0
$ guix describe
Generacio 139	Apr 13 2020 21:50:08	(nuna)
  guix bad368b
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: bad368b0d794689f3a8a11b58f1ea4987938682e
--8<---------------cut here---------------end--------------->8---

(The ‘unshare’ trick, also used in ‘tests/guix-pack-relocatable.sh’,
allows me to pretend there’s no /gnu/store on my machine.)

Ludo’.