gnu: Default to Guile 3.0.

This patch changes three things:

  1. package derivations are built using Guile 3.0;

  2. 'gexp->derivation' defaults to Guile 3.0;

  3. "guile3.0-" packages are deprecated aliases for the regular
     package, which now depends on Guile 3.0; "guile2.2-" packages are
     introduced; "guile-next" is renamed to "guile".

* gnu/packages/guile.scm (guile-2.0/fixed): Remove.
(guile-3.0/fixed): New variable.
(package-for-guile-3.0): Remove.
(package-for-guile-2.2): New variable.
(define-deprecated-guile3.0-package): New macro.
(guile-3.0)[name]: Change to "guile".
(guile-json-3)[native-inputs, inputs]: New fields.
(guile2.2-json): New variable.
(guile3.0-json): Deprecate.
(guile-gdbm-ffi)[native-inputs]: Switch to GUILE-3.0.
(guile2.2-gdbm-ffi): New variable.
(guile3.0-gdbm-ffi): Deprecate.
(guile-sqlite3): Switch to GUILE-3.0.
(guile2.2-sqlite3): New variable.
(guile3.0-sqlite3): Deprecate.
(guile-bytestructures): Switch to GUILE-3.0.
(guile2.2-bytestructures): New variable.
(guile3.0-bytestructures): Deprecate.
(guile-git): Switch to GUILE-3.0.
(guile2.2-git): New variable.
(guile3.0-git): Deprecate.
(guile-2.2/bug-fix):
* gnu/packages/ci.scm (cuirass): Switch to GUILE-3.0.
* gnu/packages/emacs-xyz.scm (emacs-guix): Switch to GUILE-3.0.
* gnu/packages/gtk.scm (guile-cairo)[arguments]: New field.
Switch to GUILE-3.0.
(guile2.2-cairo): New variable.
(guile3.0-cairo): Deprecate.
(guile-rsvg): Switch to GUILE-3.0.
(guile2.2-cairo): New variable.
(guile3.0-cairo): Deprecate.
(guile-present): Switch to GUILE-3.0.
(guile2.2-present): New variable.
(guile3.0-present): Deprecate.
(guile-gnome)[propagated-inputs]: Use GUILE2.2-CAIRO and GUILE2.2-LIB.
* gnu/packages/guile-xyz.scm (guile-fibers)[arguments]: Add #:configure-flags.
Switch to GUILE-3.0.
(guile2.2-fibers): New variable.
(guile3.0-fibers): Deprecate.
(guile-syntax-highlight): Switch to GUILE-3.0.
(guile2.2-syntax-highlight): New variable.
(guile3.0-syntax-highlight): Deprecate.
(guile-colorized): Switch to GUILE-3.0.
(guile2.2-colorized): New variable.
(guile3.0-colorized): Deprecate.
(guile-pfds): Switch to GUILE-3.0.
(guile2.2-pfds): New variable.
(guile3.0-pfds): Deprecate.
(guile-simple-zmq): Switch to GUILE-3.0.
(guile2.2-simple-zmq): New variable.
(guile3.0-simple-zmq): Deprecate.
(guile-newt): Switch to GUILE-3.0.
(guile2.2-newt): New variable.
(guile3.0-newt): Deprecate.
(guile-parted): Switch to GUILE-3.0.
(guile2.2-parted): New variable.
(guile3.0-parted): Deprecate.
(guile-config): Switch to GUILE-3.0.
(guile2.2-config): New variable.
(guile3.0-config): Deprecate.
(guile-hall): Switch to GUILE-3.0.
(guile2.2-hall): New variable.
(guile3.0-hall): Deprecate.
(guile-ics): Switch to GUILE-3.0.
(guile2.2-ics): New variable.
(guile3.0-ics): Deprecate.
(guile-wisp)[arguments]: Add 'support-guile-3.0' phase.
Switch to GUILE-3.0.
(guile2.2-wisp): New variable.
(guile3.0-wisp): Deprecate.
(guile-lib): Switch to GUILE-3.0.
(guile2.2-lib): New variable.
(guile3.0-lib): Deprecate.
(guile-minikanren): Switch to GUILE-3.0.
(guile2.2-minikanren): New variable.
(guile3.0-minikanren): Deprecate.
(guile-irregex): Switch to GUILE-3.0.
(guile2.2-irregex): New variable.
(guile3.0-irregex): Deprecate.
(haunt): Switch to GUILE-3.0, and remove GUILE-READER.
(guile2.2-haunt): New variable.
(guile3.0-haunt): Deprecate.
(guile-commonmark): Switch to GUILE-3.0.
(guile2.2-commonmark): New variable.
(guile3.0-commonmark): Deprecate.
(mcron): Switch to GUILE-3.0.
(guile2.0-mcron): New variable.
(guile3.0-mcron): Deprecate.
(guile-picture-language): Switch to GUILE-3.0.
(guile2.2-picture-language): New variable.
(guile3.0-picture-language): Deprecate.
(guile-gi): Switch to GUILE-3.0.
(guile2.2-gi): New variable.
(guile3.0-gi): Deprecate.
(guile-hashing): Switch to GUILE-3.0.
(guile2.2-hashing): New variable.
(guile3.0-hashing): Deprecate.
* gnu/packages/package-management.scm (guix): Switch to GUILE-3.0.
(guile2.2-guix): New variable.
(guile3.0-guix): Deprecate.
(gwl): Replace "guile3.0-" with "guile-".
(guix-jupyter)[source]: Adjust for Guile 3.0.
Switch to GUILE-3.0.
* gnu/packages/ssh.scm (guile-ssh): Switch to GUILE-3.0.
(guile2.2-ssh): New variable.
(guile3.0-ssh): Deprecate.
* gnu/packages/admin.scm (shepherd): Switch to GUILE-3.0.
(guile2.2-shepherd): New variable.
(guile3.0-shepherd): Deprecate.
* gnu/packages/mail.scm (mailutils): Switch to GUILE-3.0.
(guile2.2-mailutils): New variable.
(guile3.0-mailutils): Deprecate.
* gnu/packages/plotutils.scm (guile-charting): Switch to GUILE-3.0.
(guile2.2-charting): New variable.
(guile3.0-charting): Deprecate.
* gnu/packages/version-control.scm (libgit2): Switch to GUILE-3.0.
* gnu/packages/vpn.scm (vpnc-scripts): Switch to GUILE-3.0.
* gnu/packages/web.scm (guix-data-service): Switch to GUILE-3.0.
(hpcguix-web): Switch to GUILE-3.0.
* guix/self.scm (specification->package): Refer to the "guile-" variants
instead of "guile3.0-".
* guix/gexp.scm (default-guile): Change to GUILE-3.0.
* build-aux/build-self.scm (build): #:guile-version defaults to "3.0".
* gnu/packages/commencement.scm (guile-final): Base on GUILE-3.0/FIXED.
This commit is contained in:
Ludovic Courtès 2020-02-23 00:20:30 +01:00
parent d8f78f5448
commit b6bee63bed
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
18 changed files with 358 additions and 233 deletions

