summaryrefslogtreecommitdiff
path: root/gnu/packages/guile-xyz.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/guile-xyz.scm')
-rw-r--r--gnu/packages/guile-xyz.scm371
1 files changed, 264 insertions, 107 deletions
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 8075e8c21a..45cc6b2326 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -153,7 +153,7 @@
;; TODO: Add guile-dbi and guile-dbd optional dependencies.
(propagated-inputs
`(("guile-json" ,guile-json-1)
- ("guile-readline" ,guile-readline)
+ ("guile-readline" ,guile2.2-readline)
("guile-redis" ,guile-redis)))
(native-inputs
`(("bash" ,bash) ;for the `source' builtin
@@ -526,7 +526,9 @@ Unix-style DSV format and RFC 4180 format.")
#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".
@@ -543,7 +545,7 @@ Unix-style DSV format and RFC 4180 format.")
`(("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
@@ -559,15 +561,14 @@ is not available for Guile 2.0.")
(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
@@ -594,7 +595,7 @@ is not available for Guile 2.0.")
(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
@@ -603,11 +604,14 @@ HTML (via SXML) or any other format for rendering.")
(home-page "https://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
@@ -695,18 +699,21 @@ using Guile's foreign function interface.")
(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
@@ -726,6 +733,14 @@ using Guile's foreign function interface.")
(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
@@ -759,7 +774,7 @@ using Guile's foreign function interface.")
(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
@@ -780,23 +795,19 @@ Vicare Scheme and IronScheme. Right now it contains:
@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
@@ -850,7 +861,7 @@ convenient nested tree operations.")
(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")
@@ -860,11 +871,14 @@ convenient nested tree operations.")
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")
@@ -1058,7 +1072,7 @@ format.")
'(#: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)
@@ -1072,13 +1086,16 @@ Scheme by using Guileā€™s foreign function interface.")
(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")
@@ -1127,7 +1144,7 @@ microblogging service.")
'(#: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)))
@@ -1143,14 +1160,17 @@ written in pure Scheme by using Guile's foreign function interface.")
(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
@@ -1337,7 +1357,7 @@ PostgreSQL.")
("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
@@ -1352,13 +1372,16 @@ above command-line parameters.")
"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")
@@ -1425,7 +1448,7 @@ above command-line parameters.")
("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")
@@ -1437,17 +1460,20 @@ provides tight coupling to Guix.")
(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")
@@ -1477,7 +1503,7 @@ provides tight coupling to Guix.")
;; 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")
@@ -1488,13 +1514,16 @@ pure Scheme. The library can be used to read and write iCalendar data.
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
@@ -1521,6 +1550,12 @@ The library is shipped with documentation in Info format and usage examples.")
(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"
@@ -1559,7 +1594,7 @@ The library is shipped with documentation in Info format and usage examples.")
(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)
@@ -1570,21 +1605,14 @@ whitespace-significant language. It may be easier on the eyes for some
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
@@ -1924,7 +1952,7 @@ library.")
$(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
@@ -1944,11 +1972,14 @@ for Guile\".")
(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
@@ -1965,7 +1996,7 @@ for Guile\".")
"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
@@ -1986,11 +2017,14 @@ See http://minikanren.org/ for more on miniKanren generally.")
(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
@@ -2023,7 +2057,7 @@ See http://minikanren.org/ for more on miniKanren generally.")
#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
@@ -2038,11 +2072,14 @@ inspired by the SCSH regular expression system.")
(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
@@ -2108,9 +2145,10 @@ inspired by the SCSH regular expression system.")
`(("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
@@ -2119,14 +2157,14 @@ interface for reading articles in any format.")
(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
@@ -2134,6 +2172,9 @@ interface for reading articles in any format.")
(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")
@@ -2189,7 +2230,7 @@ key-value cache and store.")
#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")
@@ -2202,11 +2243,11 @@ is no support for parsing block and inline level HTML.")
(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
@@ -2214,6 +2255,9 @@ is no support for parsing block and inline level HTML.")
(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")
@@ -2246,7 +2290,7 @@ is no support for parsing block and inline level HTML.")
#t)))))
(native-inputs `(("pkg-config" ,pkg-config)
("tzdata" ,tzdata-for-tests)))
- (inputs `(("guile" ,guile-2.2.7))) ;fix <https://bugs.gnu.org/37237>
+ (inputs `(("guile" ,guile-3.0)))
(home-page "https://www.gnu.org/software/mcron/")
(synopsis "Run jobs at scheduled times")
(description
@@ -2256,11 +2300,14 @@ Guile, so its configuration can be written in Scheme; the original cron
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 guile-picture-language
(let ((commit "91d10c96708d732145006dd2802acc4de08b632e")
@@ -2279,7 +2326,7 @@ format is also supported.")
"1ydvw9dvssdvlvhh1dr8inyzy2x6m41qgp8hsivca1xysr4gc23a"))))
(build-system gnu-build-system)
(inputs
- `(("guile" ,guile-2.2)))
+ `(("guile" ,guile-3.0)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@@ -2293,11 +2340,15 @@ format is also supported.")
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
@@ -2621,7 +2672,7 @@ list of components. This module takes care of that for you.")
("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
@@ -2630,14 +2681,17 @@ libraries, such as GTK+3. Its README comes with the disclaimer: This is
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"))
@@ -3114,7 +3168,7 @@ the style of the Node Package Manager (NPM).")
(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
@@ -3122,13 +3176,116 @@ functions in pure R6RS Scheme: CRC, HMAC, MD5, SHA-1, and SHA-2 (SHA-256,
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-packrat
+ (package
+ (name "guile-packrat")
+ (version "0.1.1")
+ (home-page "https://github.com/weinholt/packrat")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1aga17164fkhbgllqc7ni6fk5zl8mkmgkl5zcsy67x7ngpyalbby"))))
+ (build-system guile-build-system)
+ (arguments
+ `(#:implicit-inputs? #f ;needs nothing but Guile
+ #:compile-flags '("--r6rs" "-Wunbound-variable" "-Warity-mismatch")
+ #:not-compiled-file-regexp "/extensible\\.scm$"
+ #:phases (modify-phases %standard-phases
+ (add-before 'build 'no-srfi-23
+ (lambda _
+ (substitute* "packrat.sls"
+ (("\\(srfi :23 error\\)")
+ (object->string '(only (guile) error))))
+ #t)))))
+ (native-inputs
+ `(("guile" ,guile-3.0)))
+ (synopsis "Packrat parser library in R6RS Scheme")
+ (description
+ "This is an R6RS Scheme adaptation of the
+@uref{https://bford.info/packrat/, packrat parsing}. Packrat parsing is a
+memoizing, backtracking, recursive-descent parsing technique that runs in time
+and space linear in the size of the input text.")
+ (license license:expat)))
+
+(define-public guile-ac-d-bus
+ (package
+ (name "guile-ac-d-bus")
+ (version "1.0.0-alpha.0")
+ (home-page "https://gitlab.com/weinholt/ac-d-bus/")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "05cbp7slmzrx4cib2liysk31laknqiycw9ckgn65fylgz6c2y5x9"))))
+ (build-system guile-build-system)
+ (arguments
+ `(#:implicit-inputs? #f ;needs nothing but Guile
+ #:compile-flags '("--r6rs" "-Wunbound-variable" "-Warity-mismatch")
+ #:phases (modify-phases %standard-phases
+ (add-before 'build 'adjust-for-guile
+ (lambda _
+ ;; Adjust source file names for Guile.
+ (define (guile-sls->sls file)
+ (string-append (string-drop-right
+ file (string-length ".guile.sls"))
+ ".sls"))
+
+ ;; Remove files targeting other implementations:
+ ;; *.mosh.sls, etc.
+ (for-each delete-file
+ (find-files
+ "compat"
+ (lambda (file stat)
+ (not (string-contains file ".guile.")))))
+
+ ;; Rename *.guile.sls to *.sls so the ".guile" bit does
+ ;; not appear in .go file names.
+ (for-each (lambda (file)
+ (rename-file file (guile-sls->sls file)))
+ (find-files "compat" "\\.guile\\.sls"))
+
+ ;; Move directories under d-bus/ to match module names.
+ (mkdir "d-bus")
+ (for-each (lambda (directory)
+ (rename-file directory
+ (string-append "d-bus/"
+ directory)))
+ '("compat" "protocol"))
+
+ #t)))))
+ (native-inputs
+ `(("guile" ,guile-3.0)))
+ (propagated-inputs
+ `(("guile-packrat" ,guile-packrat)))
+ (synopsis "D-Bus protocol implementation in R6RS Scheme")
+ (description
+ "AC/D-Bus is an implementation of the D-Bus wire protocol. D-Bus is an
+interprocess communication protocol popular on GNU/Linux systems to
+communicate with a variety of services. Originally designed for desktop
+environments, it is now used by programs like VLC media player, BlueZ,
+NetworkManager, Pulseaudio, systemd (including logind and resolved), Polkit,
+gnome-keyring, and many more.")
+ (license license:expat)))
+
(define-public guile-webutils
(let ((commit "8541904f761066dc9c27b1153e9a838be9a55299")
(revision "0"))