Hi Ludovic and Efraim, I think there may be a serious problem with substitutes on Aarch64. See below, where Benjamin Slade reports that substitutes aren't working for him on Aarch64, although he reports having authorized berlin's key.
If I'm not mistaken, I believe I have confirmed with the test below that a substitute for binutils from early commencement on aarch64 is not available on berlin. I ran "guix build -n -s aarch64-linux hello" on my x86_64 system, to generate the derivations and see if the hashes matched what's in Benjamin's transcript. The derivation which failed below, /gnu/store/8bkfchbibkfflp72vvdf39hdbv362vm7-binutils-2.30.tar.xz.drv, matches what I generated on my system. I looked in the derivation file to find the output path, and found this: /gnu/store/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz I tried to fetch this manually from berlin.guixsd.org, and it returned 404: --8<---------------cut here---------------start------------->8--- mhw@jojen ~$ wget https://berlin.guixsd.org/guix/nar/gzip/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz --2018-08-23 00:26:01-- https://berlin.guixsd.org/guix/nar/gzip/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz Resolving berlin.guixsd.org (berlin.guixsd.org)... 141.80.181.40 Connecting to berlin.guixsd.org (berlin.guixsd.org)|141.80.181.40|:443... connected. HTTP request sent, awaiting response... 404 Not Found 2018-08-23 00:26:02 ERROR 404: Not Found. mhw@jojen ~$ wget https://berlin.guixsd.org/guix/nar/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz --2018-08-23 00:26:27-- https://berlin.guixsd.org/guix/nar/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz Resolving berlin.guixsd.org (berlin.guixsd.org)... 141.80.181.40 Connecting to berlin.guixsd.org (berlin.guixsd.org)|141.80.181.40|:443... connected. HTTP request sent, awaiting response... 404 Not Found 2018-08-23 00:26:27 ERROR 404: Not Found. --8<---------------cut here---------------end--------------->8--- It occurs to me that on Hydra, I have implemented a system to ensure that *all* derivations from a certain set of _evaluations_ (the most recent release and the last two weeks of 'master' evaluations) are permanently kept as GC roots, regardless of how long ago they were built. Among other things, this ensures that even the early commencement derivations are kept even if they were built a long time ago. Berlin.guixsd.org may not have any similar mechanism in place. It may still be using the old policy, where old GC roots are deleted based solely on their timestamps in the filesystem, which indicate when the GC root symlinks were first installed, long ago during the last core updates build-out. This could result in the early commencement derivations and corresponding outputs being deleted prematurely. Since Aarch64 is the only architecture that's on berlin but not on Hydra, it's the only architecture where this problem would arise. For other architectures, even if berlin deletes these old derivations, Hydra still always has a copy because of the evaluation-based GC policy I implemented there. What do you think? Mark Benjamin Slade <beo...@gmail.com> writes: > Though, unfortunately, when I try `guix package -i hello` (or any other > package), I get the following error: > > ```` > ............ > /gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/tar: > /gnu/store/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz: Wrote only > 4096 of 10240 bytes > /gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/tar: > Child died with signal 9 > /gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/tar: > Error is not recoverable: exiting now > source is under 'binutils-2.30' > applying > '/gnu/store/r7imyzhcnqbyzrbxygg60iwqp1jmwgrq-binutils-loongson-workaround.patch'... > Backtrace: > In ice-9/boot-9.scm: > 160: 9 [catch #t #<catch-closure 9d13c0> ...] > In unknown file: > ?: 8 [apply-smob/1 #<catch-closure 9d13c0>] > In ice-9/boot-9.scm: > 66: 7 [call-with-prompt prompt0 ...] > In ice-9/eval.scm: > 432: 6 [eval # #] > In ice-9/boot-9.scm: > 2412: 5 [save-module-excursion #<procedure a40780 at ice-9/boot-9.scm:4084:3 > ()>] > 4089: 4 [#<procedure a40780 at ice-9/boot-9.scm:4084:3 ()>] > 1734: 3 [%start-stack load-stack #<procedure a52560 at > ice-9/boot-9.scm:4080:10 ()>] > 1739: 2 [#<procedure a54d20 ()>] > In unknown file: > ?: 1 [primitive-load > "/gnu/store/976r9wpcnsi9lhsg2yr8hdzkqnilyq9n-binutils-2.30.tar.xz-builder"] > In ./guix/build/utils.scm: > 616: 0 [invoke > "/gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/tar" > ...] > > ./guix/build/utils.scm:616:6: In procedure invoke: > ./guix/build/utils.scm:616:6: Throw to key `srfi-34' with args `(#<condition > &invoke-error [program: > "/gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/tar" > arguments: ("cvf" > "/gnu/store/4ka60wq7j51ywy7pmpwy7fqqnzk12ay6-binutils-2.30.tar.xz" > "--use-compress-program=/gnu/store/qzdabl7b02cp4xsfkz4znxpy482gsgh8-bootstrap-binaries-0/bin/xz > --threads=0" "--mtime=@0" "--owner=root:0" "--group=root:0" "--sort=name" > "binutils-2.30") exit-status: 2 term-signal: #f stop-signal: #f] d7ff00>)'. > builder for > `/gnu/store/8bkfchbibkfflp72vvdf39hdbv362vm7-binutils-2.30.tar.xz.drv' failed > with exit code 1 > cannot build derivation > `/gnu/store/6mbhl1b7kdmysilwsxk59vkws2ca9ajh-binutils-2.30.drv': 1 > dependencies couldn't be built > cannot build derivation > `/gnu/store/20q3yb3yri1g7nqng06j9kwc07ypxh1g-binutils-cross-boot0-2.30.drv': > 1 dependencies couldn't be built > cannot build derivation > `/gnu/store/sghh265k30fn0cj24rxc9p6xvn6yv3qs-perl-5.26.1.drv': 1 dependencies > couldn't be built > guix package: error: build failed: build of > `/gnu/store/sghh265k30fn0cj24rxc9p6xvn6yv3qs-perl-5.26.1.drv' failed > ```` > > —Ben