GNU bug report logs -
#54546
(gnu packages racket) assumes that (ice-9 exceptions) exist, breaks pulling from old Guix
Previous Next
Reported by: Giovanni Biscuolo <g <at> xelera.eu>
Date: Thu, 24 Mar 2022 14:53:01 UTC
Severity: normal
Merged with 54750
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #14 received at 54546 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Giovanni Biscuolo schreef op do 24-03-2022 om 16:23 [+0100]:
> Hi Maxime,
>
> Maxime Devos <maximedevos <at> 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).
> [...]
>
> > 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"
> , 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.
[diff.patch (text/x-patch, inline)]
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 <at> gnu.org>
-;;; Copyright © 2021 Maxime Devos <maximedevos <at> telenet.be>
+;;; Copyright © 2021, 2022 Maxime Devos <maximedevos <at> 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)
[signature.asc (application/pgp-signature, inline)]
This bug report was last modified 3 years and 40 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.