Seemingly unecessary package duplication in home and system profiles

  • Open
  • quality assurance status badge
Details
One participant
  • lgcoelho
Owner
unassigned
Submitted by
lgcoelho
Severity
normal
L
L
lgcoelho wrote on 23 Oct 13:42 +0200
(address . bug-guix@gnu.org)
3e5e77af52333a8d09ea63c5bb4515d4@disroot.org
When running either `guix size $(realpath ~/.guix-home/profile)` or
`guix size $(realpath /run/current-system/profile)` on my system, I
could see that multiple packages have "duplicates", whose hash doesn't
match. After investigation, I discovered that for all the ones I've
checked, the hash differs simply because compression used for some files
in the derivation output (such as manpages, for example). Some examples
are:

bash-minimal-5.1.16
bzip2-1.0.8
cairo-1.18.0
coreutils-9.1
dbus-1.15.8
extension.json
ffmpeg-6.1.1
gawk-5.3.0
gcc-11.4.0-lib
git-2.46.0
glib-2.78.0
grep-3.11
gtk+-2.24.33
gtk+-3.24.41
gtk+-3.24.41-bin
gzip-1.13
harfbuzz-8.3.0
libffi-3.4.4
libnotify-0.8.3
librsvg-2.56.4
libxkbcommon-1.6.0
mesa-24.0.4
python-3.10.7
python-3.10.7-tk
python-pyparsing-3.0.6
qtwayland-5.15.10
tar-1.34
wayland-1.22.0
xz-5.4.5
zlib-1.3

Running guix challenge over these packages also doesn't detect any kind
of reproducibility issues. Is there any reason for the package
duplication?

Thanks in advance,
Luis Guilherme Coelho
Attachment: file
L
L
lgcoelho wrote on 23 Oct 14:57 +0200
More info regarding the issue
(address . 73962@debbugs.gnu.org)
1146f3d87caa6c63921b9ce58b308c6b@disroot.org
Still on the same matter, while some packages indeed have the same
closure e.g.

_--8<---------------cut here---------------start------------->8---_

+radio at buer in ~ > guix size
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8
store item total
self
/gnu/store/zvlp3n8iwa1svxmwv4q22pv1pb1c9pjq-glibc-2.39 40.5
38.8 50.5%
/gnu/store/zzpbp6rr43smwxzvzd4qd317z5j7qblj-gcc-11.4.0-lib 75.6
35.0 45.5%
/gnu/store/87z5k84hxbqs87plgwsl2v6a4j7m3k7h-bash-static-5.1.16 1.7
1.7 2.2%
/gnu/store/3jhfhxdf6v5ms10x5zmnl166dh3yhbr1-bash-minimal-5.1.16 41.5
1.0 1.3%
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8 77.0
0.4 0.5%
total: 77.0 MiB
+radio at buer in ~ > guix size
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8
store item total
self
/gnu/store/zvlp3n8iwa1svxmwv4q22pv1pb1c9pjq-glibc-2.39 40.5
38.8 50.5%
/gnu/store/zzpbp6rr43smwxzvzd4qd317z5j7qblj-gcc-11.4.0-lib 75.6
35.0 45.5%
/gnu/store/87z5k84hxbqs87plgwsl2v6a4j7m3k7h-bash-static-5.1.16 1.7
1.7 2.2%
/gnu/store/3jhfhxdf6v5ms10x5zmnl166dh3yhbr1-bash-minimal-5.1.16 41.5
1.0 1.3%
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8 76.9
0.4 0.5%
total: 76.9 MiB
+radio at buer in ~ > diff -r
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8
Only in
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8/share/man/man1:
bzcmp.1.gz
Only in
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8/share/man/man1:
bzcmp.1.zst
Only in
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8/share/man/man1:
bzdiff.1.gz
Only in
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8/share/man/man1:
bzdiff.1.zst
Only in
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8/share/man/man1:
bzegrep.1.gz
Only in
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8/share/man/man1:
bzegrep.1.zst
Only in
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8/share/man/man1:
bzfgrep.1.gz
Only in
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8/share/man/man1:
bzfgrep.1.zst
Only in
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8/share/man/man1:
bzgrep.1.gz
Only in
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8/share/man/man1:
bzgrep.1.zst
Only in
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8/share/man/man1:
bzip2.1.gz
Only in
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8/share/man/man1:
bzip2.1.zst
Only in
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8/share/man/man1:
bzless.1.gz
Only in
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8/share/man/man1:
bzless.1.zst
Only in
/gnu/store/56aq6sdx35f7rsxq8jq9ypafk0dhd3p3-bzip2-1.0.8/share/man/man1:
bzmore.1.gz
Only in
/gnu/store/59kd6jyvrq8prl9mbnh3g8d22rc1dbwv-bzip2-1.0.8/share/man/man1:
bzmore.1.zst

_--8<---------------cut here---------------end--------------->8---_

many others that have different closures e.g.

_--8<---------------cut here---------------start------------->8---_

+radio at buer in ~ > guix size
/gnu/store/3jhfhxdf6v5ms10x5zmnl166dh3yhbr1-bash-minimal-5.1.16
store item total
self
/gnu/store/zvlp3n8iwa1svxmwv4q22pv1pb1c9pjq-glibc-2.39 40.5
38.8 93.5%
/gnu/store/87z5k84hxbqs87plgwsl2v6a4j7m3k7h-bash-static-5.1.16 1.7
1.7 4.1%
/gnu/store/3jhfhxdf6v5ms10x5zmnl166dh3yhbr1-bash-minimal-5.1.16 41.5
1.0 2.4%
total: 41.5 MiB
+radio at buer in ~ > guix size
/gnu/store/x47i4yafqxdav838aykda9c2hhhn9sa4-bash-minimal-5.1.16
store item total
self
/gnu/store/zvlp3n8iwa1svxmwv4q22pv1pb1c9pjq-glibc-2.39 40.5
38.8 50.7%
/gnu/store/zzpbp6rr43smwxzvzd4qd317z5j7qblj-gcc-11.4.0-lib 75.6
35.0 45.8%
/gnu/store/87z5k84hxbqs87plgwsl2v6a4j7m3k7h-bash-static-5.1.16 1.7
1.7 2.2%
/gnu/store/x47i4yafqxdav838aykda9c2hhhn9sa4-bash-minimal-5.1.16 76.5
1.0 1.3%
total: 76.5 MiB

_--8<---------------cut here---------------end--------------->8---_

which is more reasonable to justify the difference in the package
derivation output contents. But still, where does that dependency on
gcc-lib comes from? And if one of them is a "more complete" version of
the other, Why are both packages installed into the profile?

Thanks in advance,
Luis Guilherme Coelho
Attachment: file
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 73962@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 73962
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch