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.scm639
1 files changed, 636 insertions, 3 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 86268ab74b..13e9e5bcfa 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -715,6 +715,42 @@ accesses and changes.")
(define-public ecl-file-notify
(sbcl-package->ecl-package sbcl-file-notify))
+(define-public sbcl-file-select
+ (let ((commit "ef25f6d7c78ed9e0b62119979af8c4b5b0f8c774")
+ (revision "1"))
+ (package
+ (name "sbcl-file-select")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/file-select")
+ (commit commit)))
+ (file-name (git-file-name "file-select" version))
+ (sha256
+ (base32 "1qh32ymljw5c98zzbvjfq6jzwlzs4qxi8gh4gw8pixir6y1inxaa"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-cffi
+ sbcl-documentation-utils
+ sbcl-float-features))
+ (home-page "https://shinmera.github.io/file-select/")
+ (synopsis "Invoke the native file selection dialogs to open or save files")
+ (description
+ "This library allows you to open native file dialogs to open and save
+files. This is useful if you have an application that's primarily text based
+and would like a more convenient file selection utility, or if you are working
+with a UI toolkit that does not offer a way to access the native file dialogs
+directly.")
+ (license license:zlib))))
+
+(define-public cl-file-select
+ (sbcl-package->cl-source-package sbcl-file-select))
+
+(define-public ecl-file-select
+ (sbcl-package->ecl-package sbcl-file-select))
+
(define-public sbcl-bodge-queue
(let ((commit "948c9a501dcd412689952d09eb7453ec2722336a")
(revision "0"))
@@ -1894,6 +1930,54 @@ reading and writing.")
(define-public cl-zip
(sbcl-package->cl-source-package sbcl-zip))
+(define-public sbcl-zippy
+ (let ((commit "ed9bca591ded2ff27a9ac95d9a60827773a0e707")
+ (revision "1"))
+ (package
+ (name "sbcl-zippy")
+ (version (git-version "1.1.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/zippy/")
+ (commit commit)))
+ (sha256
+ (base32 "16cvyyf2nzd9r3fcy4w6d5wh8n3x833wldmrxmnzd3k2xrkhzfl9"))
+ (file-name (git-file-name "zippy" version))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-documentation-utils
+ sbcl-file-attributes
+ sbcl-pathname-utils
+ sbcl-alexandria
+ sbcl-nibbles
+ sbcl-babel
+ sbcl-3bz
+ sbcl-salza2))
+ (synopsis "Fast zip archive library")
+ (description "Zippy is a library for the PKWARE Zip archive format. It
+can read and write zip files. It features:
+
+@itemize
+@item archive inspection without extraction;
+@item Zip64 support;
+@item split archive support;
+@item PKWARE decryption;
+@item fast deflate decompression thanks to 3bz;
+@item operates on streams and vectors;
+@item can compress stream->stream;
+@item extensible for other encryption and compression mechanisms.
+@end itemize\n")
+ (home-page "https://shinmera.github.io/zippy/")
+ (license license:zlib))))
+
+(define-public ecl-zippy
+ (sbcl-package->ecl-package sbcl-zippy))
+
+(define-public cl-zippy
+ (sbcl-package->cl-source-package sbcl-zippy))
+
(define-public sbcl-cl-vectors
(package
(name "sbcl-cl-vectors")
@@ -2116,8 +2200,8 @@ antialiased TrueType font rendering using CLX and XRender extension.")
(sbcl-package->ecl-package sbcl-clx-truetype))
(define-public sbcl-slynk
- (let ((commit "4513c382f07a2a2cedb3c046231b69eae2f5e6f0")
- (revision "6"))
+ (let ((commit "82b20a9a83209b4dbfbfb62a1536896aed5f85f7")
+ (revision "7"))
(package
(name "sbcl-slynk")
(version (git-version "1.0.43" revision commit))
@@ -2129,7 +2213,7 @@ antialiased TrueType font rendering using CLX and XRender extension.")
(url "https://github.com/joaotavora/sly")
(commit commit)))
(sha256
- (base32 "10bzxhi5d7h18hqclxqy2z857d0sfbsnyxvrhmfkdi0h75zz7m4n"))
+ (base32 "0dvr36qvb490gml0znay0slw63czp7azvajnv7srh8s0j8pqpcaj"))
(file-name (git-file-name "cl-slynk" version))))
(build-system asdf-build-system/sbcl)
(outputs '("out" "image"))
@@ -10007,6 +10091,80 @@ results.")
(define-public ecl-trivial-indent
(sbcl-package->ecl-package sbcl-trivial-indent))
+(define-public sbcl-data-format-validation
+ (let ((commit "95d44766e829582598f9dcdc5c23719c462d5bfb")
+ (revision "1"))
+ (package
+ (name "sbcl-data-format-validation")
+ (version (git-version "0.2.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/willijar/cl-data-format-validation/")
+ (commit commit)))
+ (file-name (git-file-name "data-format-validation" version))
+ (sha256
+ (base32
+ "0zmk47xmicyqvp1impn8kgh5373ysmx3gfpqcvbi9r31qsir2nqa"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-cl-ppcre))
+ (synopsis "Validation and conversion between user and internal data")
+ (description
+ "@code{data-format-validation} is a library for Common Lisp providing a
+consistent regular interface for converting (and validating) external data (in
+the form of strings usually) into internal data types and for formatting
+internal data back into external presentable strings, all according to a
+conversion or type specification.")
+ (home-page "http://www.jarw.org.uk/lisp/cl-data-format-validation.html")
+ (license license:gpl3))))
+
+(define-public sbcl-cl-docutils
+ (let ((commit "756b5ad42360e84d8225fa69815bdd1623ceaa40")
+ (revision "1"))
+ (package
+ (name "sbcl-cl-docutils")
+ (version (git-version "0.1.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/willijar/cl-docutils/")
+ (commit commit)))
+ (file-name (git-file-name "cl-docutils" version))
+ (sha256
+ (base32
+ "132bxlj0jlhiabi29mygmkcbbgyb5s1yz1xdfhm3pgrf9f8605gg"))))
+ (build-system asdf-build-system/sbcl)
+ (arguments
+ '(#:asd-systems '("docutils")))
+ (inputs
+ (list sbcl-cl-ppcre
+ sbcl-data-format-validation
+ sbcl-trivial-gray-streams))
+ (synopsis "Document utilities and Restructured text parser")
+ (description
+ "@code{cl-docutils} is a Common Lisp implementation of the Docutils text
+processing system for processing plaintext into presentational formats such as
+HTML and LaTeX. It is based upon the Python Docutils reference implementation
+but uses Common Lisp idioms making it easier to extend and more flexible. As
+with the reference implementation it includes a parser for the reStructured
+text plaintext markup syntax which is suitable for marking up documentation
+and for use as user markup for collaborative web sites. It is successfully
+used to support a higher education peer-review assessment and online tutorial
+system.")
+ (home-page "http://www.jarw.org.uk/lisp/cl-docutils.html")
+ (license license:gpl3))))
+
+(define-public cl-docutils
+ (sbcl-package->cl-source-package sbcl-cl-docutils))
+
+(define-public ecl-cl-docutils
+ (sbcl-package->ecl-package sbcl-cl-docutils))
+
(define-public sbcl-documentation-utils
(let ((commit "98630dd5f7e36ae057fa09da3523f42ccb5d1f55")
(revision "0"))
@@ -10079,6 +10237,55 @@ for more information.")
(define-public ecl-documentation-utils-extensions
(sbcl-package->ecl-package sbcl-documentation-utils-extensions))
+(define-public sbcl-staple
+ (let ((commit "0ee8e25fe6fe8fa83b2a6c93d4febd468c3eaa4e")
+ (revision "1"))
+ (package
+ (name "sbcl-staple")
+ (version (git-version "2.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/staple/")
+ (commit commit)))
+ (sha256
+ (base32 "0qf0if7py3n4rszg25lcavpsqikfz6k5dvcmh5q67y8x5r12i5m7"))
+ (file-name (git-file-name "staple" version))))
+ (build-system asdf-build-system/sbcl)
+ (arguments
+ '(#:asd-systems '("staple-package-recording"
+ "staple-code-parser"
+ "staple"
+ "staple-markdown"
+ "staple-markless"
+ "staple-restructured-text")))
+ (inputs
+ (list sbcl-3bmd
+ sbcl-babel
+ sbcl-cl-docutils
+ sbcl-cl-markless
+ sbcl-cl-ppcre
+ sbcl-clip
+ sbcl-concrete-syntax-tree
+ sbcl-definitions
+ sbcl-documentation-utils
+ sbcl-eclector
+ sbcl-language-codes
+ sbcl-pathname-utils))
+ (synopsis "Generate documentation about Lisp projects through an HTML template")
+ (description "Staple is a documentation system. It provides you with a
+way to generate standalone documentation accumulated from various sources such
+as readmes, documentation files, and docstrings.")
+ (home-page "https://Shinmera.github.io/staple/")
+ (license license:zlib))))
+
+(define-public cl-staple
+ (sbcl-package->cl-source-package sbcl-staple))
+
+(define-public ecl-staple
+ (sbcl-package->ecl-package sbcl-staple))
+
(define-public sbcl-form-fiddle
(let ((commit "e0c23599dbb8cff3e83e012f3d86d0764188ad18")
(revision "0"))
@@ -17158,6 +17365,55 @@ bringing dynamism to class definition.")
(define-public cl-markdown
(sbcl-package->cl-source-package sbcl-cl-markdown))
+(define-public sbcl-cl-markless
+ (let ((commit "a0e145c03103bd3bf7e275d5ac0e19e8381eb844")
+ (revision "1"))
+ (package
+ (name "sbcl-cl-markless")
+ (version (git-version "1.1.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shirakumo/cl-markless")
+ (commit commit)))
+ (file-name (git-file-name "cl-markless" version))
+ (sha256
+ (base32 "154ax1yk0b1035yij29c5pgfn7ifghrxy821mk68wyljg8afgvh5"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs
+ (list sbcl-parachute))
+ (inputs
+ (list sbcl-3bmd
+ sbcl-babel
+ sbcl-command-line-arguments
+ sbcl-documentation-utils
+ sbcl-plump
+ sbcl-trivial-gray-streams
+ sbcl-trivial-indent
+ sbcl-trivial-mimes
+ sbcl-zip))
+ (arguments
+ '(#:asd-systems '("cl-markless"
+ "cl-markless-plump"
+ "cl-markless-epub"
+ "cl-markless-markdown"
+ "cl-markless-standalone")))
+ (home-page "https://shirakumo.github.io/cl-markless/")
+ (synopsis "Parser implementation for Markless")
+ (description "This is an implementation of the \"Markless
+standard\" (@url{https://github.com/shirakumo/markless}) at version 1.0. It
+handles the parsing of plaintext from a stream into an abstract syntax tree
+composed out of strings and component objects. From there the AST can be
+easily compiled into a target markup language like HTML.")
+ (license license:zlib))))
+
+(define-public ecl-cl-markless
+ (sbcl-package->ecl-package sbcl-cl-markless))
+
+(define-public cl-markless
+ (sbcl-package->cl-source-package sbcl-cl-markless))
+
(define-public sbcl-magicffi
(let ((commit "d88f2f280c31f639e4e05be75215d8a8dce6aef2"))
(package
@@ -17933,6 +18189,49 @@ adaptations.")
(define-public cl-radiance
(sbcl-package->cl-source-package sbcl-radiance))
+(define-public sbcl-radiance-contribs
+ (let ((commit "710b3e1f9971e48368d52eea0b407f2e8f510981")
+ (revision "1"))
+ (package
+ (name "sbcl-radiance-contribs")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shirakumo/radiance-contribs")
+ (commit commit)))
+ (file-name (git-file-name "radiance-contribs" version))
+ (sha256
+ (base32 "08ivnd7a6vfciqna680qpx6zj6vw9xcbrzq29iz3x7x9sp1pqgq3"))))
+ (build-system asdf-build-system/sbcl)
+ (arguments
+ ;; TODO: Include more contribs.
+ `(#:asd-systems '("r-clip"
+ "i-log4cl"
+ "i-sqlite"
+ "r-data-model"
+ "r-simple-rate"
+ "r-welcome")))
+ (inputs
+ (list sbcl-radiance
+ sbcl-cffi
+ sbcl-clip
+ sbcl-cl-sqlite
+ sbcl-log4cl))
+ (home-page "https://shirakumo.github.io/radiance/")
+ (synopsis "Standard implementations and drivers for the radiance interfaces")
+ (description
+ "This is a collection of useful helper modules and standard
+implementations for Radiance interfaces.")
+ (license license:zlib))))
+
+(define-public ecl-radiance-contribs
+ (sbcl-package->ecl-package sbcl-radiance-contribs))
+
+(define-public cl-radiance-contribs
+ (sbcl-package->cl-source-package sbcl-radiance-contribs))
+
(define-public sbcl-daemon
(let ((commit "d5652f4332c3cee21e9bf83b9237129605004597")
(revision "1"))
@@ -17994,6 +18293,84 @@ attributes not supported by the Common Lisp standard functions.")
(define-public cl-file-attributes
(sbcl-package->cl-source-package sbcl-file-attributes))
+(define-public sbcl-filesystem-utils
+ (let ((commit "4455bb6c43f4433dd68a34ddad9ed5aa9b649243"))
+ (package
+ (name "sbcl-filesystem-utils")
+ (version (git-version "1.0.0" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/filesystem-utils/")
+ (commit commit)))
+ (file-name (git-file-name "filesystem-utils" version))
+ (sha256
+ (base32 "0rww9r26zh44qwmj0b4sl95jngdn2h0239x5gjzak3gpdc3i3nbr"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-documentation-utils
+ sbcl-pathname-utils
+ sbcl-trivial-features))
+ (home-page "https://shinmera.github.io/filesystem-utils/")
+ (synopsis "Collection of utilities for filesystem interaction")
+ (description
+ "This is an extension library to @code{pathname-utils}, to allow
+dealing with common problems with filesystems, such as listing files, probing
+file types, determining default directories, etc.")
+ (license license:zlib))))
+
+(define-public ecl-filesystem-utils
+ (sbcl-package->ecl-package sbcl-filesystem-utils))
+
+(define-public cl-filesystem-utils
+ (sbcl-package->cl-source-package sbcl-filesystem-utils))
+
+(define-public sbcl-depot
+ (let ((commit "73822d9f480cbad00971b45ee80117297a67fb53")
+ (revision "1"))
+ (package
+ (name "sbcl-depot")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/depot/")
+ (commit commit)))
+ (sha256
+ (base32 "1v42pirdwbxy8l8i9a2jmbpri8a62vh0r4vm25xwaak0y4gr71va"))
+ (file-name (git-file-name "depot" version))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-atomics
+ sbcl-babel
+ sbcl-documentation-utils
+ sbcl-trivial-features
+ sbcl-trivial-gray-streams
+ sbcl-zippy))
+ ;; TODO: Some 6 tests fail, why? See https://github.com/Shinmera/depot/issues/2.
+ (arguments
+ '(#:asd-systems '("depot"
+ "depot-in-memory"
+ "depot-virtual"
+ "depot-zip")))
+ (synopsis "Protocol for transparent collections of files")
+ (description "This is a system presenting a protocol for \"file
+systems\": things that present a collection of \"files,\" which are things
+that have several attributes, and a central data payload. Most notably this
+includes the OS filesystem, but can also be used to address other
+filesystem-like things like archives, object stores, etc. in the same
+manner.")
+ (home-page "https://shinmera.github.io/depot/")
+ (license license:zlib))))
+
+(define-public ecl-depot
+ (sbcl-package->ecl-package sbcl-depot))
+
+(define-public cl-depot
+ (sbcl-package->cl-source-package sbcl-depot))
+
(define-public sbcl-cl-difflib
(let ((commit "98eb335c693f1881584b83ca7be4a0fe05355c4e")
(revision "0"))
@@ -26866,6 +27243,41 @@ functionality similar to what was originally found in @code{sdl2kit}.
(define-public ecl-glkit
(sbcl-package->ecl-package sbcl-glkit))
+(define-public sbcl-cl-fond
+ (let ((commit "dac975cbc73f231b400d5b8d8539b16330239a4a")
+ (revision "1"))
+ (package
+ (name "sbcl-cl-fond")
+ (version (git-version "1.1.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shirakumo/cl-fond")
+ (commit commit)))
+ (file-name (git-file-name "cl-fond" version))
+ (sha256
+ (base32 "03ygcw1azb44bhdsqcq99xi4ci0by76ap5jf5l2d1vfxq04v8grq"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-alexandria
+ sbcl-cffi
+ sbcl-cl-opengl
+ sbcl-documentation-utils
+ sbcl-trivial-features
+ sbcl-trivial-garbage))
+ (home-page "https://shirakumo.github.io/cl-fond/")
+ (synopsis "Bindings to libfond, a simple text rendering engine for OpenGL")
+ (description "This is a Common Lisp bindings library to libfond, a
+simple OpenGL text rendering engine.")
+ (license license:zlib))))
+
+(define-public cl-fond
+ (sbcl-package->cl-source-package sbcl-cl-fond))
+
+(define-public ecl-cl-fond
+ (sbcl-package->ecl-package sbcl-cl-fond))
+
(define-public sbcl-doplus
(package
(name "sbcl-doplus")
@@ -28626,6 +29038,227 @@ environment for Common Lisp.")
;; (define-public ecl-lisp-stat
;; (sbcl-package->ecl-package sbcl-lisp-stat))
+(define-public sbcl-cl-modio
+ (let ((commit "2fd288af27b574f448357fa6de4b42acf44e2f11")
+ (revision "1"))
+ (package
+ (name "sbcl-cl-modio")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/cl-modio/")
+ (commit commit)))
+ (sha256
+ (base32 "0hz87v81pi8kr2c7az30czpdf7v757lkzlsmdcc59p94pipca7m9"))
+ (file-name (git-file-name "cl-modio" version))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-alexandria
+ sbcl-zippy
+ sbcl-jzon
+ sbcl-cl-ppcre
+ sbcl-drakma
+ sbcl-documentation-utils
+ sbcl-language-codes))
+ (synopsis "Client library for the mod.io API")
+ (description "This is a client library to interact with the
+\"mod.io\" (@url{https://mod.io}) platform to manage \"mods\" or extensions
+for games and other applications. It covers the full v1 API and includes
+convenience methods to make interacting with the API as well as syncing mods
+and so on easy.")
+ (home-page "https://shinmera.github.io/cl-modio/")
+ (license license:zlib))))
+
+(define-public cl-modio
+ (sbcl-package->cl-source-package sbcl-cl-modio))
+
+(define-public ecl-cl-modio
+ (sbcl-package->ecl-package sbcl-cl-modio))
+
+(define-public sbcl-cl-steamworks
+ (let ((commit "9d6a4de653a8cc256ae35e0298912b518aa92ba3")
+ (revision "1"))
+ (package
+ (name "sbcl-cl-steamworks")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/cl-steamworks/")
+ (commit commit)))
+ (sha256
+ (base32 "1fzj3rlqw1kwdlmh0ga0y71p2n1adflcamzx4yp9kga552c1db5j"))
+ (file-name (git-file-name "cl-steamworks" version))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-alexandria
+ sbcl-babel
+ sbcl-cffi
+ sbcl-documentation-utils
+ sbcl-float-features
+ sbcl-trivial-features
+ sbcl-trivial-garbage
+ sbcl-trivial-gray-streams))
+ (synopsis "Wrapper for the Valve SteamWorks API")
+ (description "This is a wrapper library to allow you to interface with
+the Valve SteamWorks API.")
+ (home-page "https://shinmera.github.io/cl-steamworks/")
+ (license license:zlib))))
+
+(define-public cl-steamworks
+ (sbcl-package->cl-source-package sbcl-cl-steamworks))
+
+(define-public ecl-cl-steamworks
+ (sbcl-package->ecl-package sbcl-cl-steamworks))
+
+(define-public sbcl-forge
+ (let ((commit "012324e251d91436f4a610e2fe2eb50674c3c3ce")
+ (revision "1"))
+ (package
+ (name "sbcl-forge")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/forge/")
+ (commit commit)))
+ (sha256
+ (base32 "006vi2ihrn28pzrwa8b7axmv98bdaxzx7lacnh9pbacbjg3b7hb0"))
+ (file-name (git-file-name "forge" version))))
+ (build-system asdf-build-system/sbcl)
+ (arguments
+ '(#:asd-systems '("forge-support"
+ "forge-communication"
+ "forge")))
+ (inputs
+ (list sbcl-alexandria
+ sbcl-bordeaux-threads
+ sbcl-cffi
+ sbcl-cl-ppcre
+ sbcl-closer-mop
+ sbcl-documentation-utils
+ sbcl-ironclad
+ sbcl-pathname-utils
+ sbcl-promise
+ sbcl-usocket
+ sbcl-verbose))
+ (synopsis "General, modular build system")
+ (description "Forge is a generic build system. Refer to documentation
+for the specific kind of project you're building to get the full picture.")
+ (home-page "https://github.com/shinmera/forge")
+ (license license:zlib))))
+
+(define-public forge
+ (sbcl-package->cl-source-package sbcl-forge))
+
+(define-public sbcl-maiden
+ (let ((commit "164e8df1b513fcbf097315b51242d337c183a5ef")
+ (revision "1"))
+ (package
+ (name "sbcl-maiden")
+ (version (git-version "3.1.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shirakumo/maiden/")
+ (commit commit)))
+ (sha256
+ (base32 "1m16qi019cmfpfs6538hc4qsplpb8nl9ly1qlckgfxgjag0z3wdr"))
+ (file-name (git-file-name "maiden" version))))
+ (build-system asdf-build-system/sbcl)
+ (arguments
+ '(#:asd-systems '("maiden"
+ "maiden-commands"
+ "maiden-networking"
+ "maiden-client-entities"
+ "maiden-irc"
+ "maiden-silly")))
+ (inputs
+ (list sbcl-alexandria
+ sbcl-babel
+ sbcl-bordeaux-threads
+ sbcl-cl-base64
+ sbcl-cl+ssl
+ sbcl-closer-mop
+ sbcl-deeds
+ sbcl-documentation-utils
+ sbcl-drakma
+ sbcl-form-fiddle
+ sbcl-jsown
+ sbcl-lambda-fiddle
+ sbcl-lquery
+ sbcl-pathname-utils
+ sbcl-trivial-garbage
+ sbcl-trivial-indent
+ sbcl-ubiquitous
+ sbcl-usocket
+ sbcl-uuid
+ sbcl-verbose))
+ (synopsis "Modern and extensible chat bot framework")
+ (description "Maiden is a collection of systems to help you build
+applications and libraries that interact with chat servers. It can help you
+build a chat bot, or a general chat client. It also offers a variety of parts
+that should make it much easier to write a client for a new chat protocol.")
+ (home-page "http://shirakumo.github.io/maiden/")
+ (license license:zlib))))
+
+(define-public maiden
+ (sbcl-package->cl-source-package sbcl-maiden))
+
+(define-public sbcl-speechless
+ (let ((commit "50e9b03bdfc8a3bc0836a650d92de47b51c39834")
+ (revision "1"))
+ (package
+ (name "sbcl-speechless")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shirakumo/speechless/")
+ (commit commit)))
+ (sha256
+ (base32 "1k0kc2l98jyv04l48xnj38qwpddan80c7m41srjld64jkna0fhas"))
+ (file-name (git-file-name "speechless" version))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-cl-markless
+ sbcl-documentation-utils))
+ (synopsis "Dialogue system language implementation")
+ (description "This is a system implementing an advanced dialogue system
+that is capable of complex dialogue flow including choice trees and
+conditional branching. Speechless was first developed for the
+\"Kandria\" (@url{https://kandria.com}) game, and has since been separated and
+made public in the hopes that it may find use elsewhere or inspire other
+developers to build similar systems.
+
+Speechless is based on the
+\"Markless\" (@url{https://shirakumo.github.io/markless}) document standard
+for its syntax and makes use of Markless' ability to be extended to add
+additional constructs useful for dialogue systems.
+
+Speechless can compile dialogue from its base textual form into an efficient
+instruction set, which is then executed when the game is run. Execution of the
+dialogue is completely engine-agnostic, and only requires some simple
+integration with a client protocol to run.
+
+Thanks to Markless' extensibility, Speechless can also be further extended to
+include additional syntax and constructs that may be useful for your
+particular game.")
+ (home-page "http://shirakumo.github.io/speechless/")
+ (license license:zlib))))
+
+(define-public speechless
+ (sbcl-package->cl-source-package sbcl-speechless))
+
+(define-public ecl-speechless
+ (sbcl-package->ecl-package sbcl-speechless))
+
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar