summaryrefslogtreecommitdiff
path: root/gnu/packages/lisp-xyz.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/lisp-xyz.scm')
-rw-r--r--gnu/packages/lisp-xyz.scm422
1 files changed, 393 insertions, 29 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 467acc8316..a41eb845df 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -104,6 +104,7 @@
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages rsync)
#:use-module (gnu packages sdl)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sqlite)
@@ -894,10 +895,75 @@ Features:
(define-public ecl-cl-irc
(sbcl-package->ecl-package sbcl-cl-irc))
-(define-public sbcl-tripod
- (let ((commit "bcea16610b4961a927e417e4413fffe686d71c83")
+(define-public sbcl-coleslaw
+ (let ((commit "e7e68ce6020d13b14bf212890a7d8973d7af3b40")
(revision "0"))
(package
+ (name "sbcl-coleslaw")
+ (version (git-version "0.9.7" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/coleslaw-org/coleslaw")
+ (commit commit)))
+ (file-name (git-file-name "cl-coleslaw" version))
+ (sha256
+ (base32 "1w21a272q4x7nlr4kbmwwvkjvb4hpnw869byvy47vv361y7pimws"))))
+ (build-system asdf-build-system/sbcl)
+ (outputs '("out" "bin"))
+ (arguments
+ '(#:asd-systems '("coleslaw" "coleslaw-cli")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-paths
+ (lambda _
+ (substitute* "plugins/publish-gh-pages.sh"
+ (("^rsync\\b") (which "rsync")))
+ (substitute* '("plugins/rsync.lisp"
+ "src/coleslaw.lisp")
+ (("\\brun-program \"rsync\\b")
+ (string-append "run-program \"" (which "rsync"))))))
+ (add-after 'create-asdf-configuration 'build-program
+ (lambda* (#:key outputs #:allow-other-keys)
+ (build-program
+ (string-append (assoc-ref outputs "bin") "/bin/coleslaw")
+ outputs
+ #:dependencies '("coleslaw-cli")
+ #:entry-program '((apply (function coleslaw-cli::main)
+ arguments))
+ #:compress? #t))))))
+ (native-inputs
+ (list sbcl-prove))
+ (inputs
+ (list rsync
+ sbcl-3bmd
+ sbcl-alexandria
+ sbcl-cl-fad
+ sbcl-cl-ppcre
+ sbcl-cl-unicode
+ sbcl-clack
+ sbcl-closer-mop
+ sbcl-closure-template
+ sbcl-inferior-shell
+ sbcl-local-time
+ sbcl-trivia))
+ (home-page "https://github.com/coleslaw-org/coleslaw")
+ (synopsis "Static site generator")
+ (description
+ "Coleslaw is a static site generator written in Common Lisp.")
+ (license license:bsd-2))))
+
+(define-public cl-coleslaw
+ (sbcl-package->cl-source-package sbcl-coleslaw))
+
+(define-public ecl-coleslaw
+ (sbcl-package->ecl-package sbcl-coleslaw))
+
+(define-public sbcl-tripod
+ (let ((commit "b019a27cd7eb895870f84b0eb6c3edc5d7b05928")
+ (revision "1"))
+ (package
(name "sbcl-tripod")
(version (git-version "0.0.1" revision commit))
(source
@@ -908,17 +974,30 @@ Features:
(commit commit)))
(file-name (git-file-name "cl-tripod" version))
(sha256
- (base32 "07czbwzfqg8n1q4dsfmrdp2zmp90xgsg8q26hkrniyvkylq4nn1z"))))
+ (base32 "0y8sns6njq9x7km58vpj7gx4cia9zkcpng3d38300xk0nnk2kz8w"))))
(build-system asdf-build-system/sbcl)
+ (outputs '("out" "bin"))
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'create-asdf-configuration 'build-program
+ (lambda* (#:key outputs #:allow-other-keys)
+ (build-program (string-append #$output:bin "/bin/tripod")
+ outputs
+ #:entry-program '((tripod:entry-point))
+ #:compress? #t))))))
(inputs
- (list sbcl-alexandria
- sbcl-cl-gopher
- sbcl-cl-markdown
- sbcl-clss
- sbcl-hunchentoot
- sbcl-phos
- sbcl-plump
- sbcl-trivial-mimes))
+ (list sbcl-alexandria
+ sbcl-cl-gopher
+ sbcl-cl-markdown
+ sbcl-clss
+ sbcl-hunchentoot
+ sbcl-local-time
+ sbcl-nactivitypub
+ sbcl-njson
+ sbcl-phos
+ sbcl-plump
+ sbcl-trivial-mimes))
(home-page "https://aartaka.me/blog/tripod")
(synopsis "Common Lisp web server aiming to ease website hosting")
(description
@@ -932,7 +1011,6 @@ and Gopher website hosting.")
(define-public ecl-tripod
(sbcl-package->ecl-package sbcl-tripod))
-
(define-public sbcl-trivial-timeout
(let ((commit "feb869357f40f5e109570fb40abad215fb370c6c")
(revision "1"))
@@ -1425,6 +1503,53 @@ within.")
(define-public cl-ubiquitous
(sbcl-package->cl-source-package sbcl-ubiquitous))
+(define-public sbcl-uax-14
+ (let ((commit "0432162525119c401d3d705bb9bcc9580a03914f")
+ (revision "1"))
+ (package
+ (name "sbcl-uax-14")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/uax-14")
+ (commit commit)))
+ (file-name (git-file-name "uax-14" version))
+ (sha256
+ (base32 "1sb2s58k01yjaggaq8i7kbyfsh6mzyqbiz1vm59smxn9qqwd8apm"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs
+ (list sbcl-parachute sbcl-cl-ppcre))
+ (inputs
+ (list sbcl-documentation-utils))
+ (arguments
+ `(#:asd-systems '("uax-14")))
+ (home-page "https://shinmera.github.io/uax-14/")
+ (synopsis "Unicode Standard Annex #14 for standardised line breaking")
+ (description
+ "This is an implementation of the Unicode Standards Annex
+#14 (@url{http://www.unicode.org/reports/tr14/}) line breaking algorithm. It
+provides a fast and convenient way to determine line breaking opportunities in
+text.
+
+Note that this algorithm does not support break opportunities that require
+morphological analysis. In order to handle such cases, please consult a system
+that provides this kind of capability, such as a hyphenation algorithm.
+
+Also note that this system is completely unaware of layouting decisions. Any
+kind of layouting decisions, such as which breaks to pick, how to space
+between words, how to handle bidirectionality, and what to do in emergency
+situations when there are no breaks on an overfull line are left up to the
+user.")
+ (license license:zlib))))
+
+(define-public ecl-uax-14
+ (sbcl-package->ecl-package sbcl-uax-14))
+
+(define-public cl-uax-14
+ (sbcl-package->cl-source-package sbcl-uax-14))
+
(define-public sbcl-uax-15
(package
(name "sbcl-uax-15")
@@ -1592,7 +1717,10 @@ reading and writing.")
`(("zpb-ttf" ,sbcl-zpb-ttf)))
(arguments
'(#:asd-systems '("cl-vectors"
- "cl-paths-ttf")))
+ "cl-paths"
+ "cl-paths-ttf"
+ "cl-aa"
+ "cl-aa-misc")))
(home-page "http://projects.tuxee.net/cl-vectors/")
(synopsis "Create, transform and render anti-aliased vectorial paths")
(description
@@ -10428,6 +10556,39 @@ the library does not depend on X11).
(define-public ecl-cl-colors2
(sbcl-package->ecl-package sbcl-cl-colors2))
+(define-public sbcl-colored
+ (let ((commit "bee87efb0b047da0f071f5cf1457997ab5f93feb")
+ (revision "1"))
+ (package
+ (name "sbcl-colored")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/colored/")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0mpg91r6yfb9xqccd4r8z3hl2qzjhdj6daswb1cinrm8ffxrvy5k"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs
+ (list sbcl-parachute))
+ (inputs
+ (list sbcl-documentation-utils))
+ (synopsis "Colour representation, conversion, and operation for Common Lisp")
+ (description
+ "This is a library for representing and mapping colours between their
+various spaces.")
+ (home-page "https://shinmera.github.io/colored/")
+ (license license:zlib))))
+
+(define-public cl-colored
+ (sbcl-package->cl-source-package sbcl-colored))
+
+(define-public ecl-colored
+ (sbcl-package->ecl-package sbcl-colored))
+
(define-public sbcl-cl-jpeg
(let ((commit "ec557038128df6895fbfb743bfe8faf8ec2534af")
(revision "1"))
@@ -10678,8 +10839,8 @@ performance and correctness.")
(sbcl-package->ecl-package sbcl-png-read))
(define-public sbcl-3b-bmfont
- (let ((commit "d1b5bec0de580c2d08ec947a93c56b1400f2a37a")
- (revision "1"))
+ (let ((commit "48a38f52d282064829851c484d9e7dee0ffe9e72")
+ (revision "2"))
(package
(name "sbcl-3b-bmfont")
(version (git-version "0.0.1" revision commit))
@@ -10691,7 +10852,7 @@ performance and correctness.")
(commit commit)))
(file-name (git-file-name "3b-bmfont" version))
(sha256
- (base32 "12sgf7m0h6fqzhvkas7vmci6mprj3j3fnz778jlbqbsydln6v2yc"))))
+ (base32 "0v4lcrlpx60ayg0g5b10q2hjh1iaanln4ck0hm1rvjxm39gl2d86"))))
(build-system asdf-build-system/sbcl)
(arguments
`(#:asd-systems
@@ -10719,6 +10880,63 @@ read/write Bit Map Font (BMF) into text, JSON and XML.")
(define-public cl-3b-bmfont
(sbcl-package->cl-source-package sbcl-3b-bmfont))
+(define sbcl-3b-bmfont/shinmera
+ (let ((commit "58e529d24b7799d56b4b3f9c8a953b585d42c7d2")
+ (revision "1"))
+ (package (inherit sbcl-3b-bmfont)
+ (version (git-version "0.0.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/3b-bmfont/")
+ (commit commit)))
+ (file-name (git-file-name "3b-bmfont2" version))
+ (sha256
+ (base32 "17zby669b64rhxhk2szamzdgvispimh6ici05xa6x2vz4rvk71jq")))))))
+
+(define-public sbcl-sdf
+ ;; Shinmera's fork required for Alloy.
+ (let ((commit "e1ab3ac4ea52c0e0119b832f428c71f580b4d83b")
+ (revision "1"))
+ (package
+ (name "sbcl-sdf")
+ (version (git-version "0.0.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/sdf")
+ (commit commit)))
+ (file-name (git-file-name "sdf" version))
+ (sha256
+ (base32 "1cyq4hkgiw9mnb87ah6xw19cybfs9hfbjvg1ch2mf4cr0ism0nvn"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-zpb-ttf
+ sbcl-cl-vectors
+ sbcl-opticl
+ sbcl-binpack
+ sbcl-3b-bmfont/shinmera
+ sbcl-pathname-utils))
+ (arguments
+ `(#:asd-systems '("sdf" "sdf/bmfont")))
+ (home-page "https://github.com/Shinmera/sdf")
+ (synopsis "Signed distance font atlas generator")
+ (description
+ "This library generates
+sdf (@url{https://steamcdn-a.akamaihd.net/apps/valve/2007/SIGGRAPH2007_AlphaTestedMagnification.pdf}),
+psdf and
+msdf (@url{https://github.com/Chlumsky/msdfgen/files/3050967/thesis.pdf})
+atlases.")
+ (license license:expat))))
+
+(define-public ecl-sdf
+ (sbcl-package->ecl-package sbcl-sdf))
+
+(define-public cl-sdf
+ (sbcl-package->cl-source-package sbcl-sdf))
+
(define-public sbcl-zpng
(package
(name "sbcl-zpng")
@@ -16732,8 +16950,8 @@ protocol for Mastodon.")
(sbcl-package->cl-source-package sbcl-tooter))
(define-public sbcl-croatoan
- (let ((commit "5d0949d57a12e7fece8828e089daa339b260da96")
- (revision "5"))
+ (let ((commit "35c92fcc6c4458339c7e27bdf16f7fa908d95eb8")
+ (revision "6"))
(package
(name "sbcl-croatoan")
(version (git-version "0.0.1" revision commit))
@@ -16745,7 +16963,7 @@ protocol for Mastodon.")
(commit commit)))
(file-name (git-file-name "cl-croatoan" version))
(sha256
- (base32 "0qsnz10hri95al73vhpqrs7mapz2px0dbwgfn52sbi93gwk5aki9"))))
+ (base32 "0v1lrdjd29krjb6pr0mql9hjj5c2lv760xwpr17dbsw263vx29xz"))))
(build-system asdf-build-system/sbcl)
(arguments
'(#:phases
@@ -16871,11 +17089,11 @@ dynamically.")
(sbcl-package->cl-source-package sbcl-sxql-composer))
(define-public sbcl-cl-i18n
- (let ((commit "5b569f3fe4c76d600fafecac507ac4f50e4cc1d1")
- (revision "1"))
+ (let ((commit "66b02dc2cff3ab97f924329aaf965807fe18aa20")
+ (revision "2"))
(package
(name "sbcl-cl-i18n")
- (version (git-version "0.5.2" revision commit))
+ (version (git-version "0.5.3" revision commit))
(source
(origin
(method git-fetch)
@@ -16884,7 +17102,7 @@ dynamically.")
(commit commit)))
(file-name (git-file-name "cl-i18n" version))
(sha256
- (base32 "0kj1wfvlbi7qwq61b0rcdxa0bmb4sfsnh1bj3n5jxp24sdib73w2"))))
+ (base32 "06ij1wxancsym87gg63nvjh7vfzjipi1f02h4fb2ypip60vw06lc"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-alexandria sbcl-babel sbcl-cl-ppcre-unicode))
@@ -17456,6 +17674,38 @@ compiled foreign library collection.")
(define-public cl-conspack
(sbcl-package->cl-source-package sbcl-cl-conspack))
+(define-public sbcl-binpack
+ (let ((commit "e67f56bb697bdeac81e28e1cca4a5d117a9cf125")
+ (revision "1"))
+ (package
+ (name "sbcl-binpack")
+ (version (git-version "0.0.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/lispgames/binpack")
+ (commit commit)))
+ (file-name (git-file-name "binpack" version))
+ (sha256
+ (base32 "1pcnsg60pqywd3k72m5pwimq01sm3jyvc1c3rbkij740r7grdxi1"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs
+ (list sbcl-parachute))
+ (inputs
+ (list sbcl-alexandria))
+ (home-page "https://github.com/lispgames/binpack")
+ (synopsis "Common Lisp rectangle packer for sprite/texture atlases")
+ (description
+ "This library features a rectangle packer for sprite and texture atlases.")
+ (license license:expat))))
+
+(define-public ecl-binpack
+ (sbcl-package->ecl-package sbcl-binpack))
+
+(define-public cl-binpack
+ (sbcl-package->cl-source-package sbcl-binpack))
+
(define-public sbcl-cl-opengl
(let ((commit "e2d83e0977b7e7ac3f3d348d8ccc7ccd04e74d59")
(revision "1"))
@@ -19979,10 +20229,42 @@ developing library for Common Lisp.")
(define-public cl-liballegro
(sbcl-package->cl-source-package sbcl-cl-liballegro))
-(define-public sbcl-alloy
- (let ((commit "e86e22c2887836ec31cd97e039f0bca5248d8f1c")
+(define-public sbcl-font-discovery
+ (let ((commit "5101ca79151055f3ec9839aae73b8af42b884528")
(revision "1"))
(package
+ (name "sbcl-font-discovery")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/font-discovery")
+ (commit commit)))
+ (file-name (git-file-name "font-discovery" version))
+ (sha256
+ (base32 "1p9wkwc23rnif8vcjaj5ih1fmr5g57sidqjlz08qw6k0z4f6bia1"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-cffi sbcl-documentation-utils sbcl-trivial-indent))
+ (home-page "https://shinmera.github.io/font-discovery/")
+ (synopsis "Find system font files matching a font spec")
+ (description
+ "This is a library to find system font files. It works on systems with
+FontConfig on Linux, BSD. It does not have any foreign dependencies that
+aren't already directly available on the system.")
+ (license license:zlib))))
+
+(define-public ecl-font-discovery
+ (sbcl-package->ecl-package sbcl-font-discovery))
+
+(define-public cl-font-discovery
+ (sbcl-package->cl-source-package sbcl-font-discovery))
+
+(define-public sbcl-alloy
+ (let ((commit "ea02e4576fd92917201b3c9b63dd3cdc72045dbf")
+ (revision "2"))
+ (package
(name "sbcl-alloy")
(version (git-version "0.0.0" revision commit))
(source
@@ -19993,12 +20275,25 @@ developing library for Common Lisp.")
(commit commit)))
(file-name (git-file-name "alloy" version))
(sha256
- (base32 "1jsqjr6sf86hcdvnjp4gd10qv0r7kfkr9hmda85irb5lha4q9n7w"))))
+ (base32 "1g8ibvlajhlbdrmny7ck55ilv1shjdpj38q380wri4mavfymjw5f"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-alexandria sbcl-parachute))
(inputs
- (list sbcl-array-utils sbcl-closer-mop sbcl-documentation-utils))
+ (list sbcl-array-utils sbcl-closer-mop sbcl-documentation-utils
+ sbcl-float-features sbcl-colored sbcl-stealth-mixin
+ sbcl-cl-opengl sbcl-font-discovery sbcl-uax-14 sbcl-sdf))
+ (arguments
+ ;; Dismiss alloy-svg, since it is not completed:
+ ;; https://github.com/Shirakumo/alloy/issues/24
+ '(#:asd-systems '("alloy"
+ "alloy-windowing"
+ "alloy-animation"
+ "alloy-simple"
+ "alloy-simple-presentations"
+ "alloy-opengl"
+ "alloy-opengl-msdf"
+ "alloy-opengl-png")))
(home-page "https://shirakumo.github.io/alloy/")
(synopsis
"Common Lisp user interface protocol and toolkit implementation")
@@ -23039,6 +23334,50 @@ Lisp. A subsystem offers an experimental GUI Gemini client.")
(define-public ecl-phos
(sbcl-package->ecl-package sbcl-phos))
+(define-public sbcl-germinal
+ (let ((commit "5bfb371ea57dae8985c0e1c6f184f0338487d684")
+ (revision "0"))
+ (package
+ (name "sbcl-germinal")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.carcosa.net/jmcbray/germinal")
+ (commit commit)))
+ (file-name (git-file-name "cl-germinal" version))
+ (sha256
+ (base32 "12jypa8m10825lp5yxfcm1fyk3r4ziwcri7ndxa0m5dz0y7hggck"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-alexandria
+ sbcl-babel
+ sbcl-bordeaux-threads
+ sbcl-cl+ssl
+ sbcl-cl-fad
+ sbcl-cl-interpol
+ sbcl-cl-ppcre
+ sbcl-cl-str
+ sbcl-local-time
+ sbcl-osicat
+ sbcl-ppath
+ sbcl-quri
+ sbcl-trivial-mimes
+ sbcl-uax-15
+ sbcl-usocket))
+ (home-page "https://git.carcosa.net/jmcbray/germinal")
+ (synopsis "Gemini protocol server")
+ (description "Germinal is a server for the Gemini protocol, written in
+Common Lisp.")
+ (license license:agpl3))))
+
+(define-public cl-germinal
+ (sbcl-package->cl-source-package sbcl-germinal))
+
+(define-public ecl-germinal
+ (sbcl-package->ecl-package sbcl-germinal))
+
(define-public sbcl-css-lite
(let ((commit "6ee4e6212ed56943d665df163d2a834b122e6273")
(revision "0"))
@@ -26047,8 +26386,25 @@ Zombie Raptor game engine project.")
(sha256
(base32 "146mwshynhdw82m2nxrcjvf1nk0z3fn6ywcd2vqxkly5qricc53w"))))
(build-system asdf-build-system/sbcl)
+ (outputs '("out" "bin"))
(arguments
- '(#:asd-systems '("charje.triads")))
+ '(#:asd-systems '("charje.triads")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'create-asdf-configuration 'build-binary
+ (lambda* (#:key outputs #:allow-other-keys)
+ (setenv "HOME" (getcwd))
+ (invoke
+ "sbcl" "--eval" "(require :asdf)" "--eval"
+ (format
+ #f "~S"
+ `(progn
+ (require "charje.triads"
+ ,(string-append (getcwd) "/charje.triads.asd"))
+ (asdf:make "charje.triads"))))
+ (install-file
+ (string-append (getcwd) "/triads")
+ (string-append (assoc-ref outputs "bin") "/bin")))))))
(inputs
(list sbcl-cl-str
sbcl-serapeum
@@ -26065,7 +26421,15 @@ roman numeral given in the key.")
(sbcl-package->cl-source-package sbcl-triads))
(define-public ecl-triads
- (sbcl-package->ecl-package sbcl-triads))
+ (let ((ecl-package (sbcl-package->ecl-package sbcl-triads)))
+ (package
+ (inherit ecl-package)
+ (outputs '("out"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments ecl-package)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (delete 'build-binary))))))))
(define-public sbcl-closure-template
;; There are no releases since 2015.