(gnu packages racket) assumes that (ice-9 exceptions) exist, breaks pulling from old Guix

  • Done
  • quality assurance status badge
Details
3 participants
  • Giovanni Biscuolo
  • Ludovic Courtès
  • Maxime Devos
Owner
unassigned
Submitted by
Giovanni Biscuolo
Severity
normal
Merged with
G
G
Giovanni Biscuolo wrote on 24 Mar 2022 15:51
failed to compute the derivation for (very old) Guix
(address . bug-guix@gnu.org)
87v8w3iet3.fsf@xelera.eu
Hello,

I'm trying to update a (very) old guix installation in my root default
profile

when pulling I'm getting this error:

Toggle snippet (42 lines)
$ sudo -i guix pull --url=http://git.savannah.gnu.org/git/guix.git
[sudo] password for g:
Updating channel 'guix' from Git repository at 'http://git.savannah.gnu.org/git/guix.git'...
Building from this channel:
guix http://git.savannah.gnu.org/git/guix.git ab98b51
Computing Guix derivation for 'x86_64-linux'... \Backtrace:
In ice-9/eval.scm:
721:20 19 (primitive-eval (define-module (gnu packages racket) #:use-module (guix packages) #:use-module (# #) # ?))
In ice-9/psyntax.scm:
1235:36 18 (expand-top-sequence ((define-module (gnu packages racket) #:use-module (guix packages) #:use-module ?)) ?)
1182:24 17 (parse _ (("placeholder" placeholder)) ((top) #(ribcage () () ())) _ e (eval) (hygiene #{ g317}#))
285:10 16 (parse _ (("placeholder" placeholder)) (()) _ c&e (eval) (hygiene #{ g317}#))
In ice-9/eval.scm:
293:34 15 (_ #<module (#{ g317}#) 399db40>)
In ice-9/boot-9.scm:
2874:4 14 (define-module* _ #:filename _ #:pure _ #:version _ #:imports _ #:exports _ #:replacements _ # _ # _ # _ ?)
2887:24 13 (_)
222:29 12 (map1 (((guix packages)) ((guix download)) ((guix git-download)) ((guix utils)) ((guix gexp)) ((# ?)) ?))
222:29 11 (map1 (((guix download)) ((guix git-download)) ((guix utils)) ((guix gexp)) ((guix build-system #)) # ?))
222:29 10 (map1 (((guix git-download)) ((guix utils)) ((guix gexp)) ((guix build-system copy)) ((guix # gnu)) # ?))
222:29 9 (map1 (((guix utils)) ((guix gexp)) ((guix build-system copy)) ((guix build-system gnu)) ((srfi #)) # ?))
222:29 8 (map1 (((guix gexp)) ((guix build-system copy)) ((guix build-system gnu)) ((srfi srfi-1)) ((srfi #)) # ?))
222:29 7 (map1 (((guix build-system copy)) ((guix build-system gnu)) ((srfi srfi-1)) ((srfi srfi-26)) ((# #)) # ?))
222:29 6 (map1 (((guix build-system gnu)) ((srfi srfi-1)) ((srfi srfi-26)) ((ice-9 match)) ((ice-9 #)) ((# #)) ?))
222:29 5 (map1 (((srfi srfi-1)) ((srfi srfi-26)) ((ice-9 match)) ((ice-9 exceptions)) ((gnu packages)) ((# ?)) ?))
222:29 4 (map1 (((srfi srfi-26)) ((ice-9 match)) ((ice-9 exceptions)) ((gnu packages)) ((gnu packages #)) ((?)) ?))
222:29 3 (map1 (((ice-9 match)) ((ice-9 exceptions)) ((gnu packages)) ((gnu packages autotools)) ((gnu # #)) # ?))
222:17 2 (map1 (((ice-9 exceptions)) ((gnu packages)) ((gnu packages autotools)) ((gnu packages bash)) ((# ?)) ?))
2803:6 1 (resolve-interface _ #:select _ #:hide _ #:prefix _ #:renamer _ #:version _)
In unknown file:
0 (scm-error misc-error #f "~A ~S" ("no code for module" (ice-9 exceptions)) #f)

ERROR: In procedure scm-error:
no code for module (ice-9 exceptions)
guix pull: error: You found a bug: the program '/gnu/store/7n5xpd211950xyn39sxwqm6jmgishhnv-compute-guix-derivation'
failed to compute the derivation for Guix (version: "ab98b51ef1304e975da127e3092d01dcc7f02657"; system: "x86_64-linux";
host version: "1.0.0"; pull-version: 1).
Please report the COMPLETE output above by email to <bug-guix@gnu.org>.


Please is there any workaround for this?

Thanks! Gio'

--
Giovanni Biscuolo

Xelera IT Infrastructures
-----BEGIN PGP SIGNATURE-----

iQJABAEBCgAqFiEERcxjuFJYydVfNLI5030Op87MORIFAmI8hYgMHGdAeGVsZXJh
LmV1AAoJENN9DqfOzDkSo3EQAMIa5WX1C14LJeeKXSYoFonSf2J+fYKCrbGQyZcv
82aUujIO5kavB8X3eAr+L/d7AvSN3+2XkgIUTAqG/MLOnrbfxfD1loMpv7bJ8IYZ
80aMm1ymF6r0CrVluitDjme0DTfJxWZc57ZWTl8FAlZ7oCEnQRtgO6ZkZ/sik5Xn
wzKprJt7jAnBpCpjjHcqoeMBaMLJaujI7nOXN/7uGkJL7UBsha38qY1jorhK5Ubp
LGxMVjFcfTsILbR73zNSYRyNsqVVoA0EnI+rj6F3OcbQT3OGSWYErUSirj/j6MQn
jFzZoPlrb5QHLpmFkrOXSQPeLXV4GFodvfjwValM7LrI9KSd5tljZYXYtwpWdEGZ
m8xt3l9OLHuzKcaIydUJj5WHRKtfctUKkEgYO5RqmwYxOX7pgqUpEnjURBl3dkJI
IecZDbzD3LE8v6/Azk5TmFHcQW0NiD2OvGld61vizGf7k5Uf9XzvdKUfjM96FoMp
X8ubXSpA2NxzT1bXotU6wqeTL8WSdQeu1kcaD2v1z0qZNr6GSrlXYrDnEQ0TyZA1
nvLZZ5QoytO0H3jqIPcIIXscFT//cbppcQdi/RUQAwi9YoEn1JHQAfYHBQVrFdBE
3ThZwSaKkQxZQDN45CmO25fexqhl6Ubc/cob2jbH7WXPr63ULu4dZwI1ODd2QB8e
a27f
=pUU4
-----END PGP SIGNATURE-----

M
M
Maxime Devos wrote on 24 Mar 2022 16:01
93a60eb79eb33ab89474174ce48ab19e8221ba3c.camel@telenet.be
Giovanni Biscuolo schreef op do 24-03-2022 om 15:51 [+0100]:
Toggle quote (4 lines)
> --8<---------------cut here---------------end--------------->8---
> [(ice-9 exceptions) stuff]
> Please is there any workaround for this?

build-aux/build-self.scm stubs (gcrypt hash) and (git).
Likewise, it could be modified to stub (ice-9 exceptions) when
'guile-version' refers to a pre-(ice-9 exceptions) Guile.

According to Guile's NEWS, (ice-9 exceptions) is new in 3.0.0,
so the stubbing needs to be made conditional on guile-version<3.0.0.

Additionally, I'm looking into reducing the number of imports and
cycles, so possibly the situation will resolve itself eventually.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYjyH4xccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7jasAP9ezmlF6lPhh0TQDmYuk0JDA0LD
ZBDo+m11dXdfjYn0nAD+IWo6+4e3cEUagPDn+qBLXNoyIcoEvMnp+CqAVPdx7gc=
=TlyY
-----END PGP SIGNATURE-----


G
G
Giovanni Biscuolo wrote on 24 Mar 2022 16:23
87sfr7idco.fsf@xelera.eu
Hi Maxime,

Maxime Devos <maximedevos@telenet.be> writes:

Toggle quote (9 lines)
> Giovanni Biscuolo schreef op do 24-03-2022 om 15:51 [+0100]:
>> --8<---------------cut here---------------end--------------->8---
>> [(ice-9 exceptions) stuff]
>> Please is there any workaround for this?
>
> build-aux/build-self.scm stubs (gcrypt hash) and (git).
> Likewise, it could be modified to stub (ice-9 exceptions) when
> 'guile-version' refers to a pre-(ice-9 exceptions) Guile.

I get the meaning of "stubbing" but I don't know how to code in Guile,
sorry ? cannot help here

[...]

Toggle quote (3 lines)
> Additionally, I'm looking into reducing the number of imports and
> cycles, so possibly the situation will resolve itself eventually.

Meanwhile is there anything I can do to upgrade my guix-damon (on
foreign distro), I never upgraded my root default profile since I first
installed Guix on this machine so now I'm stuck at

Toggle snippet (8 lines)
g@renaissance:~$ guix describe -p /var/guix/profiles/per-user/root/current-guix
Generation 1 Jul 20 2020 02:08:33 (current)
g@renaissance:~$ /var/guix/profiles/per-user/root/current-guix/bin/guix-daemon --version
guix-daemon (GNU Guix) 1.0.0


This machine is trying to build ungoogled-chromium even if I'm pretty
sure there is a substitute available (installed on another machine with
the very same Guix channel) and I suspect it depends on "something"
related to the guix-daemon


Thanks! Gio'

--
Giovanni Biscuolo

Xelera IT Infrastructures
-----BEGIN PGP SIGNATURE-----

iQJABAEBCgAqFiEERcxjuFJYydVfNLI5030Op87MORIFAmI8jOgMHGdAeGVsZXJh
LmV1AAoJENN9DqfOzDkSxSEP/A7bjFaqyn4kAU6QdJ+bbJQY03t09lLVUt2NMhEy
vafmCwIiKbo08mtZtZJRqNQGt+lBNteUI5TMSCIrAqsADvpO83/tlHLoNfClI3x5
tYliDzeImuFKfMwjz/eLb+hRErP+28Jql+26iYHUXI4mgR0CXZN6ZKVeI5AAgYQc
NV/rrKfVORCExp8CDpeOUUX738edygzJeLCpEjpf2foyVYL8pV76gGoVvjZYZaWK
cBC0qXNf8xBG8a3mSpoWYeCx1FhhBnxVviq3j5OykNR1gtcFZPbxqqqpLyiGqbSz
FZqphKBwq0gZH7RMccG0UOVgfBqznw2oviq3iUpsh1mh+vmaRBBzdFRQQekS+X4e
wq+Ln9pKv3xujStC0MnUnjTf+vZS8M1jmmW3D8LZTTX/gb/7zGz1Q8lu2TotA+if
kAQWLpAuD5k6O1sJGLS3cnafya7DlAUTDCfvNoqgSsyb+xmz3etDo4/H+Fzzv4oh
zJ2sFR+Hq1cjmLL44772OWt0PLzcyj3oX9+Wvc/XDqzuhliDr14sZi1n42IXhf+L
VIpCl44+35KC0zNW0svp0npdESqfYfDqocYzAK89BElRH/tp9EUuEEh3qBsxKm0Q
nL5abSCs7JSxDPBH36FkCdENsVCguNFs+IUk8DmN3vOPDmAhcoO4AC2uyxJ9BSM7
4Nah
=LMzw
-----END PGP SIGNATURE-----

M
M
Maxime Devos wrote on 26 Mar 2022 19:09
21c0ce52d10e118957e6e32d895aeb94531050be.camel@telenet.be
Giovanni Biscuolo schreef op do 24-03-2022 om 16:23 [+0100]:
Toggle quote (16 lines)
> Hi Maxime,
>
> Maxime Devos <maximedevos@telenet.be> writes:
>
> > Giovanni Biscuolo schreef op do 24-03-2022 om 15:51 [+0100]:
> > > --8<---------------cut here---------------end--------------->8---
> > > [(ice-9 exceptions) stuff]
> > > Please is there any workaround for this?
> >
> > build-aux/build-self.scm stubs (gcrypt hash) and (git).
> > Likewise, it could be modified to stub (ice-9 exceptions) when
> > 'guile-version' refers to a pre-(ice-9 exceptions) Guile.
>
> I get the meaning of "stubbing" but I don't know how to code in Guile,
> sorry ? cannot help here

Ok, I've tried something in the attached patch (completely untested).

Toggle quote (8 lines)
> [...]
>
> > Additionally, I'm looking into reducing the number of imports and
> > cycles, so possibly the situation will resolve itself eventually.
>
> Meanwhile is there anything I can do to upgrade my guix-damon (on
> foreign distro)

What guix is the guix service using? If it's /usr/bin/guix installed
with the foreign distro's package manager, you can do, in case of
Debian, "sudo apt-get update && sudo apt-get upgrade"

Toggle quote (3 lines)
> , I never upgraded my root default profile since I first
> installed Guix on this machine so now I'm stuck at [...]

Suggestion: use your regular user's guix to upgrade root's guix:

$ sudo -i "`which guix`" pull

(this assumes the non-root user has a vaguely up-to-date guix)

Greetings,
Maxime.
Toggle diff (36 lines)
diff --git a/build-aux/build-self.scm b/build-aux/build-self.scm
index 25a7b1e618..64257bd54c 100644
--- a/build-aux/build-self.scm
+++ b/build-aux/build-self.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2021, 2022 Maxime Devos <maximedevos@telenet.be>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -265,6 +265,9 @@ interface (FFI) of Guile.")
(define fake-git
(scheme-file "git.scm" #~(define-module (git))))
+ (define fake-ice-9-exceptions
+ (scheme-file "exceptions.scm" #~(define-module (ice-9 exceptions))))
+
(with-imported-modules `(((guix config)
=> ,(make-config.scm))
@@ -279,6 +282,13 @@ interface (FFI) of Guile.")
;; (git) to placate it.
((git) => ,fake-git)
+ ;; Pre-3.0 versions of Guile don't have (ice-9
+ ;; exceptions) but (gnu packages racket) imports
+ ;; it. Provide a ‘good enough’ (ice-9 exceptions).
+ ,@(if (string=? "2" (major-version guile-version))
+ `(((ice-9 exceptions) ,fake-ice-9-exceptions))
+ '())
+
,@(source-module-closure `((guix store)
(guix self)
(guix ui)
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYj9W2RccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7o94AQDGT4SNoAZjM1fJFw8viRwchTxc
INAt1CRYC404gDIv3QEAxC3ZUUt56jJ4usnOTN2TN37gJGldqgc3mK5BxQzUFQE=
=mg8M
-----END PGP SIGNATURE-----


G
G
Giovanni Biscuolo wrote on 7 Apr 2022 11:28
87sfqp9r9t.fsf@xelera.eu
Hi Maxime,

sorry for this late reply!

I solved my problem with an ugly workaround: installing the Debian
provided guix package and temporarily using that updated daemon in the
systemd service, so I was able to upgrade to an updated Guix (since the
package in Debian is not up to date with upstream)

Maxime Devos <maximedevos@telenet.be> writes:

Toggle quote (2 lines)
> Giovanni Biscuolo schreef op do 24-03-2022 om 16:23 [+0100]:

[...]

Toggle quote (5 lines)
>> I get the meaning of "stubbing" but I don't know how to code in Guile,
>> sorry ? cannot help here
>
> Ok, I've tried something in the attached patch (completely untested).

Meanwhile I applied the above workaround, I did not test your patch

[...]

Toggle quote (5 lines)
>> Meanwhile is there anything I can do to upgrade my guix-damon (on
>> foreign distro)
>
> What guix is the guix service using?

It was version 1.0.0

Toggle quote (4 lines)
> If it's /usr/bin/guix installed with the foreign distro's package
> manager, you can do, in case of Debian, "sudo apt-get update && sudo
> apt-get upgrade"

No, I was not using the Debian provided package, I installed from the
upstream Guix binary

Toggle quote (9 lines)
>> , I never upgraded my root default profile since I first
>> installed Guix on this machine so now I'm stuck at [...]
>
> Suggestion: use your regular user's guix to upgrade root's guix:
>
> $ sudo -i "`which guix`" pull
>
> (this assumes the non-root user has a vaguely up-to-date guix)

Wow! I did not get it before your suggestion! :-O

IMHO this should be the default way to upgrade root's (or any othe user
with an out of date Guix) guix-daemon installation

[...]

Bug closed, thanks! Gio'

--
Giovanni Biscuolo

Xelera IT Infrastructures
-----BEGIN PGP SIGNATURE-----

iQJABAEBCgAqFiEERcxjuFJYydVfNLI5030Op87MORIFAmJOrq4MHGdAeGVsZXJh
LmV1AAoJENN9DqfOzDkS8PQP/2JrPSexwOfdefy7YgUMlhAxziYK86KVQnl9kFrp
JFmGhpjmNKF6aijiAPJwlS5qa3pF4lWd6QXpZ8Oc5JH9iP0WT3XgJelAaSgwvcN+
qzbomLDZyp1v5rRHvgI4R2G5E9UjCgk/gxINr5kRd/Hx13ph1FDbJMjFppjpg/0D
Hx/49jqbQRA0USW2zPrc/hOJbZ2WLrRDa+QwoAVwPwrjBNNOMMxdlMF0X0IPKjFY
DIkG4pu1I56SVU1Dkf7L7RFPyLLe4+NMzhJmbx0Qdr74Z/bJ8xgM7tzMPAAvSGUD
4MU+K6Wbk5Sh8RTik+OeQGMegb7BSi0lOe3QCMNNG8ZfnjWocxjUyiN4t7aF1zA0
XWMz0gMqHt6RjD2MRco7iHHZ5mZA1v2SJOBgkbdiedTJB+QQJcm+rHr/y+9Y1ijz
DZs5reCVYMx1T6GtaYpQTIAZCWhFxW7KdIrhc27buHtbDbmY7TJTGo0ZG9SkPBjd
KtpmzD5PjLz8/2DcE0i8dOE+7P+wsmfxfFKYWwcyf7hJ5nMT+l/KLocTbQkUXy6c
cpssQ5a5K9ZoDc/Id2I/fKL4hTuVRWxcDwKtHZyzlV6FMsiqIQO325D/Hb3pxeh7
xyn4UWCzUobfkB7Cx5tbqF1pXpROYacgTygdm7RfWnLbf4Q3r2AOK6XkVGn3RoGq
H2gj
=exbD
-----END PGP SIGNATURE-----

Closed
M
M
Maxime Devos wrote on 8 Apr 2022 15:58
Re: Processed (with 1 errors): Re: bug#54750: compute-guix-derivation failing
(name . GNU bug tracker automated control server)(address . control@debbugs.gnu.org)(address . tracker@debbugs.gnu.org)
47667cdee40690d818f3c2da5bb34496d4002fe7.camel@telenet.be
merge 54750 54546
thanks
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYlA/kRccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7kJLAP9LxbeaZEQm3AN7JZya6p2YKLhI
yooZ92Rz58JQhMGT9AD+ONawXbbxcfPWnl1JvTQTQrTFoFv26PZ8wuuIJE7FOAc=
=CmaA
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 16 Apr 2022 23:14
(address . control@debbugs.gnu.org)
ab9125994fccd4b0ae2ecb56fa01368d5e5bd510.camel@telenet.be
retitle 54546 (gnu packages racket) assumes that (ice-9 exceptions) exist, breaks pulling from old Guix
thanks
L
L
Ludovic Courtès wrote on 13 Jun 2022 12:30
(name . Maxime Devos)(address . maximedevos@telenet.be)
87leu0svns.fsf_-_@gnu.org
Hi,

For some reason I had not seen this issue earlier; too bad it remained
for this long.

This is now fixed in 8918ce6d1622303465e716ae491b8e5124c7aece.

Thanks,
Ludo’.
M
M
Maxime Devos wrote on 13 Jun 2022 12:52
(name . Ludovic Courtès)(address . ludo@gnu.org)
f61028d85cbca70e805f836e0215e882c96c8187.camel@telenet.be
Thanks!
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYqcXARccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7pqkAP0Z3N0BiT6zFC6pAFxlciKPR1gX
1GFwSJLT6o9fDsl5NQEAgllcYews6O2X88xNSPMB8quVwETKsaLK27Zx39KPJAM=
=H84Q
-----END PGP SIGNATURE-----


?