Subject: [PATCH] gnu: guile: Update to 3.0.10.

From: "Thompson, David" <[email-masked]>
Date: Thu, 18 Jul 2024 16:16:35 -0400

I thought this would be an easy upgrade, but it seems that it will
cause a lot of churn. 'guix refresh' says:

    Building the following 1640 packages would ensure 3146 dependent
packages are rebuilt

I believe this is because Shepherd is built against guile-3.0-latest,
and elogind depends on Shepherd.

Guix *should* be in a position to get fresh Guile builds quickly, but
I guess this process will be slow until the guile-3.0 package can be
upgraded to 3.0.10 (which will require a world rebuild) at which point
Shepherd can return to using guile-3.0.

There's a lot of compiler improvements and bug fixes in 3.0.10, so it
would be nice to have this update land soon. After this, I can update
guile-hoot depend on it rather than guile-next. Several other packages
depending on guile-next could also be upgraded to use guile-3.0-latest
instead, such as guile-ares-rs.

Who can help me "shepherd" this upgrade? ;)

Thanks,

- Dave
From f6c6486dab767ba50c4c2ffbb55f10bbf4ee1000 Mon Sep 17 00:00:00 2001
Message-ID: <f6[email-masked]>
From: David Thompson <[email-masked]>
Date: Thu, 18 Jul 2024 14:54:20 -0400
Subject: [PATCH] gnu: guile: Update to 3.0.10.

* gnu/packages/guile.scm (guile-3.0-latest): Update to 3.0.10.

Change-Id: Id9d58199f1fa3307c94f442c185307d2f4a9ce6f
---
 gnu/packages/guile.scm | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index e8705dc7d2..077b7b7d37 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -322,7 +322,6 @@ (define-public guile-2.2.4
                "07p3g0v2ba2vlfbfidqzlgbhnzdx46wh2rgc5gszq1mjyx5bks6r"))))))
 
 (define-public guile-3.0
-  ;; This is the latest Guile stable version.
   (package
     (inherit guile-2.2)
     (name "guile")
@@ -438,7 +437,18 @@ (define-public guile-3.0
             (files '("lib/guile/3.0/site-ccache"
                      "share/guile/site/3.0")))))))
 
-(define-public guile-3.0-latest guile-3.0)
+(define-public guile-3.0-latest
+  ;; This is the latest Guile stable version.
+  (package
+    (inherit guile-3.0)
+    (version "3.0.10")
+    (source (origin
+              (inherit (package-source guile-3.0))
+              (uri (string-append "mirror://gnu/guile/guile-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "1233wzcbiqhp5qr3ggag14s5d4i7cn0spxyl8qs369nmgx8nhwdx"))))))
 
 ;;; The symbol guile-3.0/fixed should be used when guile-3.0 needs fixes
 ;;; (security or else) and this deprecation could be removed.

base-commit: e3dfed59d39ac60dd2e2b9ef9f4ef63a2a081f41
-- 
2.41.0