[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#43578] [PATCH 0/4] Rewriting implicit inputs with 'package-input-re
From: |
Efraim Flashner |
Subject: |
[bug#43578] [PATCH 0/4] Rewriting implicit inputs with 'package-input-rewriting' & co. |
Date: |
Thu, 24 Sep 2020 09:28:55 +0300 |
On Wed, Sep 23, 2020 at 10:51:21PM +0200, Ludovic Courtès wrote:
> Hi!
>
> zimoun <zimon.toutoune@gmail.com> skribis:
>
> > On Wed, 23 Sep 2020 at 18:23, Ludovic Courtès <ludo@gnu.org> wrote:
> >
> >> Concretely, the following commands had no effect thus far:
> >>
> >> guix build python-itsdangerous --with-input=python=python2
> >> guix build hello --with-input=gcc=gcc-toolchain@10
> >>
> >> In both cases, this is because the input we want to change is
> >> an implicit input. This patch set fixes that, and it fixes
> >> <https://issues.guix.gnu.org/42156> as a side effect.
> >
> > Awesome!
> >
> > Therefore, 'package-with-explicit-python' & co. are becoming obsolete
> > (or almost), right?
>
> Good question, we’d have to check on a case-by-case basis.
> ‘package-input-rewriting’ is coarser-grain: it can potentially rewrite
> ‘python’ dependencies deeper in the graph than
> ‘package-with-explicit-python’.
>
IIRC part of the reason for python-minimal was to build tcl/tk and xorg.
We don't really want to rebuild deep enough to rebuild xorg with
python2. I'm struggling to find a use-case but going as deep as sqlite
shouldn't be a problem.
> >> This opens new possibilities. ‘--with-input=python=python2’ is one
> >> of them, but ‘--with-input=gcc=gcc-toolchain@10’ is not (it fails
> >> to build for obscure reasons that I’ll fix in ‘core-updates’, and
> >> it rebuilds the world anyway, which is not practical). Another
> >
> > Rebuilding the world, maybe. :-) It is interesting in the HPC context
> > where one would like use an "optimized" compiler, isn't?
>
> Like I wrote, ‘--with-input=gcc=gcc-toolchain@10’ (or similar) isn’t
> practical: you’d have to rebuild the world.
>
> What I envision for the use case where you want to build a specific
> package set with a different toolchain is to have a
> ‘--with-toolchain=PACKAGE=TOOLCHAIN’ option. That would rebuild PACKAGE
> with TOOLCHAIN. Then it would either rebuild all its dependents (as per
> ‘--with-input’) or graft the rebuilt package (as per ‘--with-graft’).
> The latter may not always be a viable option though, so I don’t know.
>
> In fact I think it would be nice if the graft vs. rebuild choice could
> be made independently for all the transformation options.
>
> > Thank you. I will give it a try for my use cases. :-)
>
> Awesome, let me know how it goes!
>
> Thank you,
> Ludo’.
>
>
>
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
signature.asc
Description: PGP signature