[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Package inputs in manifests
From: |
Bengt Richter |
Subject: |
Re: Package inputs in manifests |
Date: |
Sun, 17 Nov 2019 15:11:55 -0800 |
User-agent: |
Mutt/1.12.1 (2019-06-15) |
Hi Ludo, Guix,
On +2019-11-17 11:35:07 +0100, Ludovic Courtès wrote:
> Hi Simon!
>
> zimoun <address@hidden> skribis:
>
> >> Ah, that no. But (guix scripts environment) has
> >> ‘package-environment-inputs’, which does exactly that, and I guess we
> >> could expose it and document it.
> >
> > Maybe I am doing wrong but I get:
> >
> > $ ./pre-inst-env guix package -p /tmp/guix-dev -m ~/tmp/manif-dep.scm
> >
> > installing new manifest from '/home/simon/tmp/manif-dep.scm' with 53 entries
> > guix package: error: profile contains conflicting entries for gzip
> > guix package: error: first entry: gzip@1.10
> > /gnu/store/py3k9zla9fj3z7430v4crqj5pyrsd3qj-gzip-1.10
> > guix package: error: second entry: gzip@1.10
> > /gnu/store/i2cdl0hvrml8hjdqplqln8didnvxkgp5-gzip-1.10
> > hint: You cannot have two different versions or variants of `gzip' in
> > the same profile.
> >
> >
> > where I tweak guix/scripts/environment.scm to export
> > `package-environment-inputs' and ~/tmp/manif-dep.scm contains:
> >
> > (use-modules (guix)
> > (guix profiles)
> > (guix scripts environment)
> > (gnu packages package-management))
> >
> > (make-manifest (package-environment-inputs guix))
>
> You’re doing it right! It turns out that two different variants of
> “gzip” appear: one in ‘%final-inputs’ (the implicit inputs of
> ‘gnu-build-system’) and another one somewhere else, hence the collision.
>
> The solution is to pass ‘--allow-collisions’, which is what ‘guix
> environment’ does by default precisely for that reason (see commit
> afd06f605bf88a796acefc7ed598b43879346a6b).
>
> We could check exactly why we end up with several ‘gzip’ instances, but
> overall I think this kind of thing is hard to avoid for package inputs.
>
> Thanks,
> Ludo’.
>
Can "collisions" be collisions even if the targets are bit-identical?
E.g.
find /gnu -name '*gzip'|xargs sha1sum|gxsnip
--8<---------------cut here---------------start------------->8---
3a69ba705f2a8674fe6f0dfbdbf47de95bf72438
/gnu/store/h0c398zan9ibhk4w0c944vp5pwgzkfpd-gzip-1.9/bin/gzip
3a69ba705f2a8674fe6f0dfbdbf47de95bf72438
/gnu/store/q09sy224qnxrp982z4xfaxi19721mjx8-gzip-1.9/bin/gzip
c944319913ed9006b819abceda783ceee0985972
/gnu/store/c6z3v1s9ky7h3wsc6da470s35iiciidd-profile/bin/gzip
c944319913ed9006b819abceda783ceee0985972
/gnu/store/i2cdl0hvrml8hjdqplqln8didnvxkgp5-gzip-1.10/bin/gzip
c944319913ed9006b819abceda783ceee0985972
/gnu/store/py3k9zla9fj3z7430v4crqj5pyrsd3qj-gzip-1.10/bin/gzip
--8<---------------cut here---------------end--------------->8---
It seems like it would be possible to automate an item-specific
--allow-collisions
where the "collision" is really an aliasing?
(IOW, why use different names for the same thing, except for local convenience
abbreviations?)
I see the de-duping gc does when it converts to hard links, and wonder there
too.
What am I missing?
RFE:
(request for enlightenment :)
Exactly how are the /gnu/store prefixes computed? What _exactly_ is/are the
input(s) that get hashed??
TIA
--
Regards,
Bengt Richter
- On DSLs, (continued)
- On DSLs, Ludovic Courtès, 2019/11/26
- Re: Profiles/manifests-related command line interface enhancements, Hartmut Goebel, 2019/11/11
- Re: Profiles/manifests-related command line interface enhancements, Ludovic Courtès, 2019/11/16
- Re: Profiles/manifests-related command line interface enhancements, Konrad Hinsen, 2019/11/17
- Re: Profiles/manifests-related command line interface enhancements, zimoun, 2019/11/18
- Re: Profiles/manifests-related command line interface enhancements, zimoun, 2019/11/18
- Re: Profiles/manifests-related command line interface enhancements, Ludovic Courtès, 2019/11/26
Re: Profiles/manifests-related command line interface enhancements, Ludovic Courtès, 2019/11/06
- Re: Profiles/manifests-related command line interface enhancements, zimoun, 2019/11/07
- Package inputs in manifests, Ludovic Courtès, 2019/11/17
- Re: Package inputs in manifests,
Bengt Richter <=
- Re: Package inputs in manifests, zimoun, 2019/11/18
- Re: Package inputs in manifests, Ludovic Courtès, 2019/11/23
- Re: Package inputs in manifests, Bengt Richter, 2019/11/24
- Re: Package inputs in manifests, Timothy Sample, 2019/11/24
- Re: Package inputs in manifests, Bengt Richter, 2019/11/24
Re: Package inputs in manifests, zimoun, 2019/11/18