;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2017 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co>
-;;; Copyright © 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Erik Edrosa <erik.edrosa@gmail.com>
-;;; Copyright © 2016, 2019 Eraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2019, 2020 Eraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016, 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
;;; Copyright © 2016 Amirouche <amirouche@hypermove.net>
;;; Copyright © 2016, 2019 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2017 David Thompson <davet@gnu.org>
-;;; Copyright © 2017, 2018, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2017, 2018, 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 ng0 <ng0@n0.is>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
-;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2018, 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2019 swedebugia <swedebugia@riseup.net>
-;;; Copyright © 2019 Amar Singh <nly@disroot.org>
+;;; Copyright © 2019, 2020 Amar Singh <nly@disroot.org>
;;; Copyright © 2019 Timothy Sample <samplet@ngyro.com>
+;;; Copyright © 2019, 2020 Martin Becze <mjbecze@riseup.net>
+;;; Copyright © 2020 Evan Straw <evan.straw99@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages python)
#:use-module (gnu packages readline)
#:use-module (gnu packages sdl)
+ #:use-module (gnu packages search)
#:use-module (gnu packages slang)
#:use-module (gnu packages sqlite)
+ #:use-module (gnu packages swig)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
library for GNU Guile based on the actor model.
Note that 8sync is only available for Guile 2.2.")
+ (properties '((upstream-name . "8sync")))
(license license:lgpl3+)))
(define-public guile-daemon
(package
(name "guile-daemon")
- (version "0.1.2")
+ (version "0.1.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/alezost/" name
"/" name "-" version ".tar.gz"))
(sha256
(base32
- "0hh6gq6b6phpxm0b1dkxyzj3f4sxdf7dji63609lzypa5v1ad2gv"))))
+ "08gaqrgjlly9k5si72vvpbr4xhq5v52l5ma5y6a7spid5dd057cy"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
highlighting library for GNU Guile. It can parse code written in various
programming languages into a simple s-expression that can be converted to
HTML (via SXML) or any other format for rendering.")
- (home-page "http://dthompson.us/projects/guile-syntax-highlight.html")
+ (home-page "https://dthompson.us/projects/guile-syntax-highlight.html")
(license license:lgpl3+)))
(define-public guile3.0-syntax-highlight
using Guile's foreign function interface.")
(license license:lgpl3+))))
+(define-public guile3.0-squee
+ (package
+ (inherit guile-squee)
+ (name "guile3.0-squee")
+ (native-inputs `(("guile" ,guile-next)
+ ,@(alist-delete "guile"
+ (package-native-inputs guile-squee))))))
+
(define-public guile-colorized
(package
(name "guile-colorized")
@end itemize\n")
(license license:bsd-3)))
+(define-public guile3.0-pfds
+ (package
+ (inherit guile-pfds)
+ (name "guile3.0-pfds")
+ (native-inputs `(("guile" ,guile-3.0)))
+ (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))))))))
+
(define-public guile-aa-tree
(package
(name "guile-aa-tree")
(define-public guile-debbugs
(package
(name "guile-debbugs")
- (version "0.0.2")
+ (version "0.0.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/guile-debbugs/guile-debbugs-"
version ".tar.gz"))
(sha256
(base32
- "16l8910p57im6s3j93xhdaqvgfy6ms5n97177mrch3y961z5hy0i"))
- (modules '((guix build utils)))
- (snippet
- '(substitute* "Makefile.in"
- (("^godir = (.*)/ccache" _ prefix)
- (string-append "godir = " prefix "/site-ccache"))))))
+ "1cc63nw3xdfjrfk8c58r6d5lidmfq5cpqcy32yd5xp81yccprvn9"))))
(build-system gnu-build-system)
+ (propagated-inputs
+ `(("guile-email" ,guile-email)))
(native-inputs
`(("guile" ,guile-2.2)
("pkg-config" ,pkg-config)))
format.")
(license license:agpl3+)))
-(define-public guile-debbugs-next
- (let ((commit "fb0ae064037a38a0d526e08b4ad24c52e205edb9")
- (revision "2"))
- (package (inherit guile-debbugs)
- (name "guile-debbugs")
- (version (git-version "0.0.3" revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://git.savannah.gnu.org/git/guile-debbugs.git")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "195sacx2xc1mzzfljj62nfpi8mxn0rc6dabxckizjksnhb5irfwy"))))
- (build-system gnu-build-system)
- (native-inputs
- `(("pkg-config" ,pkg-config)
- ("autoconf" ,autoconf)
- ("automake" ,automake)
- ("texinfo" ,texinfo)))
- (inputs
- `(("guile" ,guile-2.2)
- ("guile-email" ,guile-email))))))
+(define-public guile3.0-email
+ (package
+ (inherit guile-email)
+ (name "guile3.0-email")
+ (inputs `(("guile" ,guile-next)
+ ,@(alist-delete "guile" (package-inputs guile-email))))))
(define-public guile-newt
(package
(name "guile-newt")
- (version "0.0.1")
+ (version "0.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "1w7qy4dw1f4bx622l6hw8mv49sf1ha8kch8j4nganyk8fj0wn695"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Allow builds with Guile 3.0.
- (substitute* "configure.ac"
- (("^GUILE_PKG.*")
- "GUILE_PKG([3.0 2.2 2.0])\n"))
-
- ;; Remove "guile.m4" since it contains an obsolete version
- ;; of 'GUILE_PKG' that doesn't work with development
- ;; versions such as 2.9.
- (delete-file "m4/guile.m4")
- #t))))
+ "1gksd1lzgjjh1p9vczghg8jw995d22hm34kbsiv8rcryirv2xy09"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
(define-public guile-parted
(package
(name "guile-parted")
- (version "0.0.2")
+ (version "0.0.4")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "01qmv6xnbbq3wih0dl9bscvca2d7zx7bjiqf35y6dkaqsp8nvdxf"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Allow builds with Guile 3.0.
- (substitute* "configure.ac"
- (("^GUILE_PKG.*")
- "GUILE_PKG([3.0 2.2 2.0])\n"))
-
- ;; Remove "guile.m4" since it contains an obsolete version
- ;; of 'GUILE_PKG' that doesn't work with development
- ;; versions such as 2.9.
- (delete-file "m4/guile.m4")
- #t))))
+ "0b7h8psfm9gmmwb65pp5zwzglvwnfmw5j40g09hhf3f7kwxc0mv2"))
+ (modules '((guix build utils)))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
- "0qjjvadr7gibdq9jvwkmlkb4afsw9n2shfj9phpiadinxk3p4m2g"))))
+ "0qjjvadr7gibdq9jvwkmlkb4afsw9n2shfj9phpiadinxk3p4m2g"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Allow builds with Guile 3.0.
+ (substitute* "configure.ac"
+ (("^GUILE_PKG.*")
+ "GUILE_PKG([3.0 2.2 2.0])\n"))
+ #t))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf-wrapper)
The library is shipped with documentation in Info format and usage examples.")
(license license:gpl3+)))
+(define-public guile3.0-ics
+ (package
+ (inherit guile-ics)
+ (name "guile3.0-ics")
+ (inputs `(("guile" ,guile-3.0)
+ ,@(alist-delete "guile" (package-inputs guile-ics))))
+ (propagated-inputs `(("guile-lib" ,guile3.0-lib)))))
+
(define-public guile-wisp
(package
(name "guile-wisp")
users and in some situations.")
(license license:gpl3+)))
+(define-public guile3.0-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))))))))
+
(define-public guile-sly
(package
(name "guile-sly")
(home-page "https://dthompson.us/projects/sly.html")
(license license:gpl3+)))
+(define-public g-golf
+ (let ((commit "4a4edf25e4877df9182c77843bdd98ab59e13ef7"))
+ (package
+ (name "g-golf")
+ (version (git-version "1" "683" commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.savannah.gnu.org/git/g-golf.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "09p0gf71wbmlm9kri693a8fvr9hl3hhlmlidyadwjdh7853xg0h8"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("texinfo" ,texinfo)
+ ("gettext" ,gettext-minimal)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("guile" ,guile-2.2)
+ ("guile-lib" ,guile-lib)
+ ("clutter" ,clutter)
+ ("gtk" ,gtk+)
+ ("glib" ,glib)))
+ (propagated-inputs
+ `(("gobject-introspection" ,gobject-introspection)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'tests-work-arounds
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; In build environment, There is no /dev/tty
+ (substitute*
+ "test-suite/tests/gobject.scm"
+ (("/dev/tty") "/dev/null"))))
+ (add-before 'configure 'substitute-libs
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((get (lambda (key lib)
+ (string-append (assoc-ref inputs key) "/lib/" lib)))
+ (libgi (get "gobject-introspection" "libgirepository-1.0"))
+ (libglib (get "glib" "libglib-2.0"))
+ (libgobject (get "glib" "libgobject-2.0"))
+ (libgdk (get "gtk" "libgdk-3")))
+ (substitute* "configure"
+ (("SITEDIR=\"\\$datadir/g-golf\"")
+ "SITEDIR=\"$datadir/guile/site/$GUILE_EFFECTIVE_VERSION\"")
+ (("SITECCACHEDIR=\"\\$libdir/g-golf/")
+ "SITECCACHEDIR=\"$libdir/"))
+ (substitute* "g-golf/init.scm"
+ (("libgirepository-1.0") libgi)
+ (("libglib-2.0") libglib)
+ (("libgdk-3") libgdk)
+ (("libgobject-2.0") libgobject)
+ (("\\(dynamic-link \"libg-golf\"\\)")
+ (format #f "~s"
+ `(dynamic-link
+ (format #f "~alibg-golf"
+ (if (getenv "GUILE_GGOLF_UNINSTALLED")
+ ""
+ ,(format #f "~a/lib/"
+ (assoc-ref outputs "out"))))))))
+ (setenv "GUILE_AUTO_COMPILE" "0")
+ (setenv "GUILE_GGOLF_UNINSTALLED" "1")
+ #t))))))
+ (home-page "https://www.gnu.org/software/g-golf/")
+ (synopsis "Guile bindings for GObject Introspection")
+ (description
+ "G-Golf (Gnome: (Guile Object Library for)) is a library for developing
+modern applications in Guile Scheme. It comprises a direct binding to the
+GObject Introspection API and higher-level functionality for importing Gnome
+libraries and making GObject classes (and methods) available in Guile's
+object-oriented programming system, GOOPS.")
+ (license license:lgpl3+))))
+
(define-public g-wrap
(package
(name "g-wrap")
("guile" ,guile-2.2)))
(native-inputs `(("pkg-config" ,pkg-config)))
(arguments
- '(#:configure-flags (list "--with-ncursesw" ; Unicode support
+ `(#:modules ((guix build gnu-build-system)
+ ((guix build guile-build-system)
+ #:select (target-guile-effective-version))
+ (guix build utils))
+ #:imported-modules ((guix build guile-build-system)
+ ,@%gnu-build-system-modules)
+ #:configure-flags (list "--with-ncursesw" ; Unicode support
"--with-gnu-filesystem-hierarchy")
#:phases
(modify-phases %standard-phases
(files (find-files dir ".scm")))
(substitute* files
(("\"libguile-ncurses\"")
- (format #f "\"~a/lib/guile/2.2/libguile-ncurses\""
- out)))
+ (format #f "\"~a/lib/guile/~a/libguile-ncurses\""
+ out (target-guile-effective-version))))
#t))))))
(home-page "https://www.gnu.org/software/guile-ncurses/")
(synopsis "Guile bindings to ncurses")
library.")
(license license:lgpl3+)))
+(define-public guile3.0-ncurses
+ (package
+ (inherit guile-ncurses)
+ (name "guile3.0-ncurses")
+ (version "3.0")
+ (inputs `(("ncurses" ,ncurses)
+ ("guile" ,guile-3.0)))))
+
(define-public guile-ncurses/gpm
(package
(inherit guile-ncurses)
(inputs `(("ncurses" ,ncurses/gpm)
("guile" ,guile-2.2)))))
+(define-public guile3.0-ncurses/gpm
+ (package
+ (inherit guile3.0-ncurses)
+ (name "guile3.0-ncurses-with-gpm")
+ (inputs `(("ncurses" ,ncurses/gpm)
+ ("guile" ,guile-3.0)))))
+
(define-public guile-lib
(package
(name "guile-lib")
version ".tar.gz"))
(sha256
(base32
- "0aizxdif5dpch9cvs8zz5g8ds5s4xhfnwza2il5ji7fv2h7ks7bd"))))
+ "0aizxdif5dpch9cvs8zz5g8ds5s4xhfnwza2il5ji7fv2h7ks7bd"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Work around miscompilation on Guile 3.0.0 at -O2:
+ ;; <https://bugs.gnu.org/39251>.
+ (substitute* "src/md5.scm"
+ (("\\(define f-ash ash\\)")
+ "(define f-ash (@ (guile) ash))\n")
+ (("\\(define f-add \\+\\)")
+ "(define f-add (@ (guile) +))\n"))
+ #t))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
(name "guile2.0-lib")
(inputs `(("guile" ,guile-2.0)))))
+(define-public guile3.0-lib
+ (package
+ (inherit guile-lib)
+ (name "guile3.0-lib")
+ (inputs `(("guile" ,guile-3.0)))))
+
(define-public guile-minikanren
(package
(name "guile-minikanren")
version ".tar.gz"))
(sha256
(base32
- "056z4znikk83nr5mr0x2ac3iinqbywa2bvb37mhr566a1q50isfc"))))
+ "056z4znikk83nr5mr0x2ac3iinqbywa2bvb37mhr566a1q50isfc"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Allow builds with Guile 3.0.
+ (substitute* "configure"
+ (("2\\.2 2\\.0")
+ "3.0 2.2 2.0"))
+ #t))))
(build-system gnu-build-system)
(arguments
`(#:modules ((ice-9 match) (ice-9 ftw)
(bin (string-append out "/bin"))
(site (string-append
out "/share/guile/site"))
- (deps (list (assoc-ref inputs "guile-reader")
- (assoc-ref inputs "guile-commonmark"))))
+ (guile-reader (assoc-ref inputs "guile-reader"))
+ (deps `(,@(if guile-reader
+ (list guile-reader)
+ '())
+ ,(assoc-ref inputs "guile-commonmark"))))
(match (scandir site)
(("." ".." version)
(let ((modules (string-append site "/" version))
(home-page "http://haunt.dthompson.us")
(license license:gpl3+)))
+(define-public guile3.0-haunt
+ (package
+ (inherit haunt)
+ (name "guile3.0-haunt")
+ (inputs `(("guile" ,guile-3.0)))
+ (propagated-inputs
+ ;; XXX: Guile-Reader is currently unavailable for Guile 3.0 so strip it.
+ `(("guile-commonmark" ,guile3.0-commonmark)))))
+
(define-public guile2.0-haunt
(package
(inherit haunt)
(define-public mcron
(package
(name "mcron")
- (version "1.1.3")
+ (version "1.1.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/mcron/mcron-"
version ".tar.gz"))
(sha256
(base32
- "00kv7fgllzjpis0g1m9csycp4f6l11774m09dqy255cvmim2g743"))))
+ "1521w3h33bhdlg6qc66sq4dwv3qsx8r8x6srq4ca6kaahy6dszw8"))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
- (add-after 'unpack 'fix-finding-guile
- (lambda _
- (substitute* "configure"
- (("2\\.0") "2.2 2.0"))
- #t))
(add-before 'check 'adjust-tests
(lambda _
(substitute* "tests/job-specifier.scm"
#t)))))
(native-inputs `(("pkg-config" ,pkg-config)
("tzdata" ,tzdata-for-tests)))
- (inputs `(("guile" ,guile-2.2)))
+ (inputs `(("guile" ,guile-2.2.7))) ;fix <https://bugs.gnu.org/37237>
(home-page "https://www.gnu.org/software/mcron/")
(synopsis "Run jobs at scheduled times")
(description
format is also supported.")
(license license:gpl3+)))
-(define-public mcron2
- ;; This was mthl's mcron development branch, and it became mcron 1.1.
- (deprecated-package "mcron2" mcron))
+(define-public guile3.0-mcron
+ (package
+ (inherit mcron)
+ (name "guile3.0-mcron")
+ (inputs `(("guile" ,guile-3.0)))))
(define-public guile-picture-language
(let ((commit "91d10c96708d732145006dd2802acc4de08b632e")
(define-public guile-gi
(package
(name "guile-gi")
- (version "0.2.1")
+ (version "0.2.2")
(source (origin
(method url-fetch)
(uri (string-append "http://lonelycactus.com/tarball/guile_gi-"
version ".tar.gz"))
(sha256
(base32
- "1ah5bmkzplsmkrk7v9vlxlqch7i91qv4cq2d2nar9xshbpcrj484"))))
+ "1v82kz8mz7wgq6w5llaz8a2wwdnl8vk2667dpjwjxscl0qyxsy6y"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-gnu-filesystem-hierarchy")
+ #:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (ice-9 popen)
+ (ice-9 rdelim))
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'patch-references-to-extension
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((effective (read-line
+ (open-pipe* OPEN_READ
+ "guile" "-c"
+ "(display (effective-version))"))))
+ (substitute* '("module/gi.scm"
+ "module/gi/oop.scm"
+ "module/gi/documentation.scm"
+ "module/gi/types.scm"
+ "module/gi/repository.scm")
+ (("\\(load-extension \"libguile-gi\" \"(.*)\"\\)" m arg)
+ (format #f "~s"
+ `(load-extension
+ (format #f "~alibguile-gi"
+ (if (getenv "GUILE_GI_UNINSTALLED")
+ ""
+ ,(format #f "~a/lib/guile/~a/"
+ (assoc-ref outputs "out")
+ effective)))
+ ,arg)))))
+ (setenv "GUILE_GI_UNINSTALLED" "1")
+ #t))
(add-before 'check 'start-xorg-server
(lambda* (#:key inputs #:allow-other-keys)
;; The init_check test requires a running X server.
(setenv "DISPLAY" ":1")
#t)))))
(native-inputs
- `(("gettext" ,gnu-gettext)
+ `(("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin") ; for glib-compile-resources
("libtool" ,libtool)
("pkg-config" ,pkg-config)
pre-alpha code.")
(license license:gpl3+)))
+(define-public guile3.0-gi
+ (package
+ (inherit guile-gi)
+ (name "guile3.0-gi")
+ (native-inputs
+ `(("guile" ,guile-3.0)
+ ,@(package-native-inputs guile-gi)))))
+
(define-public guile-srfi-159
(let ((commit "1bd98abda2ae4ef8f36761a167903e55c6bda7bb")
(revision "0"))
("automake" ,automake)
("bzip2" ,bzip2)
("guile" ,guile-2.2)
- ("gettext" ,gnu-gettext)
+ ("gettext" ,gettext-minimal)
("libtool" ,libtool)
("perl" ,perl)
("pkg-config" ,pkg-config)
(license license:gpl3+)))
(define-public emacsy-minimal
- (let ((commit "f3bf0dbd803d7805b6ae8303253507ad13922293"))
+ (let ((commit "d459ca1d3d09e7624e662bc4cfc3596850796fc6"))
(package
(inherit emacsy)
(name "emacsy-minimal")
- (version (git-version "v0.4.1" "19" commit))
+ (version (git-version "v0.4.1" "28" commit))
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "0ivy28km1p7nlrf63xx3hvrpxf5ld5amk1wcan3k7sqv1kq9mqdb"))))
+ "1ps15w8cxj9kc18gmvys9jv9xa1qqa7m43ismv34l3cmhddrn0sr"))))
(build-system gnu-build-system)
(inputs
`(("guile" ,guile-2.2)
(define-public guile-semver
(package
(name "guile-semver")
- (version "0.1.0")
+ (version "0.1.1")
(source (origin
(method url-fetch)
(uri (string-append "https://files.ngyro.com/guile-semver/"
"guile-semver-" version ".tar.gz"))
(sha256
(base32
- "06b66rj7nyhr6i3dpkwvfw1xb10w2pngrsw2hxfxkznwsbh9byfz"))))
+ "109p4n39ln44cxvwdccf9kgb96qx54makvd2ir521ssz6wchjyag"))))
(build-system gnu-build-system)
(native-inputs
- `(("pkg-config" ,pkg-config)
- ("srfi-64-driver" ,srfi-64-driver)))
+ `(("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)))
(home-page "https://ngyro.com/software/guile-semver.html")
the style of the Node Package Manager (NPM).")
(license license:gpl3+)))
+(define-public guile3.0-semver
+ (package
+ (inherit guile-semver)
+ (name "guile3.0-semver")
+ (inputs
+ `(("guile" ,guile-3.0)))))
+
(define-public guile-hashing
(package
(name "guile-hashing")
(name "guile3.0-hashing")
(native-inputs
`(("guile" ,guile-next)))))
+
+(define-public guile-webutils
+ (let ((commit "8541904f761066dc9c27b1153e9a838be9a55299")
+ (revision "0"))
+ (package
+ (name "guile-webutils")
+ (version (git-version "0.1" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://notabug.org/cwebber/guile-webutils.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1s9n3hbxd7lfpdi0x8wr0cfvlsf6g62ird9gbspxdrp5p05rbi64"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("pkg-config" ,pkg-config)
+ ("texinfo" ,texinfo)))
+ (inputs
+ `(("guile" ,guile-2.2)))
+ (propagated-inputs
+ `(("guile-irregex" ,guile-irregex)
+ ("guile-gcrypt" ,guile-gcrypt)))
+ (home-page "https://notabug.org/cwebber/guile-webutils")
+ (synopsis "Web application authoring utilities for Guile")
+ (description
+ "This package provides tooling to write web applications in Guile, such
+as signed sessions, multipart message support, etc.")
+ (license license:gpl3+))))
+
+(define-public guile-lens
+ (let ((commit "14b15d07255f9d3f55d40a3b750d13c9ee3a154f")
+ (revision "0"))
+ (package
+ (name "guile-lens")
+ (version (git-version "0.1" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/a-sassmannshausen/guile-lens.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0w8jzqyla56yrgj7acsgd4nspyir6zgp3vgxid4xmwhg9wmf1ida"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'run-hall
+ (lambda _
+ (setenv "HOME" "/tmp") ; for ~/.hall
+ (invoke "hall" "dist" "-x"))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("guile" ,guile-2.2)
+ ("guile-hall" ,guile-hall)
+ ("pkg-config" ,pkg-config)
+ ("texinfo" ,texinfo)))
+ (home-page "https://gitlab.com/a-sassmannshausen/guile-lens.git")
+ (synopsis "Composable lenses for data structures in Guile")
+ (description
+ "Guile-Lens is a library implementing lenses in Guile. The library is
+currently a re-implementation of the lentes library for Clojure. Lenses
+provide composable procedures, which can be used to focus, apply functions
+over, or update a value in arbitrary data structures.")
+ (license license:gpl3+))))
+
+(define-public guile-xapian
+ (package
+ (name "guile-xapian")
+ (version "0.1.0")
+ (home-page "https://git.systemreboot.net/guile-xapian")
+ (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
+ "16k61f1jn3g48jaf3730b9l0izr5j933jzyri73nmcnjd09gm35i"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:make-flags '("GUILE_AUTO_COMPILE=0"))) ; to prevent guild warnings
+ (inputs
+ `(("guile" ,guile-2.2)
+ ("xapian" ,xapian)
+ ("zlib" ,zlib)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("autoconf-archive" ,autoconf-archive)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)
+ ("swig" ,swig)))
+ (synopsis "Guile bindings for Xapian")
+ (description "@code{guile-xapian} provides Guile bindings for Xapian, a
+search engine library. Xapian is a highly adaptable toolkit which allows
+developers to easily add advanced indexing and search facilities to their own
+applications. It has built-in support for several families of weighting
+models and also supports a rich set of boolean query operators.")
+ (license license:gpl2+)))
+
+(define-public guile3.0-xapian
+ (package
+ (inherit guile-xapian)
+ (name "guile3.0-xapian")
+ (inputs
+ `(("guile" ,guile-next)
+ ,@(alist-delete "guile" (package-inputs guile-xapian))))))
+
+(define-public guile-torrent
+ (package
+ (name "guile-torrent")
+ (version "0.1.3")
+ (source (origin (method git-fetch)
+ (uri (git-reference
+ (url
+ "https://github.com/o-nly/torrent.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1yiagi55ncq1x7s9n7salzywjm4l96y3n7y3s47a9anvz87mrmim"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("guile" ,guile-2.2)
+ ("texinfo" ,texinfo)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)))
+ (propagated-inputs
+ `(("guile-gcrypt" ,guile-gcrypt)))
+ (home-page "https://github.com/o-nly/torrent")
+ (synopsis "Torrent library for GNU Guile")
+ (description "This package provides facilities for working with
+@code{.torrent} or metainfo files. Implements a bencode reader and writer
+according to Bitorrent BEP003.")
+ (license license:gpl3+)))
+
+(define-public guile-irc
+ (let ((commit "375d3bde9c6ae7ccc9d7cc65817966b6fda8f26a")
+ (revision "0"))
+ (package
+ (name "guile-irc")
+ (version (git-version "0.3.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rekado/guile-irc.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "113lcckcywrz9060w1c3fnvr8d7crdsjgsv4h47hgmr1slgadl4y"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-gnutls=yes")))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("texinfo" ,texinfo)))
+ (inputs
+ `(("gnutls" ,gnutls)
+ ("guile" ,guile-2.2)))
+ (home-page "https://github.com/rekado/guile-irc")
+ (synopsis "IRC library for Guile")
+ (description "This package provides a Guile library for @dfn{Internet
+Relay Chat} (IRC).")
+ ;; Some file headers incorrectly say LGPLv2+.
+ (license license:lgpl2.1+))))
+
+(define-public guile3.0-websocket
+ (let ((commit "c854e0f84a40d972cbd532bbb89c97ca0126a7cf"))
+ (package
+ (name "guile3.0-websocket")
+ (version "0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "git://dthompson.us/guile-websocket.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1hymvsfrmq9qxr5cxnsgdz7y757yp1cpsgxmdp3f5wxxxpqgsmzx"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:make-flags
+ '("GUILE_AUTO_COMPILE=0")
+ #:phases
+ (modify-phases %standard-phases
+ ;; The package was developed for Guile 2.0 and has this version
+ ;; hardcoded in the configure.ac and Makefile.am files. Substitute
+ ;; 3.0 instead so it can support Guile 3.0.
+ (add-after 'unpack 'update-guile-version
+ (lambda _
+ (substitute* "configure.ac"
+ (("2.0.9") "3.0.0"))
+ (substitute* "Makefile.am"
+ (("2.0") "3.0")
+
+ ;; Install .go files where they belong.
+ (("/ccache") "/site-ccache"))
+ #t)))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)))
+ (inputs
+ `(("guile" ,guile-next)))
+ (synopsis "Websocket server/client for Guile")
+ (description "Guile-websocket provides an implementation of the
+WebSocket protocol as defined by RFC 6455.")
+ (home-page "https://git.dthompson.us/guile-websocket.git")
+ (license license:lgpl3+))))