(address . bug-guix@gnu.org)
When there are duplicate references to package variables in a manifest,
the same package will appear to be installed into the same profile
multiple times.
Here’s a manitest:
~~~~~~~~~~~~~~~~~~~~~~
(use-package-modules admin)
;; so stressed!
(packages->manifest
(list stress stress stress))
~~~~~~~~~~~~~~~~~~~~~~
And here I’m instantiating it:
~~~~~~~~~~~~~~~~~~~~~~
guix package -p /tmp/test --manifest=manitest
installing new manifest from 'manitest' with 3 entries
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 100.0%
substitute: updating list of substitutes from 'https://hydra.gnu.org'... 100.0%
The following derivations will be built:
/gnu/store/1w51615has971qjwb9xxxvms8q99zr1n-profile.drv
/gnu/store/jv7a1bm41gjgakb70nym65gp370dd4xs-ca-certificate-bundle.drv
/gnu/store/1rgv811cqd4qk45y28lbzf8199m4zasv-info-dir.drv
The following file will be downloaded:
/gnu/store/m31bvg97q7zmd9bvbss81ilyka5gq2hf-stress-1.0.1
Found valid signature for /gnu/store/m31bvg97q7zmd9bvbss81ilyka5gq2hf-stress-1.0.1
Downloading m31bvg…-stress-1.0.1 (29KiB installed)...
stress-1.0.1 7.2MiB/s 00:00 | 14KiB transferred
3 packages in profile
The following environment variable definitions may be needed:
export PATH="/tmp/test/bin"
rwurmus in guix: guix package -p /tmp/test -I
stress 1.0.1 out /gnu/store/m31bvg97q7zmd9bvbss81ilyka5gq2hf-stress-1.0.1
stress 1.0.1 out /gnu/store/m31bvg97q7zmd9bvbss81ilyka5gq2hf-stress-1.0.1
stress 1.0.1 out /gnu/store/m31bvg97q7zmd9bvbss81ilyka5gq2hf-stress-1.0.1
rwurmus in guix:
~~~~~~~~~~~~~~~~~~~~~~
No conflicts are reported, so no harm is done, but seemingly having the
very same package more than once in a profile might be confusing.
Should Guix issue a warning when the same variable is referenced more
than once (I don’t like this because there really is no problem), or
should Guix delete duplicates from the list before creating a profile
generation?