all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Ludovic Courtès" <ludo@gnu.org>
To: Guix-devel <guix-devel@gnu.org>
Subject: Re: Guile 3 migration plan
Date: Fri, 17 Jan 2020 22:48:58 +0100	[thread overview]
Message-ID: <871rrxycs5.fsf@gnu.org> (raw)
In-Reply-To: <874kwvemsw.fsf@inria.fr> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22\?\= \=\?utf-8\?Q\?'s\?\= message of "Thu, 16 Jan 2020 11:08:15 +0100")

[-- Attachment #1: Type: text/plain, Size: 1152 bytes --]

Hello Guix!

Ludovic Courtès <ludo@gnu.org> skribis:

>   2. We must be able to run Guix itself on Guile 3.  This is already
>      possible if you add “3.0” to the ‘GUILE_PKG’ invocation in
>      ‘configure.ac’, but there are still a few test failures that I’ve
>      been working on.  Almost all of them relate to the use of ‘@@’ and
>      ‘mock’, which do not work with Guile 3 “declarative modules”.
>
>      In many cases, it’s an opportunity to clean up our tests; see for
>      example 4aea90b1876179aab8d603a42533a6bdf97ccd3c and the preceding
>      commit.  It should be possible to be done real soon!

Good news everyone!  It builds and all the tests pass since
7b2a47a702b7393cd968640079f8703c932d1405, and commit
da7651806102d637253cb9f5677b96d6a178fc05 adds a “guile3.0-guix” package!

>      Once we’re done, we can change (guix self) so that ‘guix pull’
>      pulls Guix on Guile 3.

The attached patch does that, I tested it with “make as-derivation”.
I’ll do some more testing but unless I’m overlooking something, we can
apply it anytime now.

Ludo’.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 2321 bytes --]

diff --git a/guix/self.scm b/guix/self.scm
index 207e80d842..f883f14a2c 100644
--- a/guix/self.scm
+++ b/guix/self.scm
@@ -49,13 +49,13 @@
   (let ((ref (lambda (module variable)
                (module-ref (resolve-interface module) variable))))
     (match-lambda
-      ("guile"      (ref '(gnu packages commencement) 'guile-final))
-      ("guile-json" (ref '(gnu packages guile) 'guile-json-3))
-      ("guile-ssh"  (ref '(gnu packages ssh)   'guile-ssh))
-      ("guile-git"  (ref '(gnu packages guile) 'guile-git))
-      ("guile-sqlite3" (ref '(gnu packages guile) 'guile-sqlite3))
-      ("guile-gcrypt"  (ref '(gnu packages gnupg) 'guile-gcrypt))
-      ("gnutls"     (ref '(gnu packages tls) 'gnutls))
+      ("guile"      (ref '(gnu packages guile) 'guile-3.0))
+      ("guile-json" (ref '(gnu packages guile) 'guile3.0-json))
+      ("guile-ssh"  (ref '(gnu packages ssh)   'guile3.0-ssh))
+      ("guile-git"  (ref '(gnu packages guile) 'guile3.0-git))
+      ("guile-sqlite3" (ref '(gnu packages guile) 'guile3.0-sqlite3))
+      ("guile-gcrypt"  (ref '(gnu packages gnupg) 'guile3.0-gcrypt))
+      ("gnutls"     (ref '(gnu packages tls) 'guile3.0-gnutls))
       ("zlib"       (ref '(gnu packages compression) 'zlib))
       ("lzlib"      (ref '(gnu packages compression) 'lzlib))
       ("gzip"       (ref '(gnu packages compression) 'gzip))
@@ -1121,9 +1121,9 @@ is not supported."
         version))
 
   (define guile
-    ;; When PULL-VERSION >= 1, produce a self-contained Guix and use Guile 2.2
-    ;; unconditionally.
-    (default-guile))
+    ;; When PULL-VERSION >= 1, produce a self-contained Guix and use the
+    ;; current Guile unconditionally.
+    (specification->package "guile"))
 
   (when (and (< pull-version 1)
              (not (string=? (package-version guile) guile-version)))
@@ -1142,7 +1142,7 @@ is not supported."
                                                      (shorten version))
                                #:pull-version pull-version
                                #:guile-version (if (>= pull-version 1)
-                                                   "2.2" guile-version)
+                                                   "3.0" guile-version)
                                #:guile-for-build guile)))
       (if guix
           (lower-object guix)

  parent reply	other threads:[~2020-01-17 21:49 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-16 10:08 Guile 3 migration plan Ludovic Courtès
2020-01-16 13:57 ` zimoun
2020-01-16 14:57 ` Efraim Flashner
2020-01-16 17:23   ` Ludovic Courtès
2020-01-16 17:58 ` Vagrant Cascadian
2020-01-17 21:43   ` Ludovic Courtès
2020-01-17 21:48 ` Ludovic Courtès [this message]
2020-01-19 21:29   ` Ludovic Courtès
2020-01-20 17:11     ` Ludovic Courtès
2020-01-23 16:39       ` Ludovic Courtès
2020-01-23 22:25         ` Ricardo Wurmus
2020-01-24  9:29           ` Ludovic Courtès
2020-01-25 17:37             ` Ludovic Courtès
2020-01-25 19:03               ` Ricardo Wurmus
2020-01-28 10:26                 ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=871rrxycs5.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.