Re: Including sources in guix archive --export

2018-10-02 Thread Georges Dupéron

On mar., oct. 2, 2018 at 11:57 , Ludovic Courtès  wrote:
Hmm no, ‘--sources=transitive’ is supposed to give you the 
complete list

of source tarballs.  Any idea which ones are missing


The ones missing seem to be the sources used to bootstrap GCC and Guile 
(there might be a couple of false positives in that list, because: I 
added these one by one to the list after "hello" by using the wildcard 
/gnu/store/*-$i.drv, until guix build inside the VM stopped indicating 
missing dependencies):


binutils-2.23.2.tar.xz
bison-3.0.4.tar.xz
gc-7.6.4.tar.gz
gcc-4.8.2.tar.xz
glibc-2.18.tar.xz
guile-2.0.9.tar.xz
gcc-4.9.4.tar.xz
gettext-0.19.8.1.tar.gz
gmp-6.1.2.tar.xz
guile-2.2.3.tar.xz
libatomic_ops-7.6.4.tar.gz
libffi-3.2.1.tar.gz
libtool-2.4.6.tar.xz
libunistring-0.9.9.tar.xz
m4-1.4.18.tar.xz
perl-5.26.1.tar.gz
pkg-config-0.29.2.tar.gz
static-binaries.tar.xz
texinfo-6.5.tar.xz
zlib-1.2.11.tar.gz

Note that when I run guix build --check hello inside a VM created from 
a minimal configuration, it tries to build much more than just hello 
(e.g. GCC, Guile, …), whereas if I run it on my Guix host, it simply 
rebuilds hello and nothing else.


Thanks :)
Georges


Including sources in guix archive --export

2018-09-13 Thread Georges Dupéron

Hi!

Is it possible to export a .nar including the sources necessary to 
rebuild that package?


I tried running these commands on the host:

sudo guix archive --generate-key
guix archive --export --recursive hello > hello.nar

And these commands inside a fresh, minimal GUIX environment without 
network access:


guix archive --authorize < signing-key.pub
guix archive --import < hello.nar
$(guix build hello)/bin/hello # works
guix build --check hello # fails

The above fails because it tries to download the sources:

Starting download of /gnu/store/…-hello-2.10.tar.gz
From https://gtpmirror.gnu.or/gnu/hello/hello-2.10.tar.gz...
In procedure getaddringo: Name or service not known

I have created at 
https://github.com/jsmaniac/guix-reproducible-system/tree/guix-question 
a small automated environment which creates the archive, creates a QEMU 
VM with a minimalistic Guix configuration, copies the .nar archive 
inside the VM and tries the commands above.


Thanks,
Georges Dupéron