unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Greg Hogan <code@greghogan.com>
To: Tobias Geerinckx-Rice <me@tobias.gr>
Cc: guix-devel@gnu.org
Subject: Re: Offline build failure
Date: Mon, 14 Dec 2020 19:33:49 +0000	[thread overview]
Message-ID: <CA+3U0Zn=wE6pXWqTdTMxAvARwwRfgSoua+VrnRFfvhBHuC=Kgw@mail.gmail.com> (raw)
In-Reply-To: <87y2i4j9z4.fsf@nckx>

[-- Attachment #1: Type: text/plain, Size: 3477 bytes --]

Thanks, Tobias. I am now properly populating the store. I have switched to
using 'guix graph --type=derivation' to pull in what seems to be the full
set of dependencies. I am seeing a strange issue when importing a package.
I can typically duplicate and import a file and it is copied to the
original location, for example:

----------------------------------------
$ cp -a /gnu/store/v2zls012iwxyw6058cir7n2b792lsvc9-perl-5.30.2.tar.gz
perl-5.30.2.tar.gz
$ guix download perl-5.30.2.tar.gz
/gnu/store/v2zls012iwxyw6058cir7n2b792lsvc9-perl-5.30.2.tar.gz
128nfdxcvxfn5kq55qcfrx2851ys8hv794dcdxbyny8rm7w7vnv6

$ cp -a /gnu/store/17acz7ks1f7xn6yp1a2y4g7vc6bhr8wc-make-3.82.tar.gz
make-3.82.tar.gz
$ guix download make-3.82.tar.gz
/gnu/store/17acz7ks1f7xn6yp1a2y4g7vc6bhr8wc-make-3.82.tar.gz
1rs2f9hmvy3q6zkl15jnlmnpgffm0bhw5ax0h5c7q604wqrip69x
----------------------------------------

For the Python-3.5.9 tarball the first version loads in the expected way.
The second tarball is restored to a new location:

----------------------------------------
$ cp -a /gnu/store/f99fblkzb6ip268sg096shhs7wzjyp55-Python-3.5.9.tar.xz
Python-3.5.9.tar.xz
$ guix download Python-3.5.9.tar.xz
/gnu/store/f99fblkzb6ip268sg096shhs7wzjyp55-Python-3.5.9.tar.xz
0jdh9pvx6m6lfz2liwvvhn7vks7qrysqgwn517fkpxb77b33fjn2

$ cp -a /gnu/store/nj79fxxl5wvnq7jpj2wgbx0591gkjw41-Python-3.5.9.tar.xz
Python-3.5.9.tar.xz
$ guix download Python-3.5.9.tar.xz
/gnu/store/9sa83nyjlm5dyhwys4imm1wa40mjaw1x-Python-3.5.9.tar.xz
0rkn451qfz3gbni57la00a5fbgish9jmm5bmhmgmf223vxwya447
----------------------------------------

Since the tarball is not restored to the original location the guix build
command still attempts the download and fails the offline build.

Greg Hogan

On Fri, Dec 11, 2020 at 9:42 PM Tobias Geerinckx-Rice <me@tobias.gr> wrote:

> Hullo Greg,
>
> Greg Hogan 写道:
> > If there is a better way to setup / configure / execute offline
> > builds
> > please let me know!
>
> ...yes :-)
>
> > I am attempting an offline build without success. I have a Guix
> > 1.2.0 node
> > with internet access on which I download sources with transitive
> > dependencies:
> >   $ guix build --sources=transitive tzdata > ~/transfer
>
> OK.
>
> > I then copy the files as root to a Guix 1.2.0 node without
> > internet access
> > (only local network access):
> >   # cat /home/<user>/transfer | xargs -n 1 -I{} scp -p {}
> >   <ip>:{}
>
> Now you've basically reinvented ‘guix copy --to=<ip>’, but in a
> way that won't update the store database in /var/guix/db.  I'm
> afraid that won't work.
>
> Guix won't ‘see’ the files you copy to the remote store and will
> consider them G to be C'd next time you run ‘guix gc’.  Or in this
> case:
>
> > Guix starts downloading and the transferred file is gone!
>
> Same thing.
>
> > I'm lost as to
> > why a new download attempt is made as the file data and
> > timestamps match
> > the original server.
>
> If the file isn't registered in the database, the store item is
> never considered valid.  Guix doesn't (yet) care about the
> data/timestamps at this point.
>
> If there's a reason you can't/won't use ‘guix copy’, you might
> work around that by copying each file in ~/transfer to, say,
> <ip>:/tmp/staging (instead of <ip>:/gnu/store), then running ‘guix
> download /tmp/staging/<file>...’ on the remote host.
>
> Kind regards,
>
> T G-R
>

[-- Attachment #2: Type: text/html, Size: 4266 bytes --]

  reply	other threads:[~2020-12-14 19:34 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-11 21:11 Offline build failure Greg Hogan
2020-12-11 21:42 ` Tobias Geerinckx-Rice
2020-12-14 19:33   ` Greg Hogan [this message]
2020-12-15  2:47     ` Mark H Weaver

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CA+3U0Zn=wE6pXWqTdTMxAvARwwRfgSoua+VrnRFfvhBHuC=Kgw@mail.gmail.com' \
    --to=code@greghogan.com \
    --cc=guix-devel@gnu.org \
    --cc=me@tobias.gr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).