View file

@ -383,11 +383,11 @@ (define* (build source
#:key verbose? (version (date-version-string)) system
(pull-version 0)
;; For the standalone Guix, default to Guile 2.2. For old
;; For the standalone Guix, default to Guile 3.0. For old
;; versions of 'guix pull' (pre-0.15.0), we have to use the
;; same Guile as the current one.
(guile-version (if (> pull-version 0)
"2.2"
"3.0"
(effective-version)))
#:allow-other-keys

View file

@ -211,10 +211,10 @@ (define-public shepherd
`(("pkg-config" ,pkg-config)
;; This is the Guile we use as a cross-compiler...
("guile" ,guile-2.2)))
("guile" ,guile-3.0)))
(inputs
;; ... and this is the one that appears in shebangs when cross-compiling.
`(("guile" ,guile-2.2)
`(("guile" ,guile-3.0)
;; The 'shepherd' command uses Readline when used interactively. It's
;; an unusual use case though, so we don't propagate it.
@ -228,15 +228,18 @@ (define-public shepherd
(license license:gpl3+)
(home-page "https://www.gnu.org/software/shepherd/")))
(define-public guile3.0-shepherd
(define-public guile2.2-shepherd
(package
(inherit shepherd)
(name "guile3.0-shepherd")
(name "guile2.2-shepherd")
(native-inputs
`(("pkg-config" ,pkg-config)
("guile" ,guile-next)))
("guile" ,guile-2.2)))
(inputs
`(("guile" ,guile-next)))))
`(("guile" ,guile-2.2)))))
(define-public guile3.0-shepherd
(deprecated-package "guile3.0-shepherd" shepherd))
(define-public cloud-utils
(package

View file

@ -120,7 +120,7 @@ (define-public cuirass
`("GUILE_LOAD_COMPILED_PATH" ":" prefix (,objs)))
#t))))))
(inputs
`(("guile" ,guile-2.2)
`(("guile" ,guile-3.0)
("guile-fibers" ,guile-fibers)
("guile-gcrypt" ,guile-gcrypt)
("guile-json" ,guile-json-3)

View file

@ -3589,7 +3589,7 @@ (define-public guile-final
;; This package must be public because other modules refer to it. However,
;; mark it as hidden so that 'fold-packages' ignores it.
(with-boot4 (hidden-package
(package-with-bootstrap-guile guile-2.2/fixed))))
(package-with-bootstrap-guile guile-3.0/fixed))))
(define glibc-utf8-locales-final
;; Now that we have GUILE-FINAL, build the UTF-8 locales. They are needed

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
@ -2207,7 +2207,7 @@ (define-public emacs-guix
`(("pkg-config" ,pkg-config)
("emacs" ,emacs-minimal)))
(inputs
`(("guile" ,guile-2.2)
`(("guile" ,guile-3.0)
("guix" ,guix)))
(propagated-inputs
`(("geiser" ,emacs-geiser)

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2015, 2018 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2014, 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
@ -493,7 +493,7 @@ (define-public guile-gcrypt
("texinfo" ,texinfo)
("guile" ,guile-2.2)))
(inputs
`(("guile" ,guile-2.2)
`(("guile" ,guile-3.0)
("libgcrypt" ,libgcrypt)))
(synopsis "Cryptography library for Guile using Libgcrypt")
(description
@ -514,17 +514,17 @@ (define-public guile2.0-gcrypt
`(("guile" ,guile-2.0)
,@(alist-delete "guile" (package-inputs guile-gcrypt))))))
(define-public guile3.0-gcrypt
(define-public guile2.2-gcrypt
(package
(inherit guile-gcrypt)
(name "guile3.0-gcrypt")
(native-inputs
`(("guile" ,guile-next)
,@(alist-delete "guile" (package-native-inputs guile-gcrypt))))
(name "guile2.2-gcrypt")
(inputs
`(("guile" ,guile-next)
`(("guile" ,guile-2.2)
,@(alist-delete "guile" (package-inputs guile-gcrypt))))))
(define-public guile3.0-gcrypt
(deprecated-package "guile3.0-gcrypt" guile-gcrypt))
(define-public python-gpg
(package
(name "python-gpg")

View file

@ -875,10 +875,14 @@ (define-public guile-cairo
"#include <libguile.h>\n#include <string.h>\n"))
#t)))))
(build-system gnu-build-system)
(arguments
;; Uses of 'scm_t_uint8' & co. are deprecated; don't stop the build
;; because of them.
'(#:configure-flags '("--disable-Werror")))
(inputs
`(("guile-lib" ,guile-lib)
("expat" ,expat)
("guile" ,guile-2.2)))
("guile" ,guile-3.0)))
(propagated-inputs
;; The .pc file refers to 'cairo'.
`(("cairo" ,cairo)))
@ -895,22 +899,19 @@ (define-public guile-cairo
exceptions, macros, and a dynamic programming environment.")
(license license:lgpl3+)))
(define-public guile3.0-cairo
(define-public guile2.2-cairo
(package
(inherit guile-cairo)
(name "guile3.0-cairo")
(arguments
(substitute-keyword-arguments (package-arguments guile-cairo)
((#:configure-flags flags ''())
;; Uses of 'scm_t_uint8' & co. are deprecated; don't stop the build
;; because of them.
`(cons "--disable-Werror" ,flags))))
(name "guile2.2-cairo")
(inputs
`(("guile" ,guile-3.0)
("guile-lib" ,guile3.0-lib)
`(("guile" ,guile-2.2)
("guile-lib" ,guile2.2-lib)
,@(fold alist-delete (package-inputs guile-cairo)
'("guile" "guile-lib"))))))
(define-public guile3.0-cairo
(deprecated-package "guile3.0-cairo" guile-cairo))
(define-public guile-rsvg
;; Use a recent snapshot that supports Guile 2.2 and beyond.
(let ((commit "05c6a2fd67e4fea1a7c3ff776729dc931bae6678")
@ -947,7 +948,7 @@ (define-public guile-rsvg
("automake" ,automake)
("libtool" ,libtool)
("texinfo" ,texinfo)))
(inputs `(("guile" ,guile-2.2)
(inputs `(("guile" ,guile-3.0)
("librsvg" ,librsvg)
("guile-lib" ,guile-lib))) ;for (unit-test)
(propagated-inputs `(("guile-cairo" ,guile-cairo)))
@ -958,16 +959,19 @@ (define-public guile-rsvg
(home-page "http://wingolog.org/projects/guile-rsvg/")
(license license:lgpl2.1+))))
(define-public guile3.0-rsvg
(define-public guile2.2-rsvg
(package
(inherit guile-rsvg)
(name "guile3.0-rsvg")
(name "guile2.2-rsvg")
(inputs
`(("guile" ,guile-3.0)
("guile-lib" ,guile3.0-lib)
`(("guile" ,guile-2.2)
("guile-lib" ,guile2.2-lib)
,@(fold alist-delete (package-inputs guile-rsvg)
'("guile" "guile-lib"))))
(propagated-inputs `(("guile-cairo" ,guile3.0-cairo)))))
(propagated-inputs `(("guile-cairo" ,guile2.2-cairo)))))
(define-public guile3.0-rsvg
(deprecated-package "guile3.0-rsvg" guile-rsvg))
(define-public guile-present
(package
@ -1013,7 +1017,7 @@ (define-public guile-present
out "/lib/guile/" version "/site-ccache "))))
#t)))))
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.2)))
(inputs `(("guile" ,guile-3.0)))
(propagated-inputs
;; These are used by the (present …) modules.
`(("guile-lib" ,guile-lib)
@ -1029,15 +1033,18 @@ (define-public guile-present
documents.")
(license license:lgpl3+)))
(define-public guile3.0-present
(define-public guile2.2-present
(package
(inherit guile-present)
(name "guile3.0-present")
(inputs `(("guile" ,guile-3.0)))
(name "guile2.2-present")
(inputs `(("guile" ,guile-2.2)))
(propagated-inputs
`(("guile-lib" ,guile3.0-lib)
("guile-cairo" ,guile3.0-cairo)
("guile-rsvg" ,guile3.0-rsvg)))))
`(("guile-lib" ,guile2.2-lib)
("guile-cairo" ,guile2.2-cairo)
("guile-rsvg" ,guile2.2-rsvg)))))
(define-public guile3.0-present
(deprecated-package "guile3.0-present" guile-present))
(define-public guile-gnome
(package
@ -1072,9 +1079,9 @@ (define-public guile-gnome
("glib" ,glib)))
(inputs `(("guile" ,guile-2.2)))
(propagated-inputs
`(("guile-cairo" ,guile-cairo)
`(("guile-cairo" ,guile2.2-cairo)
("g-wrap" ,g-wrap)
("guile-lib" ,guile-lib)))
("guile-lib" ,guile2.2-lib)))
(arguments
`(#:tests? #f ;FIXME
#:phases (modify-phases %standard-phases

View file

@ -523,7 +523,9 @@ (define-public guile-fibers
#t))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
'(;; The code uses 'scm_t_uint64' et al., which are deprecated in 3.0.
#:configure-flags '("CFLAGS=-Wno-error=deprecated-declarations")
#:phases (modify-phases %standard-phases
(add-after 'install 'mode-guile-objects
(lambda* (#:key outputs #:allow-other-keys)
;; .go files are installed to "lib/guile/X.Y/cache".
@ -540,7 +542,7 @@ (define-public guile-fibers
`(("texinfo" ,texinfo)
("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(synopsis "Lightweight concurrency facility for Guile")
(description
"Fibers is a Guile library that implements a a lightweight concurrency
@ -556,15 +558,14 @@ (define-public guile-fibers
(home-page "https://github.com/wingo/fibers")
(license license:lgpl3+)))
(define-public guile3.0-fibers
(define-public guile2.0-fibers
(package
(inherit guile-fibers)
(name "guile3.0-fibers")
(arguments
;; The code uses 'scm_t_uint64' et al., which are deprecated in 3.0.
`(#:configure-flags '("CFLAGS=-Wno-error=deprecated-declarations")
,@(package-arguments guile-fibers)))
(inputs `(("guile" ,guile-3.0)))))
(name "guile2.2-fibers")
(inputs `(("guile" ,guile-2.2)))))
(define-public guile3.0-fibers
(deprecated-package "guile3.0-fibers" guile-fibers))
(define-public guile-syntax-highlight
(package
@ -591,7 +592,7 @@ (define-public guile-syntax-highlight
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(synopsis "General-purpose syntax highlighter for GNU Guile")
(description "Guile-syntax-highlight is a general-purpose syntax
highlighting library for GNU Guile. It can parse code written in various
@ -600,11 +601,14 @@ (define-public guile-syntax-highlight
(home-page "http://dthompson.us/projects/guile-syntax-highlight.html")
(license license:lgpl3+)))
(define-public guile3.0-syntax-highlight
(define-public guile2.2-syntax-highlight
(package
(inherit guile-syntax-highlight)
(name "guile3.0-syntax-highlight")
(inputs `(("guile" ,guile-3.0)))))
(name "guile2.2-syntax-highlight")
(inputs `(("guile" ,guile-2.2)))))
(define-public guile3.0-syntax-highlight
(deprecated-package "guile3.0-syntax-highlight" guile-syntax-highlight))
(define-public guile-sjson
(package
@ -692,18 +696,21 @@ (define-public guile-colorized
(base32 "10mv8c63159r3qvwwdvsgnsvdg7nc2ghak85zapwqpv4ywrqp9zc"))))
(build-system guile-build-system)
(native-inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(home-page "https://gitlab.com/NalaGinrut/guile-colorized")
(synopsis "Colorized REPL for Guile")
(description
"Guile-colorized provides you with a colorized REPL for GNU Guile.")
(license license:gpl3+)))
(define-public guile3.0-colorized
(define-public guile2.2-colorized
(package
(inherit guile-colorized)
(name "guile3.0-colorized")
(native-inputs `(("guile" ,guile-next)))))
(name "guile2.2-colorized")
(native-inputs `(("guile" ,guile-2.2)))))
(define-public guile3.0-colorized
(deprecated-package "guile3.0-colorized" guile-colorized))
(define-public guile-pfds
(package
@ -723,6 +730,14 @@ (define-public guile-pfds
(arguments
'(#:source-directory "src"
#:phases (modify-phases %standard-phases
(add-after 'unpack 'work-around-guile-bug
(lambda _
;; See bug #39210.
(substitute* '("fingertrees.sls"
"queues/private/condition.sls"
"deques/private/condition.sls")
(("&assertion") "&violation"))
#t))
(add-after 'unpack 'move-files-around
(lambda _
;; Move files under a pfds/ directory to reflect the
@ -756,7 +771,7 @@ (define-public guile-pfds
(find-files "." "\\.sls$"))
#t)))))
(native-inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(synopsis "Purely functional data structures for Guile")
(description
"This package provides purely functional data structures written in R6RS
@ -777,23 +792,19 @@ (define-public guile-pfds
@end itemize\n")
(license license:bsd-3)))
(define-public guile3.0-pfds
(define-public guile2.2-pfds
(package
(inherit guile-pfds)
(name "guile3.0-pfds")
(native-inputs `(("guile" ,guile-3.0)))
(name "guile2.2-pfds")
(native-inputs `(("guile" ,guile-2.2)))
(arguments
(substitute-keyword-arguments (package-arguments guile-pfds)
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'work-around-guile-bug
(lambda _
;; See bug #39210.
(substitute* '("fingertrees.sls"
"queues/private/condition.sls"
"deques/private/condition.sls")
(("&assertion") "&violation"))
#t))))))))
(delete 'work-around-guile-bug)))))))
(define-public guile3.0-pfds
(deprecated-package "guile3.0-pfds" guile-pfds))
(define-public guile-aa-tree
(package
@ -847,7 +858,7 @@ (define-public guile-simple-zmq
(assoc-ref inputs "zeromq"))))
#t)))))
(native-inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(inputs
`(("zeromq" ,zeromq)))
(home-page "https://github.com/jerry40/guile-simple-zmq")
@ -857,11 +868,14 @@ (define-public guile-simple-zmq
messaging library.")
(license license:gpl3+))))
(define-public guile3.0-simple-zmq
(define-public guile2.2-simple-zmq
(package
(inherit guile-simple-zmq)
(name "guile3.0-simple-zmq")
(native-inputs `(("guile" ,guile-next)))))
(name "guile2.2-simple-zmq")
(native-inputs `(("guile" ,guile-2.2)))))
(define-public guile3.0-simple-zmq
(deprecated-package "guile3.0-simple-zmq" guile-simple-zmq))
(define-public jupyter-guile-kernel
(let ((commit "a7db9245a886e104138474df46c3e88b95cff629")
@ -1068,7 +1082,7 @@ (define-public guile-newt
'(#:make-flags
'("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings
(inputs
`(("guile" ,guile-2.2)
`(("guile" ,guile-3.0)
("newt" ,newt)))
(native-inputs
`(("autoconf" ,autoconf)
@ -1082,13 +1096,16 @@ (define-public guile-newt
(home-page "https://gitlab.com/mothacehe/guile-newt")
(license license:gpl3+)))
(define-public guile3.0-newt
(define-public guile2.2-newt
(package
(inherit guile-newt)
(name "guile3.0-newt")
(name "guile2.2-newt")
(inputs `(("guile" ,guile-next)
,@(alist-delete "guile" (package-inputs guile-newt))))))
(define-public guile3.0-newt
(deprecated-package "guile3.0-newt" guile-newt))
(define-public guile-mastodon
(package
(name "guile-mastodon")
@ -1149,7 +1166,7 @@ (define-public guile-parted
'(#:make-flags
'("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings
(inputs
`(("guile" ,guile-2.2)
`(("guile" ,guile-3.0)
("parted" ,parted)))
(propagated-inputs
`(("guile-bytestructures" ,guile-bytestructures)))
@ -1165,14 +1182,17 @@ (define-public guile-parted
(home-page "https://gitlab.com/mothacehe/guile-parted")
(license license:gpl3+)))
(define-public guile3.0-parted
(define-public guile2.2-parted
(package
(inherit guile-parted)
(name "guile3.0-parted")
(name "guile2.2-parted")
(inputs `(("guile" ,guile-next)
,@(alist-delete "guile" (package-inputs guile-parted))))
(propagated-inputs
`(("guile-bytestructures" ,guile3.0-bytestructures)))))
`(("guile-bytestructures" ,guile2.2-bytestructures)))))
(define-public guile3.0-parted
(deprecated-package "guile3.0-parted" guile-parted))
(define-public guile-xosd
(package
@ -1359,7 +1379,7 @@ (define-public guile-config
("automake" ,automake)
("pkg-config" ,pkg-config)
("texinfo" ,texinfo)))
(inputs `(("guile" ,guile-2.2)))
(inputs `(("guile" ,guile-3.0)))
(synopsis
"Guile application configuration parsing library.")
(description
@ -1374,13 +1394,16 @@ (define-public guile-config
"https://gitlab.com/a-sassmannshausen/guile-config")
(license license:gpl3+)))
(define-public guile3.0-config
(define-public guile2.2-config
(package
(inherit guile-config)
(name "guile3.0-config")
(inputs `(("guile" ,guile-next)
(name "guile2.2-config")
(inputs `(("guile" ,guile-2.2)
,@(alist-delete "guile" (package-inputs guile-config))))))
(define-public guile3.0-config
(deprecated-package "guile3.0-config" guile-config))
(define-public guile-hall
(package
(name "guile-hall")
@ -1447,7 +1470,7 @@ (define-public guile-hall
("automake" ,automake)
("pkg-config" ,pkg-config)
("texinfo" ,texinfo)))
(inputs `(("guile" ,guile-2.2)))
(inputs `(("guile" ,guile-3.0)))
(propagated-inputs
`(("guile-config" ,guile-config)))
(synopsis "Guile project tooling")
@ -1459,17 +1482,20 @@ (define-public guile-hall
(home-page "https://gitlab.com/a-sassmannshausen/guile-hall")
(license license:gpl3+)))
(define-public guile3.0-hall
(define-public guile2.2-hall
(package
(inherit guile-hall)
(name "guile3.0-hall")
(inputs `(("guile" ,guile-next)
(name "guile2.2-hall")
(inputs `(("guile" ,guile-2.2)
,@(alist-delete "guile" (package-inputs guile-hall))))
(propagated-inputs
`(("guile-config" ,guile3.0-config)
`(("guile-config" ,guile2.2-config)
,@(alist-delete "guile-config"
(package-propagated-inputs guile-hall))))))
(define-public guile3.0-hall
(deprecated-package "guile3.0-hall" guile-hall))
(define-public guile-ics
(package
(name "guile-ics")
@ -1499,7 +1525,7 @@ (define-public guile-ics
;; Gettext brings 'AC_LIB_LINKFLAGS_FROM_LIBS'.
("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.2) ("which" ,which)))
(inputs `(("guile" ,guile-3.0) ("which" ,which)))
(propagated-inputs `(("guile-lib" ,guile-lib)))
(home-page "https://github.com/artyom-poptsov/guile-ics")
(synopsis "Guile parser library for the iCalendar format")
@ -1510,13 +1536,16 @@ (define-public guile-ics
The library is shipped with documentation in Info format and usage examples.")
(license license:gpl3+)))
(define-public guile3.0-ics
(define-public guile2.2-ics
(package
(inherit guile-ics)
(name "guile3.0-ics")
(inputs `(("guile" ,guile-3.0)
(name "guile2.2-ics")
(inputs `(("guile" ,guile-2.2)
,@(alist-delete "guile" (package-inputs guile-ics))))
(propagated-inputs `(("guile-lib" ,guile3.0-lib)))))
(propagated-inputs `(("guile-lib" ,guile2.2-lib)))))
(define-public guile3.0-ics
(deprecated-package "guile3.0-ics" guile-ics))
(define-public guile-wisp
(package
@ -1543,6 +1572,12 @@ (define-public guile-wisp
(guix build emacs-utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'support-guile-3.0
(lambda _
(substitute* "configure"
(("_guile_versions_to_search=\"2.2")
"_guile_versions_to_search=\"3.0 2.2"))
#t))
(add-before 'configure 'patch-/usr/bin/env
(lambda _
(substitute* "Makefile.in"
@ -1581,7 +1616,7 @@ (define-public guile-wisp
(assoc-ref emacs:%standard-phases 'make-autoloads)))))
(home-page "https://www.draketo.de/english/wisp")
(inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(native-inputs
`(("emacs" ,emacs-minimal)
("python" ,python)
@ -1592,21 +1627,14 @@ (define-public guile-wisp
users and in some situations.")
(license license:gpl3+)))
(define-public guile3.0-wisp
(define-public guile2.2-wisp
(package
(inherit guile-wisp)
(name "guile3.0-wisp")
(inputs `(("guile" ,guile-3.0)))
(arguments
(substitute-keyword-arguments (package-arguments guile-wisp)
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'support-guile-3.0
(lambda _
(substitute* "configure"
(("_guile_versions_to_search=\"2.2")
"_guile_versions_to_search=\"3.0 2.2"))
#t))))))))
(name "guile2.2-wisp")
(inputs `(("guile" ,guile-2.2)))))
(define-public guile3.0-wisp
(deprecated-package "guile3.0-wisp" guile-wisp))
(define-public guile-sly
(package
@ -1847,7 +1875,7 @@ (define-public guile-lib
$(libdir)/guile/@GUILE_EFFECTIVE_VERSION@/site-ccache\n"))
#t)))))
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.2)))
(inputs `(("guile" ,guile-3.0)))
(home-page "https://www.nongnu.org/guile-lib/")
(synopsis "Collection of useful Guile Scheme modules")
(description
@ -1867,11 +1895,14 @@ (define-public guile2.0-lib
(name "guile2.0-lib")
(inputs `(("guile" ,guile-2.0)))))
(define-public guile3.0-lib
(define-public guile2.2-lib
(package
(inherit guile-lib)
(name "guile3.0-lib")
(inputs `(("guile" ,guile-3.0)))))
(name "guile2.2-lib")
(inputs `(("guile" ,guile-2.2)))))
(define-public guile3.0-lib
(deprecated-package "guile3.0-lib" guile-lib))
(define-public guile-minikanren
(package
@ -1888,7 +1919,7 @@ (define-public guile-minikanren
"0r50jlpzi940jlmxyy3ddqqwmj5r12gb4bcv0ssini9v8km13xz6"))))
(build-system guile-build-system)
(native-inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(home-page "https://github.com/ijp/minikanren")
(synopsis "MiniKanren declarative logic system, packaged for Guile")
(description
@ -1909,11 +1940,14 @@ (define-public guile2.0-minikanren
(name "guile2.0-minikanren")
(native-inputs `(("guile" ,guile-2.0)))))
(define-public guile3.0-minikanren
(define-public guile2.2-minikanren
(package
(inherit guile-minikanren)
(name "guile3.0-minikanren")
(native-inputs `(("guile" ,guile-next)))))
(name "guile2.2-minikanren")
(native-inputs `(("guile" ,guile-2.2)))))
(define-public guile3.0-minikanren
(deprecated-package "guile3.0-minikanren" guile-minikanren))
(define-public guile-irregex
(package
@ -1946,7 +1980,7 @@ (define-public guile-irregex
#t)))
#:source-directory "src"))
(native-inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(home-page "http://synthcode.com/scheme/irregex")
(synopsis "S-expression based regular expressions")
(description
@ -1961,11 +1995,14 @@ (define-public guile2.0-irregex
(name "guile2.0-irregex")
(native-inputs `(("guile" ,guile-2.0)))))
(define-public guile3.0-irregex
(define-public guile2.2-irregex
(package
(inherit guile-irregex)
(name "guile3.0-irregex")
(native-inputs `(("guile" ,guile-next)))))
(name "guile2.2-irregex")
(native-inputs `(("guile" ,guile-2.2)))))
(define-public guile3.0-irregex
(deprecated-package "guile3.0-irregex" guile-irregex))
(define-public haunt
(package
@ -2031,9 +2068,10 @@ (define-public haunt
`(("pkg-config" ,pkg-config)
("texinfo" ,texinfo)))
(inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(propagated-inputs
`(("guile-reader" ,guile-reader)
;; XXX: Guile-Reader is currently unavailable for Guile 2.2 so strip it.
`(;;("guile-reader" ,guile-reader)
("guile-commonmark" ,guile-commonmark)))
(synopsis "Functional static site generator")
(description "Haunt is a static site generator written in Guile
@ -2042,14 +2080,14 @@ (define-public haunt
(home-page "http://haunt.dthompson.us")
(license license:gpl3+)))
(define-public guile3.0-haunt
(define-public guile2.2-haunt
(package
(inherit haunt)
(name "guile3.0-haunt")
(inputs `(("guile" ,guile-3.0)))
(name "guile2.2-haunt")
(inputs `(("guile" ,guile-2.2)))
(propagated-inputs
;; XXX: Guile-Reader is currently unavailable for Guile 3.0 so strip it.
`(("guile-commonmark" ,guile3.0-commonmark)))))
`(("guile-reader" ,guile-reader)
("guile-commonmark" ,guile2.2-commonmark)))))
(define-public guile2.0-haunt
(package
@ -2057,6 +2095,9 @@ (define-public guile2.0-haunt
(name "guile2.0-haunt")
(inputs `(("guile" ,guile-2.0)))))
(define-public guile3.0-haunt
(deprecated-package "guile3.0-haunt" haunt))
(define-public guile-redis
(package
(name "guile-redis")
@ -2112,7 +2153,7 @@ (define-public guile-commonmark
#t))))
(build-system gnu-build-system)
(inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(synopsis "CommonMark parser for Guile")
@ -2125,11 +2166,11 @@ (define-public guile-commonmark
(home-page "https://github.com/OrangeShark/guile-commonmark")
(license license:lgpl3+)))
(define-public guile3.0-commonmark
(define-public guile2.2-commonmark
(package
(inherit guile-commonmark)
(name "guile3.0-commonmark")
(inputs `(("guile" ,guile-3.0)))))
(name "guile2.2-commonmark")
(inputs `(("guile" ,guile-2.2)))))
(define-public guile2.0-commonmark
(package
@ -2137,6 +2178,9 @@ (define-public guile2.0-commonmark
(name "guile2.0-commonmark")
(inputs `(("guile" ,guile-2.0)))))
(define-public guile3.0-commonmark
(deprecated-package "guile3.0-commonmark" guile-commonmark))
(define-public mcron
(package
(name "mcron")
@ -2174,7 +2218,7 @@ (define-public mcron
#t)))))
(native-inputs `(("pkg-config" ,pkg-config)
("tzdata" ,tzdata-for-tests)))
(inputs `(("guile" ,guile-2.2)))
(inputs `(("guile" ,guile-3.0)))
(home-page "https://www.gnu.org/software/mcron/")
(synopsis "Run jobs at scheduled times")
(description
@ -2184,11 +2228,14 @@ (define-public mcron
format is also supported.")
(license license:gpl3+)))
(define-public guile3.0-mcron
(define-public guile2.2-mcron
(package
(inherit mcron)
(name "guile3.0-mcron")
(inputs `(("guile" ,guile-3.0)))))
(name "guile2.2-mcron")
(inputs `(("guile" ,guile-2.2)))))
(define-public guile3.0-mcron
(deprecated-package "guile3.0-mcron" mcron))
(define-public mcron2
;; This was mthl's mcron development branch, and it became mcron 1.1.
@ -2211,7 +2258,7 @@ (define-public guile-picture-language
"1ydvw9dvssdvlvhh1dr8inyzy2x6m41qgp8hsivca1xysr4gc23a"))))
(build-system gnu-build-system)
(inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@ -2225,11 +2272,15 @@ (define-public guile-picture-language
The picture values can directly be displayed in Geiser.")
(license license:lgpl3+))))
(define-public guile3.0-picture-language
(define-public guile2.2-picture-language
(package
(inherit guile-picture-language)
(name "guile3.0-picture-language")
(inputs `(("guile" ,guile-3.0)))))
(name "guile2.2-picture-language")
(inputs `(("guile" ,guile-2.2)))))
(define-public guile3.0-picture-language
(deprecated-package "guile3.0-picture-language"
guile-picture-language))
(define-public guile-studio
(package
@ -2526,7 +2577,7 @@ (define-public guile-gi
("gtk+" ,gtk+)
("guile-lib" ,guile-lib)
("webkitgtk" ,webkitgtk)))
(inputs `(("guile" ,guile-2.2)))
(inputs `(("guile" ,guile-3.0)))
(home-page "https://github.com/spk121/guile-gi")
(synopsis "GObject bindings for Guile")
(description
@ -2535,14 +2586,17 @@ (define-public guile-gi
pre-alpha code.")
(license license:gpl3+)))
(define-public guile3.0-gi
(define-public guile2.2-gi
(package
(inherit guile-gi)
(name "guile3.0-gi")
(name "guile2.2-gi")
(native-inputs
`(("guile" ,guile-3.0)
`(("guile" ,guile-2.2)
,@(package-native-inputs guile-gi)))))
(define-public guile3.0-gi
(deprecated-package "guile3.0-gi" guile-gi))
(define-public guile-srfi-159
(let ((commit "1bd98abda2ae4ef8f36761a167903e55c6bda7bb")
(revision "0"))
@ -3012,7 +3066,7 @@ (define (sls->scm sls)
(rename-file "private" "hashing/private")
#t)))))
(native-inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(synopsis "Cryprographic hash functions implemented in Scheme")
(description
"The @code{(hashing @dots{})} modules implement cryptographic hash
@ -3020,13 +3074,16 @@ (define (sls->scm sls)
SHA-512).")
(license license:expat)))
(define-public guile3.0-hashing
(define-public guile2.2-hashing
(package
(inherit guile-hashing)
(name "guile3.0-hashing")
(name "guile2.2-hashing")
(native-inputs
`(("guile" ,guile-next)))))
(define-public guile3.0-hashing
(deprecated-package "guile3.0-hashing" guile-hashing))
(define-public guile-webutils
(let ((commit "8541904f761066dc9c27b1153e9a838be9a55299")
(revision "0"))

View file

@ -252,15 +252,6 @@ (define-public guile-2.2
(define-deprecated guile-2.2/bug-fix guile-2.2)
(define-public guile-2.2/fixed
;; A package of Guile 2.2 that's rarely changed. It is the one used
;; in the `base' module, and thus changing it entails a full rebuild.
(package
(inherit guile-2.2)
(properties '((hidden? . #t) ;people should install 'guile-2.2'
(timeout . 72000) ;20 hours
(max-silent-time . 36000))))) ;10 hours (needed on ARM
; when heavily loaded)
(define-public guile-2.2.4
(package/inherit
guile-2.2
@ -277,7 +268,7 @@ (define-public guile-3.0
;; This is the latest Guile stable version.
(package
(inherit guile-2.2)
(name "guile-next") ;to be renamed to "guile"
(name "guile")
(version "3.0.1")
(source (origin
(inherit (package-source guile-2.2))
@ -300,6 +291,16 @@ (define-public guile-3.0
(define-public guile-next guile-3.0)
(define-public guile-3.0/fixed
;; A package of Guile that's rarely changed. It is the one used in the
;; `base' module, and thus changing it entails a full rebuild.
(package
(inherit guile-3.0)
(properties '((hidden? . #t) ;people should install 'guile-2.2'
(timeout . 72000) ;20 hours
(max-silent-time . 36000))))) ;10 hours (needed on ARM
; when heavily loaded)
(define* (make-guile-readline guile #:optional (name "guile-readline"))
(package
(name name)
@ -377,9 +378,32 @@ (define package-for-guile-2.0
(package-input-rewriting `((,guile-2.2 . ,guile-2.0))
(guile-variant-package-name "guile2.0")))
(define package-for-guile-3.0
(package-input-rewriting `((,guile-2.2 . ,guile-next))
(guile-variant-package-name "guile3.0")))
(define package-for-guile-2.2
(package-input-rewriting `((,guile-3.0 . ,guile-2.2))
(guile-variant-package-name "guile2.2")))
(define-syntax define-deprecated-guile3.0-package
(lambda (s)
"Define a deprecated package alias for \"guile3.0-something\"."
(syntax-case s ()
((_ name)
(and (identifier? #'name)
(string-prefix? "guile3.0-" (symbol->string (syntax->datum
#'name))))
(let ((->guile (lambda (str)
(let ((base (string-drop str
(string-length "guile3.0-"))))
(string-append "guile-" base)))))
(with-syntax ((package-name (symbol->string (syntax->datum #'name)))
(package
(datum->syntax
#'name
(string->symbol
(->guile (symbol->string (syntax->datum #'name)))))))
#'(begin
(define-deprecated name package
(deprecated-package package-name package))
(export name))))))))
(define-public guile-for-guile-emacs
(package (inherit guile-2.2)
@ -474,10 +498,16 @@ (define-public guile-json-3
version ".tar.gz"))
(sha256
(base32
"14m6b6g2maw0mkvfm4x63rqb54vgbpn1gcqs715ijw4bikfzlqfz"))))))
"14m6b6g2maw0mkvfm4x63rqb54vgbpn1gcqs715ijw4bikfzlqfz"))))
(native-inputs `(("pkg-config" ,pkg-config)
("guile" ,guile-3.0)))
(inputs `(("guile" ,guile-3.0)))))
(define-public guile2.2-json
(package-for-guile-2.2 guile-json-3))
(define-public guile3.0-json
(package-for-guile-3.0 guile-json-3))
(deprecated-package "guile3.0-json" guile-json-3))
;; There are two guile-gdbm packages, one using the FFI and one with
;; direct C bindings, hence the verbose name.
@ -518,7 +548,7 @@ (define-public guile-gdbm-ffi
(assoc-ref inputs "gdbm"))))
#t)))))
(native-inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(inputs
`(("gdbm" ,gdbm)))
(home-page "https://github.com/ijp/guile-gdbm")
@ -531,8 +561,10 @@ (define-public guile-gdbm-ffi
(define-public guile2.0-gdbm-ffi
(package-for-guile-2.0 guile-gdbm-ffi))
(define-public guile3.0-gdbm-ffi
(package-for-guile-3.0 guile-gdbm-ffi))
(define-public guile2.2-gdbm-ffi
(package-for-guile-2.2 guile-gdbm-ffi))
(define-deprecated-guile3.0-package guile3.0-gdbm-ffi)
(define-public guile-sqlite3
(package
@ -565,7 +597,7 @@ (define-public guile-sqlite3
("guile" ,guile-2.2)
("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)
`(("guile" ,guile-3.0)
("sqlite" ,sqlite)))
(synopsis "Access SQLite databases from Guile")
(description
@ -575,8 +607,10 @@ (define-public guile-sqlite3
(define-public guile2.0-sqlite3
(package-for-guile-2.0 guile-sqlite3))
(define-public guile3.0-sqlite3
(package-for-guile-3.0 guile-sqlite3))
(define-public guile2.2-sqlite3
(package-for-guile-2.2 guile-sqlite3))
(define-deprecated-guile3.0-package guile3.0-sqlite3)
(define-public guile-bytestructures
(package
@ -608,9 +642,9 @@ (define-public guile-bytestructures
`(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)
("guile" ,guile-2.2)))
("guile" ,guile-3.0)))
(inputs
`(("guile" ,guile-2.2)))
`(("guile" ,guile-3.0)))
(synopsis "Structured access to bytevector contents for Guile")
(description
"Guile bytestructures offers a system imitating the type system
@ -624,8 +658,10 @@ (define-public guile-bytestructures
(define-public guile2.0-bytestructures
(package-for-guile-2.0 guile-bytestructures))
(define-public guile3.0-bytestructures
(package-for-guile-3.0 guile-bytestructures))
(define-public guile2.2-bytestructures
(package-for-guile-2.2 guile-bytestructures))
(define-deprecated-guile3.0-package guile3.0-bytestructures)
(define-public guile-git
(package
@ -643,10 +679,10 @@ (define-public guile-git
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("guile" ,guile-2.2)
("guile" ,guile-3.0)
("guile-bytestructures" ,guile-bytestructures)))
(inputs
`(("guile" ,guile-2.2)
`(("guile" ,guile-3.0)
("libgit2" ,libgit2)))
(propagated-inputs
`(("guile-bytestructures" ,guile-bytestructures)))
@ -656,8 +692,8 @@ (define-public guile-git
manipulate repositories of the Git version control system.")
(license license:gpl3+)))
(define-public guile3.0-git
(package-for-guile-3.0 guile-git))
(define-public guile2.2-git
(package-for-guile-2.2 guile-git))
(define-public guile2.0-git
(let ((base (package-for-guile-2.0 guile-git)))
@ -670,5 +706,7 @@ (define-public guile2.0-git
,@(srfi-1:alist-delete "libgit2"
(package-inputs base)))))))
(define-deprecated-guile3.0-package guile3.0-git)
;;; guile.scm ends here

View file

@ -222,7 +222,7 @@ (define-public mailutils
`(("dejagnu" ,dejagnu)
("m4" ,m4)
("texinfo" ,texinfo)
("guile" ,guile-2.2)
("guile" ,guile-3.0)
("gsasl" ,gsasl)
("gnutls" ,gnutls)
("ncurses" ,ncurses)
@ -246,14 +246,17 @@ (define-public mailutils
;; Libraries are under LGPLv3+, and programs under GPLv3+.
(list gpl3+ lgpl3+))))
(define-public guile3.0-mailutils
(define-public guile2.2-mailutils
(package
(inherit mailutils)
(name "guile3.0-mailutils")
(name "guile2.2-mailutils")
(inputs
`(("guile" ,guile-3.0)
`(("guile" ,guile-2.2)
,@(alist-delete "guile" (package-inputs mailutils))))))
(define-public guile3.0-mailutils
(deprecated-package "guile3.0-mailutils" mailutils))
(define-public nullmailer
(package
(name "nullmailer")

View file

@ -307,7 +307,7 @@ (define code
("sqlite" ,sqlite)
("libgcrypt" ,libgcrypt)
("guile" ,guile-2.2)
("guile" ,guile-3.0)
;; Some of the tests use "unshare" when it is available.
("util-linux" ,util-linux)
@ -328,7 +328,7 @@ (define code
("glibc-utf8-locales" ,glibc-utf8-locales)))
(propagated-inputs
`(("gnutls" ,gnutls)
`(("gnutls" ,guile3.0-gnutls)
("guile-gcrypt" ,guile-gcrypt)
("guile-json" ,guile-json-3)
("guile-sqlite3" ,guile-sqlite3)
@ -360,7 +360,7 @@ (define-public guix-daemon
(fold alist-delete (package-native-inputs guix)
'("po4a" "graphviz" "help2man")))
(inputs
`(("gnutls" ,gnutls)
`(("gnutls" ,guile3.0-gnutls)
("guile-git" ,guile-git)
("guile-json" ,guile-json-3)
("guile-gcrypt" ,guile-gcrypt)
@ -408,31 +408,34 @@ (define-public guix-daemon
(define-public guile2.0-guix
(deprecated-package "guile2.0-guix" guix))
(define-public guile3.0-guix
(define-public guile2.2-guix
(package
(inherit guix)
(name "guile3.0-guix")
(name "guile2.2-guix")
(native-inputs
`(("guile" ,guile-3.0)
("gnutls" ,guile3.0-gnutls)
("guile-gcrypt" ,guile3.0-gcrypt)
("guile-json" ,guile3.0-json)
("guile-sqlite3" ,guile3.0-sqlite3)
("guile-ssh" ,guile3.0-ssh)
("guile-git" ,guile3.0-git)
`(("guile" ,guile-2.2)
("gnutls" ,guile2.2-gnutls)
("guile-gcrypt" ,guile2.2-gcrypt)
("guile-json" ,guile2.2-json)
("guile-sqlite3" ,guile2.2-sqlite3)
("guile-ssh" ,guile2.2-ssh)
("guile-git" ,guile2.2-git)
,@(fold alist-delete (package-native-inputs guix)
'("guile" "gnutls" "guile-gcrypt" "guile-json"
"guile-sqlite3" "guile-ssh" "guile-git"))))
(inputs
`(("guile" ,guile-3.0)
`(("guile" ,guile-2.2)
,@(alist-delete "guile" (package-inputs guix))))
(propagated-inputs
`(("gnutls" ,guile3.0-gnutls)
("guile-gcrypt" ,guile3.0-gcrypt)
("guile-json" ,guile3.0-json)
("guile-sqlite3" ,guile3.0-sqlite3)
("guile-ssh" ,guile3.0-ssh)
("guile-git" ,guile3.0-git)))))
`(("gnutls" ,gnutls)
("guile-gcrypt" ,guile2.2-gcrypt)
("guile-json" ,guile2.2-json)
("guile-sqlite3" ,guile2.2-sqlite3)
("guile-ssh" ,guile2.2-ssh)
("guile-git" ,guile2.2-git)))))
(define-public guile3.0-guix
(deprecated-package "guile3.0-guix" guix))
(define-public guix-minimal
;; A version of Guix which is built with the minimal set of dependencies, as
@ -837,12 +840,12 @@ (define-public gwl
(inputs
`(("guile" ,guile-3.0)))
(propagated-inputs
`(("guix" ,guile3.0-guix)
("guile-commonmark" ,guile3.0-commonmark)
("guile-gcrypt" ,guile3.0-gcrypt)
("guile-pfds" ,guile3.0-pfds)
("guile-syntax-highlight" ,guile3.0-syntax-highlight)
("guile-wisp" ,guile3.0-wisp)))
`(("guix" ,guix)
("guile-commonmark" ,guile-commonmark)
("guile-gcrypt" ,guile-gcrypt)
("guile-pfds" ,guile-pfds)
("guile-syntax-highlight" ,guile-syntax-highlight)
("guile-wisp" ,guile-wisp)))
(home-page "https://workflows.guix.info")
(synopsis "Workflow management extension for GNU Guix")
(description "The @dfn{Guix Workflow Language} (GWL) provides an
@ -867,6 +870,14 @@ (define-public guix-jupyter
(sha256
(base32
"01z7jjkc7r7lj6637rcgpz40v8xqqyfp6871h94yvcnwm7zy9h1n"))
(modules '((guix build utils)))
(snippet
'(begin
;; Allow builds with Guile 3.0.
(substitute* "configure.ac"
(("^GUILE_PKG.*")
"GUILE_PKG([3.0 2.2])\n"))
#t))
(file-name (string-append "guix-jupyter-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@ -925,7 +936,7 @@ (define-public guix-jupyter
("python-ipykernel" ,python-ipykernel)))
(inputs
`(("guix" ,guix)
("guile" ,guile-2.2)))
("guile" ,guile-3.0)))
(propagated-inputs
`(("guile-json" ,guile-json-3)
("guile-simple-zmq" ,guile-simple-zmq)

View file

@ -112,7 +112,7 @@ (define-public guile-charting
#t))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.2)))
(inputs `(("guile" ,guile-3.0)))
(propagated-inputs `(("guile-cairo" ,guile-cairo)))
(home-page "http://wingolog.org/software/guile-charting/")
(synopsis "Create charts and graphs in Guile")
@ -121,12 +121,15 @@ (define-public guile-charting
using the Cairo drawing library.")
(license license:lgpl2.1+)))
(define-public guile3.0-charting
(define-public guile2.2-charting
(package
(inherit guile-charting)
(name "guile3.0-charting")
(inputs `(("guile" ,guile-3.0)))
(propagated-inputs `(("guile-cairo" ,guile3.0-cairo)))))
(name "guile2.2-charting")
(inputs `(("guile" ,guile-2.2)))
(propagated-inputs `(("guile-cairo" ,guile2.2-cairo)))))
(define-public guile3.0-charting
(deprecated-package "guile3.0-charting" guile-charting))
(define-public ploticus
(package

View file

@ -301,8 +301,8 @@ (define-public guile-ssh
("texinfo" ,texinfo)
("pkg-config" ,pkg-config)
("which" ,which)
("guile" ,guile-2.2))) ;needed when cross-compiling.
(inputs `(("guile" ,guile-2.2)
("guile" ,guile-3.0))) ;needed when cross-compiling.
(inputs `(("guile" ,guile-3.0)
("libssh" ,libssh)
("libgcrypt" ,libgcrypt)))
(synopsis "Guile bindings to libssh")
@ -322,16 +322,19 @@ (define-public guile2.0-ssh
(inputs `(("guile" ,guile-2.0)
,@(alist-delete "guile" (package-inputs guile-ssh))))))
(define-public guile3.0-ssh
(define-public guile2.2-ssh
(package
(inherit guile-ssh)
(name "guile3.0-ssh")
(name "guile2.2-ssh")
(native-inputs
`(("guile" ,guile-next) ;needed when cross-compiling.
`(("guile" ,guile-2.2) ;needed when cross-compiling.
,@(alist-delete "guile" (package-native-inputs guile-ssh))))
(inputs `(("guile" ,guile-next)
(inputs `(("guile" ,guile-2.2)
,@(alist-delete "guile" (package-inputs guile-ssh))))))
(define-public guile3.0-ssh
(deprecated-package "guile3.0-ssh" guile-ssh))
(define-public corkscrew
(package
(name "corkscrew")

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015, 2016 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013, 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2016, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
@ -136,7 +136,7 @@ (define-public vpnc-scripts
(base32
"1g41yarz2bl0f73kbjqnywr485ghanbp7nmspklfb0n07yp0z6ak"))))
(build-system gnu-build-system)
(inputs `(("guile" ,guile-2.2) ; for the wrapper scripts
(inputs `(("guile" ,guile-3.0) ; for the wrapper scripts
("coreutils" ,coreutils)
("grep" ,grep)
("iproute2" ,iproute) ; for ip

View file

@ -7162,7 +7162,7 @@ (define-public hpcguix-web
(inputs
`(("guix" ,guix)))
(propagated-inputs
`(("guile" ,guile-2.2)
`(("guile" ,guile-3.0)
("guile-commonmark" ,guile-commonmark)
("guile-json" ,guile-json-3)))
(home-page "https://github.com/UMCUGenetics/hpcguix-web")

View file

@ -1553,12 +1553,12 @@ (define mkdir-p
;;;
(define (default-guile)
;; Lazily resolve 'guile-2.2' (not 'guile-final' because this is for
;; Lazily resolve 'guile-3.0' (not 'guile-final' because this is for
;; programs returned by 'program-file' and we don't want to keep references
;; to several Guile packages). This module must not refer to (gnu …)
;; modules directly, to avoid circular dependencies, hence this hack.
(module-ref (resolve-interface '(gnu packages guile))
'guile-2.2))
'guile-3.0))
(define* (load-path-expression modules #:optional (path %load-path)
#:key (extensions '()) system target)

View file

@ -49,11 +49,11 @@ (define specification->package
(module-ref (resolve-interface module) variable))))
(match-lambda
("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))
("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) 'guile3.0-gnutls))
("zlib" (ref '(gnu packages compression) 'zlib))
("lzlib" (ref '(gnu packages compression) 'lzlib))