GNU bug report logs - #42410
Copying nars between stores fails for packages with multiple outputs

Previous Next

Package: guix;

Reported by: Leo Famulari <leo <at> famulari.name>

Date: Fri, 17 Jul 2020 20:44:02 UTC

Severity: normal

Done: Leo Famulari <leo <at> famulari.name>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Leo Famulari <leo <at> famulari.name>
Subject: bug#42410: closed (Re: bug#42410: Copying nars between stores
 fails for packages with multiple outputs)
Date: Tue, 21 Jul 2020 19:34:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#42410: Copying nars between stores fails for packages with multiple outputs

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 42410 <at> debbugs.gnu.org.

-- 
42410: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=42410
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Leo Famulari <leo <at> famulari.name>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 42410-done <at> debbugs.gnu.org
Subject: Re: bug#42410: Copying nars between stores fails for packages with
 multiple outputs
Date: Tue, 21 Jul 2020 15:33:10 -0400
On Tue, Jul 21, 2020 at 05:49:00PM +0200, Ludovic Courtès wrote:
> Hi,
> 
> Leo Famulari <leo <at> famulari.name> skribis:
> 
> > Exporting a nar and importing it on another machine only works when the
> > package being built has a single output.
> 
> Note that “guix archive --export foo” only exports foo:out.  If you want
> to export other outputs, you have to explicitly list them.
> 
> > I set up a signing-key on the sending machine, authorized it on the
> > receiving machine, and successfully transferred some nars of
> > single-output packages. I say they succeeded because `guix build
> > --no-grafts foo` did not need to build foo after having imported the nar
> > archive built on the other machine.
> 
> ‘guix build’ starts building unless all the outputs of the package are
> already in the store.
> 
> > However, it fails for packages with multiple outputs such as Syncthing
> > and libsmf.
> 
> Could it be that you copied only one output of the package, and thus
> ‘guix build’ considered it had to build it because the other outputs
> were missing?

Yes, that must be it! Thanks for your reply and I'll re-open this ticket
if necessary.

[Message part 3 (message/rfc822, inline)]
From: Leo Famulari <leo <at> famulari.name>
To: bug-guix <at> gnu.org
Subject: Copying nars between stores fails for packages with multiple outputs
Date: Fri, 17 Jul 2020 16:43:19 -0400
Exporting a nar and importing it on another machine only works when the
package being built has a single output.

I set up a signing-key on the sending machine, authorized it on the
receiving machine, and successfully transferred some nars of
single-output packages. I say they succeeded because `guix build
--no-grafts foo` did not need to build foo after having imported the nar
archive built on the other machine.

However, it fails for packages with multiple outputs such as Syncthing
and libsmf.

I made sure both sides were trying to build the same derivation by using
`guix time-machine` and created the archives like this:

$ guix time-machine --commit=03f9a8c35be387f37badcd2c830ac7414ac17225 -- archive -r --no-grafts --export libsmf > ~/tmp/libsmf.nar



This bug report was last modified 4 years and 307 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.