[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#38226: guix pull: error: build failed: [...] ice-9/boot-9.scm:109:20
From: |
zimoun |
Subject: |
bug#38226: guix pull: error: build failed: [...] ice-9/boot-9.scm:109:20: Syntax error: |
Date: |
Mon, 18 Nov 2019 17:44:43 +0100 |
Hi Ludo,
On Mon, 18 Nov 2019 at 17:22, Ludovic Courtès <address@hidden> wrote:
> zimoun <address@hidden> skribis:
> > On Sun, 17 Nov 2019 at 22:15, Ludovic Courtès <address@hidden> wrote:
> >> The only thing that’s missing here is that currently “guix build
> >> /gnu/store/….drv” fails if the .drv doesn’t already exist, which is why
> >> the trick above resorts to a lower-level mechanism.
> >
> > I miss how to fetch this missing .drv. :-)
> >
> > For example this evaluation built a recent enough Guix, right?
> >
> > $ wget -q -O - 'http://ci.guix.gnu.org/build/1943556' | jq '."derivation"'
> >
> >
> > outputs the derivation file. But how do you fetch it?
>
> You don’t explicitly fetch it. Instead, you run “guix build /….drv”,
> and the daemon automatically attempts to substitute it if it’s not
> available in your store (note that you need commit
> 9c9982dc0c8c38ce3821b154b7e92509c1564317.)
I do not have when I tested.
The commit is from yesterday evening. ;-)
(that's a real rolling release :-D)
But if you have this commit, you do not need the dance that you
described to "guix pull" with a very very old Guix version -- say
before the 0.15 overhaul.
> Now, I noticed that it doesn’t work so well when ‘guix publish --cache’
> is used, as is the case on berlin. The reason is that the daemon will
> query substitutes one by one: guix-xyz.drv, then guix-xyz-builder, and
> so on. And because of the ‘--cache’ behavior, they’ll all have to be
> baked separately.
--8<---------------cut here---------------start------------->8---
$ guix build "/gnu/store/bz1qqy225p1jlicwf07iiqr79icqddcv-guix-4de11dda7.drv"
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
cannot build missing derivation
‘/gnu/store/bz1qqy225p1jlicwf07iiqr79icqddcv-guix-4de11dda7.drv’
guix build: error: build of
`/gnu/store/bz1qqy225p1jlicwf07iiqr79icqddcv-guix-4de11dda7.drv'
failed
$ guix describe
Generation 55 Nov 18 2019 13:21:24 (current)
guix 900ef20
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: 900ef20b1da66ad71145082c883dc12f31fafa54
--8<---------------cut here---------------end--------------->8---
> >> Perhaps ‘guix pull’ should have a ‘--rescue’ option to do the trick
> >> above?
> >
> > Is it possible?
> > We need to track on Cuirass one recent enough derivation of Guix for
> > each architecture, right?
>
> Yeah well, that needs more thought. :-)
I am not sure to clearly understand what we are talking about. :-)
All the best,
simon
bug#38226: guix pull: error: build failed: [...] ice-9/boot-9.scm:109:20: Syntax error:, Kai Mertens, 2019/11/20