GNU bug report logs - #39301
Guile warnings printed upon reconfigure due to 3.0/2.2 mismatch

Previous Next

Package: guix;

Reported by: strypsteen <at> posteo.net

Date: Sun, 26 Jan 2020 21:44:02 UTC

Severity: important

Full log


Message #12 received at 39301 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: strypsteen <at> posteo.net
Cc: 39301 <at> debbugs.gnu.org
Subject: Re: bug#39301: imported module (guix build utils) overrides core
 binding `delete'
Date: Sun, 02 Feb 2020 22:14:20 +0100
Hello!

strypsteen <at> posteo.net skribis:

> Whenever running "sudo guix system reconfigure /path/to/config.scm I
> get the following warnings:
>
> building
> /gnu/store/vpazjd711byj3jszh7jrk5d8lq51077g-switch-to-system.scm.drv...
> ;;; WARNING: loading compiled file
> /gnu/store/5bd6ywmfcxxa4gvpzg0pdbjwmf24cxkl-module-import-compiled/gnu/build/activation.go
> failed:
> ;;; In procedure load-thunk-from-memory: incompatible bytecode kind
> ;;; compiling

[...]

> building
> /gnu/store/alamdi63ns0ahis93jz1x4cndy4w09gf-install-bootloader.scm.drv...
> WARNING: (guile-user): imported module (guix build utils) overrides
> core binding `delete'
> ;;; WARNING: loading compiled file
> /gnu/store/62gvwndkddaq6203mrisshgiv13kkgcd-module-import-compiled/gnu/build/bootloader.go
> failed:
> ;;; In procedure load-thunk-from-memory: incompatible bytecode kind
> ;;; compiling
> /gnu/store/wamhgn5mhgzf9mgp9gxx3w6jn64hw4yc-module-import/gnu/build/bootloader.scm
> ;;; compiled
> /root/.cache/guile/ccache/3.0-LE-8-4.2/gnu/store/wamhgn5mhgzf9mgp9gxx3w6jn64hw4yc-module-import/gnu/build/bootloader.scm.go
> guix system: bootloader successfully installed on '/boot/efi'
> WARNING: (guile-user): imported module (guix build utils) overrides
> core binding `delete'

All these warnings are harmless and stem from the Guile 2.2/3.0
transition.  Specifically, it comes from the fact that ‘guix system
reconfigure’ evaluates this code with the host Guile (in this case 3.0),
whereas the modules are built for 2.2, which is what the Shepherd
depends on.

The culprit is ‘local-eval’ in (guix scripts system), which simply uses
‘primitive-eval’ to evaluate the code, thus disregarding the Guile
version that should be used.

One possibility would be to instead evaluate the expression in a
separate Guile process for the intended Guile version.

I’m not sure it’s worth it though.  The warnings will hopefully
disappear soon when we upgrade everything to 3.0.

Thoughts?

Ludo’.




This bug report was last modified 2 years and 106 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.