* guix build--rounds=N does not behave as expected
@ 2018-12-31 10:39 swedebugia
2018-12-31 12:27 ` Ricardo Wurmus
0 siblings, 1 reply; 4+ messages in thread
From: swedebugia @ 2018-12-31 10:39 UTC (permalink / raw)
To: guix-devel
Hi
Today I took a look at
https://www.gnu.org/software/guix/packages/reproducibility.html
I then proceeded to try building some of the packages with issues.
I failed at first.
Why?
Because my goal was to build ONLY the offending package, not all of its
build dependencies (specifying --no-substitutes results in the latter).
How?
$ guix build tor --rounds=2
substitute: updating substitutes from 'https://ci.guix.info'... 100.0%
substitute: updating substitutes from 'https://ci.guix.info'... 100.0%
3.5 MB will be downloaded:
/gnu/store/7k793vhnv6mk6fhrg493gfby4lyy1107-tor-0.3.4.9
The following graft will be made:
/gnu/store/z3y6kb1j0g5mkkbrzanf8jqs0bimiyfq-tor-0.3.4.9.drv
substituting /gnu/store/7k793vhnv6mk6fhrg493gfby4lyy1107-tor-0.3.4.9...
downloading from
https://ci.guix.info/nar/gzip/7k793vhnv6mk6fhrg493gfby4lyy1107-tor-0.3.4.9...
tor-0.3.4.9 3.4MiB 1.3MiB/s 00:03 [##################]
100.0%
applying 1 graft for
/gnu/store/z3y6kb1j0g5mkkbrzanf8jqs0bimiyfq-tor-0.3.4.9.drv...
grafting '/gnu/store/7k793vhnv6mk6fhrg493gfby4lyy1107-tor-0.3.4.9' ->
'/gnu/store/2ri08yiksan4gk7nqjxj9vawq8gmp6ip-tor-0.3.4.9'...
applying 1 graft for
/gnu/store/z3y6kb1j0g5mkkbrzanf8jqs0bimiyfq-tor-0.3.4.9.drv...
grafting '/gnu/store/7k793vhnv6mk6fhrg493gfby4lyy1107-tor-0.3.4.9' ->
'/gnu/store/2ri08yiksan4gk7nqjxj9vawq8gmp6ip-tor-0.3.4.9'...
successfully built
/gnu/store/z3y6kb1j0g5mkkbrzanf8jqs0bimiyfq-tor-0.3.4.9.drv
/gnu/store/2ri08yiksan4gk7nqjxj9vawq8gmp6ip-tor-0.3.4.9
egil@parabola:~$ guix build tor --rounds=2 --no-grafts
/gnu/store/7k793vhnv6mk6fhrg493gfby4lyy1107-tor-0.3.4.9
I tried also to specify --no-substitutes AFTER having run guix
environment tor to make sure I had the substitutes of the build
dependencies, but I failed anyway.
Did I misunderstand something?
Now it worked! I specified --check and --no-grafts and it began to do as
I said.
I really think we should signal a helpful error to the user if only
--rounds=N is specified and --check is missing.
--
Cheers Swedebugia
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: guix build--rounds=N does not behave as expected
2018-12-31 10:39 guix build--rounds=N does not behave as expected swedebugia
@ 2018-12-31 12:27 ` Ricardo Wurmus
2018-12-31 16:52 ` Arun Isaac
2018-12-31 17:23 ` swedebugia
0 siblings, 2 replies; 4+ messages in thread
From: Ricardo Wurmus @ 2018-12-31 12:27 UTC (permalink / raw)
To: swedebugia; +Cc: guix-devel
Hi swedebugia,
“guix build --rounds=N” builds the package N times if it hasn’t already
been built. With grafts enabled this would be the graft derivation,
which isn’t very useful.
If the package has previously been built, however, it won’t rebuild the
package. That’s why we have “--check”.
> I really think we should signal a helpful error to the user if only
> --rounds=N is specified and --check is missing.
Using “--rounds” without “--check” is correct. There should not be an
error or a warning in that case.
--
Ricardo
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: guix build--rounds=N does not behave as expected
2018-12-31 12:27 ` Ricardo Wurmus
@ 2018-12-31 16:52 ` Arun Isaac
2018-12-31 17:23 ` swedebugia
1 sibling, 0 replies; 4+ messages in thread
From: Arun Isaac @ 2018-12-31 16:52 UTC (permalink / raw)
To: Ricardo Wurmus, swedebugia; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 509 bytes --]
> “guix build --rounds=N” builds the package N times if it hasn’t already
> been built. With grafts enabled this would be the graft derivation,
> which isn’t very useful.
>
> If the package has previously been built, however, it won’t rebuild the
> package. That’s why we have “--check”.
I think the above information, especially the part about the --check
flag, should go into the manual under "Submitting Patches". Currently,
there is no mention of the --check flag.
WDYT?
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: guix build--rounds=N does not behave as expected
2018-12-31 12:27 ` Ricardo Wurmus
2018-12-31 16:52 ` Arun Isaac
@ 2018-12-31 17:23 ` swedebugia
1 sibling, 0 replies; 4+ messages in thread
From: swedebugia @ 2018-12-31 17:23 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: guix-devel
On 2018-12-31 13:27, Ricardo Wurmus wrote:
>
> Hi swedebugia,
>
> “guix build --rounds=N” builds the package N times if it hasn’t already
> been built. With grafts enabled this would be the graft derivation,
> which isn’t very useful.
>
> If the package has previously been built, however, it won’t rebuild the
> package. That’s why we have “--check”.
>
>> I really think we should signal a helpful error to the user if only
>> --rounds=N is specified and --check is missing.
>
> Using “--rounds” without “--check” is correct. There should not be an
> error or a warning in that case.
Rounds does not seem to work.
E.g. I ran this:
$ guix build automake --check --rounds=2
and the result was this:
phase `compress-documentation' succeeded after 0.1 seconds
/gnu/store/k7gymsw2xfp20fv30x5niilwnxpj2d2k-automake-1.16.1
I think this is a bug.
Rounds should ignore the item in store and swallow check so that it does
what the user expects.
Right now it seems that check swallows rounds and rounds alone fail
because the item is already in the store.
Alternatively I would like that guix ask me if I want to build the
rounds EVEN THOUGH it is in the store. But that would be less nice.
--
Cheers Swedebugia
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-12-31 17:17 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-31 10:39 guix build--rounds=N does not behave as expected swedebugia
2018-12-31 12:27 ` Ricardo Wurmus
2018-12-31 16:52 ` Arun Isaac
2018-12-31 17:23 ` swedebugia
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).