Subject: Re: [bug#49149] [PATCH 0/7] Add deb format for guix pack.

From: zimoun <[email-masked]>
Date: Wed, 30 Jun 2021 17:06:59 +0200

Hi,

Using Guix ebf07a0.

I do not know if the issue is about multi-debs or if I am doing
something wrong but IIUC ’apt’ remove all the files under data/.

$ /gnu/store/3v93dzrmh978mljw65zvvydm2w8lqaam-guile-wrapper/bin/guile --version
guile (GNU Guile) 3.0.7
Copyright (C) 2021 Free Software Foundation, Inc.

License LGPLv3+: GNU LGPL 3 or later <http://gnu.org/licenses/lgpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

$ guix gc --references /gnu/store/3v93dzrmh978mljw65zvvydm2w8lqaam-guile-wrapper
/gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-gcc-7.5.0-lib
/gnu/store/226ljnvrhnrb3ngjn0m6i5ih2301bbj0-guile-launcher.c
/gnu/store/6l9rix46ydxyldf74dvpgr60rf5ily0c-guile-3.0.7
/gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31
/gnu/store/xa45bzcbib4zqa7gk70nb35dzzwyr376-gcc-toolchain-7.5.0

$ sudo apt install y74azsczq1dws1slmagc1jq6ysidllpb-hello-deb-pack.deb
$ guix gc --references $(realpath $(which hello))
/gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-gcc-7.5.0-lib
/gnu/store/a462kby1q51ndvxdv3b6p0rsixxrgx1h-hello-2.10
/gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31

$ sudo apt remove hello

$ ls /gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-gcc-7.5.0-lib
ls: cannot access '/gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-gcc-7.5.0-lib': No such file or directory
$ ls -l /gnu/store/3v93dzrmh978mljw65zvvydm2w8lqaam-guile-wrapper/bin/guile
-r-xr-xr-x 2 root root 17472 Jan  1  1970 /gnu/store/3v93dzrmh978mljw65zvvydm2w8lqaam-guile-wrapper/bin/guile
$ /gnu/store/3v93dzrmh978mljw65zvvydm2w8lqaam-guile-wrapper/bin/guile --version
bash: /gnu/store/3v93dzrmh978mljw65zvvydm2w8lqaam-guile-wrapper/bin/guile: No such file or directory

$ ar -xv y74azsczq1dws1slmagc1jq6ysidllpb-hello-deb-pack.deb 
x - debian-binary
x - control.tar.xz
x - data.tar.xz

$ tar Jtf data.tar.xz | grep glibc | head
./gnu/store/01b4w3m6mp55y531kyi1g8shh722kwqm-gcc-7.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/7.5.0/plugin/include/config/glibc-stdint.h
./gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/
./gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/
./gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/catchsegv
./gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/gencat
./gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/getconf
./gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/getent
./gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/iconv
./gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/ldd
./gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/bin/locale

Therefore, installing and then removing ’hello’ breaks any other pack
using, for instance, 01b4w3m6mp55y531kyi1g8shh722kwqm-gcc-7.5.0-lib or
fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31.  Do I miss something?

Cheers,
simon