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.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 42410 in the body.
You can then email your comments to 42410 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#42410; Package guix. (Fri, 17 Jul 2020 20:44:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Leo Famulari <leo <at> famulari.name>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Fri, 17 Jul 2020 20:44:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

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




Information forwarded to bug-guix <at> gnu.org:
bug#42410; Package guix. (Tue, 21 Jul 2020 15:50:01 GMT) Full text and rfc822 format available.

Message #8 received at 42410 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Leo Famulari <leo <at> famulari.name>
Cc: 42410 <at> debbugs.gnu.org
Subject: Re: bug#42410: Copying nars between stores fails for packages with
 multiple outputs
Date: Tue, 21 Jul 2020 17:49:00 +0200
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?

Thanks,
Ludo’.




Reply sent to Leo Famulari <leo <at> famulari.name>:
You have taken responsibility. (Tue, 21 Jul 2020 19:34:02 GMT) Full text and rfc822 format available.

Notification sent to Leo Famulari <leo <at> famulari.name>:
bug acknowledged by developer. (Tue, 21 Jul 2020 19:34:02 GMT) Full text and rfc822 format available.

Message #13 received at 42410-done <at> debbugs.gnu.org (full text, mbox):

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.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 19 Aug 2020 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 245 days ago.

Previous Next


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