[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#43578] [PATCH 0/4] Rewriting implicit inputs with 'package-input-re
[bug#43578] [PATCH 0/4] Rewriting implicit inputs with 'package-input-rewriting' & co.
Wed, 23 Sep 2020 22:51:21 +0200
Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
zimoun <firstname.lastname@example.org> skribis:
> On Wed, 23 Sep 2020 at 18:23, Ludovic Courtès <email@example.com> 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.
> 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
>> 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!