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.scm358
1 files changed, 184 insertions, 174 deletions
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 8386f9522e..21f998524e 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -27,6 +27,9 @@
;;; Copyright © 2020 Evan Straw <evan.straw99@gmail.com>
;;; Copyright © 2020 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2020 Julien Lepiler <julien@lepiller.eu>
+;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
+;;; Copyright © 2020 Masaya Tojo <masaya@tojo.tokyo>
+;;; Copyright © 2020 Jesse Gibbons <jgibbons2357@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -154,9 +157,9 @@
;; projects.
;; TODO: Add guile-dbi and guile-dbd optional dependencies.
(propagated-inputs
- `(("guile-json" ,guile-json-1)
+ `(("guile-json" ,guile-json-1) ; This ia already using guile-2.2.
("guile-readline" ,guile2.2-readline)
- ("guile-redis" ,guile-redis)))
+ ("guile-redis" ,guile2.2-redis)))
(native-inputs
`(("bash" ,bash) ;for the `source' builtin
("pkgconfig" ,pkg-config)
@@ -232,7 +235,7 @@ more.")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/ijp/guildhall.git")
+ (url "https://github.com/ijp/guildhall")
(commit commit)))
(file-name (string-append name "-" version "-checkout"))
(sha256
@@ -933,8 +936,8 @@ messaging library.")
(deprecated-package "guile3.0-simple-zmq" guile-simple-zmq))
(define-public jupyter-guile-kernel
- (let ((commit "a7db9245a886e104138474df46c3e88b95cff629")
- (revision "1"))
+ (let ((commit "f25fb90b95529b17a006a807bd04e6aee12ea304")
+ (revision "2"))
(package
(name "jupyter-guile-kernel")
(version (git-version "0.0.0" revision commit))
@@ -947,7 +950,7 @@ messaging library.")
(file-name (git-file-name name version))
(sha256
(base32
- "0aj04853bqm47ivfcmrgpb7w3wkis847kc7qrwsa5zcn9h38qh2f"))))
+ "0zr1fasdb2yv9kn21yll993y9higqss4jnfs030ndhjb93raa9sr"))))
(build-system guile-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
@@ -982,7 +985,7 @@ messaging library.")
;; Fix hard-coded file name in the kernel.
(substitute* (string-append dir "/kernel.json")
- (("/home/.*/guile-jupyter-kernel.scm")
+ (("/usr/local/.*/guile-jupyter-kernel.scm")
(string-append out "/share/guile/site/"
(target-guile-effective-version)
"/guile-jupyter-kernel.scm"))
@@ -1003,17 +1006,17 @@ messaging library.")
effective
"/site-ccache\""))
deps)))
- (string-append "--no-auto-compile\""
- (string-join -L ", \"-L\", "
- 'prefix)
- (string-join -C ", \"-C\", "
- 'prefix)
- ", \"-s"))))
+ (string-append "--no-auto-compile\""
+ (string-join -L ", \"-L\", "
+ 'prefix)
+ (string-join -C ", \"-C\", "
+ 'prefix)
+ ", \"-s"))))
#t))))))
(inputs
`(("openssl" ,openssl)
- ("guile" ,guile-2.2)
- ("guile-json" ,guile-json-1)
+ ("guile" ,guile-3.0)
+ ("guile-json" ,guile-json-3)
("guile-simple-zmq" ,guile-simple-zmq)))
(synopsis "Guile kernel for the Jupyter Notebook")
(description
@@ -1348,7 +1351,7 @@ SQL databases. This package implements the interface for SQLite.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/opencog/guile-dbi.git")
+ (url "https://github.com/opencog/guile-dbi")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -1723,10 +1726,10 @@ capabilities.")
(license license:gpl3+)))
(define-public g-golf
- (let ((commit "4a4edf25e4877df9182c77843bdd98ab59e13ef7"))
+ (let ((commit "5d2903afb4b6b65c22f587835d8fdff91916e5ee"))
(package
(name "g-golf")
- (version (git-version "1" "683" commit))
+ (version (git-version "1" "804" commit))
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1735,7 +1738,7 @@ capabilities.")
(file-name (git-file-name name version))
(sha256
(base32
- "09p0gf71wbmlm9kri693a8fvr9hl3hhlmlidyadwjdh7853xg0h8"))))
+ "1xkb6a5d3i9s8lpb5cf06bd64p5srqnnhn5l0b2f5csbvyz8hmmh"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
@@ -1743,10 +1746,11 @@ capabilities.")
("texinfo" ,texinfo)
("gettext" ,gettext-minimal)
("libtool" ,libtool)
- ("pkg-config" ,pkg-config)))
+ ("pkg-config" ,pkg-config)
+ ("xorg-server" ,xorg-server)))
(inputs
`(("guile" ,guile-2.2)
- ("guile-lib" ,guile-lib)
+ ("guile-lib" ,guile2.2-lib)
("clutter" ,clutter)
("gtk" ,gtk+)
("glib" ,glib)))
@@ -1789,7 +1793,14 @@ capabilities.")
(assoc-ref outputs "out"))))))))
(setenv "GUILE_AUTO_COMPILE" "0")
(setenv "GUILE_GGOLF_UNINSTALLED" "1")
- #t))))))
+ #t)))
+ (add-before 'check 'start-xorg-server
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; The test suite requires a running X server.
+ (system (format #f "~a/bin/Xvfb :1 &"
+ (assoc-ref inputs "xorg-server")))
+ (setenv "DISPLAY" ":1")
+ #t)))))
(home-page "https://www.gnu.org/software/g-golf/")
(synopsis "Guile bindings for GObject Introspection")
(description
@@ -1848,7 +1859,7 @@ provides access to that interface and its types from the Scheme level.")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/fisherdj/miniAdapton.git")
+ (url "https://github.com/fisherdj/miniAdapton")
(commit commit)))
(file-name (string-append name "-" version "-checkout"))
(sha256
@@ -2045,7 +2056,7 @@ for Guile\".")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/ijp/minikanren.git")
+ (url "https://github.com/ijp/minikanren")
(commit "e844d85512f8c055d3f96143ee506007389a25e3")))
(file-name (string-append name "-" version "-checkout"))
(sha256
@@ -2483,163 +2494,162 @@ completion, a simple mode line, etc.")
(license license:gpl3+))))
(define-public guile-stis-parser
- (let ((commit "6e85d37ffc333b722f4413a6c648263701eb75bd")
- (revision "1"))
- (package
- (name "guile-stis-parser")
- (version (git-version "0" revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://gitlab.com/tampe/stis-parser")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0v4hvq7rlpbra1ni73lf8k6sdmjlflr50yi3p1f24g85h77pc7c0"))))
- (build-system gnu-build-system)
- (arguments
- `(#:parallel-build? #f ; not supported
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'chdir
- (lambda _ (chdir "modules") #t))
- (add-after 'chdir 'use-canonical-directory-for-go-files
- (lambda _
- (substitute* "Makefile.am"
- (("/ccache") "/site-ccache"))
- #t))
- (add-after 'chdir 'delete-broken-symlink
- (lambda _
- (delete-file "parser/stis-parser/lang/.#calc.scm")
- #t)))))
- (inputs
- `(("guile" ,guile-2.2)))
- (native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("pkg-config" ,pkg-config)))
- (home-page "https://gitlab.com/tampe/stis-parser")
- (synopsis "Parser combinator framework")
- (description
- "This package provides a functional parser combinator library that
+ (package
+ (name "guile-stis-parser")
+ (version "1.2.4.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/tampe/stis-parser")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1fvxdfvc80zqhwzq5x3kxyr6j8p4b51yx85fx1gr3d4gy2ddpx5w"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:parallel-build? #f ; not supported
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "modules") #t))
+ (add-after 'chdir 'delete-broken-symlink
+ (lambda _
+ (delete-file "parser/stis-parser/lang/.#calc.scm")
+ #t)))))
+ (inputs
+ `(("guile" ,guile-3.0)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("pkg-config" ,pkg-config)))
+ (home-page "https://gitlab.com/tampe/stis-parser")
+ (synopsis "Parser combinator framework")
+ (description
+ "This package provides a functional parser combinator library that
supports backtracking and a small logical framework. The idea is to build up
chunks that are memoized and there is no clear scanner/parser separation,
chunks can be expressions as well as simple tokens.")
- (license license:lgpl2.0+))))
+ (license license:lgpl2.0+)))
(define-public guile-persist
- (let ((commit "b14927b0368af51c024560aee5f55724aee35233")
- (revision "1"))
- (package
- (name "guile-persist")
- (version (git-version "0" revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://gitlab.com/tampe/guile-persist")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0z5nf377wh8yj6n3sx2ddn4bdx1qrqnw899dlqjhg0q69qzil522"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Install .go files in the right place.
- (substitute* "Makefile.am"
- (("/ccache") "/site-ccache"))
- #t))))
- (build-system gnu-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-prefix
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (substitute* "src/Makefile.am"
- (("/usr/local/lib/guile")
- (string-append (assoc-ref outputs "out") "/lib/guile"))
- (("/usr/local/include/guile")
- (string-append (assoc-ref inputs "guile") "/include/guile"))
- (("-L/usr/local/lib")
- (string-append "-L" (assoc-ref inputs "guile") "/lib"))
- ;; Use canonical directory for go files.
- (("/ccache") "/site-ccache"))
- #t))
- (add-after 'unpack 'patch-library-reference
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (substitute* "persist/persistance.scm"
- (("\"libguile-persist\"")
- (format #f "\"~a/lib/guile/2.2/extensions/libguile-persist\"" out)))
- #t))))))
- (inputs
- `(("guile" ,guile-2.2)))
- (native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("libtool" ,libtool)
- ("pkg-config" ,pkg-config)))
- (home-page "https://gitlab.com/tampe/guile-persist")
- (synopsis "Persistence programming framework for Guile")
- (description
- "This is a serialization library for serializing objects like classes
+ (package
+ (name "guile-persist")
+ (version "1.2.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/tampe/guile-persist")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "19f8hqcax4v40858kx2j8fy1cvzc2djj99r0n17dy1xxmwa097qi"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-prefix
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (substitute* "src/Makefile.am"
+ (("/usr/local/lib/guile")
+ (string-append (assoc-ref outputs "out") "/lib/guile"))
+ (("/usr/local/include/guile")
+ (string-append (assoc-ref inputs "guile") "/include/guile"))
+ (("-L/usr/local/lib")
+ (string-append "-L" (assoc-ref inputs "guile") "/lib")))
+ #t))
+ (add-after 'unpack 'patch-library-reference
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "persist/persistance.scm"
+ (("\"libguile-persist\"")
+ (format #f "\"~a/lib/guile/3.0/extensions/libguile-persist\"" out)))
+ #t))))))
+ (inputs
+ `(("guile" ,guile-3.0)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)))
+ (home-page "https://gitlab.com/tampe/guile-persist")
+ (synopsis "Persistence programming framework for Guile")
+ (description
+ "This is a serialization library for serializing objects like classes
and objects, closures and structs. This currently does not support
serializing continuations or delimited continuations.")
- (license license:lgpl2.0+))))
+ (license license:lgpl2.0+)))
(define-public python-on-guile
- (let ((commit "00a51a23247f1edc4ae8eda72b30df5cd7d0015f")
- (revision "3"))
- (package
- (name "python-on-guile")
- (version (git-version "0.1.0" revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://git.elephly.net/software/python-on-guile.git")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "03rpnqr08rqr3gay128g564rwk8w4jbj28ss6b46z1d4vjs4nk68"))))
- (build-system gnu-build-system)
- (arguments
- `(#:parallel-build? #f ; not supported
- #:make-flags '("GUILE_AUTO_COMPILE=0") ;to prevent guild warnings
-
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'chdir
- (lambda _ (chdir "modules") #t))
- (add-after 'install 'wrap
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Wrap the 'python' executable so it can find its
- ;; dependencies.
- (let ((out (assoc-ref outputs "out")))
- (wrap-program (string-append out "/bin/python")
- `("GUILE_LOAD_PATH" ":" prefix
- (,(getenv "GUILE_LOAD_PATH")))
- `("GUILE_LOAD_COMPILED_PATH" ":" prefix
- (,(getenv "GUILE_LOAD_COMPILED_PATH"))))
- #t))))))
- (inputs
- `(("guile" ,guile-2.2)))
- (propagated-inputs
- `(("guile-persist" ,guile-persist)
- ("guile-readline" ,guile-readline)
- ("guile-stis-parser" ,guile-stis-parser)))
- (native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("libtool" ,libtool)
- ("pkg-config" ,pkg-config)))
- (home-page "https://gitlab.com/python-on-guile/python-on-guile/")
- (synopsis "Python implementation in Guile")
- (description
- "This package allows you to compile a Guile Python file to any target
+ (package
+ (name "python-on-guile")
+ (version "1.2.3.5")
+ (home-page "https://gitlab.com/python-on-guile/python-on-guile")
+ (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
+ "05xrvcj6a4gzq1ybyin270qz8wamgc7w2skyi9iy6hkpgdhxy8vf"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:parallel-build? #f ;not supported
+ #:make-flags '("GUILE_AUTO_COMPILE=0") ;to prevent guild warnings
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "modules") #t))
+ (add-after 'chdir 'augment-GUILE_LOAD_PATH
+ (lambda _
+ ;; TODO: It would be better to patch the Makefile.
+ (setenv "GUILE_LOAD_PATH"
+ (string-append ".:"
+ (getenv "GUILE_LOAD_PATH")))
+ #t))
+ (add-after 'install 'wrap
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; Wrap the 'python' executable so it can find its
+ ;; dependencies and own modules.
+ (let* ((out (assoc-ref outputs "out"))
+ (guile-version ,(version-major+minor
+ (package-version guile-3.0)))
+ (scm (string-append out "/share/guile/site/"
+ guile-version))
+ (ccache (string-append out "/lib/guile/" guile-version
+ "/site-ccache"))
+ (load-path (string-join
+ (cons scm
+ ;; XXX: cdr because we augment it above.
+ (cdr (string-split
+ (getenv "GUILE_LOAD_PATH") #\:)))
+ ":"))
+ (compiled-path (string-append
+ ccache ":"
+ (getenv "GUILE_LOAD_COMPILED_PATH"))))
+ (wrap-program (string-append out "/bin/python")
+ `("GUILE_LOAD_PATH" ":" prefix
+ (,load-path))
+ `("GUILE_LOAD_COMPILED_PATH" ":" prefix
+ (,compiled-path)))
+ #t))))))
+ (inputs
+ `(("guile" ,guile-3.0)
+ ("guile-persist" ,guile-persist)
+ ("guile-readline" ,guile-readline)
+ ("guile-stis-parser" ,guile-stis-parser)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)))
+ (synopsis "Python implementation in Guile")
+ (description
+ "This package allows you to compile a Guile Python file to any target
from @code{tree-il}.")
- (license license:lgpl2.0+))))
+ (license license:lgpl2.0+)))
(define-public guile-file-names
(package
@@ -3103,7 +3113,7 @@ clean and easy to use high level API.")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/lloda/guile-ffi-fftw.git")
+ (url "https://github.com/lloda/guile-ffi-fftw")
(commit commit)))
(file-name (git-file-name "guile-ffi-fftw" version))
(sha256
@@ -3539,7 +3549,7 @@ according to Bitorrent BEP003.")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/rekado/guile-irc.git")
+ (url "https://github.com/rekado/guile-irc")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -3554,7 +3564,7 @@ according to Bitorrent BEP003.")
("texinfo" ,texinfo)))
(inputs
`(("gnutls" ,gnutls)
- ("guile" ,guile-2.2)))
+ ("guile" ,guile-3.0)))
(home-page "https://github.com/rekado/guile-irc")
(synopsis "IRC library for Guile")
(description "This package provides a Guile library for @dfn{Internet