* bug#61841: ‘guix shell’ computes different package derivation than ‘guix build’
@ 2023-02-27 13:36 Ludovic Courtès
2023-03-01 9:05 ` Josselin Poiret via Bug reports for GNU Guix
0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2023-02-27 13:36 UTC (permalink / raw)
To: 61841
Look at this weird phenomenon.
First, with ‘guix build’, everything works as expected:
--8<---------------cut here---------------start------------->8---
$ guix describe
Generation 247 Feb 27 2023 08:47:41 (current)
guix 17bd024
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: 17bd0243310754045cdc6cc362c804db4a8f9317
$ guix build ungoo
ungoogled-chromium ungoogled-chromium-wayland
$ guix build ungoogled-chromium -n
The following grafts would be made:
/gnu/store/sb9bva92ycw40jiwvklvdwpr5pqs5y14-ungoogled-chromium-109.0.5414.119-1.drv
/gnu/store/88bvz2ch3wsiz66qcmhhpbz2i60ms14j-harfbuzz-5.3.1.drv
/gnu/store/pvrhcbpajl9cf2jjy8p01p5fh6kjf3fi-pipewire-0.3.63.drv
/gnu/store/mjm6k8l2d0j1j3j3p7rqrrrj2pla4cwa-jack2-1.9.21.drv
$ guix build ungoogled-chromium -n --no-grafts
/gnu/store/p984s3dna89qw3j1s9w1jpz3wjw1jmfg-ungoogled-chromium-109.0.5414.119-1
$ guix build ungoogled-chromium -n --no-grafts -d
/gnu/store/i8f4qri399l1r2k7hrwpdxxgc3q77izw-ungoogled-chromium-109.0.5414.119-1.drv
--8<---------------cut here---------------end--------------->8---
But now ‘guix shell’ (same revision) wants to build ungoogled-chromium:
--8<---------------cut here---------------start------------->8---
$ guix shell ungoogled-chromium -n
The following derivations would be built:
/gnu/store/6kgc8cd8wn010ba3jnywj2qsjsjk511s-ungoogled-chromium-109.0.5414.119-1.drv
/gnu/store/xfiqj5qnnld9g8hdh879aa7gp7wprhaf-chromium-109.0.5414.119.tar.xz.drv
/gnu/store/4ic70ax830gng6fbaqk3mf3rf2x6vf1j-jsoncpp.patch.drv
/gnu/store/9sbl6km93sgb7wc2b14sc1fgf7alsb79-openjpeg.patch.drv
/gnu/store/jcx82l35b070dz91aiz6gffgkngcf1gl-zlib.patch.drv
1,930.3 MB would be downloaded
$ guix shell ungoogled-chromium -n --no-grafts
The following derivations would be built:
/gnu/store/mpfvrssy125chnxsy4qg61kk1a2s235d-profile.drv
/gnu/store/kyncllwl57l2pk63rc154zdfmbx8759v-ungoogled-chromium-109.0.5414.119-1.drv
/gnu/store/xfiqj5qnnld9g8hdh879aa7gp7wprhaf-chromium-109.0.5414.119.tar.xz.drv
/gnu/store/4ic70ax830gng6fbaqk3mf3rf2x6vf1j-jsoncpp.patch.drv
/gnu/store/9sbl6km93sgb7wc2b14sc1fgf7alsb79-openjpeg.patch.drv
/gnu/store/jcx82l35b070dz91aiz6gffgkngcf1gl-zlib.patch.drv
1,930.3 MB would be downloaded
--8<---------------cut here---------------end--------------->8---
Why does ‘guix shell’ want to build a different derivation for the same
package?
The derivation ‘guix shell’ computed depends on different *.patch.drv,
compared to the “right” one:
--8<---------------cut here---------------start------------->8---
$ guix gc -R $(guix build ungoogled-chromium -d --no-grafts) |grep -E '(jsoncpp|openjpeg|zlib)\.patch\.drv'
/gnu/store/ysmmqzva7j49x7sswr5kdgdj59dsh8ip-zlib.patch.drv
/gnu/store/iamxhd6d0jqvmjfh458qwhm62bq2adb7-jsoncpp.patch.drv
/gnu/store/03hqmvhl97b8pxrcqahc9xk1bil2pbs3-openjpeg.patch.drv
--8<---------------cut here---------------end--------------->8---
To be continued…
Ludo’.
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#61841: ‘guix shell’ computes different package derivation than ‘guix build’
2023-02-27 16:41 ` Maxim Cournoyer
@ 2023-02-27 21:08 ` Ludovic Courtès
2023-02-28 2:25 ` Maxim Cournoyer
0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2023-02-27 21:08 UTC (permalink / raw)
To: Maxim Cournoyer
Cc: Josselin Poiret, Christopher Baines, Simon Tournier,
Mathieu Othacehe, Tobias Geerinckx-Rice, Ricardo Wurmus, 61255,
61841
Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:
> Ludovic Courtès <ludo@gnu.org> writes:
[...]
>> Commit 68775338a510f84e63657ab09242d79e726fa457 turned out to have
>> unintended side effects:
>>
>> https://issues.guix.gnu.org/61841
>
> Ugh.
>
>> I fixed it with:
>>
>> a516a0ba93 gexp: computed-file: Do not honor %guile-for-build.
>> fee1d08f0d pack: Make sure tests can run without a world rebuild.
>>
>> Please take a look.
>
> Thank you. I still think it'd be nicer if computed-file had a means to
> honor %guile-for-build rather than having to accommodate it specially as
> you did in fee1d08f0d, so that it'd be symmetrical to gexp->derivation
> in that regard. Why can't they?
Like I wrote, ‘default-guile’ returns a package whereas
‘%guile-for-build’ returns a derivation.
The latter is inherently lower-level: it’s used together with the
monadic interface or with plain ‘derivation’, when we know which system
we’re targeting. The former is higher-level, system-independent; it
must be used for <computed-file> and similar forms, which are
system-independent.
Ludo’.
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#61841: ‘guix shell’ computes different package derivation than ‘guix build’
2023-02-27 21:08 ` bug#61841: ‘guix shell’ computes different package derivation than ‘guix build’ Ludovic Courtès
@ 2023-02-28 2:25 ` Maxim Cournoyer
0 siblings, 0 replies; 6+ messages in thread
From: Maxim Cournoyer @ 2023-02-28 2:25 UTC (permalink / raw)
To: Ludovic Courtès
Cc: Josselin Poiret, Christopher Baines, Simon Tournier,
Mathieu Othacehe, Tobias Geerinckx-Rice, Ricardo Wurmus, 61255,
61841
Hi Ludo,
Ludovic Courtès <ludo@gnu.org> writes:
> Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:
>
>> Ludovic Courtès <ludo@gnu.org> writes:
>
> [...]
>
>>> Commit 68775338a510f84e63657ab09242d79e726fa457 turned out to have
>>> unintended side effects:
>>>
>>> https://issues.guix.gnu.org/61841
>>
>> Ugh.
>>
>>> I fixed it with:
>>>
>>> a516a0ba93 gexp: computed-file: Do not honor %guile-for-build.
>>> fee1d08f0d pack: Make sure tests can run without a world rebuild.
>>>
>>> Please take a look.
>>
>> Thank you. I still think it'd be nicer if computed-file had a means to
>> honor %guile-for-build rather than having to accommodate it specially as
>> you did in fee1d08f0d, so that it'd be symmetrical to gexp->derivation
>> in that regard. Why can't they?
>
> Like I wrote, ‘default-guile’ returns a package whereas
> ‘%guile-for-build’ returns a derivation.
>
> The latter is inherently lower-level: it’s used together with the
> monadic interface or with plain ‘derivation’, when we know which system
> we’re targeting. The former is higher-level, system-independent; it
> must be used for <computed-file> and similar forms, which are
> system-independent.
I see, it's starting to make sense. I'll sleep on it :-).
--
Thanks,
Maxim
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#61841: ‘guix shell’ computes different package derivation than ‘guix build’
2023-02-27 13:36 bug#61841: ‘guix shell’ computes different package derivation than ‘guix build’ Ludovic Courtès
@ 2023-03-01 9:05 ` Josselin Poiret via Bug reports for GNU Guix
2023-03-01 21:34 ` Ludovic Courtès
0 siblings, 1 reply; 6+ messages in thread
From: Josselin Poiret via Bug reports for GNU Guix @ 2023-03-01 9:05 UTC (permalink / raw)
To: Ludovic Courtès, 61841
[-- Attachment #1: Type: text/plain, Size: 637 bytes --]
Hi Ludo,
Ludovic Courtès <ludo@gnu.org> writes:
> Look at this weird phenomenon.
>
> First, with ‘guix build’, everything works as expected:
> [...]
> But now ‘guix shell’ (same revision) wants to build ungoogled-chromium:
> [...]
> Why does ‘guix shell’ want to build a different derivation for the same
> package?
Funnily enough, I don't have that problem locally: the `guix shell`
invocation only tells me it's gonna build a profile derivation (I don't
have ungoogled-chromium in my store btw), and the input derivation for
that profile is the same as for `guix build`.
Best,
--
Josselin Poiret
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 682 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#61841: ‘guix shell’ computes different package derivation than ‘guix build’
2023-03-01 9:05 ` Josselin Poiret via Bug reports for GNU Guix
@ 2023-03-01 21:34 ` Ludovic Courtès
2023-03-02 9:23 ` Josselin Poiret via Bug reports for GNU Guix
0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2023-03-01 21:34 UTC (permalink / raw)
To: Josselin Poiret; +Cc: 61841
Howdy,
Josselin Poiret <dev@jpoiret.xyz> skribis:
> Ludovic Courtès <ludo@gnu.org> writes:
>
>> Look at this weird phenomenon.
>>
>> First, with ‘guix build’, everything works as expected:
>> [...]
>> But now ‘guix shell’ (same revision) wants to build ungoogled-chromium:
>> [...]
>> Why does ‘guix shell’ want to build a different derivation for the same
>> package?
>
> Funnily enough, I don't have that problem locally: the `guix shell`
> invocation only tells me it's gonna build a profile derivation (I don't
> have ungoogled-chromium in my store btw), and the input derivation for
> that profile is the same as for `guix build`.
It was fixed on Monday though, so perhaps you’re using a known-good
revision?
Anyway there are still people complaining about “lack of
ungoogled-chromium substitutes” (most likely: wrong ungoogled-chromium
derivation) right now on IRC.
Ludo’.
^ permalink raw reply [flat|nested] 6+ messages in thread
* bug#61841: ‘guix shell’ computes different package derivation than ‘guix build’
2023-03-01 21:34 ` Ludovic Courtès
@ 2023-03-02 9:23 ` Josselin Poiret via Bug reports for GNU Guix
0 siblings, 0 replies; 6+ messages in thread
From: Josselin Poiret via Bug reports for GNU Guix @ 2023-03-02 9:23 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 61841
[-- Attachment #1: Type: text/plain, Size: 351 bytes --]
Hi Ludo,
Ludovic Courtès <ludo@gnu.org> writes:
> It was fixed on Monday though, so perhaps you’re using a known-good
> revision?
That's probably the piece of info I was missing! The discussion about
the issue didn't show up in the same thread in my MUA so I thought this
was simply unanswered, my bad.
Best,
--
Josselin Poiret
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 682 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-03-02 9:24 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-27 13:36 bug#61841: ‘guix shell’ computes different package derivation than ‘guix build’ Ludovic Courtès
2023-03-01 9:05 ` Josselin Poiret via Bug reports for GNU Guix
2023-03-01 21:34 ` Ludovic Courtès
2023-03-02 9:23 ` Josselin Poiret via Bug reports for GNU Guix
-- strict thread matches above, loose matches on Subject: below --
2023-02-03 22:14 [bug#61255] [PATCH 1/5] pack: Extract keyword-ref procedure from debian-archive Maxim Cournoyer
2023-02-03 22:14 ` [bug#61255] [PATCH 2/5] gexp: computed-file: Honor %guile-for-build Maxim Cournoyer
2023-02-04 1:11 ` Ludovic Courtès
2023-02-04 3:43 ` Maxim Cournoyer
2023-02-12 18:14 ` [bug#61255] [PATCH 0/5] Add support for the RPM format to "guix pack" Ludovic Courtès
2023-02-16 15:12 ` Maxim Cournoyer
2023-02-23 15:44 ` [bug#61255] (%guile-for-build) default in ‘computed-file’ Ludovic Courtès
2023-02-27 15:10 ` bug#61841: bug#61255: [PATCH 0/5] Add support for the RPM format to "guix pack" Ludovic Courtès
2023-02-27 16:41 ` Maxim Cournoyer
2023-02-27 21:08 ` bug#61841: ‘guix shell’ computes different package derivation than ‘guix build’ Ludovic Courtès
2023-02-28 2:25 ` Maxim Cournoyer
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.