unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#33276: guix still building when substitute is available (or is guix pull not reproducible)
@ 2018-11-05 16:26 Pjotr Prins
  2018-11-06 14:21 ` Ludovic Courtès
  0 siblings, 1 reply; 3+ messages in thread
From: Pjotr Prins @ 2018-11-05 16:26 UTC (permalink / raw)
  To: 33276

I have a guix-publish server and I am building the packages with the
exact same checkout of 'guix pull'. Even though the client sees the
substitutes with --dry-run it still builds them.

On build host (check version first)

	penguin2:~$ ~/.config/guix/current/bin/guix --version
	guix (GNU Guix) ff349415b27cc764fd7168ef35ca76c3b8b05889

	Copyright (C) 2018 the Guix authors

	penguin2:~$ ~/.config/guix/current/bin/guix package -i perl mosh --substitute-urls="https://berlin.guixsd.org" --fallback

	building /gnu/store/ih5liw094mkjg1n4qakipfdgmrhvpj68-protobuf-3.5.1.drv...
	building /gnu/store/bhrgmk0xax0yl50whb8faankknw4z254-mosh-1.3.2.drv...
	The following packages will be installed:
		 perl 5.26.1  /gnu/store/7ifc22sh86zblnzamqimgmv06idyx69v-perl-5.26.1
		 mosh 1.3.2   /gnu/store/5qanifm23gqxhg2bh587dzah0mf79fp0-mosh-1.3.2

On client (check version first)

	monza:~$ ~/.config/guix/current/bin/guix --version
	guix (GNU Guix) ff349415b27cc764fd7168ef35ca76c3b8b05889

	Copyright (C) 2018 the Guix authors

	monza:~$ ~/.config/guix/current/bin/guix package -i perl mosh --substitute-urls="http://guix.genenetwork.org https://berlin.guixsd.org" --dry-run
	The following packages would be installed:
		 perl 5.26.1  /gnu/store/6zz27h4l21b8f2mifrk9sidvib9cns2i-perl-5.26.1
		 mosh 1.3.2   /gnu/store/dkpkd7ajh3kvpzfdfacqg50x49i78x5y-mosh-1.3.2

Strangely the hash values differ but it still wants to fetch them. But when I do an actual install it rebuilds:

	monza:~$ ~/.config/guix/current/bin/guix package -i perl mosh --substitute-urls="http://guix.genenetwork.org https://berlin.guixsd.org"
	building /gnu/store/ih5liw094mkjg1n4qakipfdgmrhvpj68-protobuf-3.5.1.drv...

What is causing the difference? Should the guix pull not be identical
when it is the same checkout? Or am I missing something.

Obviously this does not work for my deployment purposes. Or at least
it is limited in use if I can't use a 'guix publish' server. Showing
the faulty substitutes is also interesting behaviour...

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#33276: guix still building when substitute is available (or is guix pull not reproducible)
  2018-11-05 16:26 bug#33276: guix still building when substitute is available (or is guix pull not reproducible) Pjotr Prins
@ 2018-11-06 14:21 ` Ludovic Courtès
  2018-11-08 18:30   ` Pjotr Prins
  0 siblings, 1 reply; 3+ messages in thread
From: Ludovic Courtès @ 2018-11-06 14:21 UTC (permalink / raw)
  To: Pjotr Prins; +Cc: 33276

Hello,

Pjotr Prins <pjotr.public12@thebird.nl> skribis:

> I have a guix-publish server and I am building the packages with the
> exact same checkout of 'guix pull'. Even though the client sees the
> substitutes with --dry-run it still builds them.
>
> On build host (check version first)
>
> 	penguin2:~$ ~/.config/guix/current/bin/guix --version
> 	guix (GNU Guix) ff349415b27cc764fd7168ef35ca76c3b8b05889
>
> 	Copyright (C) 2018 the Guix authors
>
> 	penguin2:~$ ~/.config/guix/current/bin/guix package -i perl mosh --substitute-urls="https://berlin.guixsd.org" --fallback
>
> 	building /gnu/store/ih5liw094mkjg1n4qakipfdgmrhvpj68-protobuf-3.5.1.drv...
> 	building /gnu/store/bhrgmk0xax0yl50whb8faankknw4z254-mosh-1.3.2.drv...
> 	The following packages will be installed:
> 		 perl 5.26.1  /gnu/store/7ifc22sh86zblnzamqimgmv06idyx69v-perl-5.26.1
> 		 mosh 1.3.2   /gnu/store/5qanifm23gqxhg2bh587dzah0mf79fp0-mosh-1.3.2
>
> On client (check version first)
>
> 	monza:~$ ~/.config/guix/current/bin/guix --version
> 	guix (GNU Guix) ff349415b27cc764fd7168ef35ca76c3b8b05889
>
> 	Copyright (C) 2018 the Guix authors
>
> 	monza:~$ ~/.config/guix/current/bin/guix package -i perl mosh --substitute-urls="http://guix.genenetwork.org https://berlin.guixsd.org" --dry-run
> 	The following packages would be installed:
> 		 perl 5.26.1  /gnu/store/6zz27h4l21b8f2mifrk9sidvib9cns2i-perl-5.26.1
> 		 mosh 1.3.2   /gnu/store/dkpkd7ajh3kvpzfdfacqg50x49i78x5y-mosh-1.3.2
>
> Strangely the hash values differ but it still wants to fetch them. But when I do an actual install it rebuilds:

When you’re using --dry-run, what gets displayed is the file names of
the ungrafted packages.  That’s why you see different file names in the
first case.

As to why you’re not getting substitutes, it could be missing
authorization, etc.  What does ‘guix publish’ display?

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#33276: guix still building when substitute is available (or is guix pull not reproducible)
  2018-11-06 14:21 ` Ludovic Courtès
@ 2018-11-08 18:30   ` Pjotr Prins
  0 siblings, 0 replies; 3+ messages in thread
From: Pjotr Prins @ 2018-11-08 18:30 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 33276

On Tue, Nov 06, 2018 at 03:21:29PM +0100, Ludovic Courtès wrote:
> As to why you’re not getting substitutes, it could be missing
> authorization, etc.  What does ‘guix publish’ display?

Substitutes work fine for normal package install. No problem with the
setup. No, this is specific to guix pull with a commit flag.

Did you try this yourself? It is reproducible as a problem.

Could it theoretically be possible that guix pull with a specific
commit set done at different time points leads to a different build?
I.e., is the underlying build system not a variable (bootstrap and all
that)?

When I have time I'll try that guix pull twice. See what happens.

Pj.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-11-08 18:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-11-05 16:26 bug#33276: guix still building when substitute is available (or is guix pull not reproducible) Pjotr Prins
2018-11-06 14:21 ` Ludovic Courtès
2018-11-08 18:30   ` Pjotr Prins

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).