--- Begin Message ---
Subject: |
guix pull: channel d8feee9 - extraneous field initializers (sha256) |
Date: |
Fri, 22 May 2020 12:14:38 +0200 |
Hello!
I've encountered the following exception, during regular 'guix pull'
command:
Updating channel 'guix' from Git repository at
'https://git.savannah.gnu.org/git/guix.git'... Building from this
channel: guix https://git.savannah.gnu.org/git/guix.git
d8feee9 Computing Guix derivation for 'x86_64-linux'...
ice-9/psyntax.scm:1585:32: In procedure expand-macro: Syntax error:
unknown location: %origin: extraneous field initializers (sha256) in
form (%origin (method url-fetch) (uri (string-append
"mirror://gnu/bash/bash-" version ".tar.gz")) (sha256 (base32
"0kgvfwqdcd90waczf4gx39xnrxzijhjrzyzv7s8v4w31qqm0za5l")) (patch-flags
(quote ("-p0"))) (patches (cons (search-patch
"bash-linux-pgrp-pipe.patch") %patch-series-5.0))) guix pull: error:
You found a bug: the program
'/gnu/store/fsch1y8hilmkg21rmgk256j3wfi2w7wk-compute-guix-derivation'
failed to compute the derivation for Guix (version:
"d8feee9f18ede0d1ea4d0e4876f09a0dab770295"; system: "x86_64-linux";
host version: "5c10d55206a4f7a9b932ff08512a4f50c1db35be"; pull-version:
1). Please report it by email to <address@hidden>.
Available for further informations,
saluti,
Matias
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#41457: guix pull: channel d8feee9 - extraneous field initializers (sha256) |
Date: |
Fri, 22 May 2020 20:01:56 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) |
Hi,
Ricardo Wurmus <address@hidden> skribis:
> [address@hidden:~/code/guix] (1005) $ ~/.config/guix/current/bin/guix pull
> Updating channel 'guix' from Git repository at
> 'https://git.savannah.gnu.org/git/guix.git'...
> Building from this channel:
> guix https://git.savannah.gnu.org/git/guix.git cd5d5f5
> Computing Guix derivation for 'x86_64-linux'... ice-9/psyntax.scm:1585:32:
> In procedure expand-macro:
> Syntax error:
> unknown location: %origin: extraneous field initializers (sha256) in form
> (%origin (method url-fetch) (uri (string-append "mirror://gnu/bash/bash-"
> version ".tar.gz")) (sha256 (base32
> "0kgvfwqdcd90waczf4gx39xnrxzijhjrzyzv7s8v4w31qqm0za5l")) (patch-flags (quote
> ("-p0"))) (patches (cons (search-patch "bash-linux-pgrp-pipe.patch")
> %patch-series-5.0)))
> -guix pull: error: You found a bug: the program
> '/gnu/store/fsch1y8hilmkg21rmgk256j3wfi2w7wk-compute-guix-derivation'
> failed to compute the derivation for Guix (version:
> "cd5d5f53228fd5bf96d9f790aa2606ae71fa68d7"; system: "x86_64-linux";
> host version: "be0ecfb1787b9e6954bf745bceeb1b9d2669d51a"; pull-version: 1).
> Please report it by email to <address@hidden>.
Good news, this is fixed by 50ea3135e0948a042cd3b899e970f6ade291a0c2!
As noted in the commit log, this issue stemmed from a change in
#:autoload semantics in Guile 3.0. In 3.0, the line:
#:autoload (gcrypt hash) (port-sha256)
means that only ‘port-sha256’ is imported. Conversely, in 2.2 (which is
the Guile version used by the ‘compute-guix-derivation’ program above),
that #:autoload line means that all the (gcrypt hash) bindings are
imported. That includes the ‘sha256’ bindings, which would thus prevent
matching the ‘sha256’ literal in the ‘origin-compatibility-helper’
macro. Terrible!
Ludo’.
--- End Message ---