projects/guix·blob python-team · refs

35480 lines · 1.2 MiB

1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2014 John Darrington <[email protected]>
3;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <[email protected]>
4;;; Copyright © 2015 Mark H Weaver <[email protected]>
5;;; Copyright © 2016 Federico Beffa <[email protected]>
6;;; Copyright © 2016, 2017 Nikita <[email protected]>
7;;; Copyright © 2016, 2017 Andy Patterson <[email protected]>
8;;; Copyright © 2017, 2019, 2020 Ricardo Wurmus <[email protected]>
9;;; Copyright © 2017-2020, 2022, 2023 Efraim Flashner <[email protected]>
10;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <[email protected]>
11;;; Copyright © 2018 Benjamin Slade <[email protected]>
12;;; Copyright © 2018 Alex Vong <[email protected]>
13;;; Copyright © 2018, 2020, 2021, 2022 Pierre Neidhardt <[email protected]>
14;;; Copyright © 2018, 2019 Pierre Langlois <[email protected]>
15;;; Copyright © 2019, 2020 Katherine Cox-Buday <[email protected]>
16;;; Copyright © 2019 Jesse Gildersleve <[email protected]>
17;;; Copyright © 2019-2026 Guillaume Le Vaillant <[email protected]>
18;;; Copyright © 2019 Brett Gilio <[email protected]>
19;;; Copyright © 2020, 2024, 2025 Konrad Hinsen <[email protected]>
20;;; Copyright © 2020 Dimakis Dimakakos <[email protected]>
21;;; Copyright © 2020 Oleg Pykhalov <[email protected]>
22;;; Copyright © 2020, 2021, 2022 Adam Kandur <[email protected]>
23;;; Copyright © 2020-2025 Sharlatan Hellseher <[email protected]>
24;;; Copyright © 2021, 2022 Aurora <[email protected]>
25;;; Copyright © 2021 Matthew James Kraai <[email protected]>
26;;; Copyright © 2021-2025 André A. Gomes <[email protected]>
27;;; Copyright © 2021, 2022, 2023 Cage <[email protected]>
28;;; Copyright © 2021 Cameron Chaparro <[email protected]>
29;;; Copyright © 2021, 2024, 2025 Charles Jackson <[email protected]>
30;;; Copyright © 2021, 2022 Foo Chuan Wei <[email protected]>
31;;; Copyright © 2021-2026 jgart <[email protected]>
32;;; Copyright © 2021 Aleksandr Vityazev <[email protected]>
33;;; Copyright © 2021 Jacob MacDonald <[email protected]>
34;;; Copyright © 2022 Jai Vetrivelan <[email protected]>
35;;; Copyright © 2022, 2023, 2024 Paul A. Patience <[email protected]>
36;;; Copyright © 2022 Thomas Albers Raviola <[email protected]>
37;;; Copyright © 2022 Arun Isaac <[email protected]>
38;;; Copyright © 2022 Trevor Richards <[email protected]>
39;;; Copyright © 2022, 2023 Artyom Bologov <[email protected]>
40;;; Copyright © 2023, 2024 Roman Scherer <[email protected]>
41;;; Copyright © 2023 ykonai <[email protected]>
42;;; Copyright © 2023 Gabriel Hondet <[email protected]>
43;;; Copyright © 2023 Raven Hallsby <[email protected]>
44;;; Copyright © 2024 Michal Atlas <[email protected]>
45;;; Copyright © 2024 Carlo Zancanaro <[email protected]>
46;;; Copyright © 2024 Nik Gaffney <[email protected]>
47;;; Copyright © 2024 Grigory Shepelev <[email protected]>
48;;; Copyright © 2025 Junker <[email protected]>
49;;; Copyright © 2025,2026 Simen Endsjø <[email protected]>
50;;; Copyright © 2025 Ashish SHUKLA <[email protected]>
51;;; Copyright © 2025 vga <[email protected]>
52;;;
53;;; This file is part of GNU Guix.
54;;;
55;;; GNU Guix is free software; you can redistribute it and/or modify it
56;;; under the terms of the GNU General Public License as published by
57;;; the Free Software Foundation; either version 3 of the License, or (at
58;;; your option) any later version.
59;;;
60;;; GNU Guix is distributed in the hope that it will be useful, but
61;;; WITHOUT ANY WARRANTY; without even the implied warranty of
62;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
63;;; GNU General Public License for more details.
64;;;
65;;; You should have received a copy of the GNU General Public License
66;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
67
68;;; This file only contains Common Lisp libraries.
69;;; Common Lisp compilers and tooling go to lisp.scm.
70;;; Common Lisp applications should go to the most appropriate file,
71;;; e.g. StumpWM is in window-management.scm.
72;;; Common Lisp libraries related to code testing facilities go
73;;; to lisp-check.scm.
74
75(define-module (gnu packages lisp-xyz)
76 #:use-module (gnu packages)
77 #:use-module (guix gexp)
78 #:use-module ((guix licenses) #:prefix license:)
79 #:use-module (guix packages)
80 #:use-module (guix download)
81 #:use-module (guix git-download)
82 #:use-module (guix hg-download)
83 #:use-module (guix utils)
84 #:use-module (guix build-system asdf)
85 #:use-module (guix build-system emacs)
86 #:use-module (guix build-system gnu)
87 #:use-module (guix build-system pyproject)
88 #:use-module (guix build-system trivial)
89 #:use-module (gnu packages audio)
90 #:use-module (gnu packages autotools)
91 #:use-module (gnu packages base)
92 #:use-module (gnu packages c)
93 #:use-module (gnu packages cpp)
94 #:use-module (gnu packages compression)
95 #:use-module (gnu packages databases)
96 #:use-module (gnu packages enchant)
97 #:use-module (gnu packages figlet)
98 #:use-module (gnu packages file)
99 #:use-module (gnu packages fonts)
100 #:use-module (gnu packages fontutils)
101 #:use-module (gnu packages freedesktop)
102 #:use-module (gnu packages game-development)
103 #:use-module (gnu packages gcc)
104 #:use-module (gnu packages gl)
105 #:use-module (gnu packages glib)
106 #:use-module (gnu packages gnome)
107 #:use-module (gnu packages gnupg)
108 #:use-module (gnu packages graphics)
109 #:use-module (gnu packages graphviz)
110 #:use-module (gnu packages gtk)
111 #:use-module (gnu packages image)
112 #:use-module (gnu packages imagemagick)
113 #:use-module (gnu packages kerberos)
114 #:use-module (gnu packages libevent)
115 #:use-module (gnu packages libffi)
116 #:use-module (gnu packages linux)
117 #:use-module (gnu packages lisp)
118 #:use-module (gnu packages lisp-check)
119 #:use-module (gnu packages maths)
120 #:use-module (gnu packages mp3)
121 #:use-module (gnu packages mpi)
122 #:use-module (gnu packages music)
123 #:use-module (gnu packages ncurses)
124 #:use-module (gnu packages networking)
125 #:use-module (gnu packages package-management)
126 #:use-module (gnu packages pkg-config)
127 #:use-module (gnu packages python)
128 #:use-module (gnu packages python-build)
129 #:use-module (gnu packages python-xyz)
130 #:use-module (gnu packages readline)
131 #:use-module (gnu packages rsync)
132 #:use-module (gnu packages sdl)
133 #:use-module (gnu packages serialization)
134 #:use-module (gnu packages sqlite)
135 #:use-module (gnu packages statistics)
136 #:use-module (gnu packages tcl)
137 #:use-module (gnu packages texinfo)
138 #:use-module (gnu packages tls)
139 #:use-module (gnu packages uml)
140 #:use-module (gnu packages version-control)
141 #:use-module (gnu packages video)
142 #:use-module (gnu packages web)
143 #:use-module (gnu packages webkit)
144 #:use-module (gnu packages xdisorg)
145 #:use-module (gnu packages xiph)
146 #:use-module (gnu packages xml)
147 #:use-module (gnu packages xorg)
148 #:use-module (ice-9 match)
149 #:use-module (srfi srfi-1)
150 #:use-module (srfi srfi-19))
151
152(define-public sbcl-3b-bmfont
153 (let ((commit "056025a28e07265f69bb691397beb2f903099080")
154 (revision "4"))
155 (package
156 (name "sbcl-3b-bmfont")
157 (version (git-version "0.0.1" revision commit))
158 (source
159 (origin
160 (method git-fetch)
161 (uri (git-reference
162 (url "https://github.com/3b/3b-bmfont/")
163 (commit commit)))
164 (file-name (git-file-name "cl-3b-bmfont" version))
165 (sha256
166 (base32 "1zmkmhw8ma2j8p6crw0x6am6fx95rxkb1n3fqlgvs2rxdk273dan"))))
167 (build-system asdf-build-system/sbcl)
168 (arguments
169 `(#:asd-systems '("3b-bmfont"
170 "3b-bmfont/common"
171 "3b-bmfont/json"
172 "3b-bmfont/text"
173 "3b-bmfont/xml")))
174 (inputs
175 (list sbcl-alexandria
176 sbcl-cxml
177 sbcl-flexi-streams
178 sbcl-jsown
179 sbcl-parse-number
180 sbcl-split-sequence))
181 (native-inputs
182 (list sbcl-parachute))
183 (home-page "https://github.com/3b/3b-bmfont/")
184 (synopsis "Read/write bmfont metadata files")
185 (description
186 "This is a Common Lisp library which provides functionality to
187read/write Bit Map Font (BMF) into text, JSON and XML.")
188 (license license:expat))))
189
190(define-public ecl-3b-bmfont
191 (sbcl-package->ecl-package sbcl-3b-bmfont))
192
193(define-public cl-3b-bmfont
194 (sbcl-package->cl-source-package sbcl-3b-bmfont))
195
196(define sbcl-3b-bmfont/shinmera
197 (let ((commit "58e529d24b7799d56b4b3f9c8a953b585d42c7d2")
198 (revision "1"))
199 (package (inherit sbcl-3b-bmfont)
200 (version (git-version "0.0.1" revision commit))
201 (source
202 (origin
203 (method git-fetch)
204 (uri (git-reference
205 (url "https://codeberg.org/shinmera/3b-bmfont/")
206 (commit commit)))
207 (file-name (git-file-name "3b-bmfont2" version))
208 (sha256
209 (base32 "17zby669b64rhxhk2szamzdgvispimh6ici05xa6x2vz4rvk71jq")))))))
210
211(define-public sbcl-3bmd
212 (let ((commit "bc7ae591e58a4db60ff41c2b550323bab2c6dfd0")
213 (revision "5"))
214 (package
215 (name "sbcl-3bmd")
216 (version (git-version "0.0.0" revision commit))
217 (source
218 (origin
219 (method git-fetch)
220 (uri (git-reference
221 (url "https://github.com/3b/3bmd")
222 (commit commit)))
223 (sha256
224 (base32 "0jb66w9x8bggkcdj5z6jvhw2nj6nvrks4xpxckc69affd5ncy6q8"))
225 (file-name (git-file-name "cl-3bmd" version))))
226 (build-system asdf-build-system/sbcl)
227 (arguments
228 `(#:asd-systems
229 '("3bmd"
230 "3bmd-ext-definition-lists"
231 "3bmd-ext-math"
232 "3bmd-ext-tables"
233 "3bmd-ext-wiki-links"
234 "3bmd-youtube"
235 "3bmd-ext-code-blocks")
236 #:phases
237 (modify-phases %standard-phases
238 (add-after 'unpack 'fix-python3-path
239 (lambda _
240 (substitute* "code-blocks.lisp"
241 (("python3") (which "python3"))))))))
242 (native-inputs
243 (list sbcl-fiasco))
244 (inputs
245 (list python
246 python-pygments
247 sbcl-alexandria
248 sbcl-colorize
249 sbcl-split-sequence
250 sbcl-esrap))
251 (home-page "https://github.com/3b/3bmd")
252 (synopsis "Markdown processor in Command Lisp using esrap parser")
253 (description
254 "This is a Common Lisp Markdown to HTML converter, using @command{esrap}
255for parsing, and grammar based on @command{peg-markdown}.")
256 (license license:expat))))
257
258(define-public cl-3bmd
259 (sbcl-package->cl-source-package sbcl-3bmd))
260
261(define-public ecl-3bmd
262 (sbcl-package->ecl-package sbcl-3bmd))
263
264(define-public sbcl-3bz
265 (let ((commit "569614c40408f3aefc77ba233e0e4bd66d3850ad")
266 (revision "1"))
267 (package
268 (name "sbcl-3bz")
269 (version (git-version "0.0.0" revision commit))
270 (source
271 (origin
272 (method git-fetch)
273 (uri (git-reference
274 (url "https://github.com/3b/3bz")
275 (commit commit)))
276 (file-name (git-file-name name version))
277 (sha256
278 (base32 "0kvvlvf50jhhw1s510f3clpr1a68632bq6d698yxcrx722igcrg4"))))
279 (build-system asdf-build-system/sbcl)
280 (inputs
281 (list sbcl-alexandria
282 sbcl-babel
283 sbcl-cffi
284 sbcl-mmap
285 sbcl-nibbles
286 sbcl-trivial-features))
287 (home-page "https://github.com/3b/3bz")
288 (synopsis "Deflate decompression for Common Lisp")
289 (description
290 "3bz is an implementation of Deflate decompression (RFC 1951) optionally
291with zlib (RFC 1950) or gzip (RFC 1952) wrappers, with support for reading from
292foreign pointers (for use with mmap and similar, etc), and from CL octet
293vectors and streams.")
294 (license license:expat))))
295
296(define-public cl-3bz
297 (sbcl-package->cl-source-package sbcl-3bz))
298
299(define-public ecl-3bz
300 (sbcl-package->ecl-package sbcl-3bz))
301
302(define-public sbcl-3d-math
303 (let ((commit "3831b1706d225def95a7301ef48b393b563f0114")
304 (revision "0"))
305 (package
306 (name "sbcl-3d-math")
307 (version (git-version "1.0.0" revision commit))
308 (source
309 (origin
310 (method git-fetch)
311 (uri (git-reference
312 (url "https://codeberg.org/shinmera/3d-math")
313 (commit commit)))
314 (file-name (git-file-name "cl-3d-math" version))
315 (sha256
316 (base32 "052vzx5j7bag9dxvl0j0wrm244js1djldyn31rwxgkq7965rmi5r"))))
317 (build-system asdf-build-system/sbcl)
318 (native-inputs
319 (list sbcl-parachute))
320 (inputs
321 (list sbcl-documentation-utils
322 sbcl-type-templates))
323 (home-page "https://shinmera.com/docs/3d-math/")
324 (synopsis "Linear algebra for 2D and 3D computations")
325 (description
326 "The @code{3d-math} library implements types, operators, and algorithms
327commonly used in math for 2D and 3D graphics. It supersedes and combines the
328prior libraries @code{3d-vectors}, @code{3d-matrices}, @code{3d-quaternions},
329and @code{3d-transforms}. The new API is largely but not entirely backwards
330compatible, and adds new functionality.")
331 (license license:zlib))))
332
333(define-public cl-3d-math
334 (sbcl-package->cl-source-package sbcl-3d-math))
335
336(define-public sbcl-3d-matrices
337 (let ((commit "bc1ffa08dcf4732523e09adcf9deba4ddeb559ff")
338 (revision "3"))
339 (package
340 (name "sbcl-3d-matrices")
341 (version (git-version "1.0.0" revision commit))
342 (source
343 (origin
344 (method git-fetch)
345 (uri (git-reference
346 (url "https://codeberg.org/shinmera/3d-matrices")
347 (commit commit)))
348 (file-name (git-file-name "cl-3d-matrices" version))
349 (sha256
350 (base32 "0jzckgb5lsmh1gn1f4mczjfc5ckkw01a73wrl1shyb9sil93a751"))))
351 (build-system asdf-build-system/sbcl)
352 (native-inputs
353 (list sbcl-parachute))
354 (inputs
355 (list sbcl-3d-vectors sbcl-documentation-utils))
356 (home-page "https://codeberg.org/shinmera/3d-matrices")
357 (synopsis "Utility library implementing 2x2, 3x3, 4x4 and NxM matrices")
358 (description
359 "@code{3D-MATRICES} is a library implementing common matrix operations,
360mainly intended as the counterpiece to @code{3d-vectors} and thus being aimed at
361operations in 3D space.")
362 (license license:zlib))))
363
364(define-public cl-3d-matrices
365 (sbcl-package->cl-source-package sbcl-3d-matrices))
366
367(define-public ecl-3d-matrices
368 (sbcl-package->ecl-package sbcl-3d-matrices))
369
370(define-public clasp-3d-matrices
371 (sbcl-package->clasp-package sbcl-3d-matrices))
372
373(define-public sbcl-3d-quaternions
374 (let ((commit "225cb40155dfb5a242e7162e7a7836ca487e92ce")
375 (revision "2"))
376 (package
377 (name "sbcl-3d-quaternions")
378 (version (git-version "1.0.0" revision commit))
379 (source
380 (origin
381 (method git-fetch)
382 (uri (git-reference
383 (url "https://codeberg.org/shinmera/3d-quaternions")
384 (commit commit)))
385 (file-name (git-file-name "cl-3d-quaternions" version))
386 (sha256
387 (base32 "0bfy9isd5dp2yv63nl7klg4amrkbkwk679fsdkjgfri7026zgh2f"))))
388 (build-system asdf-build-system/sbcl)
389 (native-inputs
390 (list sbcl-parachute))
391 (inputs
392 (list sbcl-3d-matrices sbcl-3d-vectors sbcl-documentation-utils))
393 (home-page "https://codeberg.org/shinmera/3d-quaternions")
394 (synopsis "Quaternion and dual-quaternion functionality in Common Lisp")
395 (description
396 "This is a library for quaternions. It contains most of the quaternion
397operations one would usually expect out of such a library and offers them both
398in non-modifying and modifying versions where applicable. It also tries to be
399efficient where plausible. Each quaternion is made up of @code{float}s, which
400by default are @code{single-float}s, as they do not require value boxing on
401most modern systems and compilers.")
402 (license license:zlib))))
403
404(define-public cl-3d-quaternions
405 (sbcl-package->cl-source-package sbcl-3d-quaternions))
406
407(define-public ecl-3d-quaternions
408 (package
409 (inherit (sbcl-package->ecl-package sbcl-3d-quaternions))
410 (arguments
411 ;; See <https://codeberg.org/shinmera/3d-quaternions/issues/1>.
412 (list #:tests? #f))))
413
414(define-public clasp-3d-quaternions
415 (sbcl-package->clasp-package sbcl-3d-quaternions))
416
417(define-public sbcl-3d-spaces
418 (let ((commit "a93f4915affcf65617366297ad8bd2ec77bae702")
419 (revision "0"))
420 (package
421 (name "sbcl-3d-spaces")
422 (version (git-version "1.0.0" revision commit))
423 (source
424 (origin
425 (method git-fetch)
426 (uri (git-reference
427 (url "https://github.com/Shirakumo/3d-spaces")
428 (commit commit)))
429 (file-name (git-file-name "cl-3d-spaces" version))
430 (sha256
431 (base32 "1m5cg5zy1731dcgkm1p4m53z1zsp387xligxh32pdrnrhc2lzhmf"))))
432 (build-system asdf-build-system/sbcl)
433 (native-inputs
434 (list sbcl-parachute))
435 (inputs
436 (list sbcl-3d-math
437 sbcl-documentation-utils
438 sbcl-for
439 sbcl-trivial-extensible-sequences))
440 (home-page "https://shirakumo.github.io/3d-spaces/")
441 (synopsis "Implementations of various spatial query structures")
442 (description
443 "The 3D-Spaces library implements a number of spatial query data
444structures; structures that can answer spatial range queries for optimized
445lookup, particularly suited for games.")
446 (license license:zlib))))
447
448(define-public cl-3d-spaces
449 (sbcl-package->cl-source-package sbcl-3d-spaces))
450
451(define-public ecl-3d-spaces
452 (sbcl-package->ecl-package sbcl-3d-spaces))
453
454(define-public sbcl-3d-transforms
455 (let ((commit "86e7e99fa9027c1d230adc83f3a2a74a2b83eb08")
456 (revision "1"))
457 (package
458 (name "sbcl-3d-transforms")
459 (version (git-version "1.0.0" revision commit))
460 (source
461 (origin
462 (method git-fetch)
463 (uri (git-reference
464 (url "https://codeberg.org/shinmera/3d-transforms")
465 (commit commit)))
466 (file-name (git-file-name "cl-3d-transforms" version))
467 (sha256
468 (base32 "04z532aq5rwfg3z7nijxzxikmcv504d6xx7gwmc7blk7z3mjk7dd"))))
469 (build-system asdf-build-system/sbcl)
470 (native-inputs
471 (list sbcl-parachute))
472 (inputs
473 (list sbcl-3d-matrices
474 sbcl-3d-quaternions
475 sbcl-3d-vectors
476 sbcl-documentation-utils))
477 (home-page "https://shinmera.com/docs/3d-transforms")
478 (synopsis
479 "Common structure to encapsulate spatial transformations in Common Lisp")
480 (description
481 "This is a library that uses the other 3d-* math libraries to present an
482encapsulation for a spatial transformation. It offers convenience functions for
483operating on such transformations and for converting between them and the
484alternative 4x4 matrix representation.")
485 (license license:zlib))))
486
487(define-public cl-3d-transforms
488 (sbcl-package->cl-source-package sbcl-3d-transforms))
489
490;; TODO: Build failure:
491;; https://codeberg.org/shinmera/3d-quaternions/issues/1
492;;
493;; (define-public ecl-3d-transforms
494;; (sbcl-package->ecl-package sbcl-3d-transforms))
495
496(define-public clasp-3d-transforms
497 (sbcl-package->clasp-package sbcl-3d-transforms))
498
499(define-public sbcl-3d-vectors
500 (let ((commit "fc751c65b2285e971c348539bfbc3cbb58b253b0")
501 (revision "3"))
502 (package
503 (name "sbcl-3d-vectors")
504 (version (git-version "3.1.0" revision commit))
505 (source
506 (origin
507 (method git-fetch)
508 (uri (git-reference
509 (url "https://codeberg.org/shinmera/3d-vectors")
510 (commit commit)))
511 (file-name (git-file-name "cl-3d-vectors" version))
512 (sha256
513 (base32 "0im0c4yv3bmlipbpfqfcbkdpqknr4468xjvdmrr01pchc8r4m11j"))))
514 (build-system asdf-build-system/sbcl)
515 (native-inputs
516 (list sbcl-parachute))
517 (inputs
518 (list sbcl-documentation-utils))
519 (home-page "https://shinmera.com/docs/3d-vectors/")
520 (synopsis "Utility library implementing 2D, 3D, and 4D vectors")
521 (description
522 "@code{3D-VECTORS} is a library for vector math in 3D space. It contains
523most of the vector operations one would usually expect out of such a library and
524offers them both in non-modifying and modifying versions where applicable.")
525 (license license:zlib))))
526
527(define-public cl-3d-vectors
528 (sbcl-package->cl-source-package sbcl-3d-vectors))
529
530(define-public ecl-3d-vectors
531 (sbcl-package->ecl-package sbcl-3d-vectors))
532
533(define-public clasp-3d-vectors
534 (sbcl-package->clasp-package sbcl-3d-vectors))
535
536(define-public sbcl-40ants-asdf-system
537 (let ((commit "492bc9b09c100593ceec8375899addcbffa573cc")
538 (revision "2"))
539 (package
540 (name "sbcl-40ants-asdf-system")
541 (version (git-version "0.3.2" revision commit))
542 (source
543 (origin
544 (method git-fetch)
545 (uri (git-reference
546 (url "https://github.com/40ants/40ants-asdf-system")
547 (commit commit)))
548 (sha256
549 (base32 "151zfyz7c4xrd4mnyzd5nsla1p70q4iixgm9mlnbm799mr1aprwp"))
550 (file-name (git-file-name "cl-40ants-asdf-system" version))))
551 (build-system asdf-build-system/sbcl)
552 (native-inputs (list sbcl-rove))
553 (home-page "https://40ants.com/40ants-asdf-system/")
554 (synopsis "Alternative to asdf:package-inferred-system")
555 (description
556 "@code{40ants-asdf-system} provides a class for being used instead of
557@code{asdf:package-inferred-system} in 40ANT systems.")
558 (license license:bsd-3))))
559
560(define-public cl-40ants-asdf-system
561 (sbcl-package->cl-source-package sbcl-40ants-asdf-system))
562
563(define-public ecl-40ants-asdf-system
564 (sbcl-package->ecl-package sbcl-40ants-asdf-system))
565
566(define-public sbcl-40ants-doc
567 (package
568 (name "sbcl-40ants-doc")
569 (version "0.25.0")
570 (source
571 (origin
572 (method git-fetch)
573 (uri (git-reference
574 (url "https://github.com/40ants/doc")
575 (commit (string-append "v" version))))
576 (sha256
577 (base32 "1h8xrnlfplk2dk6v3miwzwwqnygbhba0nvdsbij5gfac4k898n1r"))
578 (file-name (git-file-name "cl-40ants-doc" version))))
579 (build-system asdf-build-system/sbcl)
580 (arguments
581 '(#:asd-systems '("40ants-doc"
582 "40ants-doc-full")))
583 (inputs
584 (list sbcl-cl-fad
585 sbcl-cl-str
586 sbcl-commondoc-markdown
587 sbcl-dexador
588 sbcl-docs-config
589 sbcl-jonathan
590 sbcl-lass
591 sbcl-log4cl
592 sbcl-named-readtables
593 sbcl-pythonic-string-reader
594 sbcl-rove
595 sbcl-serapeum
596 sbcl-slime-swank
597 sbcl-slynk
598 sbcl-spinneret
599 sbcl-stem
600 sbcl-tmpdir
601 sbcl-which
602 sbcl-xml-emitter))
603 (home-page "https://40ants.com/doc/")
604 (synopsis "Exploratory programming environment and documentation generator")
605 (description
606 "@code{40ants-doc} provides a rudimentary explorable programming
607environment. The narrative primarily lives in so-called sections that mix
608Markdown docstrings with references to functions, variables, etc., all of
609which should probably have their own docstrings.
610
611The primary focus is on making code easily explorable by using SLIME's
612@kbd{M-.} (@code{slime-edit-definition}). Generating documentation in
613Markdown or HTML format from sections and all the referenced items is also
614implemented.
615
616With the simplistic tools provided, one may obtain results similar to literate
617programming, but documentation is generated from code, not the other way
618around, and there is no support for chunking. Code comes first, code must
619look pretty, documentation is code.
620
621@code{40ants-doc} is a fork of MGL-PAX with fewer dependencies (only
622@code{named-readtables} and @code{pythonic-string-reader}) for the core
623system, and additional features in the full system.")
624 (license license:expat)))
625
626(define-public cl-40ants-doc
627 (sbcl-package->cl-source-package sbcl-40ants-doc))
628
629(define-public ecl-40ants-doc
630 (sbcl-package->ecl-package sbcl-40ants-doc))
631
632(define-public sbcl-40ants-plantuml
633 (let ((commit "928a074051491273450c70a290b11db27fd379e7")
634 (revision "0"))
635 (package
636 (name "sbcl-40ants-plantuml")
637 (version (git-version "0.0.0" revision commit))
638 (source
639 (origin
640 (method git-fetch)
641 (uri (git-reference
642 (url "https://github.com/40ants/plantuml")
643 (commit commit)))
644 (sha256
645 (base32 "0bi3i0cw16aa38xp04xwirdfvwjz862q5yzghpprddi1q5mvxpbf"))
646 (file-name (git-file-name "cl-40ants-plantuml" version))))
647 (build-system asdf-build-system/sbcl)
648 (arguments
649 (list
650 #:phases
651 #~(modify-phases %standard-phases
652 (add-after 'unpack 'fix-paths
653 (lambda* (#:key inputs #:allow-other-keys)
654 (substitute* "src/core.lisp"
655 (("/usr/share/plantuml/plantuml.jar")
656 (search-input-file inputs "/bin/plantuml"))))))))
657 (native-inputs (list sbcl-rove))
658 (inputs
659 (list graphviz
660 plantuml
661 sbcl-40ants-asdf-system
662 sbcl-serapeum))
663 (home-page "https://40ants.com/plantuml/")
664 (synopsis "Wrapper around PlantUML jar library")
665 (description
666 "@code{40ants-plantuml} provides a wrapper around the PlantUML jar library.")
667 (license license:unlicense))))
668
669(define-public cl-40ants-plantuml
670 (sbcl-package->cl-source-package sbcl-40ants-plantuml))
671
672(define-public ecl-40ants-plantuml
673 (sbcl-package->ecl-package sbcl-40ants-plantuml))
674
675(define-public sbcl-abstract-classes
676 (let ((commit "7fa74f1e057f9ba7c1ffecff14f049f979e45267")
677 (revision "1"))
678 (package
679 (name "sbcl-abstract-classes")
680 (version (git-version "1.7.0" revision commit))
681 (source
682 (origin
683 (method git-fetch)
684 (uri (git-reference
685 (url "https://bitbucket.org/eeeickythump/cl-abstract-classes")
686 (commit commit)))
687 (file-name (git-file-name "cl-abstract-classes" version))
688 (sha256
689 (base32 "06lby4i6xbbgs7kgb0f3fqybvyskyg6djhrf967lnysv7hn3zpg9"))))
690 (build-system asdf-build-system/sbcl)
691 (inputs
692 (list sbcl-closer-mop))
693 (arguments
694 `(#:asd-systems '("abstract-classes" "singleton-classes")))
695 (home-page "https://bitbucket.org/eeeickythump/cl-abstract-classes")
696 (synopsis "Abstract, final, and singleton metaclasses for CLOS")
697 (description
698 "This package provides Common Lisp extension to the MOP to allow
699abstract, final and singleton classes.")
700 (license license:public-domain))))
701
702(define-public ecl-abstract-classes
703 (sbcl-package->ecl-package sbcl-abstract-classes))
704
705(define-public clasp-abstract-classes
706 (sbcl-package->clasp-package sbcl-abstract-classes))
707
708(define-public cl-abstract-classes
709 (sbcl-package->cl-source-package sbcl-abstract-classes))
710
711(define-public sbcl-access
712 (let ((commit "a4f87fc1007f5c9a0a2abfddc1c23a77e87096f8")
713 (revision "1"))
714 (package
715 (name "sbcl-access")
716 (version (git-version "1.6.0" revision commit))
717 (source
718 (origin
719 (method git-fetch)
720 (uri (git-reference
721 (url "https://github.com/AccelerationNet/access")
722 (commit commit)))
723 (file-name (git-file-name "cl-access" version))
724 (sha256
725 (base32 "0zdjqhb9rvnlq6nzmsp7372gi91k1rq9bz510m6hcki7g3r01iv5"))))
726 (build-system asdf-build-system/sbcl)
727 (native-inputs
728 (list sbcl-lisp-unit2))
729 (inputs
730 (list sbcl-alexandria
731 sbcl-cl-ppcre
732 sbcl-closer-mop
733 sbcl-iterate))
734 (synopsis
735 "Common lisp library to unify access to dictionary-like structures")
736 (description
737 "This is a Common lisp library to unify access to the most common
738dictionary-like data structures.")
739 (home-page "https://github.com/AccelerationNet/access")
740 (license license:bsd-3))))
741
742(define-public ecl-access
743 (sbcl-package->ecl-package sbcl-access))
744
745(define-public cl-access
746 (sbcl-package->cl-source-package sbcl-access))
747
748(define-public sbcl-acclimation
749 (let ((commit "9339b92e16e6a6784488f8bac82c189ae4bab4aa")
750 (revision "2"))
751 (package
752 (name "sbcl-acclimation")
753 (version (git-version "0.0.0" revision commit))
754 (source
755 (origin
756 (method git-fetch)
757 (uri (git-reference
758 (url "https://github.com/robert-strandh/Acclimation")
759 (commit commit)))
760 (file-name (git-file-name name version))
761 (sha256
762 (base32
763 "1rp4794czi01hlv67mgykxym1hqsyn04ldgwiqjwf4lj5d3p7aj4"))))
764 (build-system asdf-build-system/sbcl)
765 (home-page "https://github.com/robert-strandh/Acclimation")
766 (synopsis "Internationalization library for Common Lisp")
767 (description "This project is meant to provide tools for
768internationalizing Common Lisp programs.
769
770One important aspect of internationalization is of course the language used in
771error messages, documentation strings, etc. But with this project we provide
772tools for all other aspects of internationalization as well, including dates,
773weight, temperature, names of physical quantities, etc.")
774 (license license:bsd-2))))
775
776(define-public cl-acclimation
777 (sbcl-package->cl-source-package sbcl-acclimation))
778
779(define-public ecl-acclimation
780 (sbcl-package->ecl-package sbcl-acclimation))
781
782(define-public sbcl-ecclesia
783 (let ((commit "605debb6f28f120243da66c281274011e292ce46"))
784 (package
785 (name "sbcl-ecclesia")
786 (version (git-version "0.0.0" "0" commit))
787 (source
788 (origin
789 (method git-fetch)
790 (uri (git-reference
791 (url "https://github.com/s-expressionists/Ecclesia")
792 (commit commit)))
793 (file-name (git-file-name name version))
794 (sha256
795 (base32
796 "0lmy03lqk82301b86pli9qd6493q6fr7vd5h29j4gwc778awbmf5"))))
797 (build-system asdf-build-system/sbcl)
798 (inputs (list sbcl-acclimation))
799 (home-page "https://github.com/s-expressionists/Ecclesia")
800 (synopsis "Utilities for parsing Lisp code")
801 (description "This library contains utilities for parsing Common Lisp
802code.")
803 (license license:bsd-2))))
804
805(define-public cl-ecclesia
806 (sbcl-package->cl-source-package sbcl-ecclesia))
807
808(define-public ecl-ecclesia
809 (sbcl-package->ecl-package sbcl-ecclesia))
810
811(define-public sbcl-acl-compat
812 ;; There does not seem to be proper releases.
813 (let ((commit "cac1d6920998ddcbee8310a873414732e707d8e5"))
814 (package
815 (name "sbcl-acl-compat")
816 (version (git-version "0.1.1" "1" commit))
817 (source
818 (origin
819 (method git-fetch)
820 (uri (git-reference
821 (url "git://git.code.sf.net/p/portableaserve/git")
822 (commit commit)))
823 (file-name (git-file-name "acl-compat" version))
824 (sha256
825 (base32 "0ak6mqp84sjr0a7h5svr16vra4bf4fcx6wpir0n88dc1vjwy5xqa"))))
826 (build-system asdf-build-system/sbcl)
827 (arguments
828 `(#:phases
829 (modify-phases %standard-phases
830 (add-after 'unpack 'cd-acl-compat
831 (lambda _
832 (chdir "acl-compat")
833 #t)))))
834 (inputs
835 (list sbcl-puri
836 sbcl-cl-ppcre
837 sbcl-ironclad
838 sbcl-cl-fad))
839 (home-page "https://sourceforge.net/projects/portableaserve/")
840 (synopsis "AllegroServe, a web server written in Common Lisp")
841 (description
842 "The server part of AllegroServe can be used either as a standalone web
843server or a module loaded into an application to provide a user interface to
844the application. AllegroServe's proxy ability allows it to run on the gateway
845machine between some internal network and the Internet. AllegroServe's client
846functions allow Lisp programs to explore the web.")
847 (license license:llgpl))))
848
849(define-public cl-acl-compat
850 (sbcl-package->cl-source-package sbcl-acl-compat))
851
852(define-public sbcl-common-macros
853 (let ((commit "4596ddf32357fa793ece25cecb6e8661259b51ac")
854 (revision "1"))
855 (package
856 (name "sbcl-common-macros")
857 (version (git-version "0" revision commit))
858 (source
859 (origin
860 (method git-fetch)
861 (uri (git-reference
862 (url "https://github.com/robert-strandh/Common-macros")
863 (commit commit)))
864 (file-name (git-file-name "cl-common-macros" version))
865 (sha256
866 (base32
867 "0wgfhrh0qn9vhz49yc76a3vn6wbfldy388h7krnv0jbb7v0s92zy"))))
868 (build-system asdf-build-system/sbcl)
869 (arguments
870 '(#:asd-systems '("common-macro-definitions")))
871 (inputs
872 (list sbcl-ecclesia))
873 (home-page "https://github.com/robert-strandh/Common-macros")
874 (synopsis "Portable Common Lisp macro definitions")
875 (description
876 "This library defines most Common Lisp standard macros that can be
877defined in a portable way and that can generate portable code. Some of these
878macros may not be good enough as the final version for a typical
879implementation, but they will work.")
880 (license license:bsd-2))))
881
882(define-public cl-common-macros
883 (sbcl-package->cl-source-package sbcl-common-macros))
884
885(define-public ecl-common-macros
886 (sbcl-package->ecl-package sbcl-common-macros))
887
888(define-public clasp-common-macros
889 (sbcl-package->clasp-package sbcl-common-macros))
890
891(define-public sbcl-adopt
892 (package
893 (name "sbcl-adopt")
894 (version "1.3.0")
895 (source
896 (origin
897 (method git-fetch)
898 (uri (git-reference
899 (url "https://github.com/sjl/adopt")
900 (commit (string-append "v" version))))
901 (file-name (git-file-name "cl-adopt" version))
902 (sha256
903 (base32 "01frfns7xddb785vrlksm5v0wy57bybhfijziw8mk58xpb45q0mz"))))
904 (build-system asdf-build-system/sbcl)
905 (native-inputs (list sbcl-1am))
906 (inputs (list sbcl-bobbin sbcl-split-sequence))
907 (home-page "https://hg.stevelosh.com/adopt")
908 (synopsis "Common Lisp option parsing library")
909 (description
910 "@acronym{ADOPT, A Damn OPTion} is a simple UNIX-style option parser in
911Common Lisp, heavily influenced by Python's @code{optparse} and
912@code{argparse}.")
913 (license license:expat)))
914
915(define-public cl-adopt
916 (sbcl-package->cl-source-package sbcl-adopt))
917
918(define-public ecl-adopt
919 (sbcl-package->ecl-package sbcl-adopt))
920
921(define-public sbcl-agnostic-lizard
922 (let ((commit "fe1a1d7d80c8b56163754e0e5b3653fd750ad298")
923 (revision "2"))
924 (package
925 (name "sbcl-agnostic-lizard")
926 (version (git-version "0.0.0" revision commit))
927 (source
928 (origin
929 (method git-fetch)
930 (uri (git-reference
931 (url "https://gitlab.common-lisp.net/mraskin/agnostic-lizard")
932 (commit commit)))
933 (file-name (git-file-name "cl-agnostic-lizard" version))
934 (sha256
935 (base32 "0amzshh6v3mp24j0h2cinv4zvdlg4kih04md5biakwhnmcw4j4pr"))))
936 (build-system asdf-build-system/sbcl)
937 (synopsis "Almost correct portable code walker for Common Lisp")
938 (description
939 "Agnostic Lizard is a portable implementation of a code walker and in
940particular of the macroexpand-all function (and macro) that makes a best
941effort to be correct while not expecting much beyond what the Common Lisp
942standard requires.
943
944It aims to be implementation-agnostic and to climb the syntax trees.")
945 (home-page "https://gitlab.common-lisp.net/mraskin/agnostic-lizard")
946 (license license:gpl3+))))
947
948(define-public cl-agnostic-lizard
949 (sbcl-package->cl-source-package sbcl-agnostic-lizard))
950
951(define-public ecl-agnostic-lizard
952 (sbcl-package->ecl-package sbcl-agnostic-lizard))
953
954(define-public sbcl-agutil
955 (let ((commit "df188d754d472da9faa1601a48f1f37bb7b34d68"))
956 (package
957 (name "sbcl-agutil")
958 (version (git-version "0.0.1" "1" commit))
959 (source
960 (origin
961 (method git-fetch)
962 (uri (git-reference
963 (url "https://github.com/alex-gutev/agutil/")
964 (commit commit)))
965 (file-name (git-file-name name version))
966 (sha256
967 (base32 "1xpnyzksk2xld64b6lw6rw0gn5zxlb77jwna59sd4yl7kxhxlfpf"))))
968 (build-system asdf-build-system/sbcl)
969 (inputs
970 (list sbcl-alexandria sbcl-trivia))
971 (home-page "https://github.com/alex-gutev/agutil/")
972 (synopsis "Collection of Common Lisp utilities")
973 (description "A collection of Common Lisp utility functions and macros
974mostly not found in other utility packages.")
975 (license license:expat))))
976
977(define-public cl-agutil
978 (sbcl-package->cl-source-package sbcl-agutil))
979
980(define-public ecl-agutil
981 (sbcl-package->ecl-package sbcl-agutil))
982
983(define-public sbcl-alea
984 (package
985 (name "sbcl-alea")
986 (version "1.0")
987 (source
988 (origin
989 (method git-fetch)
990 (uri (git-reference
991 (url "https://github.com/eXodiquas/alea")
992 (commit (string-append "v" version))))
993 (file-name (git-file-name "cl-alea" version))
994 (sha256
995 (base32 "0nd9fdjli22ygfw3c8k9nh7d36c92866hics5aij6x7ly1q781gz"))))
996 (build-system asdf-build-system/sbcl)
997 (native-inputs (list sbcl-fiveam))
998 (synopsis "Dice rolling library")
999 (description
1000 "This package provides a Common Lisp library for dice rolling and working
1001with dice-roll statistics.")
1002 (home-page "https://github.com/eXodiquas/alea")
1003 (license license:expat)))
1004
1005(define-public cl-alea
1006 (sbcl-package->cl-source-package sbcl-alea))
1007
1008(define-public ecl-alea
1009 (sbcl-package->ecl-package sbcl-alea))
1010
1011(define-public sbcl-alexa
1012 (package
1013 (name "sbcl-alexa")
1014 (version "2.1.1")
1015 (source
1016 (origin
1017 (method git-fetch)
1018 (uri (git-reference
1019 (url "https://github.com/quil-lang/alexa")
1020 (commit (string-append "v" version))))
1021 (file-name (git-file-name "cl-alexa" version))
1022 (sha256
1023 (base32 "1y9jyz9gfmd02h492kf7v3mmpbhc0yfh4ka2rzd1vczq6fl8qgqv"))))
1024 (build-system asdf-build-system/sbcl)
1025 (native-inputs (list sbcl-fiasco))
1026 (inputs (list sbcl-alexandria sbcl-cl-ppcre))
1027 (synopsis "Lexical Analyzer Generator for Common Lisp")
1028 (description
1029 "ALEXA is a tool similar to lex or flex for generating lexical analyzers.
1030Unlike tools like lex, however, ALEXA defines a domain-specific language
1031within your Lisp program, so you don't need to invoke a separate tool.")
1032 (home-page "https://github.com/quil-lang/alexa")
1033 (license license:bsd-3)))
1034
1035(define-public ecl-alexa
1036 (sbcl-package->ecl-package sbcl-alexa))
1037
1038(define-public cl-alexa
1039 (sbcl-package->cl-source-package sbcl-alexa))
1040
1041(define-public sbcl-alexandria
1042 (let ((commit "009b7e532071d9777bdbd63b82d776555da95916")
1043 (revision "0"))
1044 (package
1045 (name "sbcl-alexandria")
1046 (version (git-version "1.4" revision commit))
1047 (source
1048 (origin
1049 (method git-fetch)
1050 (uri (git-reference
1051 (url "https://gitlab.common-lisp.net/alexandria/alexandria.git")
1052 (commit commit)))
1053 (file-name (git-file-name "cl-alexandria" version))
1054 (sha256
1055 (base32 "0pdj779j3nwzn8f1661vf00rrjrbks1xgiq0rvwjw6qyxsfqfnl9"))))
1056 (build-system asdf-build-system/sbcl)
1057 (arguments
1058 (list #:phases
1059 #~(modify-phases %standard-phases
1060 (add-after 'build 'build-doc
1061 (lambda _
1062 (with-directory-excursion "doc"
1063 (invoke "make" "info")
1064 (install-file "alexandria.info"
1065 (string-append #$output "/share/info"))))))))
1066 (native-inputs
1067 (list sbcl-rt texinfo))
1068 (synopsis "Collection of portable utilities for Common Lisp")
1069 (description
1070 "Alexandria is a collection of portable utilities. It does not contain
1071conceptual extensions to Common Lisp. It is conservative in scope, and
1072portable between implementations.")
1073 (home-page "https://common-lisp.net/project/alexandria/")
1074 (license license:public-domain))))
1075
1076(define-public cl-alexandria
1077 (sbcl-package->cl-source-package sbcl-alexandria))
1078
1079(define-public ecl-alexandria
1080 (let ((pkg (sbcl-package->ecl-package sbcl-alexandria)))
1081 (package
1082 (inherit pkg)
1083 (outputs '("out"))
1084 (arguments
1085 (substitute-keyword-arguments arguments
1086 ((#:phases phases)
1087 `(modify-phases ,phases
1088 (delete 'build-doc))))))))
1089
1090(define-public clasp-alexandria
1091 (let ((pkg (sbcl-package->clasp-package sbcl-alexandria)))
1092 (package
1093 (inherit pkg)
1094 (outputs '("out"))
1095 (arguments
1096 (substitute-keyword-arguments arguments
1097 ((#:phases phases)
1098 `(modify-phases ,phases
1099 (delete 'build-doc))))))))
1100
1101(define-public sbcl-alexandria-plus
1102 (let ((commit "adafb09838a84895bedb119f8253b89b6a04a2c5")
1103 (revision "0"))
1104 (package
1105 (name "sbcl-alexandria-plus")
1106 ;; Version is stated in the ASD file.
1107 (version (git-version "1.1.0" revision commit))
1108 (source
1109 (origin
1110 (method git-fetch)
1111 (uri (git-reference
1112 (url "https://github.com/Symbolics/alexandria-plus")
1113 (commit commit)))
1114 (file-name (git-file-name "cl-alexandria-plus" version))
1115 (sha256
1116 (base32 "1w9r19610h599303gqlx2x5n8mmdynss2gyl7xilg5h6v8z3hkfl"))))
1117 (build-system asdf-build-system/sbcl)
1118 (arguments
1119 '(#:asd-systems '("alexandria+")))
1120 (native-inputs
1121 (list sbcl-parachute))
1122 (inputs
1123 (list sbcl-alexandria))
1124 (home-page "https://symbolics.github.io/alexandria-plus/")
1125 (synopsis "Conservative set of extensions to Alexandria utilities")
1126 (description
1127 "@code{cl-alexandria-plus} is a conservative set of extensions to
1128@code{cl-alexandria} utilities.")
1129 (license license:ms-pl))))
1130
1131(define-public cl-alexandria-plus
1132 (sbcl-package->cl-source-package sbcl-alexandria-plus))
1133
1134(define-public ecl-alexandria-plus
1135 (sbcl-package->ecl-package sbcl-alexandria-plus))
1136
1137(define-public clasp-alexandria-plus
1138 (sbcl-package->clasp-package sbcl-alexandria-plus))
1139
1140(define-public sbcl-alloy
1141 (let ((commit "628974de537affb5b44ad548347f67c16efffcfc")
1142 (revision "3"))
1143 (package
1144 (name "sbcl-alloy")
1145 (version (git-version "0.0.0" revision commit))
1146 (source
1147 (origin
1148 (method git-fetch)
1149 (uri (git-reference
1150 (url "https://github.com/Shirakumo/alloy")
1151 (commit commit)))
1152 (file-name (git-file-name "cl-alloy" version))
1153 (sha256
1154 (base32 "0fx294qwxshgijss000pbjbnbwxqvxyw6p3mva36qljhbbkw2fxy"))))
1155 (build-system asdf-build-system/sbcl)
1156 (native-inputs
1157 (list sbcl-alexandria sbcl-parachute))
1158 (inputs
1159 (list sbcl-array-utils sbcl-closer-mop sbcl-documentation-utils
1160 sbcl-float-features sbcl-colored sbcl-stealth-mixin
1161 sbcl-cl-opengl sbcl-font-discovery sbcl-uax-14 sbcl-sdf))
1162 (arguments
1163 ;; Dismiss alloy-svg, since it is not completed:
1164 ;; https://github.com/Shirakumo/alloy/issues/24
1165 '(#:asd-systems '("alloy"
1166 "alloy-animation"
1167 "alloy-opengl"
1168 "alloy-opengl-msdf"
1169 "alloy-opengl-png"
1170 "alloy-simple"
1171 "alloy-simple-presentations"
1172 "alloy-windowing")))
1173 (home-page "https://shirakumo.github.io/alloy/")
1174 (synopsis
1175 "Common Lisp user interface protocol and toolkit implementation")
1176 (description
1177 "Alloy is a user interface toolkit. It is defined through a set of
1178protocols that allow for a clear interface, as well as a standardised way to
1179integrate Alloy into a target backend.")
1180 (license license:zlib))))
1181
1182(define-public cl-alloy
1183 (sbcl-package->cl-source-package sbcl-alloy))
1184
1185(define-public ecl-alloy
1186 (sbcl-package->ecl-package sbcl-alloy))
1187
1188(define-public sbcl-amb
1189 (let ((commit "884bef69a1ea02f3b9deae0341e1a038ff31b896")
1190 (revision "0"))
1191 (package
1192 (name "sbcl-amb")
1193 (version (git-version "1.0.0" revision commit))
1194 (source
1195 (origin
1196 (method git-fetch)
1197 (uri (git-reference
1198 (url "https://github.com/phoe/amb")
1199 (commit commit)))
1200 (file-name (git-file-name "cl-amb" version))
1201 (sha256
1202 (base32 "1klh1aakklj1famrff0sccnwlv8238b1q446288aqnqgxxw6pf21"))))
1203 (build-system asdf-build-system/sbcl)
1204 (inputs
1205 (list sbcl-alexandria))
1206 (native-inputs
1207 (list sbcl-parachute))
1208 (synopsis "Implementation of John McCarthy's ambiguous operator")
1209 (description
1210 "@code{cl-amb} provides an implementation of John McCarthy's ambiguous
1211operator in portable Common Lisp.")
1212 (home-page "https://github.com/phoe/amb/")
1213 (license license:expat))))
1214
1215(define-public cl-amb
1216 (sbcl-package->cl-source-package sbcl-amb))
1217
1218(define-public ecl-amb
1219 (sbcl-package->ecl-package sbcl-amb))
1220
1221(define-public clasp-amb
1222 (sbcl-package->clasp-package sbcl-amb))
1223
1224(define-public sbcl-anaphora
1225 (package
1226 (name "sbcl-anaphora")
1227 (version "0.9.8")
1228 (source
1229 (origin
1230 (method git-fetch)
1231 (uri (git-reference
1232 (url "https://github.com/tokenrove/anaphora")
1233 (commit version)))
1234 (sha256
1235 (base32 "1ds5ab0rzkrhfl29xpvmvyxmkdyj9mi19p330pz603lx95njjc0b"))
1236 (file-name (git-file-name "cl-anaphora" version))))
1237 (build-system asdf-build-system/sbcl)
1238 (native-inputs
1239 (list sbcl-rt))
1240 (synopsis "The anaphoric macro collection from Hell")
1241 (description
1242 "Anaphora is the anaphoric macro collection from Hell: it includes many
1243new fiends in addition to old friends like @command{aif} and
1244@command{awhen}.")
1245 (home-page "https://github.com/tokenrove/anaphora")
1246 (license license:public-domain)))
1247
1248(define-public cl-anaphora
1249 (sbcl-package->cl-source-package sbcl-anaphora))
1250
1251(define-public ecl-anaphora
1252 (sbcl-package->ecl-package sbcl-anaphora))
1253
1254(define-public clasp-anaphora
1255 (sbcl-package->clasp-package sbcl-anaphora))
1256
1257;;; Split the antik package in two to work around the circular dependency
1258;;; between antik/antik and antik/gsll.
1259(define-public sbcl-antik-base
1260 (let ((commit "e4711a69b3d6bf37b5727af05c3cfd03e8428ba3")
1261 (revision "1"))
1262 (package
1263 (name "sbcl-antik-base")
1264 (version (git-version "0.0.0" revision commit))
1265 (source
1266 (origin
1267 (method git-fetch)
1268 (uri (git-reference
1269 (url "https://gitlab.common-lisp.net/antik/antik.git")
1270 (commit commit)))
1271 (file-name (git-file-name name version))
1272 (sha256
1273 (base32
1274 "047ga2c38par2xbgg4qx6hwv06qhf1c1f67as8xvir6s80lip1km"))))
1275 (build-system asdf-build-system/sbcl)
1276 (inputs
1277 (list sbcl-alexandria
1278 sbcl-cffi
1279 sbcl-cl-ppcre
1280 sbcl-drakma
1281 sbcl-fare-utils
1282 sbcl-iterate
1283 sbcl-metabang-bind
1284 sbcl-named-readtables
1285 sbcl-split-sequence
1286 sbcl-static-vectors
1287 sbcl-trivial-garbage
1288 sbcl-trivial-utf-8))
1289 (native-inputs
1290 (list sbcl-lisp-unit))
1291 (arguments
1292 '(#:asd-systems '("antik-base"
1293 "foreign-array")
1294 #:phases
1295 (modify-phases %standard-phases
1296 (add-after 'unpack 'fix-build
1297 (lambda _
1298 (for-each delete-file
1299 '("antik.asd"
1300 "physical-dimension.asd"
1301 "science-data.asd"))
1302 #t)))))
1303 (synopsis "Scientific and engineering computation in Common Lisp")
1304 (description
1305 "Antik provides a foundation for scientific and engineering
1306computation in Common Lisp. It is designed not only to facilitate
1307numerical computations, but to permit the use of numerical computation
1308libraries and the interchange of data and procedures, whether
1309foreign (non-Lisp) or Lisp libraries. It is named after the
1310Antikythera mechanism, one of the oldest examples of a scientific
1311computer known.")
1312 (home-page "https://common-lisp.net/project/antik/")
1313 (license license:gpl3))))
1314
1315(define-public cl-antik-base
1316 (sbcl-package->cl-source-package sbcl-antik-base))
1317
1318(define-public ecl-antik-base
1319 (let ((pkg (sbcl-package->ecl-package sbcl-antik-base)))
1320 (package
1321 (inherit pkg)
1322 (arguments
1323 (substitute-keyword-arguments arguments
1324 ((#:phases phases)
1325 `(modify-phases ,phases
1326 (add-after 'unpack 'fix-readtable
1327 (lambda _
1328 (substitute* "input-output/readtable.lisp"
1329 (("#-ccl")
1330 "#-(or ccl ecl)"))
1331 #t)))))))))
1332
1333(define-public sbcl-antik
1334 (package
1335 (inherit sbcl-antik-base)
1336 (name "sbcl-antik")
1337 (inputs
1338 (list sbcl-antik-base
1339 sbcl-gsll))
1340 (arguments
1341 '(#:asd-systems '("antik"
1342 "science-data")
1343 #:phases
1344 (modify-phases %standard-phases
1345 (add-after 'unpack 'fix-build
1346 (lambda _
1347 (for-each delete-file
1348 '("antik-base.asd"
1349 "foreign-array.asd"))
1350 #t)))))))
1351
1352(define-public cl-antik
1353 (sbcl-package->cl-source-package sbcl-antik))
1354
1355(define-public sbcl-anypool
1356 (let ((commit "5389ec945882e87f2fc1d3e852c91aaf176556e5")
1357 (revision "1"))
1358 (package
1359 (name "sbcl-anypool")
1360 (version (git-version "0.1.0" revision commit))
1361 (source
1362 (origin
1363 (method git-fetch)
1364 (uri (git-reference
1365 (url "https://github.com/fukamachi/anypool")
1366 (commit commit)))
1367 (file-name (git-file-name "cl-anypool" version))
1368 (sha256
1369 (base32 "1ffssc5fzh7gj0z94xxfb3mk5cwja65lrhxyfgib15a6yxqf1kk1"))))
1370 (build-system asdf-build-system/sbcl)
1371 (native-inputs
1372 (list sbcl-rove))
1373 (inputs
1374 (list sbcl-bordeaux-threads
1375 sbcl-cl-speedy-queue))
1376 (arguments
1377 '(#:asd-systems '("anypool"
1378 "anypool/middleware")))
1379 (home-page "https://github.com/fukamachi/anypool")
1380 (synopsis "General-purpose connection pooling library")
1381 (description
1382 "This package provides a general-purpose connection pooling library for
1383Common Lisp.")
1384 (license license:bsd-2))))
1385
1386(define-public cl-anypool
1387 (sbcl-package->cl-source-package sbcl-anypool))
1388
1389(define-public ecl-anypool
1390 (sbcl-package->ecl-package sbcl-anypool))
1391
1392(define-public sbcl-april
1393 (let ((commit "0001af6d518d0e8fdf6a7d1688dd92a2fd9b29df")
1394 (revision "4"))
1395 (package
1396 (name "sbcl-april")
1397 (version (git-version "1.0.0" revision commit))
1398 (source
1399 (origin
1400 (method git-fetch)
1401 (uri (git-reference
1402 (url "https://github.com/phantomics/april")
1403 (commit commit)))
1404 (file-name (git-file-name "cl-april" version))
1405 (sha256
1406 (base32 "0grl19c8i6r9rr8l80yjsz049701i26klmsgf6594jw14m9x1s0d"))
1407 (modules '((guix build utils)))
1408 (snippet '(begin
1409 ;; Remove bundled Apache-relicensed MaxPC.
1410 (delete-file-recursively "maxpc-apache")
1411 ;; Ensure references are to upstream MaxPC.
1412 (substitute* "vex/vex.asd"
1413 (("maxpc-apache") "maxpc"))))))
1414 (build-system asdf-build-system/sbcl)
1415 (inputs
1416 (list sbcl-alexandria
1417 sbcl-array-operations
1418 sbcl-cl-ppcre
1419 sbcl-cl-unicode
1420 sbcl-lparallel
1421 sbcl-maxpc
1422 sbcl-parse-number
1423 sbcl-prove
1424 sbcl-random-state
1425 sbcl-serapeum
1426 sbcl-simple-date-time
1427 sbcl-symbol-munger
1428 sbcl-trivia))
1429 (home-page "https://github.com/phantomics/april")
1430 (synopsis "Array Programming Re-Imagined in Lisp")
1431 (description
1432 "April compiles a subset of the APL programming language into
1433Common Lisp. Leveraging Lisp's powerful macros and numeric processing
1434faculties, it brings APL's expressive potential to bear for Lisp developers.
1435Replace hundreds of lines of number-crunching code with a single line of
1436APL.")
1437 (license license:asl2.0))))
1438
1439(define-public cl-april
1440 (sbcl-package->cl-source-package sbcl-april))
1441
1442;; TODO: Build fails.
1443;; (define-public ecl-april
1444;; (sbcl-package->ecl-package sbcl-april))
1445
1446(define-public sbcl-archive
1447 (let ((commit "631271c091ed02994bec3980cb288a2cf32c7cdc")
1448 (revision "1"))
1449 (package
1450 (name "sbcl-archive")
1451 (version (git-version "0.9" revision commit))
1452 (source (origin
1453 (method git-fetch)
1454 (uri (git-reference
1455 (url "https://github.com/sharplispers/archive")
1456 (commit commit)))
1457 (file-name (git-file-name name version))
1458 (sha256
1459 (base32
1460 "0pvsc9fmybx7rxd0kmzq4shi6hszdpwdc1sfy7jwyfxf8n3hnv4p"))))
1461 (build-system asdf-build-system/sbcl)
1462 (inputs
1463 (list sbcl-cl-fad sbcl-trivial-gray-streams))
1464 (synopsis "Common Lisp library for tar and cpio archives")
1465 (description
1466 "This is a Common Lisp library to read and write disk-based file
1467archives such as those generated by the tar and cpio programs on Unix.")
1468 (home-page "https://github.com/sharplispers/archive")
1469 (license license:bsd-3))))
1470
1471(define-public cl-archive
1472 (sbcl-package->cl-source-package sbcl-archive))
1473
1474(define-public ecl-archive
1475 (sbcl-package->ecl-package sbcl-archive))
1476
1477(define-public sbcl-arnesi
1478 (let ((commit "1e7dc4cb2cad8599113c7492c78f4925e839522e")
1479 (revision "1"))
1480 (package
1481 (name "sbcl-arnesi")
1482 (version (git-version "2.0.0" revision commit))
1483 (source
1484 (origin
1485 (method git-fetch)
1486 (uri (git-reference
1487 (url "https://github.com/AccelerationNet/arnesi")
1488 (commit commit)))
1489 (file-name (git-file-name "arnesi" version))
1490 (sha256
1491 (base32 "0jgj2xgd1gq6rf8ia43lkmbrbxnp8rgs053br9azfa25ygk3ikbh"))))
1492 (build-system asdf-build-system/sbcl)
1493 (arguments
1494 ;; FIXME: (Sharlatan-20210523T190315+0100): Tests failed on
1495 ;; special-lisp-var-rebount-in/cc
1496 ;;
1497 ;; ; processing (TEST SPECIAL-LISP-VAR-REBOUND-IN/CC ...)
1498 ;; ; wrote .../sbcl/arnesi/t/call-cc-tmp5GEXGEG5.fasl
1499 ;; ; compilation finished in 0:00:00.028
1500 ;; Unhandled SIMPLE-ERROR in thread
1501 ;; #<SB-THREAD:THREAD "main thread" RUNNING {100B768173}>:
1502 ;; Sorry, No walker for the special operater DECLARE defined.
1503 ;;
1504 ;; Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {100B768173}>
1505 ;; 0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<SIMPLE-ERROR "Sorry,
1506 ;; No walker for the special operater ~S defined."
1507 ;; {1001FAF9D3}> #<unused argument> :QUIT T)
1508 ;;
1509 `(#:tests? #f))
1510 (native-inputs
1511 (list sbcl-fiveam))
1512 (inputs
1513 (list sbcl-cl-ppcre
1514 sbcl-collectors
1515 sbcl-slime-swank))
1516 (home-page "https://github.com/AccelerationNet/arnesi")
1517 (synopsis "Common Lisp utility suite")
1518 (description
1519 "ARNESI is Common Lisp utilities library similar to ALEXANDRIA, ANAPHORA
1520or GOLDEN-UTILS.")
1521 (license license:bsd-3))))
1522
1523(define-public ecl-arnesi
1524 (sbcl-package->ecl-package sbcl-arnesi))
1525
1526(define-public cl-arnesi
1527 (sbcl-package->cl-source-package sbcl-arnesi))
1528
1529(define-public sbcl-array-operations
1530 (let ((commit "75cbc3b1adb2e3ce2109489753d0f290b071e81b")
1531 (revision "0"))
1532 (package
1533 (name "sbcl-array-operations")
1534 (version (git-version "0.0.0" revision commit))
1535 (source
1536 (origin
1537 (method git-fetch)
1538 (uri (git-reference
1539 (url "https://github.com/bendudson/array-operations")
1540 (commit commit)))
1541 (file-name (git-file-name "array-operations" version))
1542 (sha256
1543 (base32 "0ip49hhq32w80qsc7jmspyda5r2rsszvw0mk2r3341cld78sz9ya"))))
1544 (build-system asdf-build-system/sbcl)
1545 (native-inputs
1546 (list sbcl-alexandria sbcl-clunit2))
1547 (inputs
1548 (list sbcl-let-plus))
1549 (synopsis "Simple array operations library for Common Lisp")
1550 (description
1551 "This library is a collection of functions and macros for manipulating
1552Common Lisp arrays and performing numerical calculations with them.")
1553 (home-page "https://github.com/bendudson/array-operations")
1554 (license license:expat))))
1555
1556(define-public cl-array-operations
1557 (sbcl-package->cl-source-package sbcl-array-operations))
1558
1559(define-public ecl-array-operations
1560 (sbcl-package->ecl-package sbcl-array-operations))
1561
1562(define-public sbcl-array-utils
1563 (let ((commit "16e108a516a1e6662adaa59f05841b8d251c250f")
1564 (revision "1"))
1565 (package
1566 (name "sbcl-array-utils")
1567 (version (git-version "1.3.0" revision commit))
1568 (source
1569 (origin
1570 (method git-fetch)
1571 (uri
1572 (git-reference
1573 (url "https://codeberg.org/shinmera/array-utils")
1574 (commit commit)))
1575 (file-name (git-file-name "cl-array-utils" version))
1576 (sha256
1577 (base32 "0xacdjirb4bkszilmyyg7fzinka71f14z30nz2jwi7a88b8lxk1g"))))
1578 (build-system asdf-build-system/sbcl)
1579 (native-inputs
1580 (list sbcl-parachute))
1581 (inputs
1582 (list sbcl-documentation-utils))
1583 (synopsis "Tiny collection of array and vector utilities for Common Lisp")
1584 (description
1585 "A miniature toolkit that contains some useful shifting/popping/pushing
1586functions for arrays and vectors. Originally from Plump.")
1587 (home-page "https://shinmera.com/docs/array-utils")
1588 (license license:zlib))))
1589
1590(define-public cl-array-utils
1591 (sbcl-package->cl-source-package sbcl-array-utils))
1592
1593(define-public ecl-array-utils
1594 (sbcl-package->ecl-package sbcl-array-utils))
1595
1596(define-public clasp-array-utils
1597 (sbcl-package->clasp-package sbcl-array-utils))
1598
1599(define-public sbcl-arrow-macros
1600 ;; The latest upstream version tag is dated (pushed in 2020), use the latest
1601 ;; commit instead.
1602 (let ((commit "16bdfd31298182099c7d70df4598104e5a38b05e")
1603 (revision "0"))
1604 (package
1605 (name "sbcl-arrow-macros")
1606 (version (git-version "0.2.7" revision commit))
1607 (source
1608 (origin
1609 (method git-fetch)
1610 (uri (git-reference
1611 (url "https://github.com/hipeta/arrow-macros")
1612 (commit commit)))
1613 (file-name (git-file-name "arrow-macros" version))
1614 (sha256
1615 (base32 "0q4vpysk4h9ghs5zmnzzilky9jyz7i8n0x0p98nq528crbrkh6c4"))))
1616 (build-system asdf-build-system/sbcl)
1617 (native-inputs (list sbcl-fiveam))
1618 (home-page "https://github.com/hipeta/arrow-macros/")
1619 (synopsis "Clojure-like arrow macros in Common Lisp")
1620 (description
1621 "Arrow-macros provides clojure-like arrow macros (ex. ->, ->>) and diamond wands
1622in swiss-arrows.")
1623 (license license:expat))))
1624
1625(define-public cl-arrow-macros
1626 (sbcl-package->cl-source-package sbcl-arrow-macros))
1627
1628(define-public ecl-arrow-macros
1629 (sbcl-package->ecl-package sbcl-arrow-macros))
1630
1631(define-public sbcl-arrows
1632 (let ((commit "df7cf0067e0132d9697ac8b1a4f1b9c88d4f5382")
1633 (revision "0"))
1634 (package
1635 (name "sbcl-arrows")
1636 (version (git-version "0.2.0" revision commit))
1637 (source
1638 (origin
1639 (method git-fetch)
1640 (uri (git-reference
1641 (url "https://gitlab.com/Harleqin/arrows.git")
1642 (commit commit)))
1643 (file-name (git-file-name name version))
1644 (sha256
1645 (base32
1646 "042k9vkssrqx9nhp14wdzm942zgdxvp35mba0p2syz98i75im2yy"))))
1647 (build-system asdf-build-system/sbcl)
1648 (native-inputs
1649 (list sbcl-hu.dwim.stefil))
1650 (synopsis "Clojure-like arrow macros for Common Lisp")
1651 (description
1652 "This library implements the @code{->} and @code{->>} macros from
1653Clojure, as well as several expansions on the idea.")
1654 (home-page "https://gitlab.com/Harleqin/arrows")
1655 (license license:public-domain))))
1656
1657(define-public cl-arrows
1658 (sbcl-package->cl-source-package sbcl-arrows))
1659
1660(define-public ecl-arrows
1661 (sbcl-package->ecl-package sbcl-arrows))
1662
1663(define-public asdf-cli
1664 (package
1665 (name "asdf-cli")
1666 (version "0.2.1")
1667 (source
1668 (origin
1669 (method git-fetch)
1670 (uri (git-reference
1671 (url "https://git.sr.ht/~charje/asdf-cli")
1672 (commit (string-append "v" version))))
1673 (file-name (git-file-name "asdf-cli" version))
1674 (sha256
1675 (base32 "1x925sl7q7m8c0larysqswlvmzm26fi39cwd45snl1z71rdgkmaw"))))
1676 (build-system asdf-build-system/sbcl)
1677 (arguments
1678 (list
1679 #:tests? #f ; There are no tests.
1680 #:asd-systems ''("charje.asdf-cli")
1681 #:phases
1682 #~(modify-phases %standard-phases
1683 (replace 'build
1684 (lambda _
1685 (setenv "HOME" (getcwd))
1686 ;; TEMPLATES is a buildtime option for asdf-cli to show where
1687 ;; the templates are installed.
1688 (setenv "TEMPLATES"
1689 (string-append
1690 #$output
1691 "/share/common-lisp/sbcl/asdf-cli/src/templates/"))
1692 (invoke "./build")))
1693 (add-after 'build 'install
1694 (lambda _
1695 (let ((bin (string-append #$output "/bin")))
1696 (install-file "asdf" bin)))))))
1697 (inputs
1698 (list sbcl-alexandria
1699 sbcl-charje.loop
1700 sbcl-cl-annot
1701 sbcl-cl-fad
1702 sbcl-cl-semver
1703 sbcl-cl-str
1704 sbcl-command-line-args))
1705 (propagated-inputs
1706 (list sbcl
1707 cl-quickproject))
1708 (home-page "https://git.sr.ht/~charje/asdf-cli")
1709 (synopsis "Access ASDF from the command line")
1710 (description
1711 "Command line interface (CLI) that wraps Common Lisp ASDF (Common Lisp
1712build system) and Common Lisp quickproject for building and creating new
1713Common Lisp (ASDF) projects from the command line.")
1714 (license license:agpl3+)))
1715
1716(define-public sbcl-asdf-finalizers
1717 (let ((commit "7f537f6c598b662ae987c6acc268dd27c25977e0")
1718 (revision "1"))
1719 (package
1720 (name "sbcl-asdf-finalizers")
1721 (version (git-version "0.0.0" revision commit))
1722 (source
1723 (origin
1724 (method git-fetch)
1725 (uri (git-reference
1726 (url "https://gitlab.common-lisp.net/asdf/asdf-finalizers")
1727 (commit commit)))
1728 (file-name (git-file-name name version))
1729 (sha256
1730 (base32 "1w56c9yjjydjshsgqxz57qlp2v3r4ilbisnsgiqphvxnhvd41y0v"))))
1731 (build-system asdf-build-system/sbcl)
1732 (native-inputs
1733 (list sbcl-fare-utils
1734 sbcl-hu.dwim.stefil))
1735 (home-page "https://gitlab.common-lisp.net/asdf/asdf-finalizers")
1736 (synopsis "Enforced calling of finalizers for Lisp code")
1737 (description "This library allows you to implement and enforce proper
1738finalization of compile-time constructs while building Lisp source files.
1739
1740It produces two systems: asdf-finalizers and list-of.")
1741 (license license:expat))))
1742
1743(define-public cl-asdf-finalizers
1744 (sbcl-package->cl-source-package sbcl-asdf-finalizers))
1745
1746(define-public ecl-asdf-finalizers
1747 (sbcl-package->ecl-package sbcl-asdf-finalizers))
1748
1749(define-public sbcl-asd-generator
1750 (let ((commit "27f94971a7c68c4dcb51e3f6be4142743d0c44e8")
1751 (revision "0"))
1752 (package
1753 (name "sbcl-asd-generator")
1754 (version (git-version "1.0" revision commit))
1755 (source
1756 (origin
1757 (method git-fetch)
1758 (uri (git-reference
1759 (url "https://github.com/phoe/asd-generator")
1760 (commit commit)))
1761 (sha256
1762 (base32 "0yiybl7b9x1f85v0drj0yw9821y3yfhya4n6gycnv5vvx6jp9by4"))
1763 (file-name (git-file-name "cl-asd-generator" commit))))
1764 (build-system asdf-build-system/sbcl)
1765 (inputs
1766 (list sbcl-cl-fad
1767 sbcl-iterate
1768 sbcl-alexandria
1769 sbcl-trivia))
1770 (home-page "https://github.com/phoe/asd-generator")
1771 (synopsis "Automatic generator for .asd files")
1772 (description
1773 "This package provides an automatic generator for ASDF's .asd files.")
1774 (license license:gpl3+))))
1775
1776(define-public cl-asd-generator
1777 (sbcl-package->cl-source-package sbcl-asd-generator))
1778
1779(define-public ecl-asd-generator
1780 (sbcl-package->ecl-package sbcl-asd-generator))
1781
1782(define-public sbcl-asdf-system-connections
1783 (let ((commit "9f085240febccccff99d9d3bb687fcaafffd3f5e")
1784 (revision "1"))
1785 (package
1786 (name "sbcl-asdf-system-connections")
1787 (version (git-version "0.8.4" revision commit))
1788 (source
1789 (origin
1790 (method git-fetch)
1791 (uri (git-reference
1792 (url "https://github.com/gwkkwg/asdf-system-connections")
1793 (commit commit)))
1794 (file-name (git-file-name "cl-asdf-system-connections" version))
1795 (sha256
1796 (base32 "06kg0m8bv383qq3r34x0f8hz6p6zxcw02qn7kj960vcnrp5a5b3y"))))
1797 (build-system asdf-build-system/sbcl)
1798 (home-page "https://github.com/gwkkwg/asdf-system-connections")
1799 (synopsis "Common Lisp ASDF system auto-loading extension")
1800 (description
1801 "This package provides a Common Lisp ASDF system auto-loading
1802extension.")
1803 (license license:expat))))
1804
1805(define-public cl-asdf-system-connections
1806 (sbcl-package->cl-source-package sbcl-asdf-system-connections))
1807
1808(define-public ecl-asdf-system-connections
1809 (sbcl-package->ecl-package sbcl-asdf-system-connections))
1810
1811(define-public sbcl-aserve
1812 ;; There does not seem to be proper releases.
1813 (let ((commit "cac1d6920998ddcbee8310a873414732e707d8e5")
1814 (revision "2"))
1815 (package
1816 (name "sbcl-aserve")
1817 (version (git-version "1.2.50" revision commit))
1818 (source
1819 (origin
1820 (method git-fetch)
1821 (uri (git-reference
1822 ;; https://github.com/franzinc/aserve/ seems to be incompatible
1823 ;; with SBCL, etc.
1824 (url "git://git.code.sf.net/p/portableaserve/git")
1825 (commit commit)))
1826 (file-name (git-file-name "aserve" version))
1827 (sha256
1828 (base32 "0ak6mqp84sjr0a7h5svr16vra4bf4fcx6wpir0n88dc1vjwy5xqa"))
1829 (patches (search-patches
1830 ;; Add HTML5 elements to htmlgen.
1831 ;; Adapted from https://github.com/franzinc/aserve/ commits:
1832 ;; * e47bd763: "rfe12668: add HTML 5 elements to htmlgen"
1833 ;; * 7371ce59: "fix bugs in rfe12668 implementation"
1834 "sbcl-aserve-add-HTML-5-elements.patch"
1835 "sbcl-aserve-fix-rfe12668.patch"))))
1836 (build-system asdf-build-system/sbcl)
1837 (arguments
1838 `(#:phases
1839 (modify-phases %standard-phases
1840 (add-after 'unpack 'cd-aserve
1841 (lambda _
1842 (chdir "aserve")
1843 #t))
1844 (add-after 'cd-aserve 'fix-asd
1845 (lambda _
1846 (substitute* "aserve.asd"
1847 ((" :force t") ""))
1848 #t))
1849 (add-after 'cd-aserve 'fix-tests
1850 (lambda _
1851 (substitute* "test/t-aserve.cl"
1852 (("\\(asdf:oos 'asdf:load-op :ptester\\)") ""))
1853 #t)))))
1854 (inputs
1855 (list sbcl-acl-compat))
1856 (home-page
1857 "https://franz.com/support/documentation/current/doc/aserve/aserve.html")
1858 (synopsis "AllegroServe, a web server written in Common Lisp")
1859 (description
1860 "The server part of AllegroServe can be used either as a standalone web
1861server or a module loaded into an application to provide a user interface to
1862the application. AllegroServe's proxy ability allows it to run on the gateway
1863machine between some internal network and the Internet. AllegroServe's client
1864functions allow Lisp programs to explore the web.")
1865 (license license:llgpl))))
1866
1867(define-public cl-aserve
1868 (sbcl-package->cl-source-package sbcl-aserve))
1869
1870(define-public sbcl-asn1
1871 (let ((commit "b0388fa98878b20069ef266cc9cbd5aac13c4a69")
1872 (revision "0"))
1873 (package
1874 (name "sbcl-asn1")
1875 (build-system asdf-build-system/sbcl)
1876 (version (git-version "0.1.0" revision commit))
1877 (home-page "https://github.com/fukamachi/asn1")
1878 (source
1879 (origin
1880 (method git-fetch)
1881 (uri (git-reference
1882 (url home-page)
1883 (commit commit)))
1884 (file-name (git-file-name "cl-asn1" version))
1885 (sha256
1886 (base32 "16gs4xznmg19ii0cg7g2yxrk9ls5vah8ynjj80s99rv8wi3789z1"))))
1887 (native-inputs (list sbcl-cl-base64 sbcl-rove))
1888 (inputs
1889 (list sbcl-trivia
1890 sbcl-fast-io
1891 sbcl-ironclad))
1892 (synopsis "ASN.1 decoder for Common Lisp")
1893 (description "This package provides an ASN.1 encoder/decoder for
1894Common Lisp.")
1895 (license license:bsd-2))))
1896
1897(define-public cl-asn1
1898 (sbcl-package->cl-source-package sbcl-asn1))
1899
1900(define-public ecl-asn1
1901 (sbcl-package->ecl-package sbcl-asn1))
1902
1903(define-public sbcl-assoc-utils
1904 (let ((commit "74af16a3c0f10ad35e406167de02984744fc7854")
1905 (revision "1"))
1906 (package
1907 (name "sbcl-assoc-utils")
1908 (version (git-version "0.1" revision commit))
1909 (source
1910 (origin
1911 (method git-fetch)
1912 (uri (git-reference
1913 (url "https://github.com/fukamachi/assoc-utils")
1914 (commit commit)))
1915 (file-name (git-file-name "cl-assoc-utils" version))
1916 (sha256
1917 (base32 "1yac1v7zmdxj0p6rvwrrhyqvy7yjfhmqbchkwqhhr89gpjvvaick"))))
1918 (build-system asdf-build-system/sbcl)
1919 (arguments
1920 '(#:asd-systems '("assoc-utils-test" "assoc-utils")))
1921 (native-inputs
1922 (list sbcl-prove))
1923 (home-page "https://github.com/fukamachi/assoc-utils")
1924 (synopsis "Utilities for manipulating association lists in Common Lisp")
1925 (description
1926 "@code{assoc-utils} provides utilities for manipulating association
1927lists in Common Lisp.")
1928 (license license:public-domain))))
1929
1930(define-public cl-assoc-utils
1931 (sbcl-package->cl-source-package sbcl-assoc-utils))
1932
1933(define-public ecl-assoc-utils
1934 (sbcl-package->ecl-package sbcl-assoc-utils))
1935
1936(define-public sbcl-atomichron
1937 (let ((commit "5b3578bbad8c37ab559e56924d98c373efe11de5")
1938 (revision "0"))
1939 (package
1940 (name "sbcl-atomichron")
1941 (version (git-version "0.0.0" revision commit))
1942 (source
1943 (origin
1944 (method git-fetch)
1945 (uri (git-reference
1946 (url "https://github.com/no-defun-allowed/atomichron")
1947 (commit commit)))
1948 (file-name (git-file-name "cl-atomichron" version))
1949 (sha256
1950 (base32 "1fmmhb3pbv7j4d1cc02zv24bpd0kd2agfjjcj46w3gmv1bb0hva1"))))
1951 (build-system asdf-build-system/sbcl)
1952 (inputs
1953 (list sbcl-atomics sbcl-bordeaux-threads))
1954 (home-page "https://github.com/no-defun-allowed/atomichron")
1955 (synopsis "Atomic metering library for Common Lisp")
1956 (description
1957 "@code{atomichron} is a Common Lisp library which implements a time
1958meter which tracks how many times a form is evaluated, and how long evaluation
1959takes. It uses atomic instructions so that meters will present correct
1960results in the presence of multiple threads, while trying to minimize
1961synchronization latency.")
1962 (license license:bsd-2))))
1963
1964(define-public cl-atomichron
1965 (sbcl-package->cl-source-package sbcl-atomichron))
1966
1967(define-public ecl-atomichron
1968 (sbcl-package->ecl-package sbcl-atomichron))
1969
1970(define-public sbcl-atomics
1971 ;; No release in years.
1972 (let ((commit "5b36bf251fee2f80e34cbf6802c9eb08ce3675f6")
1973 (revision "3"))
1974 (package
1975 (name "sbcl-atomics")
1976 (version (git-version "1.0.0" revision commit))
1977 (source
1978 (origin
1979 (method git-fetch)
1980 (uri (git-reference
1981 (url "https://codeberg.org/shinmera/atomics")
1982 (commit commit)))
1983 (file-name (git-file-name "cl-atomics" version))
1984 (sha256
1985 (base32 "0lmrqn2yzrs1qxd0asjpwk50hdcp2hkkbcpzc4lkm3xbxnwxrwg2"))))
1986 (build-system asdf-build-system/sbcl)
1987 (inputs
1988 (list sbcl-documentation-utils))
1989 (native-inputs
1990 (list sbcl-parachute))
1991 (home-page "https://shinmera.com/docs/atomics")
1992 (synopsis "Common Lisp portability layer for atomic operations")
1993 (description
1994 "This is a library for access to atomic operation primitives such as
1995compare-and-swap. It aims to be a rather thin layer over what the
1996implementations offer.")
1997 (license license:zlib))))
1998
1999(define-public cl-atomics
2000 (sbcl-package->cl-source-package sbcl-atomics))
2001
2002(define-public ecl-atomics
2003 (sbcl-package->ecl-package sbcl-atomics))
2004
2005(define-public clasp-atomics
2006 (sbcl-package->clasp-package sbcl-atomics))
2007
2008(define-public sbcl-authentic
2009 (let ((commit "4e9194dda227b98f56dda1c2a2480efcc2d1f973")
2010 (revision "2"))
2011 (package
2012 (name "sbcl-authentic")
2013 (version (git-version "0.1.2" revision commit))
2014 (source
2015 (origin
2016 (method git-fetch)
2017 (uri (git-reference
2018 (url "https://github.com/charje/cl-authentic")
2019 (commit commit)))
2020 (file-name (git-file-name "cl-authentic" version))
2021 (sha256
2022 (base32 "0ncsxrybnx0pjsndv3j8w4lphlpcsld8sxg3c5b46fb3a8nd4ssf"))))
2023 (build-system asdf-build-system/sbcl)
2024 (native-inputs
2025 (list sbcl-fiveam))
2026 (inputs
2027 (list sbcl-clsql sbcl-ironclad))
2028 (home-page "https://github.com/charje/cl-authentic")
2029 (synopsis "User/password management for Common Lisp applications")
2030 (description "Authentic provides a light-weight and extendible
2031solution to user/password management for Common Lisp applications. It has
2032features such as safe password storage in a database, password reset, user
2033confirmation tokens, and user authentication.")
2034 (license license:llgpl))))
2035
2036(define-public ecl-authentic
2037 (sbcl-package->ecl-package sbcl-authentic))
2038
2039(define-public cl-authentic
2040 (sbcl-package->cl-source-package sbcl-authentic))
2041
2042(define-public sbcl-babel
2043 ;; No release since 2014.
2044 (let ((commit "627d6a60d0ffc82a3687b39ba8a99128031504d9")
2045 (revision "3"))
2046 (package
2047 (name "sbcl-babel")
2048 (version (git-version "0.5.0" revision commit))
2049 (source
2050 (origin
2051 (method git-fetch)
2052 (uri (git-reference
2053 (url "https://github.com/cl-babel/babel")
2054 (commit commit)))
2055 (file-name (git-file-name "cl-babel" version))
2056 (sha256
2057 (base32 "1sndap9ykyyvrzlqm9smgqy49r3n67l926yg0hb7pm00plj0y380"))))
2058 (build-system asdf-build-system/sbcl)
2059 (native-inputs
2060 (list sbcl-hu.dwim.stefil))
2061 (inputs
2062 (list sbcl-alexandria sbcl-trivial-features))
2063 (home-page "https://common-lisp.net/project/babel/")
2064 (synopsis "Charset encoding and decoding library")
2065 (description "Babel is a charset encoding and decoding library, not unlike
2066GNU libiconv, but completely written in Common Lisp.")
2067 (license (list license:bsd-2 license:expat)))))
2068
2069(define-public cl-babel
2070 (sbcl-package->cl-source-package sbcl-babel))
2071
2072(define-public ecl-babel
2073 (sbcl-package->ecl-package sbcl-babel))
2074
2075(define-public clasp-babel
2076 (sbcl-package->clasp-package sbcl-babel))
2077
2078(define-public sbcl-binary-types
2079 (let ((commit "a17caf8890f11fdc56f6ea3a21260bf0fb9c589c"))
2080 (package
2081 (name "sbcl-binary-types")
2082 (version (git-version "1.2" "2" commit))
2083 (source
2084 (origin
2085 (method git-fetch)
2086 (uri (git-reference
2087 (url "https://github.com/Ferada/binary-types/")
2088 (commit commit)))
2089 (file-name (git-file-name "binary-types" version))
2090 (sha256
2091 (base32 "1bh65p9vg2kgh4m8q1a4jiyncnp5prdzh0d0l4pzh3jvfhgbm0gh"))))
2092 (build-system asdf-build-system/sbcl)
2093 (home-page "https://github.com/Ferada/binary-types/")
2094 (synopsis "Read and write binary records for Common Lisp")
2095 (description
2096 "Binary-types is a Common Lisp package for reading and writing binary
2097files. Binary-types provides macros that are used to declare the mapping
2098between Lisp objects and some binary (i.e. octet-based) representation.")
2099 (license license:bsd-3))))
2100
2101(define-public cl-binary-types
2102 (sbcl-package->cl-source-package sbcl-binary-types))
2103
2104(define-public ecl-binary-types
2105 (sbcl-package->ecl-package sbcl-binary-types))
2106
2107(define-public sbcl-binascii
2108 (let ((commit "0fb0a9e5773148fd04d50efef08c1cc10f6fc487")
2109 (revision "1"))
2110 (package
2111 (name "sbcl-binascii")
2112 (version (git-version "1.0" revision commit))
2113 (source
2114 (origin
2115 (method git-fetch)
2116 (uri (git-reference
2117 (url "https://github.com/sharplispers/binascii")
2118 (commit commit)))
2119 (file-name (git-file-name "cl-binascii" version))
2120 (sha256
2121 (base32 "000rcdl8qshr7n48zq9bzrc4lkjx4ylb3r3w9x9syhiwfla9j4b7"))
2122 (modules '((guix build utils)))
2123 (snippet
2124 ;; Unbundle the RT test framework.
2125 '(begin
2126 (delete-file "tests/rt.lisp")
2127 (substitute* "binascii.asd"
2128 ((":depends-on \\(binascii\\)")
2129 ":depends-on (binascii rt)")
2130 (("\\(:file \"rt\"\\)")
2131 "")
2132 (("\\(:file \"tests\" :depends-on \\(\"rt\"\\)\\)")
2133 "(:file \"tests\")"))))))
2134 (build-system asdf-build-system/sbcl)
2135 (native-inputs
2136 (list sbcl-rt))
2137 (home-page "https://github.com/sharplispers/binascii")
2138 (synopsis "Common Lisp library of ASCII encoding schemes for binary data")
2139 (description
2140 "@code{binascii} is a Common Lisp library for converting binary data
2141to ASCII text of some kind. Such conversions are common in email protocols
2142(for encoding attachments to support old non-8-bit clean transports) or
2143encoding binary data in HTTP and XML applications. @code{binascii} supports
2144the encodings described in RFC 4648: base64, base32, base16, and variants.
2145It also supports base85, used in Adobe's PostScript and PDF document formats,
2146and a variant called ascii85, used by git for binary diff files.")
2147 (license license:bsd-3))))
2148
2149(define-public cl-binascii
2150 (sbcl-package->cl-source-package sbcl-binascii))
2151
2152(define-public clasp-binascii
2153 (sbcl-package->clasp-package sbcl-binascii))
2154
2155(define-public sbcl-binding-arrows
2156 ;; Fork of sbcl-arrows that does not have a new tag.
2157 (let ((commit "46bcba8bb1ff27cd5caab3bda36f000d0489a4f2")
2158 (revision "2"))
2159 (package
2160 (name "sbcl-binding-arrows")
2161 (version (git-version "1.0.0" revision commit))
2162 (source
2163 (origin
2164 (method git-fetch)
2165 (uri (git-reference
2166 (url "https://github.com/phoe/binding-arrows")
2167 (commit commit)))
2168 (file-name (git-file-name "cl-binding-arrows" version))
2169 (sha256
2170 (base32 "0kzybw5qlb49czh9v2lnxniz9jzqx306a6lnarfv59x48a7cch22"))))
2171 (build-system asdf-build-system/sbcl)
2172 (native-inputs
2173 (list sbcl-hu.dwim.stefil))
2174 (home-page "https://github.com/phoe/binding-arrows")
2175 (synopsis "Threading macros based on binding anonymous variables")
2176 (description
2177 "This system implements binding threading macros -- a kind of threading
2178macros with different semantics than classical, Clojure core threading macros
2179or their extension, swiss-arrows. Two Common Lisp implementations of those are
2180@code{arrows} and @code{arrow-macros}.
2181
2182This system is a fork of @code{arrows} with changes in semantics that make it
2183impossible to merge back upstream.")
2184 (license license:expat))))
2185
2186(define-public ecl-binding-arrows
2187 (sbcl-package->ecl-package sbcl-binding-arrows))
2188
2189(define-public clasp-binding-arrows
2190 (sbcl-package->clasp-package sbcl-binding-arrows))
2191
2192(define-public cl-binding-arrows
2193 (sbcl-package->cl-source-package sbcl-binding-arrows))
2194
2195(define-public sbcl-binpack
2196 (let ((commit "e67f56bb697bdeac81e28e1cca4a5d117a9cf125")
2197 (revision "1"))
2198 (package
2199 (name "sbcl-binpack")
2200 (version (git-version "0.0.1" revision commit))
2201 (source
2202 (origin
2203 (method git-fetch)
2204 (uri (git-reference
2205 (url "https://github.com/lispgames/binpack")
2206 (commit commit)))
2207 (file-name (git-file-name "binpack" version))
2208 (sha256
2209 (base32 "1pcnsg60pqywd3k72m5pwimq01sm3jyvc1c3rbkij740r7grdxi1"))))
2210 (build-system asdf-build-system/sbcl)
2211 (native-inputs
2212 (list sbcl-parachute))
2213 (inputs
2214 (list sbcl-alexandria))
2215 (home-page "https://github.com/lispgames/binpack")
2216 (synopsis "Common Lisp rectangle packer for sprite/texture atlases")
2217 (description
2218 "This library features a rectangle packer for sprite and texture atlases.")
2219 (license license:expat))))
2220
2221(define-public cl-binpack
2222 (sbcl-package->cl-source-package sbcl-binpack))
2223
2224(define-public ecl-binpack
2225 (sbcl-package->ecl-package sbcl-binpack))
2226
2227(define-public clasp-binpack
2228 (sbcl-package->clasp-package sbcl-binpack))
2229
2230(define-public sbcl-birch
2231 (let ((commit "30cd24260675c6c4e276daaf28be8d02ac15dd8f")
2232 (revision "0"))
2233 (package
2234 (name "sbcl-birch")
2235 (version (git-version "1.0.1" revision commit))
2236 (source
2237 (origin
2238 (method git-fetch)
2239 (uri (git-reference
2240 (url "https://github.com/jorams/birch")
2241 (commit commit)))
2242 (file-name (git-file-name "cl-birch" version))
2243 (sha256
2244 (base32 "1b24xng92ra7420s3zy44pybk4h7xg4kjwdk35arl46badgi28r1"))))
2245 (build-system asdf-build-system/sbcl)
2246 (inputs (list sbcl-alexandria
2247 sbcl-cl+ssl
2248 sbcl-flexi-streams
2249 sbcl-split-sequence
2250 sbcl-usocket))
2251 (native-inputs (list sbcl-prove))
2252 (home-page "https://github.com/jorams/birch")
2253 (synopsis "Common Lisp IRC client library")
2254 (description "Birch is a simple Common Lisp IRC client library. It
2255makes use of CLOS for event handling.")
2256 (license (list license:expat)))))
2257
2258(define-public cl-birch
2259 (sbcl-package->cl-source-package sbcl-birch))
2260
2261(define-public ecl-birch
2262 (sbcl-package->ecl-package sbcl-birch))
2263
2264(define-public sbcl-bit-smasher
2265 ;; No release.
2266 (let ((commit "c2dcb3b5ec0e485484be681fe17c4e81e58790d9"))
2267 (package
2268 (name "sbcl-bit-smasher")
2269 (version (git-version "1.0.2" "1" commit))
2270 (source
2271 (origin
2272 (method git-fetch)
2273 (uri (git-reference
2274 (url "https://github.com/thephoeron/bit-smasher/")
2275 (commit commit)))
2276 (file-name (git-file-name name version))
2277 (sha256
2278 (base32 "0wjmwn06fjpw0rlpaksf3ab727p8fnzj58z7jajl3m0wqd4ii74w"))))
2279 (build-system asdf-build-system/sbcl)
2280 (inputs
2281 (list sbcl-cl-base64
2282 sbcl-cl-base58))
2283 (home-page "https://github.com/thephoeron/bit-smasher/")
2284 (synopsis "Handle bit vectors, bit vector arithmetic, and type conversions")
2285 (description
2286 "Utility library for handling bit vectors, bit vector arithmetic, and
2287universal integer type conversions between bit-vectors, byte-vectors, octals,
2288decimals, and hexadecimal notation.")
2289 (license license:expat))))
2290
2291(define-public cl-bit-smasher
2292 (sbcl-package->cl-source-package sbcl-bit-smasher))
2293
2294(define-public ecl-bit-smasher
2295 (sbcl-package->ecl-package sbcl-bit-smasher))
2296
2297(define-public sbcl-bknr-datastore
2298 (let ((commit "c98d44f47cc88d19ff91ca3eefbd9719a8ace022")
2299 (revision "1"))
2300 (package
2301 (name "sbcl-bknr-datastore")
2302 (version (git-version "0.0.0" revision commit))
2303 (source
2304 (origin
2305 (method git-fetch)
2306 (uri (git-reference
2307 (url "https://github.com/hanshuebner/bknr-datastore")
2308 (commit commit)))
2309 (file-name (git-file-name "bknr-datastore" version))
2310 (sha256
2311 (base32 "1vi3w65fnczqvswkm381n6liqfrzjrg40y698qvj7skj28dm5vrm"))))
2312 (build-system asdf-build-system/sbcl)
2313 (arguments
2314 `(#:asd-systems
2315 '("bknr.datastore"
2316 "bknr.impex"
2317 "bknr.indices"
2318 "bknr.skip-list"
2319 "bknr.utils"
2320 "bknr.xml")
2321 #:phases
2322 (modify-phases %standard-phases
2323 (add-after 'unpack 'enter-source-directory
2324 (lambda _
2325 (chdir "src")
2326 #t)))))
2327 (native-inputs
2328 (list sbcl-cl-store
2329 sbcl-fiveam
2330 sbcl-unit-test))
2331 (inputs
2332 (list sbcl-alexandria
2333 sbcl-bordeaux-threads
2334 sbcl-closer-mop
2335 sbcl-cl-interpol
2336 sbcl-cl-ppcre
2337 sbcl-cxml
2338 sbcl-flexi-streams
2339 sbcl-md5
2340 sbcl-trivial-utf-8
2341 sbcl-yason))
2342 (home-page "https://github.com/hanshuebner/bknr-datastore")
2343 (synopsis "In-memory database for Common Lisp")
2344 (description
2345 "BKNR.DATASTORE is an in-memory CLOS based database with transactions
2346for Common Lisp.")
2347 (license license:bsd-0))))
2348
2349(define-public cl-bknr-datastore
2350 (sbcl-package->cl-source-package sbcl-bknr-datastore))
2351
2352;; NOTE: (Sharlatan-20210429T191426+0100):
2353;; There is no port for ECL in upstream yet
2354;; (define-public ecl-bknr-datastore
2355;; (sbcl-package->ecl-package sbcl-bknr-datastore))
2356
2357(define-public sbcl-black-tie
2358 (let ((commit "26381ca1b1d6846cfa2ad662da37302d30e24a97")
2359 (revision "0"))
2360 (package
2361 (name "sbcl-black-tie")
2362 (version (git-version "0.2" revision commit))
2363 (source
2364 (origin
2365 (method git-fetch)
2366 (uri (git-reference
2367 (url "https://codeberg.org/aerique/black-tie")
2368 (commit commit)))
2369 (file-name (git-file-name name version))
2370 (sha256
2371 (base32 "0a1zczxp4wkqs4cmwc4rnsgwwc2h4zqmg58cjykfzz4jh31fa43a"))))
2372 (build-system asdf-build-system/sbcl)
2373 (home-page "https://codeberg.org/aerique/black-tie")
2374 (synopsis "Noise library for Common Lisp")
2375 (description "This package provides a noise library for Common Lisp.")
2376 (license license:bsd-3))))
2377
2378(define-public ecl-black-tie
2379 (sbcl-package->ecl-package sbcl-black-tie))
2380
2381(define-public cl-black-tie
2382 (sbcl-package->cl-source-package sbcl-black-tie))
2383
2384(define-public clasp-black-tie
2385 (sbcl-package->clasp-package sbcl-black-tie))
2386
2387(define-public sbcl-blackbird
2388 (let ((commit "d361f81c1411dec07f6c2dcb11c78f7aea9aaca8")
2389 (revision "1"))
2390 (package
2391 (name "sbcl-blackbird")
2392 (version (git-version "0.5.2" revision commit))
2393 (source
2394 (origin
2395 (method git-fetch)
2396 (uri (git-reference
2397 (url "https://github.com/orthecreedence/blackbird")
2398 (commit commit)))
2399 (file-name (git-file-name name version))
2400 (sha256
2401 (base32
2402 "0xfds5yaya64arzr7w1x38karyz11swzbhxx1afldpradj9dh19c"))))
2403 (build-system asdf-build-system/sbcl)
2404 (inputs
2405 (list sbcl-vom))
2406 (native-inputs
2407 (list sbcl-cl-async sbcl-fiveam))
2408 (synopsis "Promise implementation for Common Lisp")
2409 (description
2410 "This is a standalone promise implementation for Common Lisp. It is
2411the successor to the now-deprecated cl-async-future project.")
2412 (home-page "https://orthecreedence.github.io/blackbird/")
2413 (license license:expat))))
2414
2415(define-public cl-blackbird
2416 (sbcl-package->cl-source-package sbcl-blackbird))
2417
2418(define-public ecl-blackbird
2419 (sbcl-package->ecl-package sbcl-blackbird))
2420
2421(define-public sbcl-bobbin
2422 (let ((commit "b454e8241b24ceab674eeeae464c8082b1b6d8ce")
2423 (revision "0"))
2424 (package
2425 (name "sbcl-bobbin")
2426 (version (git-version "1.0.1" revision commit))
2427 (source
2428 (origin
2429 (method git-fetch)
2430 (uri (git-reference
2431 (url "https://github.com/sjl/bobbin")
2432 (commit commit)))
2433 (file-name (git-file-name "cl-bobbin" version))
2434 (sha256
2435 (base32 "02lw7w8cbvnxw5acbz405rb5lcqsf4fx7dvj5ldr0lhgbyv1mjnm"))))
2436 (build-system asdf-build-system/sbcl)
2437 (native-inputs
2438 (list sbcl-1am))
2439 (inputs
2440 (list sbcl-split-sequence))
2441 (home-page "https://docs.stevelosh.com/bobbin/")
2442 (synopsis "Simple (word) wrapping utilities for strings")
2443 (description
2444 "Bobbin is a simple word-wrapping library for strings in Common Lisp.
2445It aims to be simple, work nicely for the majority of cases, and degrade
2446gracefully for edge cases. It is not particularly concerned with speed — if
2447you need very high-performance word wrapping, Bobbin is not for you.")
2448 (license license:expat))))
2449
2450(define-public cl-bobbin
2451 (sbcl-package->cl-source-package sbcl-bobbin))
2452
2453(define-public ecl-bobbin
2454 (sbcl-package->ecl-package sbcl-bobbin))
2455
2456(define-public sbcl-bodge-blobs-support
2457 (let ((commit "c5034ca5f4fc3a44dbadeba215a09afd59a404b0")
2458 (revision "1"))
2459 (package
2460 (name "sbcl-bodge-blobs-support")
2461 (version (git-version "1.0.0" revision commit))
2462 (source
2463 (origin
2464 (method git-fetch)
2465 (uri (git-reference
2466 (url "https://github.com/borodust/bodge-blobs-support")
2467 (commit commit)))
2468 (file-name (git-file-name "bodge-blobs-support" version))
2469 (sha256
2470 (base32 "02nd1x6y1akp1ymv1y4z9ympwbnpd1drwi4f86xbjszxqff6jyj8"))))
2471 (build-system asdf-build-system/sbcl)
2472 (native-inputs
2473 (list sbcl-trivial-features))
2474 (inputs
2475 (list sbcl-cffi sbcl-alexandria))
2476 (home-page "https://github.com/borodust/bodge-blobs-support")
2477 (synopsis "Common Lisp utilities for blob packages")
2478 (description
2479 "This is a Common Lisp library for simplifying packaging and loading of
2480compiled foreign library collection.")
2481 (license license:unlicense))))
2482
2483(define-public cl-bodge-blobs-support
2484 (sbcl-package->cl-source-package sbcl-bodge-blobs-support))
2485
2486(define-public ecl-bodge-blobs-support
2487 (sbcl-package->ecl-package sbcl-bodge-blobs-support))
2488
2489(define-public sbcl-bodge-math
2490 (let ((commit "9159b7faf88d440024c07110dbef2abddb20b9af")
2491 (revision "1"))
2492 (package
2493 (name "sbcl-bodge-math")
2494 (version (git-version "1.0.0" revision commit))
2495 (source
2496 (origin
2497 (method git-fetch)
2498 (uri (git-reference
2499 (url "https://github.com/borodust/bodge-math")
2500 (commit commit)))
2501 (file-name (git-file-name "bodge-math" version))
2502 (sha256
2503 (base32 "0r3vnl9lywn4ksy34apcv6j825qp7l1naddawr14v4lwacndb80v"))))
2504 (build-system asdf-build-system/sbcl)
2505 (inputs
2506 (list sbcl-bodge-utilities sbcl-rtg-math))
2507 (home-page "https://github.com/borodust/bodge-math")
2508 (synopsis "Common Lisp core math utilities of BODGE library collection")
2509 (description
2510 "This Common Lisp package contains the core math utilities of the
2511@emph{Bodge} library collection.")
2512 (license license:expat))))
2513
2514(define-public ecl-bodge-math
2515 (sbcl-package->ecl-package sbcl-bodge-math))
2516
2517(define-public cl-bodge-math
2518 (sbcl-package->cl-source-package sbcl-bodge-math))
2519
2520(define-public sbcl-bodge-queue
2521 (let ((commit "948c9a501dcd412689952d09eb7453ec2722336a")
2522 (revision "0"))
2523 (package
2524 (name "sbcl-bodge-queue")
2525 (version (git-version "0.0.0" revision commit))
2526 (source
2527 (origin
2528 (method git-fetch)
2529 (uri (git-reference
2530 (url "https://github.com/borodust/bodge-queue")
2531 (commit commit)))
2532 (file-name (git-file-name "bodge-queue" version))
2533 (sha256
2534 (base32 "148hjikqk8v2m30mj15xh89zni6szf9z3prav580qk9dqr8djjdr"))))
2535 (build-system asdf-build-system/sbcl)
2536 (native-inputs
2537 (list sbcl-fiveam))
2538 (home-page "https://github.com/borodust/bodge-queue")
2539 (synopsis "Simple queue for Common Lisp")
2540 (description "This Common Lisp library provides a simple FIFO
2541implementation with no external dependencies.")
2542 (license license:expat))))
2543
2544(define-public cl-bodge-queue
2545 (sbcl-package->cl-source-package sbcl-bodge-queue))
2546
2547(define-public ecl-bodge-queue
2548 (sbcl-package->ecl-package sbcl-bodge-queue))
2549
2550(define-public sbcl-bodge-utilities
2551 (let ((commit "6304bac4abe06d53579e2c0fc4437d14ff077d9f")
2552 (revision "1"))
2553 (package
2554 (name "sbcl-bodge-utilities")
2555 (version (git-version "1.0.0" revision commit))
2556 (source
2557 (origin
2558 (method git-fetch)
2559 (uri (git-reference
2560 (url "https://github.com/borodust/bodge-utilities")
2561 (commit commit)))
2562 (file-name (git-file-name "bodge-utilities" version))
2563 (sha256
2564 (base32 "1z1blj05q71vzh323qwyn9p3xs7v0mq2yhwfyzza5libp37wqm3c"))))
2565 (build-system asdf-build-system/sbcl)
2566 (inputs
2567 (list sbcl-alexandria
2568 sbcl-cffi
2569 sbcl-claw
2570 sbcl-dissect
2571 sbcl-local-time
2572 sbcl-log4cl
2573 sbcl-split-sequence
2574 sbcl-static-vectors
2575 sbcl-trivial-gray-streams))
2576 (home-page "https://github.com/borodust/bodge-utilities")
2577 (synopsis "Common Lisp utilities library for CL-BODGE")
2578 (description
2579 "This Common Lisp library provides utilities for the @emph{Bodge} library
2580collection.")
2581 (license license:expat))))
2582
2583(define-public cl-bodge-utilities
2584 (sbcl-package->cl-source-package sbcl-bodge-utilities))
2585
2586(define-public ecl-bodge-utilities
2587 (sbcl-package->ecl-package sbcl-bodge-utilities))
2588
2589(define-public sbcl-boost-json
2590 (let ((commit "eca166f5ff1f10bad14e00b9fd5bf9fcf3691a47")
2591 (revision "0"))
2592 (package
2593 (name "sbcl-boost-json")
2594 (version (git-version "1.1" revision commit))
2595 (source
2596 (origin
2597 (method git-fetch)
2598 (uri (git-reference
2599 (url "https://github.com/cl-boost/json")
2600 (commit commit)))
2601 (file-name (git-file-name "cl-boost-json" version))
2602 (sha256
2603 (base32 "12k0470899qsll2qixksxf2vrhjmskk3nzp1di9k04n1b29nrakd"))))
2604 (build-system asdf-build-system/sbcl)
2605 (arguments
2606 '(#:phases
2607 (modify-phases %standard-phases
2608 ;; See <https://github.com/cl-boost/json/pull/2>.
2609 (add-after 'unpack 'fix-decode-symbol
2610 (lambda _
2611 (substitute* '("decode.lisp" "encode.lisp")
2612 (("formfeed") "page")))))))
2613 (home-page "https://github.com/cl-boost/json")
2614 (synopsis "JSON encoding and decoding for Common Lisp")
2615 (description
2616 "BOOST-JSON is a simple JSON parsing library for Common Lisp.")
2617 (license license:asl2.0))))
2618
2619(define-public cl-boost-json
2620 (sbcl-package->cl-source-package sbcl-boost-json))
2621
2622(define-public ecl-boost-json
2623 (sbcl-package->ecl-package sbcl-boost-json))
2624
2625(define-public sbcl-boost-lexer
2626 (let ((commit "139ca9e9580f890698deec05061e495376b7735a")
2627 (revision "0"))
2628 (package
2629 (name "sbcl-boost-lexer")
2630 (version (git-version "1.0" revision commit))
2631 (source
2632 (origin
2633 (method git-fetch)
2634 (uri (git-reference
2635 (url "https://github.com/cl-boost/lexer")
2636 (commit commit)))
2637 (file-name (git-file-name "cl-boost-lexer" version))
2638 (sha256
2639 (base32 "01vsczb5cn62k2hkkn39xwh5fjn2x0b507n7afia98jnhhk3d5x4"))))
2640 (build-system asdf-build-system/sbcl)
2641 (inputs
2642 (list sbcl-boost-re))
2643 (home-page "https://github.com/cl-boost/lexer")
2644 (synopsis "String tokenizing for Common Lisp")
2645 (description
2646 "BOOST-LEXER is a tokenizer for Common Lisp that makes heavy use of
2647BOOST-RE.")
2648 (license license:asl2.0))))
2649
2650(define-public cl-boost-lexer
2651 (sbcl-package->cl-source-package sbcl-boost-lexer))
2652
2653(define-public ecl-boost-lexer
2654 (sbcl-package->ecl-package sbcl-boost-lexer))
2655
2656(define-public sbcl-boost-parse
2657 (let ((commit "c8f7e536b950752f3e35003e7ee0446e0fd51b50")
2658 (revision "0"))
2659 (package
2660 (name "sbcl-boost-parse")
2661 (version (git-version "1.0" revision commit))
2662 (source
2663 (origin
2664 (method git-fetch)
2665 (uri (git-reference
2666 (url "https://github.com/cl-boost/parse")
2667 (commit commit)))
2668 (file-name (git-file-name "cl-boost-parse" version))
2669 (sha256
2670 (base32 "0djnp392n9wgpr9r2ycnwkglad5mn285yvr53jx3g7anm2p8r0vf"))))
2671 (build-system asdf-build-system/sbcl)
2672 (home-page "https://github.com/cl-boost/parse")
2673 (synopsis "Monadic parsing for Common Lisp")
2674 (description
2675 "BOOST-PARSE is a simple token parsing library for Common Lisp.")
2676 (license license:asl2.0))))
2677
2678(define-public cl-boost-parse
2679 (sbcl-package->cl-source-package sbcl-boost-parse))
2680
2681(define-public ecl-boost-parse
2682 (sbcl-package->ecl-package sbcl-boost-parse))
2683
2684(define-public sbcl-boost-re
2685 (let ((commit "d279fc58abf76d0c40aa6cde42e17a0591bc2c5d")
2686 (revision "0"))
2687 (package
2688 (name "sbcl-boost-re")
2689 (version (git-version "1.0" revision commit))
2690 (source
2691 (origin
2692 (method git-fetch)
2693 (uri (git-reference
2694 (url "https://github.com/cl-boost/re")
2695 (commit commit)))
2696 (file-name (git-file-name "cl-boost-re" version))
2697 (sha256
2698 (base32 "1h9c2rdhw6m1pm67gqbj46y2vb1kc3i1c9y3l4qhgfz14dbk80a2"))))
2699 (build-system asdf-build-system/sbcl)
2700 (inputs
2701 (list sbcl-boost-parse))
2702 (home-page "https://github.com/cl-boost/re")
2703 (synopsis "Lua-style string pattern matching for Common Lisp")
2704 (description
2705 "BOOST-RE is a small, portable, lightweight, and quick, regular
2706expression library for Common Lisp. It is a non-recursive, backtracking VM.")
2707 (license license:asl2.0))))
2708
2709(define-public cl-boost-re
2710 (sbcl-package->cl-source-package sbcl-boost-re))
2711
2712(define-public ecl-boost-re
2713 (sbcl-package->ecl-package sbcl-boost-re))
2714
2715(define-public sbcl-bordeaux-fft
2716 (let ((commit "4a1f5600cae59bdabcb32de4ee2d7d73a9450d6e")
2717 (revision "0"))
2718 (package
2719 (name "sbcl-bordeaux-fft")
2720 (version (git-version "1.0.1" revision commit))
2721 (source
2722 (origin
2723 (method git-fetch)
2724 (uri (git-reference
2725 (url "https://github.com/ahefner/bordeaux-fft")
2726 (commit commit)))
2727 (file-name (git-file-name name version))
2728 (sha256
2729 (base32 "0j584w6kq2k6r8lp2i14f9605rxhp3r15s33xs08iz1pndn6iwqf"))))
2730 (build-system asdf-build-system/sbcl)
2731 (home-page "http://vintage-digital.com/hefner/software/bordeaux-fft/")
2732 (synopsis "Fast Fourier Transform for Common Lisp")
2733 (description
2734 "The Bordeaux-FFT library provides a reasonably efficient implementation
2735of the Fast Fourier Transform and its inverse for complex-valued inputs, in
2736portable Common Lisp.")
2737 (license license:gpl2+))))
2738
2739(define-public cl-bordeaux-fft
2740 (sbcl-package->cl-source-package sbcl-bordeaux-fft))
2741
2742(define-public ecl-bordeaux-fft
2743 (sbcl-package->ecl-package sbcl-bordeaux-fft))
2744
2745(define-public sbcl-bordeaux-threads
2746 (package
2747 (name "sbcl-bordeaux-threads")
2748 (version "0.9.3")
2749 (source (origin
2750 (method git-fetch)
2751 (uri (git-reference
2752 (url "https://github.com/sionescu/bordeaux-threads")
2753 (commit (string-append "v" version))))
2754 (sha256
2755 (base32 "0pp3w5hsph47sqagr4j2pbg3ddb29jx93zg8kvxsp2c4flp0qz0f"))
2756 (file-name (git-file-name "cl-bordeaux-threads" version))))
2757 (inputs (list sbcl-alexandria
2758 sbcl-global-vars
2759 sbcl-trivial-features
2760 sbcl-trivial-garbage))
2761 (native-inputs (list sbcl-fiveam))
2762 (build-system asdf-build-system/sbcl)
2763 (arguments
2764 (list
2765 #:phases
2766 #~(modify-phases %standard-phases
2767 (add-after 'unpack 'adjust-test-sleep
2768 (lambda _
2769 ;; 0.001 is too short for some slower machines.
2770 (substitute* '("test/tests-v1.lisp"
2771 "test/tests-v2.lisp")
2772 (("sleep 0\\.001") "sleep 0.002")))))))
2773 (synopsis "Portable shared-state concurrency library for Common Lisp")
2774 (description "BORDEAUX-THREADS is a proposed standard for a minimal
2775MP/Threading interface. It is similar to the CLIM-SYS threading and lock
2776support.")
2777 (home-page "https://common-lisp.net/project/bordeaux-threads/")
2778 (license license:x11)))
2779
2780(define-public cl-bordeaux-threads
2781 (sbcl-package->cl-source-package sbcl-bordeaux-threads))
2782
2783(define-public ecl-bordeaux-threads
2784 (sbcl-package->ecl-package sbcl-bordeaux-threads))
2785
2786(define-public sbcl-bst
2787 (let ((commit "8545aed0d504df2829ad139566feeabe22305388")
2788 (revision "0"))
2789 (package
2790 (name "sbcl-bst")
2791 (version (git-version "2.0" revision commit))
2792 (source
2793 (origin
2794 (method git-fetch)
2795 (uri (git-reference
2796 (url "https://codeberg.org/glv/bst")
2797 (commit commit)))
2798 (file-name (git-file-name name version))
2799 (sha256
2800 (base32 "18ig7rvxcra69437g0i8sxyv7c5dg26jqnx1rc2f9pxmihdprgk8"))))
2801 (build-system asdf-build-system/sbcl)
2802 (native-inputs
2803 (list sbcl-alexandria sbcl-fiveam))
2804 (synopsis "Binary search tree for Common Lisp")
2805 (description
2806 "BST is a Common Lisp library for working with binary search trees that
2807can contain any kind of values.")
2808 (home-page "https://codeberg.org/glv/bst")
2809 (license license:gpl3))))
2810
2811(define-public cl-bst
2812 (sbcl-package->cl-source-package sbcl-bst))
2813
2814(define-public ecl-bst
2815 (sbcl-package->ecl-package sbcl-bst))
2816
2817(define-public sbcl-bt-semaphore
2818 (let ((commit "46b4bf315590f510d2d4ec5ca8908efbe68007e9")
2819 (revision "0"))
2820 (package
2821 (name "sbcl-bt-semaphore")
2822 (version (git-version "0.6.3" revision commit))
2823 (source
2824 (origin
2825 (method git-fetch)
2826 (uri (git-reference
2827 (url "https://github.com/r-moeritz/bt-semaphore")
2828 (commit commit)))
2829 (sha256
2830 (base32 "0rl7yp36225z975hg069pywwlpchwn4086cgxwsi2db5mhghpr7l"))
2831 (file-name (git-file-name "cl-bt-semaphore" version))))
2832 (build-system asdf-build-system/sbcl)
2833 (inputs (list sbcl-bordeaux-threads))
2834 (native-inputs (list sbcl-clunit))
2835 (synopsis "Semaphore implementation for @code{bordeaux-threads}")
2836 (description
2837 "@code{bt-semaphore} is a semaphore implementation for use with
2838@code{bordeaux-threads}.")
2839 (home-page "https://github.com/r-moeritz/bt-semaphore")
2840 (license license:expat))))
2841
2842(define-public cl-bt-semaphore
2843 (sbcl-package->cl-source-package sbcl-bt-semaphore))
2844
2845(define-public ecl-bt-semaphore
2846 (sbcl-package->ecl-package sbcl-bt-semaphore))
2847
2848(define-public sbcl-bubble-operator-upwards
2849 (let ((commit "a7bb02a30a1b9e9f489f9da082a3ca4952762977")
2850 (revision "1"))
2851 (package
2852 (name "sbcl-bubble-operator-upwards")
2853 (version (git-version "1.1" revision commit))
2854 (source
2855 (origin
2856 (method git-fetch)
2857 (uri (git-reference
2858 (url "https://github.com/Hexstream/bubble-operator-upwards")
2859 (commit commit)))
2860 (file-name (git-file-name "cl-bubble-operator-upwards" version))
2861 (sha256
2862 (base32 "0amgc0z61yd3177dwn405ck5az67f0ksmh4cnsxqwgzi319k6nbx"))))
2863 (build-system asdf-build-system/sbcl)
2864 (native-inputs
2865 (list sbcl-parachute))
2866 (home-page "https://www.hexstreamsoft.com/libraries/bubble-operator-upwards/")
2867 (synopsis "Function that bubbles an operator upwards in a form")
2868 (description
2869 "@code{bubble-operator-upwards} is a function that bubbles an operator
2870upwards in a form, demultiplexing all alternative branches by way of
2871cartesian product.")
2872 (license license:unlicense))))
2873
2874(define-public cl-bubble-operator-upwards
2875 (sbcl-package->cl-source-package sbcl-bubble-operator-upwards))
2876
2877(define-public ecl-bubble-operator-upwards
2878 (sbcl-package->ecl-package sbcl-bubble-operator-upwards))
2879
2880(define-public clasp-bubble-operator-upwards
2881 (sbcl-package->clasp-package sbcl-bubble-operator-upwards))
2882
2883(define-public sbcl-cache-while
2884 (let ((commit "38e9ffbdb2c894670c366c1e5802ffcc8cfd43a7")
2885 (revision "1"))
2886 (package
2887 (name "sbcl-cache-while")
2888 (version (git-version "0.0.0" revision commit))
2889 (source
2890 (origin
2891 (method git-fetch)
2892 (uri (git-reference
2893 (url "https://github.com/charje/cache-while")
2894 (commit commit)))
2895 (file-name (git-file-name "cache-while" version))
2896 (sha256
2897 (base32 "1qil68rfn5irmkb0jk1f6g1zy80wgc3skl8cr4rfgh7ywgm5izx3"))))
2898 (build-system asdf-build-system/sbcl)
2899 (home-page "https://github.com/charje/cache-while")
2900 (synopsis "Temporary / one-time caching macro for Common Lisp")
2901 (description
2902 "This is a Common Lisp macro for defining temporary caches that
2903invalidate based on expressions evaluating to different values.")
2904 (license license:llgpl))))
2905
2906(define-public cl-cache-while
2907 (sbcl-package->cl-source-package sbcl-cache-while))
2908
2909(define-public ecl-cache-while
2910 (sbcl-package->ecl-package sbcl-cache-while))
2911
2912(define-public clasp-cache-while
2913 (sbcl-package->clasp-package sbcl-cache-while))
2914
2915(define-public sbcl-cacle
2916 (let ((commit "4cbe8cfe227d2e097eaced14766f4f37aa05e617")
2917 (revision "1"))
2918 (package
2919 (name "sbcl-cacle")
2920 (version (git-version "1.0.1" revision commit))
2921 (source
2922 (origin
2923 (method git-fetch)
2924 (uri (git-reference
2925 (url "https://github.com/jlahd/cacle")
2926 (commit commit)))
2927 (file-name (git-file-name "cl-cacle" version))
2928 (sha256
2929 (base32 "0h0dk0sfkfl8g0sbrs76ydb9l4znssqhx8nc5k1sg7zxpni5a4qy"))))
2930 (build-system asdf-build-system/sbcl)
2931 (inputs
2932 (list sbcl-bordeaux-threads))
2933 (home-page "https://github.com/jlahd/cacle")
2934 (synopsis "Extensible cache services for Common Lisp")
2935 (description "This package provides a generic cache management facility
2936with configurable and extensible cache replacement policies. The
2937actual cached data can be stored anywhere, with cacle taking charge of
2938keeping track of which entry is to be discarded next when more space
2939is needed for a new entry.")
2940 (license (list license:expat)))))
2941
2942(define-public cl-cacle
2943 (sbcl-package->cl-source-package sbcl-cacle))
2944
2945(define-public ecl-cacle
2946 (sbcl-package->ecl-package sbcl-cacle))
2947
2948(define-public sbcl-calispel
2949 (let ((commit "e9f2f9c1af97f4d7bb4c8ac25fb2a8f3e8fada7a"))
2950 (package
2951 (name "sbcl-calispel")
2952 (version (git-version "0.1" "1" commit))
2953 (source
2954 (origin
2955 (method git-fetch)
2956 (uri (git-reference
2957 ;; This fork replaces the dependency on the obsolete
2958 ;; eager-future with eager-future2.
2959 (url "https://github.com/hawkir/calispel")
2960 (commit commit)))
2961 (file-name (git-file-name name version))
2962 (sha256
2963 (base32
2964 "08bmf3pi7n5hadpmqqkg65cxcj6kbvm997wcs1f53ml1nb79d9z8"))))
2965 (build-system asdf-build-system/sbcl)
2966 (inputs
2967 (list sbcl-jpl-queues sbcl-bordeaux-threads))
2968 (native-inputs
2969 (list sbcl-eager-future2))
2970 (synopsis "Thread-safe message-passing channels in Common Lisp")
2971 (description
2972 "Calispel is a Common Lisp library for thread-safe message-passing
2973channels, in the style of the occam programming language, also known as
2974communicating sequential processes (CSP). See
2975@url{https://en.wikipedia.org/wiki/Communicating_sequential_processes}.
2976
2977Calispel channels let one thread communicate with another, facilitating
2978unidirectional communication of any Lisp object. Channels may be unbuffered,
2979where a sender waits for a receiver (or vice versa) before either operation can
2980continue, or channels may be buffered with flexible policy options.
2981
2982Because sending and receiving on a channel may block, either operation can time
2983out after a specified amount of time.
2984
2985A syntax for alternation is provided (like @code{ALT} in occam, or Unix
2986@code{select()}): given a sequence of operations, any or all of which may
2987block, alternation selects the first operation that doesn't block and executes
2988associated code. Alternation can also time out, executing an \"otherwise\"
2989clause if no operation becomes available within a set amount of time.
2990
2991Calispel is a message-passing library, and as such leaves the role of
2992threading abstractions and utilities left to be filled by complementary
2993libraries such as Bordeaux-Threads and Eager Future.")
2994 (home-page "https://www.thoughtcrime.us/software/calispel/")
2995 (license license:isc))))
2996
2997(define-public cl-calispel
2998 (sbcl-package->cl-source-package sbcl-calispel))
2999
3000(define-public ecl-calispel
3001 (sbcl-package->ecl-package sbcl-calispel))
3002
3003(define-public sbcl-calm
3004 (package
3005 (name "sbcl-calm")
3006 (version "0.0.35")
3007 (source
3008 (origin
3009 (method git-fetch)
3010 (uri (git-reference
3011 (url "https://github.com/VitoVan/calm")
3012 (commit version)))
3013 (file-name (git-file-name "cl-calm" version))
3014 (sha256
3015 (base32 "1k1kwpiq7ikk1mgfi26sd968d623jl6xffngd9vwswnaiwihk4dp"))))
3016 (build-system asdf-build-system/sbcl)
3017 (inputs
3018 (list sbcl-cl-cairo2
3019 sbcl-cl-str
3020 sbcl-sdl2
3021 sbcl-sdl2-image
3022 sbcl-sdl2-mixer
3023 sbcl-slime-swank))
3024 (home-page "https://github.com/VitoVan/calm")
3025 (synopsis "Vector graphic library for Common Lisp")
3026 (description
3027 "This package provides a SDL2 based vector graphic library for Common
3028Lisp.")
3029 (license license:gpl2)))
3030
3031(define-public cl-calm
3032 (sbcl-package->cl-source-package sbcl-calm))
3033
3034(define-public ecl-calm
3035 (sbcl-package->ecl-package sbcl-calm))
3036
3037(define-public sbcl-cambl
3038 (let ((commit "c21b8afe8869401d618efc9f0ef406a28d89c3b7")
3039 (revision "2"))
3040 (package
3041 (name "sbcl-cambl")
3042 (version (git-version "4.0.0" revision commit))
3043 (source
3044 (origin
3045 (method git-fetch)
3046 (uri (git-reference
3047 (url "https://github.com/jwiegley/cambl")
3048 (commit commit)))
3049 (file-name (git-file-name "cl-cambl" version))
3050 (sha256
3051 (base32 "1jp0i0pwdvzg689wx2rhm2ajm4w8b55rw6q6jas3498myy2gif4d"))))
3052 (build-system asdf-build-system/sbcl)
3053 (native-inputs
3054 (list sbcl-xlunit))
3055 (inputs
3056 (list sbcl-alexandria
3057 sbcl-cl-containers
3058 sbcl-local-time
3059 sbcl-periods))
3060 (synopsis "Commoditized amounts and balances for Common Lisp")
3061 (description
3062 "CAMBL is a Common Lisp library providing a convenient facility for
3063working with commoditized values. It does not allow compound units (and so is
3064not suited for scientific operations) but does work rather nicely for the
3065purpose of financial calculations.")
3066 (home-page "https://github.com/jwiegley/cambl")
3067 (license license:bsd-3))))
3068
3069(define-public cl-cambl
3070 (sbcl-package->cl-source-package sbcl-cambl))
3071
3072(define-public ecl-cambl
3073 (sbcl-package->ecl-package sbcl-cambl))
3074
3075(define-public sbcl-canonicalized-initargs
3076 (package
3077 (name "sbcl-canonicalized-initargs")
3078 (version "2.0")
3079 (source
3080 (origin
3081 (method git-fetch)
3082 (uri (git-reference
3083 (url "https://github.com/Hexstream/canonicalized-initargs")
3084 (commit (string-append "v" version))))
3085 (file-name (git-file-name "cl-canonicalized-initargs" version))
3086 (sha256
3087 (base32 "0jmmjw86x9mmlfla4kdmdqf1fjrj0p2fmv1lc4k555mcf67mj2fq"))))
3088 (build-system asdf-build-system/sbcl)
3089 (native-inputs
3090 (list sbcl-parachute))
3091 (inputs
3092 (list sbcl-cesdi
3093 sbcl-closer-mop
3094 sbcl-compatible-metaclasses
3095 sbcl-enhanced-defclass
3096 sbcl-enhanced-typep))
3097 (home-page
3098 "https://www.hexstreamsoft.com/libraries/canonicalized-initargs/")
3099 (synopsis "Standard way to canonicalize slot values")
3100 (description
3101 "This package provides a standard way to canonicalize slot values.")
3102 (license license:unlicense)))
3103
3104(define-public cl-canonicalized-initargs
3105 (sbcl-package->cl-source-package sbcl-canonicalized-initargs))
3106
3107(define-public ecl-canonicalized-initargs
3108 (sbcl-package->ecl-package sbcl-canonicalized-initargs))
3109
3110(define-public sbcl-caveman
3111 (let ((commit "35cd8bc6c322f9d88498405fc26168a1fb42ae1c") ; No release since 2012
3112 (revision "2"))
3113 (package
3114 (name "sbcl-caveman")
3115 (version (git-version "2.4.0" revision commit))
3116 (home-page "https://8arrow.org/caveman/")
3117 (source
3118 (origin
3119 (method git-fetch)
3120 (uri (git-reference
3121 (url "https://github.com/fukamachi/caveman/")
3122 (commit commit)))
3123 (file-name (git-file-name "cl-caveman" version))
3124 (sha256
3125 (base32 "1wvjm9m1fnapg0r9imhhcwgnhhqkkccnj3c0iw9yg1f72d7zhm2w"))))
3126 (build-system asdf-build-system/sbcl)
3127 (inputs
3128 (list cl-ningle
3129 sbcl-lack
3130 sbcl-cl-project
3131 sbcl-dbi
3132 sbcl-sxql
3133 sbcl-cl-syntax
3134 sbcl-myway
3135 sbcl-quri))
3136 (native-inputs
3137 (list sbcl-usocket
3138 sbcl-dexador
3139 sbcl-lack
3140 sbcl-trivial-types
3141 sbcl-prove))
3142 (arguments
3143 `(#:asd-systems '("caveman2"
3144 "caveman2-db"
3145 "caveman2-test"
3146 "caveman-middleware-dbimanager")
3147 ;; TODO: Tests fail with:
3148 ;; writing /gnu/store/...-sbcl-caveman-2.4.0-1.faa5f7e/share/common-lisp/sbcl-source/caveman2/v2/t/tmp/myapp573/tests/myapp573.lisp
3149 ;; While evaluating the form starting at line 38, column 0
3150 ;; of #P"/tmp/guix-build-sbcl-caveman-2.4.0-1.faa5f7e.drv-0/source/v2/t/caveman.lisp":
3151 ;; Unhandled ASDF/FIND-COMPONENT:MISSING-COMPONENT in thread #<SB-THREAD:THREAD "main thread" RUNNING
3152 ;; {10009F8083}>:
3153 ;; Component "myapp573" not found
3154 ;;
3155 ;; The above myapp573 component name is randomly generated by
3156 ;; gensym on each test run. `(asdf:load-system *app-name*)` tries
3157 ;; to load this component and fails.
3158 ;; TODO: Ask fukamachi how to go around this.
3159 #:tests? #f))
3160 (synopsis "Lightweight web application framework in Common Lisp")
3161 (description "Caveman is intended to be a collection of common parts for
3162web applications. Caveman2 has three design goals:
3163
3164@itemize
3165@item Be extensible.
3166@item Be practical.
3167@item Don't force anything.
3168@end itemize\n")
3169 (license license:llgpl))))
3170
3171(define-public cl-caveman
3172 (package
3173 (inherit
3174 (sbcl-package->cl-source-package sbcl-caveman))
3175 (propagated-inputs
3176 (list cl-ningle))))
3177
3178(define-public ecl-caveman
3179 (sbcl-package->ecl-package sbcl-caveman))
3180
3181(define-public sbcl-cblas
3182 (let ((commit "1eb97919ccf0ec3add7724e1a21872580bd0cdc6")
3183 (revision "1"))
3184 (package
3185 (name "sbcl-cblas")
3186 (version (git-version "0.0.0" revision commit))
3187 (source
3188 (origin
3189 (method git-fetch)
3190 (uri (git-reference
3191 (url "https://github.com/digikar99/cl-cblas")
3192 (commit commit)))
3193 (file-name (git-file-name "cl-cblas" version))
3194 (sha256
3195 (base32 "1bd2w51r71pgm6sc6m2fms4j1bbnli023j4w3rbxw9cln0g7badp"))))
3196 (build-system asdf-build-system/sbcl)
3197 (inputs
3198 (list openblas
3199 sbcl-cffi
3200 sbcl-cl-autowrap))
3201 (arguments
3202 (list #:phases
3203 #~(modify-phases %standard-phases
3204 (add-after 'unpack 'fix-paths
3205 (lambda* (#:key inputs #:allow-other-keys)
3206 (substitute* "src/shared-object.lisp"
3207 (("/usr/.*/libopenblas\\.so")
3208 (search-input-file inputs "/lib/libopenblas.so"))
3209 (("\"libopenblas\\.so\"")
3210 (string-append "\""
3211 (search-input-file inputs
3212 "/lib/libopenblas.so")
3213 "\""))))))))
3214 (synopsis "Common Lisp bindings for CBLAS")
3215 (description
3216 "This package provides Common Lisp bindings to access the linear
3217algebra libraries using the CBLAS API. Currently the OpenBLAS implementation
3218is used.")
3219 (home-page "https://github.com/digikar99/cl-cblas")
3220 (license license:expat))))
3221
3222(define-public cl-cblas
3223 (sbcl-package->cl-source-package sbcl-cblas))
3224
3225(define-public sbcl-cells
3226 (let ((commit "e8542b17fddd6340c1e237ce482a52327c8ead8e"))
3227 (package
3228 (name "sbcl-cells")
3229 (version (git-version "3.0" "1" commit))
3230 (source
3231 (origin
3232 (method git-fetch)
3233 (uri (git-reference
3234 (url "https://github.com/kennytilton/cells")
3235 (commit commit)))
3236 (file-name (git-file-name "cl-cells" version))
3237 (sha256
3238 (base32 "0rkzvwq38lwb1045w54kw020pb9i63hxiawwhqkf8k1inhak3fdk"))))
3239 (build-system asdf-build-system/sbcl)
3240 (inputs
3241 (list sbcl-utils-kt))
3242 (arguments
3243 ;; Tests fail with #<TYPE-ERROR expected-type: STREAM datum: NIL>.
3244 '(#:tests? #f))
3245 (home-page "https://github.com/kennytilton/cells")
3246 (synopsis "Common Lisp implementation of the dataflow programming paradigm")
3247 (description
3248 "Cells is a mature, stable extension to CLOS allowing one to create
3249classes whose instances can have slot values determined by instance-specific
3250formulas.")
3251 (license license:llgpl))))
3252
3253(define-public cl-cells
3254 (sbcl-package->cl-source-package sbcl-cells))
3255
3256(define-public ecl-cells
3257 (sbcl-package->ecl-package sbcl-cells))
3258
3259(define-public sbcl-cephes
3260 (let ((commit "d87146fa38c8425ffb5fe425eee5eb3e818bacd4")
3261 (revision "0"))
3262 (package
3263 (name "sbcl-cephes")
3264 (version (git-version "1.2" revision commit))
3265 (source
3266 (origin
3267 (method git-fetch)
3268 (uri (git-reference
3269 (url "https://github.com/Lisp-Stat/cephes.cl")
3270 (commit commit)))
3271 (file-name (git-file-name "cl-cephes" version))
3272 (sha256
3273 (base32 "09adls1lwwzwm1jmvhf11arwlsy5w0bi2rmniahas824mysv77lr"))))
3274 (build-system asdf-build-system/sbcl)
3275 (inputs
3276 (list sbcl-cffi))
3277 (arguments
3278 (list #:phases
3279 #~(modify-phases %standard-phases
3280 ;; ECL has issues making the shared library automatically,
3281 ;; so we make it explicitly.
3282 (add-before 'build 'build-shared-library
3283 (lambda _
3284 (with-directory-excursion
3285 (string-append #$output "/share/common-lisp/"
3286 (%lisp-type) "/cephes/scipy-cephes")
3287 (invoke "make")
3288 ;; Remove temporary object files.
3289 (for-each delete-file (find-files "." "\\.o$"))))))))
3290 (home-page "https://lisp-stat.github.io/cephes.cl/")
3291 (synopsis "Common Lisp wrapper for the Cephes Mathematical Library")
3292 (description
3293 "This package provides a common lisp CFFI wrapper for the SciPy version
3294of Cephes special functions.")
3295 (license license:ms-pl))))
3296
3297(define-public cl-cephes
3298 (sbcl-package->cl-source-package sbcl-cephes))
3299
3300(define-public ecl-cephes
3301 (sbcl-package->ecl-package sbcl-cephes))
3302
3303(define-public sbcl-cepl
3304 (let ((commit "d1a10b6c8f4cedc07493bf06aef3a56c7b6f8d5b")
3305 (revision "1"))
3306 (package
3307 (name "sbcl-cepl")
3308 (version (git-version "0.0.0" revision commit))
3309 (source
3310 (origin
3311 (method git-fetch)
3312 (uri (git-reference
3313 (url "https://github.com/cbaggers/cepl")
3314 (commit commit)))
3315 (file-name (git-file-name "cepl" version))
3316 (sha256
3317 (base32 "0izbw2advqm3wailj3dpq6zqfrfirwn14pw5qmqh8i71r51xwmm2"))))
3318 (build-system asdf-build-system/sbcl)
3319 (inputs
3320 (list sbcl-alexandria
3321 sbcl-bordeaux-threads
3322 sbcl-cffi
3323 sbcl-cl-opengl
3324 sbcl-cl-ppcre
3325 sbcl-documentation-utils
3326 sbcl-float-features
3327 sbcl-ieee-floats
3328 sbcl-split-sequence
3329 sbcl-varjo))
3330 (propagated-inputs
3331 (list sbcl-quickproject))
3332 (home-page "https://github.com/cbaggers/cepl")
3333 (synopsis "Development playground to work with OpenGL")
3334 (description
3335 "CEPL (Code Evaluate Play Loop ) is a lispy and REPL-friendly Common Lisp
3336library for working with OpenGL.
3337
3338Its definition of success is making the user feel that GPU programming has
3339always been part of the languages standard.
3340
3341The usual approach to using CEPL is to start it at the beginning of your Lisp
3342session and leave it open for the duration of your work. You can then treat the
3343window it creates as just another output for your graphics, analogous to how
3344@code{*standard-output*} is treated for text.")
3345 (license license:bsd-2))))
3346
3347(define-public cl-cepl
3348 (sbcl-package->cl-source-package sbcl-cepl))
3349
3350(define-public ecl-cepl
3351 (sbcl-package->ecl-package sbcl-cepl))
3352
3353(define-public sbcl-cesdi
3354 (package
3355 (name "sbcl-cesdi")
3356 (version "1.0.1")
3357 (source
3358 (origin
3359 (method git-fetch)
3360 (uri (git-reference
3361 (url "https://github.com/Hexstream/cesdi")
3362 (commit version)))
3363 (file-name (git-file-name "cl-cesdi" version))
3364 (sha256
3365 (base32 "02f2pz5rw79ljkkx1ywh8nkpjj4g3z3s1lyvzqb8krbnx11wl0q9"))))
3366 (build-system asdf-build-system/sbcl)
3367 (native-inputs
3368 (list sbcl-parachute))
3369 (inputs
3370 (list sbcl-closer-mop))
3371 (home-page "https://www.hexstreamsoft.com/libraries/cesdi/")
3372 (synopsis "Ergonomic initialization of effective slot definition objects")
3373 (description
3374 "This package provides a @code{compute-effective-slot-definition-initargs}
3375generic function that allows for more ergonomic initialization of effective slot
3376definition objects.")
3377 (license license:unlicense)))
3378
3379(define-public cl-cesdi
3380 (sbcl-package->cl-source-package sbcl-cesdi))
3381
3382(define-public ecl-cesdi
3383 (sbcl-package->ecl-package sbcl-cesdi))
3384
3385(define-public clasp-cesdi
3386 (sbcl-package->clasp-package sbcl-cesdi))
3387
3388(define-public sbcl-cf
3389 (let ((commit "0aa0dd67f59f88e0dbd50ebe25690fcdaafee4c5")
3390 (revision "0"))
3391 (package
3392 (name "sbcl-cf")
3393 (version (git-version "1.1" revision commit))
3394 (source
3395 (origin
3396 (method git-fetch)
3397 (uri (git-reference
3398 (url "https://codeberg.org/glv/cl-cf")
3399 (commit commit)))
3400 (file-name (git-file-name "cl-cf" version))
3401 (sha256
3402 (base32 "0bacgspfqvkdr430yax9dk61pavcajz9kv9lb12rg5qcrqd1vpmb"))))
3403 (build-system asdf-build-system/sbcl)
3404 (native-inputs (list sbcl-fiveam))
3405 (synopsis "Continued fractions library")
3406 (description "CF is a Common Lisp library for doing computations using
3407continued fractions.")
3408 (home-page "https://codeberg.org/glv/cl-cf")
3409 (license license:gpl3+))))
3410
3411(define-public cl-cf
3412 (sbcl-package->cl-source-package sbcl-cf))
3413
3414(define-public ecl-cf
3415 (sbcl-package->ecl-package sbcl-cf))
3416
3417(define-public sbcl-cffi
3418 (let ((commit "32c90d4a9a01e809f591276c058e5b3c7f39b154")
3419 (revision "2"))
3420 (package
3421 (name "sbcl-cffi")
3422 (version (git-version "0.24.1" revision commit))
3423 (source
3424 (origin
3425 (method git-fetch)
3426 (uri (git-reference
3427 (url "https://github.com/cffi/cffi")
3428 (commit commit)))
3429 (file-name (git-file-name "cl-cffi" version))
3430 (sha256
3431 (base32 "1b2j32rapgw8rn7m9sm2k8r8x9jds7vshkm90i5lw9v4xnp8x4m7"))))
3432 (build-system asdf-build-system/sbcl)
3433 (inputs
3434 (list libffi
3435 sbcl-alexandria
3436 sbcl-babel
3437 sbcl-trivial-features))
3438 (native-inputs
3439 (list pkg-config
3440 sbcl-bordeaux-threads
3441 sbcl-rt))
3442 (arguments
3443 (list ;; Some tests will not work on riscv64 because a function of SBCL
3444 ;; is not implemented yet for riscv.
3445 ;; See <https://bugs.launchpad.net/sbcl/+bug/2069265>
3446 #:tests? (not (target-riscv64?))
3447 #:phases
3448 #~(modify-phases %standard-phases
3449 (add-after 'unpack 'fix-paths
3450 (lambda* (#:key inputs #:allow-other-keys)
3451 (substitute* "libffi/libffi.lisp"
3452 (("libffi.so.8" all)
3453 (search-input-file inputs (string-append "/lib/" all))))
3454 (substitute* "toolchain/c-toolchain.lisp"
3455 (("\"cc\"")
3456 (format #f "~S" (which "gcc"))))))
3457 (add-after 'build 'install-headers
3458 (lambda _
3459 (install-file "grovel/common.h"
3460 (string-append #$output
3461 "/include/grovel")))))
3462 #:asd-systems ''("cffi"
3463 "cffi-libffi"
3464 "cffi-uffi-compat")))
3465 (home-page "https://common-lisp.net/project/cffi/")
3466 (synopsis "Common Foreign Function Interface for Common Lisp")
3467 (description "The Common Foreign Function Interface (CFFI)
3468purports to be a portable foreign function interface for Common Lisp.
3469The CFFI library is composed of a Lisp-implementation-specific backend
3470in the CFFI-SYS package, and a portable frontend in the CFFI
3471package.")
3472 (license license:expat))))
3473
3474(define-public cl-cffi
3475 (sbcl-package->cl-source-package sbcl-cffi))
3476
3477(define-public ecl-cffi
3478 (sbcl-package->ecl-package sbcl-cffi))
3479
3480
3481(define-public sbcl-cffi-c-ref
3482 (let ((commit "8123cbb6034c5f7921a0766107cfb8c4e8efd5ce")
3483 (revision "0"))
3484 (package
3485 (name "sbcl-cffi-c-ref")
3486 (version (git-version "1.0" revision commit))
3487 (source
3488 (origin
3489 (method git-fetch)
3490 (uri (git-reference
3491 (url "https://github.com/borodust/cffi-c-ref")
3492 (commit commit)))
3493 (sha256
3494 (base32 "1a3pp6xcisabqir3rp1gvvjfdxcvpm8yr35p38nri9azsinmmc7z"))
3495 (file-name (git-file-name "cffi-c-ref" version))))
3496 (build-system asdf-build-system/sbcl)
3497 (inputs
3498 (list sbcl-alexandria sbcl-cffi))
3499 (synopsis "Streamlined access to foreign memory")
3500 (description
3501 "This Common Lisp library provides macros to access foreign memory.")
3502 (home-page "https://github.com/borodust/cffi-c-ref")
3503 (license license:expat))))
3504
3505(define-public cl-cffi-c-ref
3506 (sbcl-package->cl-source-package sbcl-cffi-c-ref))
3507
3508(define-public ecl-cffi-c-ref
3509 (sbcl-package->ecl-package sbcl-cffi-c-ref))
3510
3511(define-public sbcl-cffi-object
3512 (package
3513 (name "sbcl-cffi-object")
3514 (version "1.0.0")
3515 (source
3516 (origin
3517 (method git-fetch)
3518 (uri (git-reference
3519 (url "https://github.com/bohonghuang/cffi-object")
3520 (commit "b9e4f8f7eed44cfa5319fd086f282efbcf3ed705")))
3521 (file-name (git-file-name name version))
3522 (sha256
3523 (base32 "1mvxqaq800803mhhra28kjzvkcg7b9jfnlw7662qnps99b0m8y2p"))))
3524 (build-system asdf-build-system/sbcl)
3525 (native-inputs
3526 (list sbcl-parachute
3527 sbcl-cffi-ops))
3528 (inputs
3529 (list sbcl-alexandria
3530 sbcl-cffi
3531 sbcl-trivial-garbage))
3532 (home-page "https://github.com/bohonghuang/cffi-object")
3533 (synopsis "Enables fast and convenient interoperation with foreign
3534objects")
3535 (description "Enables fast and convenient interoperation with foreign
3536objects.")
3537 (license license:asl2.0)))
3538
3539;; Error detected:
3540;; Unknown CFFI type :OBJECT
3541#;(define-public ecl-cffi-object
3542 (sbcl-package->ecl-package sbcl-cffi-object))
3543
3544(define-public cl-cffi-object
3545 (sbcl-package->cl-source-package sbcl-cffi-object))
3546
3547(define-public sbcl-cffi-ops
3548 (package
3549 (name "sbcl-cffi-ops")
3550 (version "1.0.0")
3551 (source
3552 (origin
3553 (method git-fetch)
3554 (uri (git-reference
3555 (url "https://github.com/bohonghuang/cffi-ops")
3556 (commit "79a36a643c10459e3ea6a7a22dfa7f9b62233e61")))
3557 (file-name (git-file-name name version))
3558 (sha256
3559 (base32 "0hi3svwfb7m1wq892wlrsgj52jkh3x6msnimax28221baj6g64gg"))))
3560 (build-system asdf-build-system/sbcl)
3561 (native-inputs
3562 (list sbcl-parachute))
3563 (inputs
3564 (list sbcl-alexandria
3565 sbcl-cffi
3566 sbcl-arrow-macros
3567 sbcl-trivial-macroexpand-all))
3568 (home-page "https://github.com/bohonghuang/cffi-ops")
3569 (synopsis "Helps writing concise CFFI-related code")
3570 (description "Helps writing concise CFFI-related code.")
3571 (license license:asl2.0)))
3572
3573(define-public ecl-cffi-ops
3574 (sbcl-package->ecl-package sbcl-cffi-ops))
3575
3576(define-public cl-cffi-ops
3577 (sbcl-package->cl-source-package sbcl-cffi-ops))
3578
3579(define-public sbcl-chanl
3580 (let ((commit "56e90a126c78b39bb621a01585e8d3b985238e8c")
3581 (revision "1"))
3582 (package
3583 (name "sbcl-chanl")
3584 (version (git-version "0.4.1" revision commit))
3585 (source
3586 (origin
3587 (method git-fetch)
3588 (uri (git-reference
3589 (url "https://github.com/zkat/chanl")
3590 (commit commit)))
3591 (file-name (git-file-name name version))
3592 (sha256
3593 (base32
3594 "0b1cf6c12qx5cy1fw2z42jgh566rp3l8nv5qf0qqc569s7bgmrh4"))))
3595 (build-system asdf-build-system/sbcl)
3596 (native-inputs
3597 (list sbcl-fiveam))
3598 (inputs
3599 (list sbcl-bordeaux-threads))
3600 (arguments
3601 ;; Disable flaky tests
3602 (list #:tests? #f))
3603 (synopsis "Portable channel-based concurrency for Common Lisp")
3604 (description "Common Lisp library for channel-based concurrency. In
3605a nutshell, you create various threads sequentially executing tasks you need
3606done, and use channel objects to communicate and synchronize the state of these
3607threads.")
3608 (home-page "https://github.com/zkat/chanl")
3609 (license (list license:expat license:bsd-3)))))
3610
3611(define-public cl-chanl
3612 (sbcl-package->cl-source-package sbcl-chanl))
3613
3614(define-public ecl-chanl
3615 (sbcl-package->ecl-package sbcl-chanl))
3616
3617(define-public sbcl-charje.documentation
3618 (package
3619 (name "sbcl-charje.documentation")
3620 (version "0.0.0")
3621 (source
3622 (origin
3623 (method git-fetch)
3624 (uri (git-reference
3625 (url "https://git.sr.ht/~charje/documentation")
3626 (commit (string-append "v" version))))
3627 (sha256
3628 (base32
3629 "149r9qdz5dyxsamhf5miaa9njr7kn7nc0ic448k133rs3nnwagqc"))
3630 (file-name (git-file-name "cl-charje.documentation" version))))
3631 (build-system asdf-build-system/sbcl)
3632 (inputs
3633 (list sbcl-alexandria))
3634 (home-page "https://git.sr.ht/~charje/documentation")
3635 (synopsis "Docstring parsing library for Common Lisp")
3636 (description "Charje.documentation can used to parse Common Lisp
3637docstrings the charje way, or it can be used to create custom docstring
3638parsers. Docstring parsers are composed using mixin classes and
3639initialization methods.")
3640 (license license:agpl3+)))
3641
3642(define-public cl-charje.documentation
3643 (sbcl-package->cl-source-package sbcl-charje.documentation))
3644
3645(define-public ecl-charje.documentation
3646 (sbcl-package->ecl-package sbcl-charje.documentation))
3647
3648(define-public clasp-charje.documentation
3649 (sbcl-package->clasp-package sbcl-charje.documentation))
3650
3651(define-public sbcl-charje.loop
3652 (package
3653 (name "sbcl-charje.loop")
3654 (version "1.1.0")
3655 (source
3656 (origin
3657 (method git-fetch)
3658 (uri (git-reference
3659 (url "https://git.sr.ht/~charje/loop")
3660 (commit (string-append "v" version))))
3661 (file-name (git-file-name "cl-charje.loop" version))
3662 (sha256
3663 (base32
3664 "111y4g9l39s6pmbwglas9ivz7lzpzxbix1d52d7iapmpx61nim0f"))))
3665 (build-system asdf-build-system/sbcl)
3666 (inputs
3667 (list sbcl-alexandria
3668 sbcl-binding-arrows
3669 sbcl-parse-declarations))
3670 (home-page "https://git.sr.ht/~charje/loop")
3671 (synopsis "Loop abstraction for Common Lisp that is consistent for
3672different kinds of data")
3673 (description "Loop has a consistent interface unlike other looping
3674abstractions and ANSI list operations. You can define your own efters and
3675gatherers that integrate tightly into other operations. All operations are
3676non-consing when possible.")
3677 (license license:agpl3+)))
3678
3679(define-public cl-charje.loop
3680 (sbcl-package->cl-source-package sbcl-charje.loop))
3681
3682(define-public ecl-charje.loop
3683 (sbcl-package->ecl-package sbcl-charje.loop))
3684
3685(define-public clasp-charje.loop
3686 (sbcl-package->clasp-package sbcl-charje.loop))
3687
3688(define-public sbcl-charje.lambda-list
3689 (package
3690 (name "sbcl-charje.lambda-list")
3691 (version "0.0.0")
3692 (source
3693 (origin
3694 (method git-fetch)
3695 (uri (git-reference
3696 (url "https://git.sr.ht/~charje/lambda-list")
3697 (commit (string-append "v" version))))
3698 (file-name (git-file-name "cl-charje.lambda-list" version))
3699 (sha256
3700 (base32
3701 "1yb96w6alaqg7lllwpl9m5lmcq6r03bhcn84wnhxdzmy3vh93dkd"))))
3702 (build-system asdf-build-system/sbcl)
3703 (inputs
3704 (list
3705 sbcl-binding-arrows
3706 sbcl-charje.loop
3707 sbcl-ctype))
3708 (home-page "https://git.sr.ht/~charje/lambda-list")
3709 (synopsis "Common Lisp lambda list parsing and manipulation library")
3710 (description
3711 "charje.lambda-list can parse every kind of lambda list defined in the
3712ANSI Common Lisp standard. Parsing yields only one object that has all the
3713parsed parts of the lambda list inside. New kinds of lambda lists can be made
3714too.")
3715 (license license:agpl3+)))
3716
3717(define-public cl-charje.lambda-list
3718 (sbcl-package->cl-source-package sbcl-charje.lambda-list))
3719
3720;; TODO: Waiting on next ecl release.
3721;; See: https://gitlab.com/embeddable-common-lisp/ecl/-/issues/750
3722;; (define-public ecl-charje.lambda-list
3723;; (sbcl-package->ecl-package sbcl-charje.lambda-list))
3724
3725(define-public clasp-charje.lambda-list
3726 (sbcl-package->clasp-package sbcl-charje.lambda-list))
3727
3728(define-public sbcl-chemboy
3729 (package
3730 (name "sbcl-chemboy")
3731 (version "0.3")
3732 (source
3733 (origin
3734 (method url-fetch)
3735 (uri (string-append
3736 "https://common-lisp.net/project/chemboy/chemboy-"
3737 version ".tar.gz"))
3738 (sha256
3739 (base32 "0lr134l16mjcgdj3fm2yff4chlfbihn1sji7q80y7lnr176zgs7d"))))
3740 (build-system asdf-build-system/sbcl)
3741 (inputs
3742 (list sbcl-chemical-compounds
3743 sbcl-periodic-table))
3744 (arguments
3745 `(#:phases
3746 (modify-phases %standard-phases
3747 (add-after 'unpack 'fix-files
3748 (lambda _
3749 ;; Fix incorrect version number.
3750 (substitute* "chemboy.asd"
3751 ((":version \"0.2\"")
3752 (string-append ":version \"" ,version "\"")))
3753 ;; Remove incorrect declaration of string type.
3754 (substitute* "query-parsing.lisp"
3755 (("\\(declare \\(simple-base-string string\\)")
3756 "(declare"))
3757 ;; Fix incorrect function calls.
3758 (substitute* "conversions.lisp"
3759 (("\\(pprint-compound element s\\)")
3760 "(pprint-compound element :stream s)")
3761 (("\\(pprint-compound parsed-compound s\\)")
3762 "(pprint-compound parsed-compound :stream s)")))))))
3763 (home-page "https://common-lisp.net/project/chemboy/")
3764 (synopsis "Common Lisp program for doing basic chemistry calculations")
3765 (description
3766 "Chemboy is a Common Lisp program for doing basic chemistry calculations.
3767This package provides the text-based interface for Chemboy.")
3768 (license license:llgpl)))
3769
3770(define-public cl-chemboy
3771 (sbcl-package->cl-source-package sbcl-chemboy))
3772
3773(define-public ecl-chemboy
3774 (sbcl-package->ecl-package sbcl-chemboy))
3775
3776(define-public clasp-chemboy
3777 (sbcl-package->clasp-package sbcl-chemboy))
3778
3779(define-public sbcl-chemical-compounds
3780 (package
3781 (name "sbcl-chemical-compounds")
3782 (version "1.0.2")
3783 (source
3784 (origin
3785 (method url-fetch)
3786 (uri (string-append
3787 "https://common-lisp.net/project/chemboy/chemical-compounds-"
3788 version ".tar.gz"))
3789 (sha256
3790 (base32 "12fd8a6ay5qlsq4givzgh9d55mbg4ci2vvmymig6pjl2ms64v0pf"))))
3791 (build-system asdf-build-system/sbcl)
3792 (inputs
3793 (list sbcl-periodic-table))
3794 (arguments
3795 `(#:phases
3796 (modify-phases %standard-phases
3797 (add-after 'unpack 'fix-files
3798 (lambda _
3799 ;; Fix incorrect version number.
3800 (substitute* "chemical-compounds.asd"
3801 ((":version \"1.0.1\"")
3802 (string-append ":version \"" ,version "\"")))
3803 ;; Remove incorrect declaration of string type.
3804 (substitute* "parsing.lisp"
3805 (("\\(declare \\(simple-base-string string\\)")
3806 "(declare")))))))
3807 (home-page "https://common-lisp.net/project/chemboy/")
3808 (synopsis "Chemical formula parser and pretty-printer for Common Lisp")
3809 (description
3810 "It can sometimes be useful to be able to parse chemical compounds in a
3811user-friendly syntax into easy-to-manipulate s-expressions. You also want to
3812be able to go in reverse. You could probably write your own parser — or you
3813could just install the chemical-compounds package.")
3814 (license license:llgpl)))
3815
3816(define-public cl-chemical-compounds
3817 (sbcl-package->cl-source-package sbcl-chemical-compounds))
3818
3819(define-public ecl-chemical-compounds
3820 (sbcl-package->ecl-package sbcl-chemical-compounds))
3821
3822(define-public clasp-chemical-compounds
3823 (sbcl-package->clasp-package sbcl-chemical-compounds))
3824
3825(define-public sbcl-chipz
3826 (let ((version "0.8")
3827 (commit "82a17d39c78d91f6ea63a03aca8f9aa6069a5e11")
3828 (revision "2"))
3829 (package
3830 (name "sbcl-chipz")
3831 (version (git-version version revision commit))
3832 (source
3833 (origin
3834 (method git-fetch)
3835 (uri (git-reference
3836 (url "https://github.com/sharplispers/chipz")
3837 (commit commit)))
3838 (file-name (git-file-name "cl-chipz" version))
3839 (sha256
3840 (base32 "1n4f22i9j8iapjd6yx1z348rggcybvg9h794kx9libjgz4bs371h"))))
3841 (build-system asdf-build-system/sbcl)
3842 (native-inputs
3843 (list sbcl-flexi-streams))
3844 (home-page "http://method-combination.net/lisp/chipz/")
3845 (synopsis
3846 "Common Lisp library for decompressing deflate, zlib, gzip, and bzip2
3847data")
3848 (description
3849 "DEFLATE data, defined in RFC1951, forms the core of popular
3850compression formats such as zlib (RFC 1950) and gzip (RFC 1952). As such,
3851Chipz also provides for decompressing data in those formats as well. BZIP2 is
3852the format used by the popular compression tool bzip2.")
3853 ;; The author describes it as "MIT-like"
3854 (license license:expat))))
3855
3856(define-public cl-chipz
3857 (sbcl-package->cl-source-package sbcl-chipz))
3858
3859(define-public ecl-chipz
3860 (sbcl-package->ecl-package sbcl-chipz))
3861
3862(define-public clasp-chipz
3863 (sbcl-package->clasp-package sbcl-chipz))
3864
3865(define-public sbcl-chirp
3866 (let ((commit "49050a0765736ffbed82ccd09cafdfdcf42884c1")
3867 (revision "2"))
3868 (package
3869 (name "sbcl-chirp")
3870 (version (git-version "0.2.0" revision commit))
3871 (source
3872 (origin
3873 (method git-fetch)
3874 (uri (git-reference
3875 (url "https://codeberg.org/shinmera/chirp")
3876 (commit commit)))
3877 (file-name (git-file-name "chirp" version))
3878 (sha256
3879 (base32 "0f6syqam0vsldnqdbccfzx4zqw0jcqyv8yw947qlm9n8zpkhhm06"))))
3880 (build-system asdf-build-system/sbcl)
3881 (arguments
3882 `(#:asd-systems '("chirp-core" "chirp-dexador" "chirp-drakma" "chirp")))
3883 (inputs
3884 (list sbcl-alexandria
3885 sbcl-babel
3886 sbcl-cl-base64
3887 sbcl-cl-ppcre
3888 sbcl-dexador
3889 sbcl-drakma
3890 sbcl-flexi-streams
3891 sbcl-ironclad
3892 sbcl-local-time
3893 sbcl-split-sequence
3894 sbcl-uuid
3895 sbcl-yason))
3896 (home-page "https://codeberg.org/shinmera/chirp")
3897 (synopsis "Twitter client library for Common Lisp")
3898 (description
3899 "This package provides a Common Lisp Twitter client featuring full API
3900coverage.")
3901 (license license:zlib))))
3902
3903(define-public cl-chirp
3904 (sbcl-package->cl-source-package sbcl-chirp))
3905
3906(define-public ecl-chirp
3907 (sbcl-package->ecl-package sbcl-chirp))
3908
3909(define-public sbcl-chlorophyll
3910 (let ((commit "485539419fad9e7e739d965f845f9898927ac31b")
3911 (revision "2"))
3912 (package
3913 (name "sbcl-chlorophyll")
3914 (version (git-version "0.0.1" revision commit))
3915 (source
3916 (origin
3917 (method git-fetch)
3918 (uri (git-reference
3919 (url "https://github.com/gorozhin/chlorophyll")
3920 (commit commit)))
3921 (file-name (git-file-name "cl-chlorophyll" version))
3922 (sha256
3923 (base32 "0q681pbcx4vcshrlligd5h07kakbjprb0kpf48z4glswy59vg8mg"))))
3924 (build-system asdf-build-system/sbcl)
3925 (native-inputs (list sbcl-fiveam))
3926 (inputs (list sbcl-alexandria))
3927 (home-page "https://github.com/gorozhin/chlorophyll")
3928 (synopsis "ANSI escape code library for Common Lisp")
3929 (description
3930 "This package provides a Common Lisp system CHLOROPHYLL which
3931implements an ANSI escape code functionality.")
3932 (license license:expat))))
3933
3934(define-public cl-chlorophyll
3935 (sbcl-package->cl-source-package sbcl-chlorophyll))
3936
3937(define-public ecl-chlorophyll
3938 (sbcl-package->ecl-package sbcl-chlorophyll))
3939
3940(define-public sbcl-chronicity
3941 (package
3942 (name "sbcl-chronicity")
3943 (version "0.4.1")
3944 (source
3945 (origin
3946 (method git-fetch)
3947 (uri (git-reference
3948 (url "https://github.com/chaitanyagupta/chronicity")
3949 (commit (string-append "v" version))))
3950 (file-name (git-file-name "chronicity" version))
3951 (sha256
3952 (base32 "0rzrl9is2v1aqbm0sym0qx3blnpd0bl13dkkmll6mb3983k2mkax"))))
3953 (build-system asdf-build-system/sbcl)
3954 (native-inputs
3955 (list sbcl-lisp-unit))
3956 (inputs
3957 (list sbcl-cl-interpol sbcl-cl-ppcre sbcl-local-time))
3958 (home-page "https://github.com/chaitanyagupta/chronicity")
3959 (synopsis "Natural language date and time parser for Common Lisp")
3960 (description
3961 "CHRONICITY is Common Lisp natural language date and time parser inspired
3962by Ruby's @code{Chronic}.")
3963 (license license:bsd-3)))
3964
3965(define-public ecl-chronicity
3966 (sbcl-package->ecl-package sbcl-chronicity))
3967
3968(define-public cl-chronicity
3969 (sbcl-package->cl-source-package sbcl-chronicity))
3970
3971(define-public sbcl-chunga
3972 (package
3973 (name "sbcl-chunga")
3974 (version "1.1.9")
3975 (source
3976 (origin
3977 (method git-fetch)
3978 (uri (git-reference
3979 (url "https://github.com/edicl/chunga")
3980 (commit (string-append "v" version))))
3981 (file-name (git-file-name name version))
3982 (sha256
3983 (base32 "17jswsp31dh1jpg2n60nn34wxf4z6vvxjq1avy50z9fnzywvikyi"))))
3984 (build-system asdf-build-system/sbcl)
3985 (inputs
3986 (list sbcl-trivial-gray-streams))
3987 (home-page "https://edicl.github.io/chunga/")
3988 (synopsis "Portable chunked streams for Common Lisp")
3989 (description
3990 "Chunga implements streams capable of chunked encoding on demand as
3991defined in RFC 2616.")
3992 (license license:bsd-2)))
3993
3994(define-public cl-chunga
3995 (sbcl-package->cl-source-package sbcl-chunga))
3996
3997(define-public ecl-chunga
3998 (sbcl-package->ecl-package sbcl-chunga))
3999
4000(define-public sbcl-ciel
4001 (let ((commit "0b26d64dcd91a3a2aa962842629a853261dd30fe")
4002 (revision "0"))
4003 (package
4004 (name "sbcl-ciel")
4005 (version (git-version "0.2.1" revision commit))
4006 (source
4007 (origin
4008 (method git-fetch)
4009 (uri (git-reference
4010 (url "https://github.com/ciel-lang/CIEL")
4011 (commit commit)))
4012 (file-name (git-file-name "cl-ciel" version))
4013 (sha256
4014 (base32 "0gm8slnz4jw98rkijnh2dp6x629xdnfk8z7j35g03j6ypr56v06h"))))
4015 (build-system asdf-build-system/sbcl)
4016 (native-inputs
4017 (list sbcl-fiveam))
4018 (inputs
4019 (list sbcl-access
4020 sbcl-alexandria
4021 sbcl-arrow-macros
4022 sbcl-bordeaux-threads
4023 sbcl-cl-ansi-text
4024 sbcl-cl-cron
4025 sbcl-cl-csv
4026 sbcl-cl-ftp
4027 sbcl-cl-json-pointer
4028 sbcl-cl-ppcre
4029 sbcl-cl-reexport
4030 sbcl-cl-str
4031 sbcl-clesh
4032 sbcl-clingon
4033 sbcl-closer-mop
4034 sbcl-cmd
4035 sbcl-dbi
4036 sbcl-defstar
4037 sbcl-dexador
4038 sbcl-dissect
4039 sbcl-easy-routes
4040 sbcl-file-finder
4041 sbcl-file-notify
4042 sbcl-for
4043 sbcl-fset
4044 sbcl-generic-cl
4045 sbcl-hunchentoot
4046 sbcl-local-time
4047 sbcl-log4cl
4048 sbcl-lparallel
4049 sbcl-lquery
4050 sbcl-metabang-bind
4051 sbcl-modf
4052 sbcl-moira
4053 sbcl-named-readtables
4054 sbcl-parse-float
4055 sbcl-parse-number
4056 sbcl-printv
4057 sbcl-progressons
4058 sbcl-pythonic-string-reader
4059 sbcl-quicksearch
4060 sbcl-quri
4061 sbcl-repl-utilities
4062 sbcl-secret-values
4063 sbcl-serapeum
4064 sbcl-shasht
4065 sbcl-shlex
4066 sbcl-spinneret
4067 sbcl-sxql
4068 sbcl-termp
4069 sbcl-trivia
4070 sbcl-trivial-arguments
4071 sbcl-trivial-do
4072 sbcl-trivial-monitored-thread
4073 sbcl-trivial-package-local-nicknames
4074 sbcl-trivial-types
4075 sbcl-vgplot
4076 sbcl-which))
4077 (outputs '("out" "image"))
4078 (arguments
4079 (list
4080 #:phases
4081 #~(modify-phases %standard-phases
4082 (add-after 'create-asdf-configuration 'build-image
4083 (lambda* (#:key outputs #:allow-other-keys)
4084 (build-image
4085 (string-append (assoc-ref outputs "image") "/bin/ciel")
4086 outputs
4087 #:dependencies '("ciel")))))))
4088 (home-page "http://ciel-lang.org/")
4089 (synopsis "CIEL Is an Extended Lisp")
4090 (description
4091 "CIEL is a ready-to-use collection of libraries providing: a binary, to
4092run CIEL scripts; a simple full-featured REPL for the terminal; a Lisp library
4093and a core image.")
4094 (license license:expat))))
4095
4096(define-public cl-ciel
4097 (sbcl-package->cl-source-package sbcl-ciel))
4098
4099(define-public ecl-ciel
4100 ;; Remove the "image" output and the build phase "build-image"
4101 ;; (which fails because ECL has no support for images).
4102 (let ((pkg (sbcl-package->ecl-package sbcl-ciel)))
4103 (package
4104 (inherit pkg)
4105 (outputs '("out"))
4106 (arguments
4107 (substitute-keyword-arguments arguments
4108 ((#:phases phases)
4109 `(modify-phases ,phases
4110 (delete 'build-image))))))))
4111
4112(define-public sbcl-ciel-repl
4113 (let ((commit "0b26d64dcd91a3a2aa962842629a853261dd30fe")
4114 (revision "0"))
4115 (package
4116 (name "sbcl-ciel-repl")
4117 (version (git-version "0.2.1" revision commit))
4118 (source
4119 (origin
4120 (method git-fetch)
4121 (uri (git-reference
4122 (url "https://github.com/ciel-lang/CIEL")
4123 (commit commit)))
4124 (file-name (git-file-name name version))
4125 (sha256
4126 (base32 "0gm8slnz4jw98rkijnh2dp6x629xdnfk8z7j35g03j6ypr56v06h"))
4127 (patches (search-patches "sbcl-ciel-repl.patch"))))
4128 (build-system asdf-build-system/sbcl)
4129 (inputs
4130 (list sbcl-ciel
4131 sbcl-cl-readline
4132 sbcl-lisp-critic
4133 sbcl-magic-ed))
4134 (arguments
4135 (list
4136 #:asd-systems ''("ciel/repl")
4137 #:phases
4138 #~(modify-phases %standard-phases
4139 ;; The built-in scripts require special care. They are
4140 ;; read from src/scripts in the current directory.
4141 ;; When the binary is built, the current directory is
4142 ;; {out}/bin, so the scripts have to be copied there,
4143 ;; but that copy must be deleted after the binary has been
4144 ;; built, otherwise it would end up in the package.
4145 (add-after 'create-asdf-configuration 'install-scripts
4146 (lambda _
4147 (let ((dir (string-append #$output "/bin/src/scripts")))
4148 (for-each (lambda (file)
4149 (install-file file dir))
4150 (find-files "src/scripts" "\\.lisp$")))))
4151 (add-after 'install-scripts 'build-program
4152 (lambda* (#:key outputs #:allow-other-keys)
4153 (build-program
4154 (string-append #$output "/bin/ciel")
4155 outputs
4156 #:entry-program '((ciel::main))
4157 #:dependencies '("ciel/repl")
4158 #:compress? #t)))
4159 (add-after 'build-program 'delete-scripts
4160 (lambda _
4161 (let ((dir (string-append #$output "/bin/src")))
4162 (delete-file-recursively dir))))
4163 ;; Remove everything except the binary.
4164 (add-after 'delete-scripts 'delete-lisp-files
4165 (lambda _
4166 (let ((dir (string-append #$output "/etc")))
4167 (delete-file-recursively dir))
4168 (let ((dir (string-append #$output "/lib")))
4169 (delete-file-recursively dir))
4170 (let ((dir (string-append #$output "/share")))
4171 (delete-file-recursively dir))
4172 (let ((dir (string-append #$output "/.asd-files")))
4173 (delete-file-recursively dir)))))))
4174 (home-page "http://ciel-lang.org/")
4175 (synopsis "Terminal REPL for CIEL")
4176 (description
4177 "This package provides CIEL as a precompiled binary and a full-featured
4178REPL for the terminal.")
4179 (license license:expat))))
4180
4181(define-public sbcl-circular-streams
4182 (let ((commit "e770bade1919c5e8533dd2078c93c3d3bbeb38df")
4183 (revision "1"))
4184 (package
4185 (name "sbcl-circular-streams")
4186 (version (git-version "0.1.0" revision commit))
4187 (source
4188 (origin
4189 (method git-fetch)
4190 (uri (git-reference
4191 (url "https://github.com/fukamachi/circular-streams")
4192 (commit commit)))
4193 (file-name (git-file-name name version))
4194 (sha256
4195 (base32 "1wpw6d5cciyqcf92f7mvihak52pd5s47kk4qq6f0r2z2as68p5rs"))))
4196 (build-system asdf-build-system/sbcl)
4197 (arguments
4198 ;; The tests depend on cl-test-more which is now prove. Prove
4199 ;; tests aren't working for some reason.
4200 `(#:tests? #f))
4201 (inputs
4202 (list sbcl-fast-io sbcl-trivial-gray-streams))
4203 (home-page "https://github.com/fukamachi/circular-streams")
4204 (synopsis "Circularly readable streams for Common Lisp")
4205 (description
4206 "Circular-Streams allows you to read streams circularly by wrapping real
4207streams. Once you reach end-of-file of a stream, its file position will be
4208reset to 0 and you're able to read it again.")
4209 (license license:llgpl))))
4210
4211(define-public cl-circular-streams
4212 (sbcl-package->cl-source-package sbcl-circular-streams))
4213
4214(define-public ecl-circular-streams
4215 (sbcl-package->ecl-package sbcl-circular-streams))
4216
4217(define-public sbcl-cl-abnf
4218 ;; There are no releases
4219 (let ((commit "ba1fbb104dedbdaddb1ef93d2e4da711bd96cd70")
4220 (revision "1"))
4221 (package
4222 (name "sbcl-cl-abnf")
4223 (version (git-version "0.0.0" revision commit))
4224 (source
4225 (origin
4226 (method git-fetch)
4227 (uri (git-reference
4228 (url "https://github.com/dimitri/cl-abnf")
4229 (commit commit)))
4230 (file-name (git-file-name "cl-abnf" version))
4231 (sha256
4232 (base32 "0f09nsndxa90acm71zd4qdnp40v705a4sqm04mnv9x76h6dlggmz"))))
4233 (build-system asdf-build-system/sbcl)
4234 (inputs
4235 (list sbcl-cl-ppcre
4236 sbcl-esrap))
4237 (arguments
4238 `(#:asd-systems '("abnf")))
4239 (home-page "https://github.com/dimitri/cl-abnf")
4240 (synopsis "ABNF parser generator for Common Lisp")
4241 (description "This Common Lisp library implements a parser generator for
4242the ABNF grammar format as described in RFC2234. The generated parser is a
4243regular expression scanner provided by the cl-ppcre lib, which means that we
4244can't parse recursive grammar definition. One such definition is the ABNF
4245definition as given by the RFC. Fortunately, as you have this lib, you most
4246probably don't need to generate another parser to handle that particular ABNF
4247grammar.")
4248 (license license:expat))))
4249
4250(define-public cl-abnf
4251 (sbcl-package->cl-source-package sbcl-cl-abnf))
4252
4253(define-public ecl-cl-abnf
4254 (sbcl-package->ecl-package sbcl-cl-abnf))
4255
4256(define-public sbcl-cl-algebraic-data-type
4257 (let ((commit "b2568428193a512d141d6b615772d50ceb5f9bca"))
4258 (package
4259 (name "sbcl-cl-algebraic-data-type")
4260 (version (git-version "1.2.0" "1" commit))
4261 (source
4262 (origin
4263 (method git-fetch)
4264 (uri (git-reference
4265 (url "https://github.com/stylewarning/cl-algebraic-data-type")
4266 (commit commit)))
4267 (file-name (git-file-name "cl-algebraic-data-type" version))
4268 (sha256
4269 (base32 "1lnqxcv8pd5z8n0g5p2l0dbljx9pqiv18hxl0vhsh7ldhkrjv2jx"))))
4270 (build-system asdf-build-system/sbcl)
4271 (inputs
4272 (list sbcl-alexandria
4273 sbcl-global-vars))
4274 (arguments
4275 '(#:tests? #f)) ; No tests.
4276 (home-page "https://github.com/stylewarning/cl-algebraic-data-type")
4277 (synopsis "Common Lisp library for algebraic data types")
4278 (description
4279 "CL-ALGEBRAIC-DATA-TYPE, or ADT, is a library for defining algebraic
4280data types in a similar spirit to Haskell or Standard ML, as well as for
4281operating on them.")
4282 (license license:bsd-3))))
4283
4284(define-public cl-algebraic-data-type
4285 (sbcl-package->cl-source-package sbcl-cl-algebraic-data-type))
4286
4287(define-public ecl-algebraic-data-type
4288 (sbcl-package->ecl-package sbcl-cl-algebraic-data-type))
4289
4290(define-public sbcl-cl-all
4291 (let ((commit "8db710a4a92a25ca7c8f09fe1ad91a48ad6bd0c9")
4292 (revision "1"))
4293 (package
4294 (name "sbcl-cl-all")
4295 (version (git-version "2.0.0" revision commit))
4296 (source
4297 (origin
4298 (method git-fetch)
4299 (uri (git-reference
4300 (url "https://codeberg.org/shinmera/cl-all")
4301 (commit commit)))
4302 (file-name (git-file-name "cl-all" version))
4303 (sha256
4304 (base32 "08jsbnkapijn0v4n5h9g6s87i279xmg4fnbw6jajylrg512n38cx"))))
4305 (build-system asdf-build-system/sbcl)
4306 (outputs '("out" "bin"))
4307 (arguments
4308 (list
4309 #:phases
4310 #~(modify-phases %standard-phases
4311 (add-after 'create-asdf-configuration 'build-program
4312 (lambda* (#:key outputs #:allow-other-keys)
4313 (build-program
4314 (string-append (assoc-ref outputs "bin") "/bin/cl-all")
4315 outputs
4316 #:entry-program '((cl-all:toplevel arguments))
4317 #:compress? #t))))))
4318 (home-page "https://shinmera.com/docs/cl-all")
4319 (synopsis "Evaluate Common Lisp expressions in multiple implementations")
4320 (description "@samp{cl-all} is a library and script for evaluating Common
4321Lisp expressions in multiple implementations.")
4322 (license license:zlib))))
4323
4324(define-public cl-all
4325 (sbcl-package->cl-source-package sbcl-cl-all))
4326
4327(define-public sbcl-cl-ana
4328 (let ((commit "88abde5ad3fa327958720426b89a8457e6943b94")
4329 (revision "3"))
4330 (package
4331 (name "sbcl-cl-ana")
4332 (version (git-version "0.0.0" revision commit))
4333 (source
4334 (origin
4335 (method git-fetch)
4336 (uri (git-reference
4337 (url "https://github.com/ghollisjr/cl-ana")
4338 (commit commit)))
4339 (file-name (git-file-name "cl-ana" version))
4340 (patches (search-patches "cl-ana-pr-49.patch"))
4341 (sha256
4342 (base32 "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9"))))
4343 (build-system asdf-build-system/sbcl)
4344 (native-inputs
4345 (list pkg-config
4346 sbcl-cl-fad))
4347 (inputs
4348 (list gsl
4349 hdf5-parallel-openmpi
4350 libffi
4351 sbcl-antik
4352 sbcl-cffi
4353 sbcl-cl-csv
4354 sbcl-closer-mop
4355 sbcl-external-program
4356 sbcl-gsll
4357 sbcl-iterate
4358 sbcl-alexandria
4359 sbcl-split-sequence))
4360 (propagated-inputs
4361 (list gnuplot)) ;; for gnuplot-interface
4362 (arguments
4363 (list #:phases
4364 #~(modify-phases %standard-phases
4365 (add-after 'unpack 'fix-paths
4366 (lambda* (#:key inputs #:allow-other-keys)
4367 (substitute* "hdf-cffi/src/library.lisp"
4368 (("libhdf5.so")
4369 (search-input-file inputs "/lib/libhdf5.so")))
4370 (substitute* (list "gsl-cffi/gsl-cffi.lisp"
4371 "spline/spline.lisp")
4372 (("libgsl.so")
4373 (search-input-file inputs "/lib/libgsl.so")))))
4374 (add-after 'fix-paths 'fix-newer-hdf5-compatibility
4375 (lambda _
4376 (substitute* (list "hdf-cffi/src/h5-grovel.lisp"
4377 "hdf-cffi/src/h5a-grovel.lisp"
4378 "hdf-cffi/src/h5d-grovel.lisp"
4379 "hdf-cffi/src/h5f-grovel.lisp"
4380 "hdf-cffi/src/h5g-grovel.lisp"
4381 "hdf-cffi/src/h5i-grovel.lisp"
4382 "hdf-cffi/src/h5l-grovel.lisp"
4383 "hdf-cffi/src/h5o-grovel.lisp"
4384 "hdf-cffi/src/h5p-grovel.lisp"
4385 "hdf-cffi/src/h5pl-grovel.lisp"
4386 "hdf-cffi/src/h5r-grovel.lisp"
4387 "hdf-cffi/src/h5s-grovel.lisp"
4388 "hdf-cffi/src/h5t-grovel.lisp"
4389 "hdf-cffi/src/h5z-grovel.lisp")
4390 (("_H5private_H")
4391 "H5private_H")))))))
4392 (synopsis "Common Lisp data analysis library")
4393 (description
4394 "CL-ANA is a data analysis library in Common Lisp providing tabular and
4395binned data analysis along with nonlinear least squares fitting and
4396visualization.")
4397 (home-page "https://github.com/ghollisjr/cl-ana")
4398 (license license:gpl3))))
4399
4400(define-public cl-ana
4401 (sbcl-package->cl-source-package sbcl-cl-ana))
4402
4403(define-public sbcl-cl-annot
4404 (let ((commit "c99e69c15d935eabc671b483349a406e0da9518d")
4405 (revision "1"))
4406 (package
4407 (name "sbcl-cl-annot")
4408 (version (git-version "0.0.0" revision commit))
4409 (source
4410 (origin
4411 (method git-fetch)
4412 (uri (git-reference
4413 (url "https://github.com/m2ym/cl-annot")
4414 (commit commit)))
4415 (file-name (git-file-name name version))
4416 (sha256
4417 (base32 "1wq1gs9jjd5m6iwrv06c2d7i5dvqsfjcljgbspfbc93cg5xahk4n"))))
4418 (build-system asdf-build-system/sbcl)
4419 (inputs
4420 (list sbcl-alexandria))
4421 (home-page "https://github.com/m2ym/cl-annot")
4422 (synopsis "Python-like Annotation Syntax for Common Lisp")
4423 (description
4424 "@code{cl-annot} is an general annotation library for Common Lisp.")
4425 (license license:llgpl))))
4426
4427(define-public cl-annot
4428 (sbcl-package->cl-source-package sbcl-cl-annot))
4429
4430(define-public ecl-cl-annot
4431 (sbcl-package->ecl-package sbcl-cl-annot))
4432
4433(define-public clasp-cl-annot
4434 (sbcl-package->clasp-package sbcl-cl-annot))
4435
4436(define-public sbcl-cl-ansi-text
4437 (let ((commit "8b129d83c7511b54cdd9d4123825a2d06349b25c"))
4438 (package
4439 (name "sbcl-cl-ansi-text")
4440 (version (git-version "2.0.1" "1" commit))
4441 (source
4442 (origin
4443 (method git-fetch)
4444 (uri (git-reference
4445 (url "https://github.com/pnathan/cl-ansi-text")
4446 (commit commit)))
4447 (sha256
4448 (base32
4449 "0nk7ajqfa937w1iy3zy86jjbw8yffm05cqs4wxkgl97v6kmmya14"))
4450 (file-name (git-file-name "cl-ansi-text" version))))
4451 (build-system asdf-build-system/sbcl)
4452 (inputs
4453 (list sbcl-alexandria sbcl-cl-colors2))
4454 (native-inputs
4455 (list sbcl-fiveam))
4456 (synopsis "ANSI terminal color implementation for Common Lisp")
4457 (description
4458 "@command{cl-ansi-text} provides utilities which enable printing to an
4459ANSI terminal with colored text. It provides the macro @command{with-color}
4460which causes everything printed in the body to be displayed with the provided
4461color. It further provides functions which will print the argument with the
4462named color.")
4463 (home-page "https://github.com/pnathan/cl-ansi-text")
4464 (license license:llgpl))))
4465
4466(define-public cl-ansi-text
4467 (sbcl-package->cl-source-package sbcl-cl-ansi-text))
4468
4469(define-public ecl-cl-ansi-text
4470 (sbcl-package->ecl-package sbcl-cl-ansi-text))
4471
4472(define-public sbcl-cl-ascii-table
4473 (let ((commit "d9f5e774a56fad1b416e4dadb8f8a5b0e84094e2")
4474 (revision "1"))
4475 (package
4476 (name "sbcl-cl-ascii-table")
4477 (version (git-version "0.0.0" revision commit))
4478 (source
4479 (origin
4480 (method git-fetch)
4481 (uri (git-reference
4482 (url "https://github.com/telephil/cl-ascii-table")
4483 (commit commit)))
4484 (file-name (git-file-name name version))
4485 (sha256
4486 (base32 "125fdif9sgl7k0ngjhxv0wjas2q27d075025hvj2rx1b1x948z4s"))))
4487 (build-system asdf-build-system/sbcl)
4488 (synopsis "Library to make ascii-art tables")
4489 (description
4490 "This is a Common Lisp library to present tabular data in ascii-art
4491tables.")
4492 (home-page "https://github.com/telephil/cl-ascii-table")
4493 (license license:expat))))
4494
4495(define-public cl-ascii-table
4496 (sbcl-package->cl-source-package sbcl-cl-ascii-table))
4497
4498(define-public ecl-cl-ascii-table
4499 (sbcl-package->ecl-package sbcl-cl-ascii-table))
4500
4501(define-public clasp-cl-ascii-table
4502 (sbcl-package->clasp-package sbcl-cl-ascii-table))
4503
4504(define-public sbcl-cl-async
4505 (let ((commit "a2fa3d65a520d9b0cc6f5e5c294a68776d0c4e8b")
4506 (revision "2"))
4507 (package
4508 (name "sbcl-cl-async")
4509 (version (git-version "0.6.1" revision commit))
4510 (source
4511 (origin
4512 (method git-fetch)
4513 (uri (git-reference
4514 (url "https://github.com/orthecreedence/cl-async")
4515 (commit commit)))
4516 (file-name (git-file-name name version))
4517 (sha256
4518 (base32
4519 "0z1zb8dvi0p5kx2fv1wi092l50jb88xwsbxzmkmny9647jfcq9kv"))))
4520 (build-system asdf-build-system/sbcl)
4521 (inputs
4522 (list sbcl-babel
4523 sbcl-bordeaux-threads
4524 sbcl-cffi
4525 sbcl-cl-libuv
4526 sbcl-cl-ppcre
4527 sbcl-fast-io
4528 openssl
4529 sbcl-static-vectors
4530 sbcl-trivial-features
4531 sbcl-trivial-gray-streams
4532 sbcl-vom))
4533 (arguments
4534 `(#:asd-systems '("cl-async"
4535 "cl-async-repl"
4536 "cl-async-ssl")
4537 #:phases
4538 (modify-phases %standard-phases
4539 (add-after 'unpack 'fix-paths
4540 (lambda* (#:key inputs #:allow-other-keys)
4541 (substitute* "src/ssl/package.lisp"
4542 (("libcrypto\\.so")
4543 (search-input-file inputs "/lib/libcrypto.so"))
4544 (("libssl\\.so")
4545 (search-input-file inputs "/lib/libssl.so"))))))))
4546 (synopsis "Asynchronous operations for Common Lisp")
4547 (description
4548 "Cl-async is a library for general purpose, non-blocking programming in
4549Common Lisp. It uses the libuv library as backend.")
4550 (home-page "https://orthecreedence.github.io/cl-async/")
4551 (license license:expat))))
4552
4553(define-public cl-async
4554 (sbcl-package->cl-source-package sbcl-cl-async))
4555
4556(define-public ecl-cl-async
4557 (sbcl-package->ecl-package sbcl-cl-async))
4558
4559(define-public sbcl-cl-async-future
4560 (let ((commit "ee36c22a69a9516407458d2ed8b475f1fc473959")
4561 (revision "1"))
4562 (package
4563 (name "sbcl-cl-async-future")
4564 (version (git-version "0.4.4.1" revision commit))
4565 (source
4566 (origin
4567 (method git-fetch)
4568 (uri (git-reference
4569 (url "https://github.com/orthecreedence/cl-async-future")
4570 (commit commit)))
4571 (file-name (git-file-name name version))
4572 (sha256
4573 (base32
4574 "0z0sc7qlzzxk99f4l26zp6rai9kv0kj0f599sxai5s44p17zbbvh"))))
4575 (build-system asdf-build-system/sbcl)
4576 (inputs
4577 (list sbcl-blackbird))
4578 (native-inputs
4579 (list sbcl-cl-async sbcl-eos))
4580 (synopsis "Futures implementation for Common Lisp")
4581 (description
4582 "This is futures implementation for Common Lisp. It plugs in nicely
4583to cl-async.")
4584 (home-page "https://orthecreedence.github.io/cl-async/future")
4585 (license license:expat))))
4586
4587(define-public cl-async-future
4588 (sbcl-package->cl-source-package sbcl-cl-async-future))
4589
4590(define-public ecl-cl-async-future
4591 (sbcl-package->ecl-package sbcl-cl-async-future))
4592
4593(define libasyncprocess
4594 (let ((commit "3b16b91d417530dac03559980fb5703206e20c55")
4595 (revision "2"))
4596 (package
4597 (name "libasyncprocess")
4598 (version (git-version "0.0.1" revision commit))
4599 (source
4600 (origin
4601 (method git-fetch)
4602 (uri (git-reference
4603 (url "https://github.com/lem-project/async-process")
4604 (commit commit)))
4605 (file-name (git-file-name name version))
4606 (sha256
4607 (base32 "0ykbkmcf46rgiphsb8c03xf9l4l23xn1rppm51mviz7brs0zx7g4"))
4608 (modules '((guix build utils)))
4609 (snippet
4610 ;; Delete precompiled artifacts.
4611 `(begin
4612 (for-each delete-file-recursively
4613 (list "static"
4614 "static_old0001-819cbf6"))))))
4615 (build-system gnu-build-system)
4616 (arguments
4617 (list
4618 #:phases
4619 #~(modify-phases %standard-phases
4620 (replace 'bootstrap
4621 (lambda _
4622 (invoke "libtoolize")
4623 (invoke "aclocal")
4624 (invoke "autoheader")
4625 (invoke "automake" "-a")
4626 (invoke "autoconf"))))))
4627 (native-inputs (list autoconf automake libtool))
4628 (home-page "https://github.com/lem-project/async-process")
4629 (synopsis "C library component for @code{cl-async-process}")
4630 (description
4631 "This package provides the C library component for @code{cl-async-process}.")
4632 (license license:expat))))
4633
4634(define-public sbcl-async-process
4635 (package
4636 (inherit libasyncprocess)
4637 (name "sbcl-async-process")
4638 (build-system asdf-build-system/sbcl)
4639 (arguments
4640 (list
4641 #:phases
4642 #~(modify-phases %standard-phases
4643 (add-after 'unpack 'fix-paths
4644 (lambda* (#:key inputs #:allow-other-keys)
4645 (substitute* "src/async-process.lisp"
4646 (("libasyncprocess\\.so")
4647 (search-input-file inputs
4648 "/lib/async-process/libasyncprocess.so"))))))))
4649 (inputs
4650 (modify-inputs inputs
4651 (prepend libasyncprocess sbcl-cffi)))
4652 (home-page "https://github.com/lem-project/async-process")
4653 (synopsis "Asynchronous process execution for Common Lisp")
4654 (description "This library provides an asynchronous process
4655execution mechanism for Common Lisp.")))
4656
4657(define-public cl-async-process
4658 (sbcl-package->cl-source-package sbcl-async-process))
4659
4660(define-public ecl-async-process
4661 (sbcl-package->ecl-package sbcl-async-process))
4662
4663(define-public sbcl-cl-autowrap
4664 (let ((revision "3")
4665 (commit "4bba9e37b59cd191dea150a89aef7245a40b1c9d"))
4666 ;; no tagged branches
4667 (package
4668 (name "sbcl-cl-autowrap")
4669 (version (git-version "1.0" revision commit))
4670 (source
4671 (origin
4672 (method git-fetch)
4673 (uri (git-reference
4674 (url "https://github.com/rpav/cl-autowrap")
4675 (commit commit)))
4676 (file-name (git-file-name "cl-autowrap" version))
4677 (sha256
4678 (base32 "1sfvhyrwm9dhxi0y42xp7mx8mvs6lmq3bzxdx34frxni5srcgly0"))))
4679 (build-system asdf-build-system/sbcl)
4680 (inputs
4681 (list libffi
4682 sbcl-alexandria
4683 sbcl-cffi
4684 sbcl-cl-json
4685 sbcl-cl-ppcre
4686 sbcl-defpackage-plus
4687 sbcl-trivial-features))
4688 (native-inputs
4689 (list c2ffi))
4690 (arguments
4691 (list #:asd-systems ''("cl-autowrap" "cl-plus-c" "cl-autowrap/libffi")
4692 #:phases
4693 #~(modify-phases %standard-phases
4694 (add-after 'unpack 'fix-paths
4695 (lambda* (#:key inputs #:allow-other-keys)
4696 (substitute* "autowrap-libffi/library.lisp"
4697 (("libffi.so")
4698 (search-input-file inputs "lib/libffi.so")))
4699 (substitute* "autowrap-libffi/autowrap.lisp"
4700 (("/usr/lib64/libffi-3.2.1/include")
4701 (search-input-directory inputs "include"))))))))
4702 (home-page "https://github.com/rpav/cl-autowrap")
4703 (synopsis "FFI wrapper generator for Common Lisp")
4704 (description "This is a c2ffi-based wrapper generator for Common Lisp.")
4705 (license license:bsd-2))))
4706
4707(define-public cl-autowrap
4708 (sbcl-package->cl-source-package sbcl-cl-autowrap))
4709
4710(define-public ecl-cl-autowrap
4711 (sbcl-package->ecl-package sbcl-cl-autowrap))
4712
4713(define-public sbcl-cl-base16
4714 (let ((commit "ae4b7f416c0c91f6323e901be912c0f7378fe3da")
4715 (revision "0"))
4716 (package
4717 (name "sbcl-cl-base16")
4718 (version (git-version "0.0" revision commit))
4719 (source
4720 (origin
4721 (method git-fetch)
4722 (uri (git-reference
4723 (url "https://github.com/tpine/cl-base16")
4724 (commit commit)))
4725 (file-name (git-file-name name version))
4726 (sha256
4727 (base32 "0m7ndmk4xhizn3q3ywjvw8sg4pfgp6lrd0wac5d1bf7wbw6afh5q"))))
4728 (build-system asdf-build-system/sbcl)
4729 (arguments
4730 (list
4731 #:phases
4732 #~(modify-phases %standard-phases
4733 (add-after 'unpack 'patch-git-executable
4734 (lambda* (#:key inputs #:allow-other-keys)
4735 (substitute* "builder.lisp"
4736 (("\"git")
4737 (string-append "\"" (search-input-file inputs
4738 "/bin/git")))))))))
4739 (inputs
4740 (list git
4741 sbcl-cl-yaml
4742 sbcl-cl-mustache
4743 sbcl-cl-slug
4744 sbcl-trivial-shell))
4745 (synopsis "Common Lisp base 16 implementation")
4746 (description
4747 "This package provides an implementation of a base 16 builder for Common Lisp.")
4748 (home-page "https://github.com/tpine/cl-base16")
4749 (license license:gpl3+))))
4750
4751(define-public cl-base16
4752 (sbcl-package->cl-source-package sbcl-cl-base16))
4753
4754(define-public ecl-cl-base16
4755 (sbcl-package->ecl-package sbcl-cl-base16))
4756
4757(define-public sbcl-cl-base32
4758 (let ((commit "8cdee06fab397f7b0a19583b57e7f0c98405be85")
4759 (revision "1"))
4760 (package
4761 (name "sbcl-cl-base32")
4762 (version (git-version "0.1" revision commit))
4763 (source
4764 (origin
4765 (method git-fetch)
4766 (uri (git-reference
4767 (url "https://github.com/hargettp/cl-base32")
4768 (commit commit)))
4769 (file-name (git-file-name name version))
4770 (sha256
4771 (base32 "17jrng8jb05d64ggyd11hp308c2fl5drvf9g175blgrkkl8l4mf8"))))
4772 (build-system asdf-build-system/sbcl)
4773 (native-inputs
4774 (list sbcl-lisp-unit))
4775 (synopsis "Common Lisp library for base32 encoding and decoding")
4776 (description
4777 "This package provides functions for base32 encoding and decoding as
4778defined in RFC4648.")
4779 (home-page "https://github.com/hargettp/cl-base32")
4780 (license license:expat))))
4781
4782(define-public cl-base32
4783 (sbcl-package->cl-source-package sbcl-cl-base32))
4784
4785(define-public ecl-cl-base32
4786 (sbcl-package->ecl-package sbcl-cl-base32))
4787
4788(define-public sbcl-cl-base58
4789 (let ((commit "f446835b4104896e0eed6a61d2ceb4ad22f589d8")
4790 (revision "1"))
4791 (package
4792 (name "sbcl-cl-base58")
4793 (version (git-version "0.1" revision commit))
4794 (source
4795 (origin
4796 (method git-fetch)
4797 (uri (git-reference
4798 (url "https://github.com/eudoxia0/cl-base58/")
4799 (commit commit)))
4800 (file-name (git-file-name "cl-base58" version))
4801 (sha256
4802 (base32 "01wiiyz1jzxx3zhxi2hpq5n8hv28g1mn0adk793vwjzh4v5bi5zz"))))
4803 (build-system asdf-build-system/sbcl)
4804 (arguments
4805 '(#:asd-systems '("cl-base58-test" "cl-base58")
4806 #:phases
4807 (modify-phases %standard-phases
4808 (add-after 'unpack 'fix-tests
4809 (lambda _
4810 (substitute* "cl-base58-test.asd"
4811 (("cl-test-more")
4812 "prove"))
4813 #t)))))
4814 (native-inputs
4815 (list sbcl-prove))
4816 (home-page "https://github.com/eudoxia0/cl-base58")
4817 (synopsis "Implementation of base58 for Common Lisp")
4818 (description
4819 "This library implements the @code{base58} encoding algorithm. It's
4820basically @code{base64} but with a smaller alphabet (58, as in the name) that
4821doesn't include similar looking characters, among other things. See
4822@url{https://github.com/bitcoin/bitcoin/blob/master/src/base58.h} for a full
4823reference.")
4824 (license license:expat))))
4825
4826(define-public cl-base58
4827 (sbcl-package->cl-source-package sbcl-cl-base58))
4828
4829(define-public ecl-cl-base58
4830 (sbcl-package->ecl-package sbcl-cl-base58))
4831
4832(define-public sbcl-cl-base64
4833 (let ((commit "577683b18fd880b82274d99fc96a18a710e3987a"))
4834 (package
4835 (name "sbcl-cl-base64")
4836 (version (git-version "3.3.4" "1" commit))
4837 (source
4838 (origin
4839 (method git-fetch)
4840 (uri (git-reference
4841 (url "http://git.kpe.io/cl-base64.git/")
4842 (commit commit)))
4843 (file-name (git-file-name name version))
4844 (sha256
4845 (base32 "12jj54h0fs6n237cvnp8v6hn0imfksammq22ys6pi0gwz2w47rbj"))
4846 (modules '((guix build utils)))
4847 (snippet
4848 ;; The useless bundled debian folder drags `make' into the closure.
4849 `(begin
4850 (delete-file-recursively "debian")
4851 #t))))
4852 (build-system asdf-build-system/sbcl)
4853 (native-inputs ; For tests.
4854 (list sbcl-ptester sbcl-kmrcl))
4855 (home-page "http://files.kpe.io/cl-base64/")
4856 (synopsis
4857 "Common Lisp package to encode and decode base64 with URI support")
4858 (description
4859 "This package provides highly optimized base64 encoding and decoding.
4860Besides conversion to and from strings, integer conversions are supported.
4861Encoding with Uniform Resource Identifiers is supported by using a modified
4862encoding table that uses only URI-compatible characters.")
4863 (license license:bsd-3))))
4864
4865(define-public cl-base64
4866 (sbcl-package->cl-source-package sbcl-cl-base64))
4867
4868(define-public ecl-cl-base64
4869 (sbcl-package->ecl-package sbcl-cl-base64))
4870
4871(define-public sbcl-cl-bnf
4872 (let ((commit "ce009e3d60697bc376116e988f29ec0cbb1e9c84")
4873 (revision "0"))
4874 (package
4875 (name "sbcl-cl-bnf")
4876 (version (git-version "0.0.0" revision commit))
4877 (source
4878 (origin
4879 (method git-fetch)
4880 (uri (git-reference
4881 (url "https://github.com/diasbruno/cl-bnf")
4882 (commit commit)))
4883 (file-name (git-file-name "cl-bnf" version))
4884 (sha256
4885 (base32 "0aa7hnkj71f37lxzlhsppwcmk3yv42hclq08c4jrdnv8jmdb8r0l"))))
4886 (build-system asdf-build-system/sbcl)
4887 (inputs (list sbcl-flexi-streams sbcl-utf8-input-stream))
4888 (home-page "https://github.com/diasbruno/cl-bnf")
4889 (synopsis "BNF parser in Common Lisp")
4890 (description "This package provides a @acronym{BNF, Backus–Naur form}
4891parser in Common Lisp.")
4892 (license (list license:expat)))))
4893
4894(define-public cl-bnf
4895 (sbcl-package->cl-source-package sbcl-cl-bnf))
4896
4897(define-public ecl-cl-bnf
4898 (sbcl-package->ecl-package sbcl-cl-bnf))
4899
4900(define-public sbcl-cl-cairo2
4901 (let ((commit "41ae45aac86553c46f4bb460f80e1fb620930f5b")
4902 (revision "1"))
4903 (package
4904 (name "sbcl-cl-cairo2")
4905 (version (git-version "0.6" revision commit))
4906 (source
4907 (origin
4908 (method git-fetch)
4909 (uri (git-reference
4910 (url "https://github.com/rpav/cl-cairo2")
4911 (commit commit)))
4912 (file-name (git-file-name "cl-cairo2" version))
4913 (sha256
4914 (base32 "0cpfgyxw6pz7y033dlya8c4vjmkpw127zdq3a9xclp9q8jbdlb7q"))))
4915 (build-system asdf-build-system/sbcl)
4916 (arguments
4917 `(#:asd-systems '(;; "cl-cairo2-gtk2" ; cl-gtk2 is not packed and quite old.
4918 ;; "cl-cairo2-quartz" ; Failing when enabled.
4919 ;; "cl-cairo2-xlib" ; cl-xcb-xlib is not packed yet and quite old.
4920 ;; "cl-cairo2-xcb"
4921 "cl-cairo2")
4922 #:phases
4923 (modify-phases %standard-phases
4924 (add-after 'unpack 'fix-paths
4925 (lambda* (#:key inputs #:allow-other-keys)
4926 (substitute* "src/load-libraries.lisp"
4927 (("libcairo.so.2")
4928 (search-input-file inputs "/lib/libcairo.so.2"))))))))
4929 (inputs
4930 (list cairo
4931 sbcl-cffi
4932 sbcl-cl-colors
4933 sbcl-cl-freetype2
4934 sbcl-cl-utilities
4935 sbcl-metabang-bind
4936 sbcl-trivial-features
4937 sbcl-trivial-garbage))
4938 (home-page "https://github.com/rpav/cl-cairo2")
4939 (synopsis "Cairo bindings for Common Lisp")
4940 (description
4941 "This package provides CFFI bindings for Common Lisp to the Cairo
4942C library.")
4943 (license license:boost1.0))))
4944
4945(define-public cl-cairo2
4946 (sbcl-package->cl-source-package sbcl-cl-cairo2))
4947
4948(define-public ecl-cl-cairo2
4949 (sbcl-package->ecl-package sbcl-cl-cairo2))
4950
4951(define-public sbcl-cl-cffi-gtk
4952 (let ((commit "1700fe672c65455c1fc33061ec92a3df84287ec7")
4953 (revision "3"))
4954 (package
4955 (name "sbcl-cl-cffi-gtk")
4956 (version (git-version "3.8.8" revision commit))
4957 (source
4958 (origin
4959 (method git-fetch)
4960 (uri (git-reference
4961 (url "https://github.com/sharplispers/cl-cffi-gtk/")
4962 (commit commit)))
4963 (file-name (git-file-name "cl-cffi-gtk" version))
4964 (sha256
4965 (base32 "1cn2f6b62axjzdzfv971218ably32dvqfdy499li25vjd8nb2qm3"))))
4966 (build-system asdf-build-system/sbcl)
4967 (native-inputs
4968 (list sbcl-fiveam))
4969 (inputs
4970 (list cairo
4971 gdk-pixbuf
4972 glib
4973 gtk+
4974 pango
4975 sbcl-bordeaux-threads
4976 sbcl-cffi
4977 sbcl-closer-mop
4978 sbcl-iterate
4979 sbcl-trivial-features
4980 sbcl-trivial-garbage))
4981 (arguments
4982 (list
4983 ;; TODO: Tests fail with memory fault.
4984 ;; See https://github.com/Ferada/cl-cffi-gtk/issues/24.
4985 #:tests? #f
4986 #:phases
4987 #~(modify-phases %standard-phases
4988 (add-after 'unpack 'fix-paths
4989 (lambda* (#:key inputs #:allow-other-keys)
4990 (substitute* "glib/glib.init.lisp"
4991 (("libglib-[0-9.]*\\.so" all)
4992 (search-input-file inputs (string-append "/lib/" all)))
4993 (("libgthread-[0-9.]*\\.so" all)
4994 (search-input-file inputs (string-append "/lib/" all))))
4995 (substitute* "gobject/gobject.init.lisp"
4996 (("libgobject-[0-9.]*\\.so" all)
4997 (search-input-file inputs (string-append "/lib/" all))))
4998 (substitute* "gio/gio.init.lisp"
4999 (("libgio-[0-9.]*\\.so" all)
5000 (search-input-file inputs (string-append "/lib/" all))))
5001 (substitute* "cairo/cairo.init.lisp"
5002 (("libcairo\\.so" all)
5003 (search-input-file inputs (string-append "/lib/" all))))
5004 (substitute* "pango/pango.init.lisp"
5005 (("libpango-[0-9.]*\\.so" all)
5006 (search-input-file inputs (string-append "/lib/" all)))
5007 (("libpangocairo-[0-9.]*\\.so" all)
5008 (search-input-file inputs (string-append "/lib/" all))))
5009 (substitute* "gdk-pixbuf/gdk-pixbuf.init.lisp"
5010 (("libgdk_pixbuf-[0-9.]*\\.so" all)
5011 (search-input-file inputs (string-append "/lib/" all))))
5012 (substitute* "gdk/gdk.init.lisp"
5013 (("libgdk-[0-9]\\.so" all)
5014 (search-input-file inputs (string-append "/lib/" all))))
5015 (substitute* "gdk/gdk.package.lisp"
5016 (("libgtk-[0-9]\\.so" all)
5017 (search-input-file inputs (string-append "/lib/" all)))))))))
5018 (home-page "https://github.com/sharplispers/cl-cffi-gtk/")
5019 (synopsis "Common Lisp binding for GTK+3")
5020 (description
5021 "@command{cl-cffi-gtk} is a Lisp binding to GTK+ 3 (GIMP Toolkit) which
5022is a library for creating graphical user interfaces.")
5023 (license license:lgpl3))))
5024
5025(define-public cl-cffi-gtk
5026 (sbcl-package->cl-source-package sbcl-cl-cffi-gtk))
5027
5028(define-public ecl-cl-cffi-gtk
5029 (sbcl-package->ecl-package sbcl-cl-cffi-gtk))
5030
5031(define-public sbcl-cl-change-case
5032 (package
5033 (name "sbcl-cl-change-case")
5034 (version "1.0")
5035 (home-page "https://github.com/rudolfochrist/cl-change-case")
5036 (source
5037 (origin
5038 (method git-fetch)
5039 (uri (git-reference
5040 (url home-page)
5041 (commit version)))
5042 (file-name (git-file-name "cl-change-case" version))
5043 (sha256
5044 (base32 "1zm34q3n3qaz06y6x3j73mnh67bw2k5xdpbflj5hhxqwakyfv50m"))))
5045 (build-system asdf-build-system/sbcl)
5046 (inputs
5047 (list sbcl-cl-ppcre sbcl-cl-ppcre-unicode))
5048 (native-inputs
5049 (list sbcl-fiveam))
5050 (synopsis
5051 "Convert Common Lisp strings between camelCase, PascalCase and more")
5052 (description
5053 "@code{cl-change-case} is a library to convert strings between
5054camelCase, PascalCase, snake_case, param-case, CONSTANT_CASE and more.")
5055 (license license:llgpl)))
5056
5057(define-public cl-change-case
5058 (sbcl-package->cl-source-package sbcl-cl-change-case))
5059
5060(define-public ecl-cl-change-case
5061 (sbcl-package->ecl-package sbcl-cl-change-case))
5062
5063(define-public sbcl-cl-charms
5064 (let ((commit "64aba59d89f85bc5c9402e445873965338a66a02")
5065 (revision "1"))
5066 (package
5067 (name "sbcl-cl-charms")
5068 (version (git-version "0.2.0" revision commit))
5069 (source
5070 (origin
5071 (method git-fetch)
5072 (uri (git-reference
5073 (url "https://github.com/HiTECNOLOGYs/cl-charms")
5074 (commit commit)))
5075 (file-name (git-file-name "cl-charms" version))
5076 (sha256
5077 (base32 "1jczaypa9dhxr34yyhsxb6lrdnircjx8am4iqkc3shfpjn32q323"))))
5078 (build-system asdf-build-system/sbcl)
5079 (inputs
5080 (list sbcl-alexandria
5081 sbcl-cffi
5082 ncurses))
5083 (arguments
5084 '(#:phases
5085 (modify-phases %standard-phases
5086 (add-after 'unpack 'fix-paths
5087 (lambda* (#:key inputs #:allow-other-keys)
5088 (substitute* "src/low-level/curses-bindings.lisp"
5089 (("libncursesw.so")
5090 (string-append (assoc-ref inputs "ncurses")
5091 "/lib/libncursesw.so"))))))))
5092 (home-page "https://github.com/HiTECNOLOGYs/cl-charms")
5093 (synopsis "Interface to libcurses in Common Lisp")
5094 (description
5095 "@code{cl-charms} is an interface to libcurses in Common Lisp. It
5096provides both a raw, low-level interface to libcurses via CFFI, and a more
5097higher-level lispier interface.")
5098 (license license:expat))))
5099
5100(define-public cl-charms
5101 (sbcl-package->cl-source-package sbcl-cl-charms))
5102
5103(define-public ecl-cl-charms
5104 (sbcl-package->ecl-package sbcl-cl-charms))
5105
5106(define-public sbcl-cl-collider
5107 (let ((commit "7e0ebb0756dda0a34401abafcd5ee22e043ce4c4")
5108 (revision "1"))
5109 (package
5110 (name "sbcl-cl-collider")
5111 (version (git-version "2025-08-18" revision commit))
5112 (source
5113 (origin
5114 (method git-fetch)
5115 (uri (git-reference
5116 (url "https://github.com/byulparan/cl-collider")
5117 (commit commit)))
5118 (file-name (git-file-name "cl-collider" version))
5119 (sha256
5120 (base32 "19i8fn7l5gm9k0ypb9kpn919hv86swdq2426vg4vb2r13h49b6vm"))))
5121 (build-system asdf-build-system/sbcl)
5122 (arguments
5123 (list #:phases
5124 #~(modify-phases %standard-phases
5125 (add-after 'unpack 'patch-executables-and-paths
5126 (lambda* (#:key inputs #:allow-other-keys)
5127 (substitute* "server.lisp"
5128 (("/usr/local/lib/SuperCollider/plugins")
5129 (search-input-directory
5130 inputs "/lib/SuperCollider/plugins"))
5131 (("which scsynth")
5132 (string-append
5133 "which "
5134 (search-input-file inputs "/bin/scsynth")))
5135 (("jack_connect")
5136 (search-input-file inputs "/bin/jack_connect"))))))))
5137 (inputs
5138 (list jack-1
5139 supercollider
5140 sbcl-alexandria
5141 sbcl-bordeaux-threads
5142 sbcl-cffi
5143 sbcl-cl-ppcre
5144 sbcl-flexi-streams
5145 sbcl-ieee-floats ; sc-osc dependencies.
5146 sbcl-named-readtables
5147 sbcl-osc
5148 sbcl-pileup
5149 sbcl-simple-inferiors ; For ecl.
5150 sbcl-split-sequence
5151 sbcl-usocket))
5152 (synopsis "SuperCollider client for CommonLisp")
5153 (description "This package provides a SuperCollider client for
5154Common Lisp.")
5155 (home-page "https://github.com/byulparan/cl-collider/")
5156 (license license:public-domain))))
5157
5158(define-public cl-collider
5159 (sbcl-package->cl-source-package sbcl-cl-collider))
5160
5161(define-public ecl-cl-collider
5162 (sbcl-package->ecl-package sbcl-cl-collider))
5163
5164(define-public sbcl-cl-colors
5165 (let ((commit "827410584553f5c717eec6182343b7605f707f75"))
5166 (package
5167 (name "sbcl-cl-colors")
5168 (version (git-version "0.0.0" "1" commit))
5169 (source
5170 (origin
5171 (method git-fetch)
5172 (uri (git-reference
5173 (url "https://github.com/tpapp/cl-colors")
5174 (commit commit)))
5175 (sha256
5176 (base32
5177 "0l446lday4hybsm9bq3jli97fvv8jb1d33abg79vbylpwjmf3y9a"))
5178 (file-name (git-file-name "cl-colors" version))))
5179 (build-system asdf-build-system/sbcl)
5180 (inputs
5181 (list sbcl-alexandria sbcl-let-plus))
5182 (synopsis "Simple color library for Common Lisp")
5183 (description
5184 "This is a very simple color library for Common Lisp, providing
5185
5186@itemize
5187@item Types for representing colors in HSV and RGB spaces.
5188@item Simple conversion functions between the above types (and also
5189hexadecimal representation for RGB).
5190@item Some predefined colors (currently X11 color names – of course the
5191library does not depend on X11).Because color in your terminal is nice.
5192@end itemize
5193
5194This library is no longer supported by its author.")
5195 (home-page "https://github.com/tpapp/cl-colors")
5196 (license license:boost1.0))))
5197
5198(define-public cl-colors
5199 (sbcl-package->cl-source-package sbcl-cl-colors))
5200
5201(define-public ecl-cl-colors
5202 (sbcl-package->ecl-package sbcl-cl-colors))
5203
5204(define-public sbcl-cl-colors-ng
5205 (package
5206 (name "sbcl-cl-colors-ng")
5207 (version "0.0.1")
5208 (source
5209 (origin
5210 (method git-fetch)
5211 (uri (git-reference
5212 (url "https://codeberg.org/cage/cl-colors-ng.git")
5213 (commit "310e6495e2658d33a7500455fd461074748ef805")))
5214 (file-name (git-file-name name version))
5215 (sha256
5216 (base32
5217 "0lnrawzygxzb9yp1bsjwwlyyp0axms5f5rv0aa4nlhxh5syv5fg8"))))
5218 (build-system asdf-build-system/sbcl)
5219 (native-inputs
5220 (list sbcl-clunit2))
5221 (inputs
5222 (list sbcl-alexandria
5223 sbcl-cl-ppcre
5224 sbcl-parse-number))
5225 (synopsis "Simple color library for Common Lisp")
5226 (description "Simple color library for Common Lisp.")
5227 (license license:boost1.0)
5228 (home-page "https://codeberg.org/cage/cl-colors-ng.git")))
5229
5230(define-public ecl-cl-colors-ng
5231 (sbcl-package->ecl-package sbcl-cl-colors-ng))
5232
5233(define-public cl-colors-ng
5234 (sbcl-package->cl-source-package sbcl-cl-colors-ng))
5235
5236(define-public sbcl-cl-colors2
5237 (package
5238 (name "sbcl-cl-colors2")
5239 (version "0.6.1")
5240 (source
5241 (origin
5242 (method git-fetch)
5243 (uri (git-reference
5244 (url "https://codeberg.org/cage/cl-colors2")
5245 (commit (string-append "v" version))))
5246 (file-name (git-file-name "cl-colors2" version))
5247 (sha256
5248 (base32 "053bidgbqziv5visdq09gy8zf30cvqh1w06l23yygn1yrg7m7302"))))
5249 (build-system asdf-build-system/sbcl)
5250 (native-inputs
5251 (list sbcl-clunit2))
5252 (inputs
5253 (list sbcl-alexandria sbcl-cl-ppcre sbcl-parse-number))
5254 (synopsis "Color library for Common Lisp")
5255 (description
5256 "This is a very simple color library for Common Lisp, providing:
5257
5258@itemize
5259@item Types for representing colors in HSV, HSL, and RGB spaces.
5260@item Simple conversion functions between the above types.
5261@item Function printing colors to HEX, RGB, RGBA, and HSL.
5262@item Predefined colors from X11, SVG, and GDK.
5263@end itemize\n")
5264 (home-page "https://codeberg.org/cage/cl-colors2")
5265 (license license:boost1.0)))
5266
5267(define-public cl-colors2
5268 (sbcl-package->cl-source-package sbcl-cl-colors2))
5269
5270(define-public ecl-cl-colors2
5271 (sbcl-package->ecl-package sbcl-cl-colors2))
5272
5273(define-public clasp-cl-colors2
5274 (sbcl-package->clasp-package sbcl-cl-colors2))
5275
5276(define-public sbcl-cl-conspack
5277 (let ((commit "6e529d7b3a7223ef1bb5c7b9f18384ba67b50b09")
5278 (revision "2"))
5279 (package
5280 (name "sbcl-cl-conspack")
5281 (version (git-version "0.0.0" revision commit))
5282 (source
5283 (origin
5284 (method git-fetch)
5285 (uri (git-reference
5286 (url "https://github.com/conspack/cl-conspack")
5287 (commit commit)))
5288 (file-name (git-file-name "cl-conspack" version))
5289 (sha256
5290 (base32 "0y5wp5c89ph44k2xjppy1c1jf2ac3q9yrk22da2rkwnbxn0h1a8d"))))
5291 (build-system asdf-build-system/sbcl)
5292 (arguments
5293 '(#:asd-test-systems '("cl-conspack-test")))
5294 (native-inputs
5295 (list sbcl-fiveam))
5296 (inputs
5297 (list sbcl-alexandria
5298 sbcl-closer-mop
5299 sbcl-fast-io
5300 sbcl-ieee-floats
5301 sbcl-trivial-garbage
5302 sbcl-trivial-utf-8))
5303 (home-page "https://github.com/conspack/cl-conspack")
5304 (synopsis "CONSPACK implementation for Common Lisp")
5305 (description
5306 "This package provides a CONSPACK implementation for Common Lisp.")
5307 (license license:bsd-3))))
5308
5309(define-public cl-conspack
5310 (sbcl-package->cl-source-package sbcl-cl-conspack))
5311
5312(define-public ecl-cl-conspack
5313 (sbcl-package->ecl-package sbcl-cl-conspack))
5314
5315(define-public sbcl-cl-cont
5316 (let ((commit "fc1fa7e6eb64894fdca13e688e6015fad5290d2a")
5317 (revision "1"))
5318 (package
5319 (name "sbcl-cl-cont")
5320 (version (git-version "0.3.8" revision commit))
5321 (source
5322 (origin
5323 (method git-fetch)
5324 (uri (git-reference
5325 (url "https://gitlab.common-lisp.net/cl-cont/cl-cont.git")
5326 (commit commit)))
5327 (file-name (git-file-name name version))
5328 (sha256
5329 (base32
5330 "1zf8zvb0i6jm3hhfks4w74hibm6avgc6f9s1qwgjrn2bcik8lrvz"))))
5331 (build-system asdf-build-system/sbcl)
5332 (inputs
5333 (list sbcl-alexandria sbcl-closer-mop))
5334 (native-inputs
5335 (list sbcl-rt))
5336 (synopsis "Delimited continuations for Common Lisp")
5337 (description
5338 "This is a library that implements delimited continuations by
5339transforming Common Lisp code to continuation passing style.")
5340 (home-page "https://common-lisp.net/project/cl-cont/")
5341 (license license:llgpl))))
5342
5343(define-public cl-cont
5344 (sbcl-package->cl-source-package sbcl-cl-cont))
5345
5346(define-public ecl-cl-cont
5347 (sbcl-package->ecl-package sbcl-cl-cont))
5348
5349(define-public clasp-cl-cont
5350 (sbcl-package->clasp-package sbcl-cl-cont))
5351
5352(define-public sbcl-cl-containers
5353 (let ((commit "781ebfe0888bae46f07c018f7d473898b1bd4f5f")
5354 (revision "4"))
5355 (package
5356 (name "sbcl-cl-containers")
5357 (version (git-version "0.12.1" revision commit))
5358 (source
5359 (origin
5360 (method git-fetch)
5361 (uri (git-reference
5362 (url "https://github.com/hraban/cl-containers")
5363 (commit commit)))
5364 (file-name (git-file-name "cl-containers" version))
5365 (sha256
5366 (base32
5367 "1nrql8s1j123v5gscy99lxvhlzp0ijig9x94w30v3lwfa58hf90l"))))
5368 (build-system asdf-build-system/sbcl)
5369 (native-inputs
5370 (list sbcl-lift))
5371 (inputs
5372 (list sbcl-asdf-system-connections
5373 sbcl-metatilities-base
5374 sbcl-moptilities))
5375 (arguments
5376 '(#:asd-systems '("cl-containers"
5377 "cl-containers/with-moptilities"
5378 "cl-containers/with-utilities")
5379 #:phases
5380 (modify-phases %standard-phases
5381 (add-after 'unpack 'relax-version-checks
5382 (lambda _
5383 (substitute* "cl-containers.asd"
5384 (("\\(:version \"metatilities-base\" \"0\\.6\\.6\"\\)")
5385 "\"metatilities-base\""))
5386 (substitute* "cl-containers-test.asd"
5387 (("\\(:version \"lift\" \"1\\.7\\.0\"\\)")
5388 "\"lift\""))
5389 #t)))))
5390 (synopsis "Container library for Common Lisp")
5391 (description
5392 "Common Lisp ships with a set of powerful built in data structures
5393including the venerable list, full featured arrays, and hash-tables.
5394CL-containers enhances and builds on these structures by adding containers
5395that are not available in native Lisp (for example: binary search trees,
5396red-black trees, sparse arrays and so on), and by providing a standard
5397interface so that they are simpler to use and so that changing design
5398decisions becomes significantly easier.")
5399 (home-page "https://common-lisp.net/project/cl-containers/")
5400 (license license:expat))))
5401
5402(define-public cl-containers
5403 (sbcl-package->cl-source-package sbcl-cl-containers))
5404
5405(define-public ecl-cl-containers
5406 (sbcl-package->ecl-package sbcl-cl-containers))
5407
5408(define-public sbcl-cl-cookie
5409 (let ((commit "cea55aed8b9ad25fafd13defbcb9fe8f41b29546")
5410 (revision "1"))
5411 (package
5412 (name "sbcl-cl-cookie")
5413 (build-system asdf-build-system/sbcl)
5414 (version (git-version "0.9.10" revision commit))
5415 (home-page "https://github.com/fukamachi/cl-cookie")
5416 (source
5417 (origin
5418 (method git-fetch)
5419 (uri (git-reference
5420 (url home-page)
5421 (commit commit)))
5422 (file-name (git-file-name name version))
5423 (sha256
5424 (base32
5425 "090g7z75h98zvc1ldx0vh4jn4086dhjm2w30jcwkq553qmyxwl8h"))))
5426 (inputs
5427 (list sbcl-proc-parse
5428 sbcl-alexandria
5429 sbcl-quri
5430 sbcl-cl-ppcre
5431 sbcl-local-time))
5432 (native-inputs
5433 (list sbcl-prove))
5434 (arguments
5435 '(#:asd-systems '("cl-cookie-test" "cl-cookie")))
5436 (synopsis "HTTP cookie manager for Common Lisp")
5437 (description "cl-cookie is a Common Lisp library featuring parsing of
5438cookie headers, cookie creation, cookie jar creation and more.")
5439 (license license:bsd-2))))
5440
5441(define-public cl-cookie
5442 (sbcl-package->cl-source-package sbcl-cl-cookie))
5443
5444(define-public ecl-cl-cookie
5445 (sbcl-package->ecl-package sbcl-cl-cookie))
5446
5447(define-public sbcl-cl-coroutine
5448 (let ((commit "de098f8d5debd8b14ef6864b5bdcbbf5ddbcfd72")
5449 (revision "1"))
5450 (package
5451 (name "sbcl-cl-coroutine")
5452 (version (git-version "0.1" revision commit))
5453 (source
5454 (origin
5455 (method git-fetch)
5456 (uri (git-reference
5457 (url "https://github.com/takagi/cl-coroutine")
5458 (commit commit)))
5459 (file-name (git-file-name name version))
5460 (sha256
5461 (base32
5462 "1cqdhdjxffgfs116l1swjlsmcbly0xgcgrckvaajd566idj9yj4l"))))
5463 (build-system asdf-build-system/sbcl)
5464 (inputs
5465 (list sbcl-alexandria
5466 sbcl-cl-cont))
5467 (native-inputs
5468 (list sbcl-prove))
5469 (arguments
5470 `(;; TODO: Fix the tests. They fail with:
5471 ;; "Component CL-COROUTINE-ASD::CL-COROUTINE-TEST not found"
5472 #:tests? #f
5473 #:phases
5474 (modify-phases %standard-phases
5475 (add-after 'unpack 'fix-tests
5476 (lambda _
5477 (substitute* "cl-coroutine-test.asd"
5478 (("cl-test-more")
5479 "prove"))
5480 #t)))))
5481 (synopsis "Coroutine library for Common Lisp")
5482 (description
5483 "This is a coroutine library for Common Lisp implemented using the
5484continuations of the @code{cl-cont} library.")
5485 (home-page "https://github.com/takagi/cl-coroutine")
5486 (license license:llgpl))))
5487
5488(define-public cl-coroutine
5489 (sbcl-package->cl-source-package sbcl-cl-coroutine))
5490
5491(define-public ecl-cl-coroutine
5492 (sbcl-package->ecl-package sbcl-cl-coroutine))
5493
5494(define-public sbcl-cl-cpus
5495 (package
5496 (name "sbcl-cl-cpus")
5497 (version "0.0.3")
5498 (source
5499 (origin
5500 (method git-fetch)
5501 (uri (git-reference
5502 (url "https://github.com/muyinliu/cl-cpus")
5503 (commit (string-append "v" version))))
5504 (file-name (git-file-name "cl-cpus" version))
5505 (sha256
5506 (base32 "0sdaff9hpsx7bpkkkqavmxmrrlc2d61gmqjjgn8xchncng4a0rf8"))))
5507 (build-system asdf-build-system/sbcl)
5508 (inputs
5509 (list sbcl-cffi))
5510 (home-page "https://github.com/muyinliu/cl-cpus")
5511 (synopsis "Common Lisp feature to get number of CPUs")
5512 (description
5513 "This package provides a Common Lisp system which has only one function to
5514return the CPU count of the current system.")
5515 (license license:isc)))
5516
5517(define-public cl-cpus
5518 (sbcl-package->cl-source-package sbcl-cl-cpus))
5519
5520(define-public ecl-cl-cpus
5521 (sbcl-package->ecl-package sbcl-cl-cpus))
5522
5523(define-public sbcl-cl-cron
5524 (let ((commit "092aef5d5666fb43c04258e4043f609670a20456")
5525 (revision "0"))
5526 (package
5527 (name "sbcl-cl-cron")
5528 (version (git-version "0.1" revision commit))
5529 (source
5530 (origin
5531 (method git-fetch)
5532 (uri (git-reference
5533 (url "https://github.com/ciel-lang/cl-cron")
5534 (commit commit)))
5535 (file-name (git-file-name "cl-cron" version))
5536 (sha256
5537 (base32 "0y4li8j2h1nbpldpqm39ld9kgs4a7biy94h49n27l59l7mn1jd0d"))))
5538 (build-system asdf-build-system/sbcl)
5539 (inputs
5540 (list sbcl-bordeaux-threads))
5541 (home-page "https://github.com/ciel-lang/cl-cron/")
5542 (synopsis "Run cron like jobs in Common Lisp")
5543 (description
5544 "@code{cl-cron} is a simple tool that provides cron like facilities
5545directly inside of Common Lisp.")
5546 (license license:gpl3+))))
5547
5548(define-public cl-cron
5549 (sbcl-package->cl-source-package sbcl-cl-cron))
5550
5551(define-public ecl-cl-cron
5552 (sbcl-package->ecl-package sbcl-cl-cron))
5553
5554(define-public sbcl-cl-css
5555 (let ((commit "8fe654c8f0cf95b300718101cce4feb517f78e2f"))
5556 (package
5557 (name "sbcl-cl-css")
5558 (version (git-version "0.1" "1" commit))
5559 (source
5560 (origin
5561 (method git-fetch)
5562 (uri (git-reference
5563 (url "https://github.com/inaimathi/cl-css/")
5564 (commit commit)))
5565 (file-name (git-file-name "cl-css" version))
5566 (sha256
5567 (base32
5568 "1lc42zi2sw11fl2589sc19nr5sd2p0wy7wgvgwaggxa5f3ajhsmd"))))
5569 (build-system asdf-build-system/sbcl)
5570 (home-page "https://github.com/inaimathi/cl-css/")
5571 (synopsis "Non-validating, inline CSS generator for Common Lisp")
5572 (description
5573 "This is a dead-simple, non validating, inline CSS generator for Common
5574Lisp. Its goals are axiomatic syntax, simple implementation to support
5575portability, and boilerplate reduction in CSS.")
5576 (license license:expat))))
5577
5578(define-public cl-css
5579 (sbcl-package->cl-source-package sbcl-cl-css))
5580
5581(define-public ecl-cl-css
5582 (sbcl-package->ecl-package sbcl-cl-css))
5583
5584(define-public sbcl-cl-csv
5585 (let ((commit "68ecb5d816545677513d7f6308d9e5e8d2265651")
5586 (revision "2"))
5587 (package
5588 (name "sbcl-cl-csv")
5589 (version (git-version "1.0.6" revision commit))
5590 (source
5591 (origin
5592 (method git-fetch)
5593 (uri (git-reference
5594 (url "https://github.com/AccelerationNet/cl-csv")
5595 (commit commit)))
5596 (file-name (git-file-name name version))
5597 (sha256
5598 (base32
5599 "0gcmlbwx5m3kwgk12qi80w08ak8fgdnvyia429fz6gnxmhg0k54x"))))
5600 (build-system asdf-build-system/sbcl)
5601 (arguments
5602 ;; See: https://github.com/AccelerationNet/cl-csv/pull/34
5603 `(#:tests? #f))
5604 (inputs
5605 (list sbcl-alexandria
5606 sbcl-cl-interpol
5607 sbcl-iterate))
5608 (native-inputs
5609 (list sbcl-lisp-unit2))
5610 (synopsis "Common lisp library for comma-separated values")
5611 (description
5612 "This is a Common Lisp library providing functions to read/write CSV
5613from/to strings, streams and files.")
5614 (home-page "https://github.com/AccelerationNet/cl-csv")
5615 (license license:bsd-3))))
5616
5617(define-public cl-csv
5618 (sbcl-package->cl-source-package sbcl-cl-csv))
5619
5620(define-public ecl-cl-csv
5621 (sbcl-package->ecl-package sbcl-cl-csv))
5622
5623(define-public sbcl-cl-data-structures
5624 (let ((commit "d11e589a3ddc6c32fcbd8be7e9f8e3471bc4d5dd")
5625 (revision "3"))
5626 (package
5627 (name "sbcl-cl-data-structures")
5628 (version (git-version "1.4.1" revision commit))
5629 (source
5630 (origin
5631 (method git-fetch)
5632 (uri (git-reference
5633 (url "https://github.com/sirherrbatka/cl-data-structures")
5634 (commit commit)))
5635 (file-name (git-file-name "cl-data-structures" version))
5636 (sha256
5637 (base32 "12pdk3634nz51z4x2gly06h2j8bykqwxwfadsyq7r4ybzs3z8d73"))))
5638 (build-system asdf-build-system/sbcl)
5639 (native-inputs
5640 (list sbcl-prove))
5641 (inputs
5642 (list sbcl-alexandria
5643 sbcl-bordeaux-threads
5644 sbcl-cl-ppcre
5645 sbcl-closer-mop
5646 sbcl-documentation-utils-extensions
5647 sbcl-flexichain
5648 sbcl-iterate
5649 sbcl-lparallel
5650 sbcl-metabang-bind
5651 sbcl-more-conditions
5652 sbcl-serapeum
5653 sbcl-trivial-garbage))
5654 (synopsis "Data Structures and streaming algorithms for Common Lisp")
5655 (description
5656 "CL-DATA-STRUCTURES is a Common Lisp library providing a portable
5657collection of mutable and immutable data structures (dictionaries, sets,
5658queues, sequences) and algorithms.")
5659 (home-page "https://sirherrbatka.github.io/cl-data-structures/main.html")
5660 (license license:bsd-2))))
5661
5662(define-public cl-data-structures
5663 (sbcl-package->cl-source-package sbcl-cl-data-structures))
5664
5665(define-public ecl-cl-data-structures
5666 (sbcl-package->ecl-package sbcl-cl-data-structures))
5667
5668(define-public sbcl-cl-debug
5669 (let ((commit "b334280806104ee7f7d3aec666bf7e08d2f89b31")
5670 (revision "1"))
5671 (package
5672 (name "sbcl-cl-debug")
5673 (version (git-version "1.0.0" revision commit))
5674 (source
5675 (origin
5676 (method git-fetch)
5677 (uri (git-reference
5678 (url "https://github.com/kmx-io/cl-debug")
5679 (commit commit)))
5680 (file-name (git-file-name "cl-debug" version))
5681 (sha256
5682 (base32 "0w5vxbjsgr3zfpivdmghmhzxskfdvm1p34c8whwps2xlhypxsa78"))))
5683 (build-system asdf-build-system/sbcl)
5684 (home-page "https://github.com/kmx-io/cl-debug")
5685 (synopsis "Common Lisp cross-package debugging facility")
5686 (description
5687 "CL-DEBUG provides a unified way to enable or disable debug-specific code.
5688Debugging code can be enabled or disabled relative to program features denoted
5689by either a symbol or a keyword.")
5690 (license license:isc))))
5691
5692(define-public cl-debug
5693 (sbcl-package->cl-source-package sbcl-cl-debug))
5694
5695(define-public ecl-cl-debug
5696 (sbcl-package->ecl-package sbcl-cl-debug))
5697
5698(define-public sbcl-cl-dejavu
5699 (let ((commit "9d68ced4edee6f96fead42cb4835d0ff4a158373")
5700 (revision "1"))
5701 (package
5702 (name "sbcl-cl-dejavu")
5703 (version (git-version "0.0.0" revision commit))
5704 (source
5705 (origin
5706 (method git-fetch)
5707 (uri (git-reference
5708 (url "https://github.com/dkochmanski/cl-dejavu")
5709 (commit commit)))
5710 (file-name (git-file-name "cl-dejavu" version))
5711 (sha256
5712 (base32 "1lbxiq21bxj8r11c58cqskgn8gnl2p8q1ydkhdsv7i7xnhv2y7r0"))))
5713 (build-system asdf-build-system/sbcl)
5714 (home-page "https://github.com/dkochmanski/cl-dejavu")
5715 (synopsis "DejaVu fonts for Common Lisp")
5716 (description
5717 "This is a repackage of the original DejaVu Fonts with some convenience
5718functions.")
5719 (license (list license:cc0
5720 (license:x11-style "http://dejavu-fonts.org/"))))))
5721
5722(define-public cl-dejavu
5723 (sbcl-package->cl-source-package sbcl-cl-dejavu))
5724
5725(define-public ecl-dejavu
5726 (sbcl-package->ecl-package sbcl-cl-dejavu))
5727
5728(define-public sbcl-cl-difflib
5729 (let ((commit "98eb335c693f1881584b83ca7be4a0fe05355c4e")
5730 (revision "0"))
5731 (package
5732 (name "sbcl-cl-difflib")
5733 (version (git-version "0.2" revision commit))
5734 (source
5735 (origin
5736 (method git-fetch)
5737 (uri (git-reference
5738 (url "https://github.com/wiseman/cl-difflib")
5739 (commit commit)))
5740 (file-name
5741 (git-file-name name version))
5742 (sha256
5743 (base32 "08if0abhqg191xcz9s7xv8faqq51nswzp8hw423fkqjzr24pmq48"))))
5744 (build-system asdf-build-system/sbcl)
5745 ;; Due to the age of this library tests use some deprecated
5746 ;; functionality and keep failing.
5747 (arguments
5748 '(#:tests? #f))
5749 (home-page "https://github.com/wiseman/cl-difflib")
5750 (synopsis "Compute differences between pairs of sequences")
5751 (description
5752 "A Common Lisp library for computing differences between
5753sequences based on the Python difflib module.")
5754 (license license:expat))))
5755
5756(define-public cl-difflib
5757 (sbcl-package->cl-source-package sbcl-cl-difflib))
5758
5759(define-public ecl-cl-difflib
5760 (sbcl-package->ecl-package sbcl-cl-difflib))
5761
5762(define-public sbcl-cl-diskspace
5763 (let ((commit "2dce2d0387d58221c452bd76c7b9b7a7de81ef55")
5764 (revision "1"))
5765 (package
5766 (name "sbcl-cl-diskspace")
5767 (version (git-version "0.3.1" revision commit))
5768 (source
5769 (origin
5770 (method git-fetch)
5771 (uri (git-reference
5772 (url "https://github.com/muyinliu/cl-diskspace")
5773 (commit commit)))
5774 (file-name (git-file-name "cl-diskspace" version))
5775 (sha256
5776 (base32 "0l19hxqw6b8i5i1jdbr45k1xib9axcwdagsp3y8wkb35g6wwc0s7"))))
5777 (build-system asdf-build-system/sbcl)
5778 (arguments
5779 `(#:phases
5780 (modify-phases %standard-phases
5781 (add-after 'unpack 'fix-paths
5782 (lambda* (#:key inputs #:allow-other-keys)
5783 (substitute* "src/unix/cl-diskspace-list-all-disks-with-df.lisp"
5784 (("grep")
5785 (search-input-file inputs "/bin/grep")))
5786 (substitute* "src/unix/cl-diskspace-list-all-disks-with-df.lisp"
5787 (("/bin/df")
5788 (which "df")))
5789 #t)))))
5790 (inputs
5791 (list sbcl-cl-ppcre
5792 sbcl-cffi
5793 grep))
5794 (home-page "https://github.com/muyinliu/cl-diskspace")
5795 (synopsis "Disk space information library for Common Lisp")
5796 (description
5797 "CL-DISKSPACE is a Common Lisp library to list disks with the command
5798line tool @code{df} and get disk space information using @code{statvfs}.")
5799 (license license:isc))))
5800
5801(define-public cl-diskspace
5802 (sbcl-package->cl-source-package sbcl-cl-diskspace))
5803
5804(define-public ecl-cl-diskspace
5805 (sbcl-package->ecl-package sbcl-cl-diskspace))
5806
5807(define-public sbcl-cl-docutils
5808 (let ((commit "756b5ad42360e84d8225fa69815bdd1623ceaa40")
5809 (revision "1"))
5810 (package
5811 (name "sbcl-cl-docutils")
5812 (version (git-version "0.1.1" revision commit))
5813 (source
5814 (origin
5815 (method git-fetch)
5816 (uri
5817 (git-reference
5818 (url "https://github.com/willijar/cl-docutils/")
5819 (commit commit)))
5820 (file-name (git-file-name "cl-docutils" version))
5821 (sha256
5822 (base32
5823 "132bxlj0jlhiabi29mygmkcbbgyb5s1yz1xdfhm3pgrf9f8605gg"))))
5824 (build-system asdf-build-system/sbcl)
5825 (arguments
5826 '(#:asd-systems '("docutils")))
5827 (inputs
5828 (list sbcl-cl-ppcre
5829 sbcl-data-format-validation
5830 sbcl-trivial-gray-streams))
5831 (synopsis "Document utilities and Restructured text parser")
5832 (description
5833 "@code{cl-docutils} is a Common Lisp implementation of the Docutils text
5834processing system for processing plaintext into presentational formats such as
5835HTML and LaTeX. It is based upon the Python Docutils reference implementation
5836but uses Common Lisp idioms making it easier to extend and more flexible. As
5837with the reference implementation it includes a parser for the reStructured
5838text plaintext markup syntax which is suitable for marking up documentation
5839and for use as user markup for collaborative web sites. It is successfully
5840used to support a higher education peer-review assessment and online tutorial
5841system.")
5842 (home-page "http://www.jarw.org.uk/lisp/cl-docutils.html")
5843 (license license:gpl3))))
5844
5845(define-public cl-docutils
5846 (sbcl-package->cl-source-package sbcl-cl-docutils))
5847
5848(define-public ecl-cl-docutils
5849 (sbcl-package->ecl-package sbcl-cl-docutils))
5850
5851(define-public sbcl-cl-dot
5852 (let ((commit "73dfbb6e015a28ebed873266e4e8190e509b43de")
5853 (revision "0"))
5854 (package
5855 (name "sbcl-cl-dot")
5856 (version (git-version "0.9.0" revision commit))
5857 (source
5858 (origin
5859 (method git-fetch)
5860 (uri (git-reference
5861 (url "https://github.com/michaelw/cl-dot")
5862 (commit commit)))
5863 (file-name (git-file-name "cl-dot" version))
5864 (sha256
5865 (base32 "0mcvzqfcg5rzr8rz8aa2yr2jl3ifflaksvps08zj71hbhiacqpxa"))))
5866 (build-system asdf-build-system/sbcl)
5867 (home-page "https://github.com/michaelw/cl-dot")
5868 (synopsis "Generate Graphviz dot output from arbitrary Lisp data")
5869 (description
5870 "CL-DOT is a Common Lisp library for generating Graphviz dot output from
5871arbitrary Lisp data.")
5872 (license license:expat))))
5873
5874(define-public cl-dot
5875 (sbcl-package->cl-source-package sbcl-cl-dot))
5876
5877(define-public ecl-cl-dot
5878 (sbcl-package->ecl-package sbcl-cl-dot))
5879
5880(define-public sbcl-cl-dotenv
5881 (let ((commit "a093f5b330269f6e6f72f51ef638cca186aee44e")
5882 (revision "0"))
5883 (package
5884 (name "sbcl-cl-dotenv")
5885 (version (git-version "0.1.0" revision commit))
5886 (source
5887 (origin
5888 (method git-fetch)
5889 (uri (git-reference
5890 (url "https://github.com/ollelauribostrom/cl-dotenv/")
5891 (commit commit)))
5892 (file-name (git-file-name name version))
5893 (sha256
5894 (base32 "0cdbk886aizsnqqs3z4jfn8nyrnxj4yb3y00av49xc4h83h6xn53"))))
5895 (build-system asdf-build-system/sbcl)
5896 (native-inputs (list sbcl-prove))
5897 (inputs (list sbcl-alexandria sbcl-serapeum))
5898 (home-page "https://github.com/ollelauribostrom/cl-dotenv/")
5899 (synopsis "Load environment variables from .env files in Common Lisp")
5900 (description
5901 "@code{cl-dotenv} is a utility library for loading @file{.env} files in
5902Common Lisp.")
5903 (license license:expat))))
5904
5905(define-public cl-dotenv
5906 (sbcl-package->cl-source-package sbcl-cl-dotenv))
5907
5908(define-public ecl-cl-dotenv
5909 (sbcl-package->ecl-package sbcl-cl-dotenv))
5910
5911(define-public sbcl-cl-emb
5912 (let ((commit "fd8652174d048d4525a81f38cdf42f4fa519f840")
5913 (revision "1"))
5914 (package
5915 (name "sbcl-cl-emb")
5916 (version (git-version "0.4.3" revision commit))
5917 (home-page "https://common-lisp.net/project/cl-emb/")
5918 (source
5919 (origin
5920 (method git-fetch)
5921 (uri (git-reference
5922 (url "https://github.com/38a938c2/cl-emb")
5923 (commit commit)))
5924 (file-name (git-file-name name version))
5925 (sha256
5926 (base32 "1xcm31n7afh5316lwz8iqbjx7kn5lw0l11arg8mhdmkx42aj4gkk"))))
5927 (build-system asdf-build-system/sbcl)
5928 (inputs
5929 (list sbcl-cl-ppcre))
5930 (synopsis "Templating system for Common Lisp")
5931 (description "A mixture of features from eRuby and HTML::Template. You
5932could name it \"Yet Another LSP\" (LispServer Pages) but it's a bit more than
5933that and not limited to a certain server or text format.")
5934 (license license:llgpl))))
5935
5936(define-public cl-emb
5937 (sbcl-package->cl-source-package sbcl-cl-emb))
5938
5939(define-public ecl-cl-emb
5940 (sbcl-package->ecl-package sbcl-cl-emb))
5941
5942(define-public sbcl-cl-environments
5943 (package
5944 (name "sbcl-cl-environments")
5945 (version "0.5")
5946 (source
5947 (origin
5948 (method git-fetch)
5949 (uri (git-reference
5950 (url "https://github.com/alex-gutev/cl-environments")
5951 (commit (string-append "v" version))))
5952 (file-name (git-file-name "cl-environments" version))
5953 (sha256
5954 (base32 "0597q1j2scal8sx0rcx9c0nazai3p1d72wmzssb9rx0fa7vpr6ij"))))
5955 (build-system asdf-build-system/sbcl)
5956 (inputs
5957 (list sbcl-alexandria sbcl-anaphora sbcl-collectors sbcl-optima))
5958 (native-inputs
5959 (list sbcl-prove))
5960 (home-page "https://github.com/alex-gutev/cl-environments")
5961 (synopsis "Implements the Common Lisp standard environment access API")
5962 (description
5963 "This library provides a uniform API, as specified in Common Lisp the
5964Language 2, for accessing information about variable and function bindings
5965from implementation-defined lexical environment objects. All major Common
5966Lisp implementations are supported, even those which don't support the CLTL2
5967environment access API.")
5968 (license license:expat)))
5969
5970(define-public cl-environments
5971 (sbcl-package->cl-source-package sbcl-cl-environments))
5972
5973(define-public ecl-cl-environments
5974 (sbcl-package->ecl-package sbcl-cl-environments))
5975
5976(define-public sbcl-cl-ewkb
5977 (let ((commit "e2c7976cdc2074d63038ecd7179025ccb8d8f0b7")
5978 (revision "0"))
5979 (package
5980 (name "sbcl-cl-ewkb")
5981 (version (git-version "0.2" revision commit))
5982 (source
5983 (origin
5984 (method git-fetch)
5985 (uri (git-reference
5986 (url "https://github.com/filonenko-mikhail/cl-ewkb")
5987 (commit commit)))
5988 (file-name (git-file-name "cl-ewkb" version))
5989 (sha256
5990 (base32 "1n1zm4i11638vh1a4m71690p4lpikkk0rp42j2yfvs5d9wi67cr1"))))
5991 (build-system asdf-build-system/sbcl)
5992 (inputs (list sbcl-ieee-floats sbcl-flexi-streams))
5993 (home-page "https://github.com/filonenko-mikhail/cl-ewkb")
5994 (synopsis "Common Lisp PostGIS EWKB library")
5995 (description "This package is a geospatial library, based on cl-wkb,
5996that implements the OGC Well-Known Binary geographic geometry data model with
5997PostGIS 3d, 4d extensions, and provides WKB and EWKB encoding and decoding
5998functionality.")
5999 (license (list license:expat)))))
6000
6001(define-public cl-ewkb
6002 (sbcl-package->cl-source-package sbcl-cl-ewkb))
6003
6004(define-public ecl-cl-ewkb
6005 (sbcl-package->ecl-package sbcl-cl-ewkb))
6006
6007(define-public sbcl-cl-fad
6008 ;; No release since 2019
6009 (let ((commit "3f4d32d3aa1093966046d001411a852eb8f4b535")
6010 (revision "1"))
6011 (package
6012 (name "sbcl-cl-fad")
6013 (version (git-version "0.7.6" revision commit))
6014 (source
6015 (origin
6016 (method git-fetch)
6017 (uri (git-reference
6018 (url "https://github.com/edicl/cl-fad/")
6019 (commit commit)))
6020 (sha256
6021 (base32 "0a1xqldrq170lflnns3xp6swpnvsvllf5vq0h7sz8jqh4riqlny6"))
6022 (file-name (git-file-name "cl-fad" version))))
6023 (build-system asdf-build-system/sbcl)
6024 (native-inputs
6025 (list sbcl-cl-ppcre sbcl-unit-test))
6026 (inputs
6027 (list sbcl-alexandria sbcl-bordeaux-threads))
6028 (synopsis "Portable pathname library for Common Lisp")
6029 (description
6030 "CL-FAD (for \"Files and Directories\") is a thin layer atop Common
6031Lisp's standard pathname functions. It is intended to provide some
6032unification between current CL implementations on Windows, OS X, Linux, and
6033Unix. Most of the code was written by Peter Seibel for his book Practical
6034Common Lisp.")
6035 (home-page "https://edicl.github.io/cl-fad/")
6036 (license license:bsd-2))))
6037
6038(define-public cl-fad
6039 (sbcl-package->cl-source-package sbcl-cl-fad))
6040
6041(define-public ecl-cl-fad
6042 (sbcl-package->ecl-package sbcl-cl-fad))
6043
6044(define-public sbcl-cl-fast-ecs
6045 (package
6046 (name "sbcl-cl-fast-ecs")
6047 (version "0.9.1")
6048 (source
6049 (origin
6050 (method git-fetch)
6051 (uri (git-reference
6052 (url "https://gitlab.com/lockie/cl-fast-ecs")
6053 (commit version)))
6054 (file-name (git-file-name "cl-fast-ecs" version))
6055 (sha256
6056 (base32 "0s2pc1ffbddjsvc92pdd4wlv1353byaar60kmn4zcnwy5g9p81nv"))))
6057 (build-system asdf-build-system/sbcl)
6058 (native-inputs
6059 (list graphviz-minimal
6060 sbcl-cl-mock
6061 sbcl-parachute
6062 sbcl-trivial-coverage))
6063 (inputs
6064 (list sbcl-alexandria
6065 sbcl-closer-mop
6066 sbcl-global-vars
6067 sbcl-trivial-adjust-simple-array))
6068 (home-page "https://lockie.gitlab.io/cl-fast-ecs/")
6069 (synopsis "Blazingly fast Entity-Component-System microframework")
6070 (description
6071 "CL-FAST-ECS is a Common Lisp library providing an implementation of the
6072@acronym{ECS, Entity-Component-System} pattern, primarily focused on speed and
6073interactive development.
6074
6075ECS is an architectural data-oriented design pattern that allows for the
6076effective processing of a large number of in-game objects while keeping the code
6077and data separated. This provides flexibility in the way that game objects are
6078built at runtime.")
6079 (license license:expat)))
6080
6081(define-public cl-fast-ecs
6082 (sbcl-package->cl-source-package sbcl-cl-fast-ecs))
6083
6084(define-public ecl-cl-fast-ecs
6085 (sbcl-package->ecl-package sbcl-cl-fast-ecs))
6086
6087(define-public sbcl-cl-fastcgi
6088 (let ((commit "de8b49b26de9863996ec18db28af8ab7e8ac4e20")
6089 (revision "2"))
6090 (package
6091 (name "sbcl-cl-fastcgi")
6092 (version (git-version "0.2" revision commit))
6093 (source
6094 (origin
6095 (method git-fetch)
6096 (uri (git-reference
6097 (url "https://github.com/KDr2/cl-fastcgi/")
6098 (commit commit)))
6099 (file-name (git-file-name name version))
6100 (sha256
6101 (base32 "0xgmhx766q4nmrvn5z7ag3ikpr9phlh8ypi8b14azshq9lqbq0m7"))))
6102 (build-system asdf-build-system/sbcl)
6103 (inputs
6104 (list sbcl-usocket
6105 sbcl-cffi
6106 fcgi))
6107 (arguments
6108 `(#:phases
6109 (modify-phases %standard-phases
6110 (add-after 'unpack 'fix-paths
6111 (lambda* (#:key inputs #:allow-other-keys)
6112 (substitute* "cl-fastcgi.lisp"
6113 (("\"libfcgi.so\"")
6114 (string-append
6115 "\""
6116 (assoc-ref inputs "fcgi") "/lib/libfcgi.so\""))))))))
6117 (home-page "https://kdr2.com/project/cl-fastcgi.html")
6118 (synopsis "FastCGI wrapper for Common Lisp")
6119 (description
6120 "CL-FastCGI is a generic version of SB-FastCGI, targeting to run on
6121mostly Common Lisp implementation.")
6122 (license license:bsd-2))))
6123
6124(define-public cl-fastcgi
6125 (sbcl-package->cl-source-package sbcl-cl-fastcgi))
6126
6127(define-public ecl-cl-fastcgi
6128 (sbcl-package->ecl-package sbcl-cl-fastcgi))
6129
6130(define-public sbcl-cl-flac
6131 (let ((commit "d094d33d3cc2cf263263b917798d338eded3c532")
6132 (revision "0"))
6133 (package
6134 (name "sbcl-cl-flac")
6135 (version (git-version "1.0.0" revision commit))
6136 (source
6137 (origin
6138 (method git-fetch)
6139 (uri (git-reference
6140 (url "https://github.com/Shirakumo/cl-flac")
6141 (commit commit)))
6142 (file-name (git-file-name "cl-flac" version))
6143 (sha256
6144 (base32 "1dgr5xqf175hzq3sxpbixxia2k2g3rz0pn6msch4dnvk7a1naqlc"))
6145 (modules '((guix build utils)))
6146 (snippet
6147 ;; Delete bundled libraries.
6148 `(begin
6149 (delete-file-recursively "static")))))
6150 (build-system asdf-build-system/sbcl)
6151 (arguments
6152 `(#:phases
6153 (modify-phases %standard-phases
6154 (add-after 'unpack 'fix-paths
6155 (lambda* (#:key inputs #:allow-other-keys)
6156 (substitute* "low-level.lisp"
6157 (("libflac.so")
6158 (search-input-file inputs "/lib/libFLAC.so"))))))))
6159 (inputs
6160 (list flac
6161 sbcl-cffi
6162 sbcl-documentation-utils
6163 sbcl-trivial-features
6164 sbcl-trivial-garbage))
6165 (home-page "https://shirakumo.github.io/cl-flac")
6166 (synopsis "CFFI bindings to libflac for Common Lisp")
6167 (description "This package provides CFFI bindings to the @code{libflac}
6168audio library for Common Lisp.")
6169 (license license:zlib))))
6170
6171(define-public cl-flac
6172 (sbcl-package->cl-source-package sbcl-cl-flac))
6173
6174(define-public ecl-cl-flac
6175 (sbcl-package->ecl-package sbcl-cl-flac))
6176
6177(define-public sbcl-cl-fond
6178 (let ((commit "dac975cbc73f231b400d5b8d8539b16330239a4a")
6179 (revision "1"))
6180 (package
6181 (name "sbcl-cl-fond")
6182 (version (git-version "1.1.0" revision commit))
6183 (source
6184 (origin
6185 (method git-fetch)
6186 (uri (git-reference
6187 (url "https://github.com/Shirakumo/cl-fond")
6188 (commit commit)))
6189 (file-name (git-file-name "cl-fond" version))
6190 (sha256
6191 (base32 "03ygcw1azb44bhdsqcq99xi4ci0by76ap5jf5l2d1vfxq04v8grq"))))
6192 (build-system asdf-build-system/sbcl)
6193 (inputs
6194 (list sbcl-alexandria
6195 sbcl-cffi
6196 sbcl-cl-opengl
6197 sbcl-documentation-utils
6198 sbcl-trivial-features
6199 sbcl-trivial-garbage))
6200 (home-page "https://shirakumo.github.io/cl-fond/")
6201 (synopsis "Bindings to libfond, a simple text rendering engine for OpenGL")
6202 (description "This is a Common Lisp bindings library to libfond, a
6203simple OpenGL text rendering engine.")
6204 (license license:zlib))))
6205
6206(define-public cl-fond
6207 (sbcl-package->cl-source-package sbcl-cl-fond))
6208
6209(define-public ecl-cl-fond
6210 (sbcl-package->ecl-package sbcl-cl-fond))
6211
6212(define-public sbcl-cl-form-types
6213 (package
6214 (name "sbcl-cl-form-types")
6215 (version "0.3.2")
6216 (source
6217 (origin
6218 (method git-fetch)
6219 (uri (git-reference
6220 (url "https://github.com/alex-gutev/cl-form-types")
6221 (commit (string-append "v" version))))
6222 (file-name (git-file-name name version))
6223 (sha256
6224 (base32
6225 "0k4j657vfh4zblp9a7d3z15r82yyz4fzqh8vfn2s7ljsj1dmhp2n"))))
6226 (build-system asdf-build-system/sbcl)
6227 (inputs
6228 (list sbcl-agutil
6229 sbcl-anaphora
6230 sbcl-arrows
6231 sbcl-cl-environments
6232 sbcl-introspect-environment
6233 sbcl-optima))
6234 (native-inputs
6235 (list sbcl-fiveam))
6236 (home-page "https://github.com/alex-gutev/cl-form-types")
6237 (synopsis "Determine the types of Common Lisp forms")
6238 (description "This library provides functions for determining the value
6239types of Common Lisp forms, based on type information contained in the
6240environment.
6241
6242In order for this library to work the values types of variables and return
6243types of functions have to be declared.
6244
6245Macros and symbol-macros are fully expanded and all special forms, except
6246@code{CATCH}, are supported.")
6247 (license license:expat)))
6248
6249(define-public cl-form-types
6250 (sbcl-package->cl-source-package sbcl-cl-form-types))
6251
6252(define-public ecl-cl-form-types
6253 (let ((pkg (sbcl-package->ecl-package sbcl-cl-form-types)))
6254 (package
6255 (inherit pkg)
6256 (arguments
6257 ;; FIXME: Syntax error in declaration (TYPE T (FORM &KEY STRICT
6258 ;; EXPAND-COMPILER-MACROS (TEST (QUOTE FORM-TYPE=))))
6259 ;; An error occurred during initialization: COMPILE-FILE-ERROR while...
6260 ;; See <https://github.com/alex-gutev/cl-form-types/issues/22>.
6261 '(#:tests? #f)))))
6262
6263(define-public sbcl-cl-forms
6264 (let ((commit "680953089c4a4d6201e639ac8188c46656d3f693")
6265 (revision "0"))
6266 (package
6267 (name "sbcl-cl-forms")
6268 (version (git-version "0.0.0" revision commit))
6269 (source
6270 (origin
6271 (method git-fetch)
6272 (uri (git-reference
6273 (url "https://github.com/mmontone/cl-forms")
6274 (commit commit)))
6275 (file-name (git-file-name name version))
6276 (sha256
6277 (base32 "19bmcvg89ydgkz1rjds0q0ydrpj4dxcvgnqgjjkbsi1h8yw18fsj"))))
6278 (build-system asdf-build-system/sbcl)
6279 (native-inputs (list sbcl-fiveam sbcl-trivial-open-browser))
6280 (inputs (list sbcl-alexandria
6281 sbcl-cl-ppcre
6282 sbcl-ironclad
6283 sbcl-uuid
6284 sbcl-clavier
6285 sbcl-fmt
6286 sbcl-cl-str
6287 sbcl-cl-base64
6288 sbcl-cl-css
6289 sbcl-cl-who
6290 sbcl-djula
6291 sbcl-hunchentoot
6292 sbcl-lack
6293 sbcl-ningle
6294 sbcl-cl-peppol))
6295 (arguments
6296 '(#:asd-systems '("cl-forms" "cl-forms.core" "cl-forms.who"
6297 "cl-forms.djula" "cl-forms.ningle" "cl-forms.peppol")))
6298 (home-page "https://github.com/mmontone/cl-forms")
6299 (synopsis "Web forms handling library for Common Lisp")
6300 (description
6301 "@code{cl-forms} provides functionality for managing web forms in
6302Common Lisp.
6303
6304It supports various field types (string, boolean, integer, email,
6305password, and more) and allows rendering through multiple backends,
6306such as @code{cl-who} and @code{djula}.")
6307 (license license:expat))))
6308
6309(define-public cl-forms
6310 (sbcl-package->cl-source-package sbcl-cl-forms))
6311
6312(define-public sbcl-cl-freetype2
6313 (let ((commit "8bcb232b319a66fb700eaea88d0b308a837bce04")
6314 (revision "1"))
6315 (package
6316 (name "sbcl-cl-freetype2")
6317 (version (git-version "1.1" revision commit))
6318 (source
6319 (origin
6320 (method git-fetch)
6321 (uri (git-reference
6322 (url "https://github.com/rpav/cl-freetype2")
6323 (commit commit)))
6324 (file-name (git-file-name "cl-freetype2" version))
6325 (sha256
6326 (base32 "1nhq3qslja0bcgpbmzfycqhd4vw1l58zh4ia15m1h6535qxliy0q"))))
6327 (build-system asdf-build-system/sbcl)
6328 (native-inputs
6329 (list sbcl-fiveam))
6330 (inputs
6331 (list freetype
6332 sbcl-alexandria
6333 sbcl-cffi
6334 sbcl-trivial-garbage))
6335 (arguments
6336 `(#:phases
6337 (modify-phases %standard-phases
6338 (add-after 'unpack 'fix-paths
6339 (lambda* (#:key inputs #:allow-other-keys)
6340 (substitute* "src/ffi/ft2-lib.lisp"
6341 (("\"libfreetype\"")
6342 (string-append "\"" (assoc-ref inputs "freetype")
6343 "/lib/libfreetype\"")))
6344 (substitute* "src/ffi/grovel/grovel-freetype2.lisp"
6345 (("-I/usr/include/freetype")
6346 (string-append "-I" (assoc-ref inputs "freetype")
6347 "/include/freetype")))
6348 #t)))))
6349 (home-page "https://github.com/rpav/cl-freetype2")
6350 (synopsis "Common Lisp bindings for Freetype 2")
6351 (description
6352 "This is a general Freetype 2 wrapper for Common Lisp using CFFI. It's
6353geared toward both using Freetype directly by providing a simplified API, as
6354well as providing access to the underlying C structures and functions for use
6355with other libraries which may also use Freetype.")
6356 (license license:bsd-3))))
6357
6358(define-public cl-freetype2
6359 (sbcl-package->cl-source-package sbcl-cl-freetype2))
6360
6361(define-public ecl-cl-freetype2
6362 (sbcl-package->ecl-package sbcl-cl-freetype2))
6363
6364(define-public sbcl-cl-ftp
6365 (let ((commit "530f1ec06427c69966d83c86638be628eacb9502")
6366 (revision "0"))
6367 (package
6368 (name "sbcl-cl-ftp")
6369 (version (git-version "1.6.1" revision commit))
6370 (source
6371 (origin
6372 (method git-fetch)
6373 (uri (git-reference
6374 (url "https://github.com/pinterface/cl-ftp")
6375 (commit commit)))
6376 (file-name (git-file-name "cl-ftp" version))
6377 (sha256
6378 (base32 "0q5x9g419crvaf106q33k0xkh4xvglzjyjhibz9siymcngyc7zdh"))))
6379 (build-system asdf-build-system/sbcl)
6380 (inputs
6381 (list sbcl-split-sequence
6382 sbcl-usocket))
6383 (synopsis "FTP client for Common Lisp")
6384 (description
6385 "CL-FTP is a library which provides FTP client functionality
6386to a Common Lisp program. CL-FTP uses the USOCKET package for network
6387sockets and the SPLIT-SEQUENCE package for some parsing needs.")
6388 (home-page "https://github.com/pinterface/cl-ftp")
6389 (license license:expat))))
6390
6391(define-public cl-ftp
6392 (sbcl-package->cl-source-package sbcl-cl-ftp))
6393
6394(define-public ecl-cl-ftp
6395 (sbcl-package->ecl-package sbcl-cl-ftp))
6396
6397(define-public sbcl-cl-gamepad
6398 (let ((commit "d5b99fbaa2e39294d23061699e8f1e761eda7205")
6399 (revision "3"))
6400 (package
6401 (name "sbcl-cl-gamepad")
6402 (version (git-version "3.0.0" revision commit))
6403 (source
6404 (origin
6405 (method git-fetch)
6406 (uri (git-reference
6407 (url "https://github.com/Shirakumo/cl-gamepad")
6408 (commit commit)))
6409 (file-name (git-file-name "cl-gamepad" version))
6410 (sha256
6411 (base32 "0y6kg9wq92p07i1chm1v7j7p77iqc5c985pdvmmivcip8zmd4hm4"))))
6412 (build-system asdf-build-system/sbcl)
6413 (arguments
6414 `(#:tests? #f ; No tests
6415 #:phases
6416 (modify-phases %standard-phases
6417 (add-after 'unpack 'patch-evdev-lib-path
6418 (lambda* (#:key inputs #:allow-other-keys)
6419 (substitute* "evdev-cffi.lisp"
6420 (("libevdev.so")
6421 (search-input-file inputs "/lib/libevdev.so"))))))))
6422 (inputs
6423 (list libevdev
6424 sbcl-cffi
6425 sbcl-documentation-utils
6426 sbcl-trivial-features))
6427 (home-page "https://shirakumo.github.io/cl-gamepad/")
6428 (synopsis "Library for access to gamepads and joystick input devices")
6429 (description
6430 "This is a library to provide cross-platform access to gamepads,
6431joysticks, and other such HID devices.")
6432 (license license:zlib))))
6433
6434(define-public cl-gamepad
6435 (sbcl-package->cl-source-package sbcl-cl-gamepad))
6436
6437(define-public ecl-cl-gamepad
6438 (sbcl-package->ecl-package sbcl-cl-gamepad))
6439
6440(define-public sbcl-cl-geometry
6441 (let ((commit "24eddedc47b931cec27361752736ef0b54fc9984"))
6442 (package
6443 (name "sbcl-cl-geometry")
6444 (version (git-version "0.0.3" "1" commit))
6445 (source
6446 (origin
6447 (method git-fetch)
6448 (uri (git-reference
6449 (url "https://github.com/vydd/cl-geometry")
6450 (commit commit)))
6451 (file-name (git-file-name "cl-cl-geometry" version))
6452 (sha256
6453 (base32 "188xrd8plvc34gz7q01zmkdrzxbpwzln103l5dl78pa4a6vzz34h"))))
6454 (build-system asdf-build-system/sbcl)
6455 (inputs
6456 (list sbcl-iterate
6457 sbcl-trees))
6458 (home-page "https://github.com/lispgames/cl-geometry/")
6459 (synopsis "Simple two dimensional computational geometry in Common Lisp")
6460 (description
6461 "This is a system for two dimensional computational geometry for Common Lisp.
6462
6463Note: the system assumes exact rational arithmetic, so no floating point
6464coordinates are allowed. This is not checked when creating geometric
6465objects.")
6466 ;; The .asd says BSD-style but the LICENSE.txt is expat.
6467 (license license:expat))))
6468
6469(define-public cl-cl-geometry
6470 (sbcl-package->cl-source-package sbcl-cl-geometry))
6471
6472(define-public ecl-cl-geometry
6473 (sbcl-package->ecl-package sbcl-cl-geometry))
6474
6475(define-public sbcl-cl-glfw3
6476 (let ((commit "32c3f34d592d55ee7ce932ed85804c1a9c4158c6")
6477 (revision "1"))
6478 (package
6479 (name "sbcl-cl-glfw3")
6480 (version (git-version "0.0.0" revision commit))
6481 (source
6482 (origin
6483 (method git-fetch)
6484 (uri (git-reference
6485 (url "https://github.com/AlexCharlton/cl-glfw3")
6486 (commit commit)))
6487 (file-name (git-file-name "cl-glfw3" version))
6488 (sha256
6489 (base32 "1wzr43nckdx4rlgxzhm1r4kfc264q969mc43y0js9ramh7l8gba5"))))
6490 (build-system asdf-build-system/sbcl)
6491 (arguments
6492 `(#:phases
6493 (modify-phases %standard-phases
6494 (add-after 'unpack 'patch-glfw-lib-path
6495 (lambda* (#:key inputs #:allow-other-keys)
6496 (substitute* "glfw-bindings.lisp"
6497 (("libglfw.so.3" _)
6498 (search-input-file inputs "/lib/libglfw.so.3"))))))))
6499 (inputs
6500 (list sbcl-alexandria
6501 sbcl-cffi
6502 sbcl-cl-opengl
6503 glfw
6504 sbcl-trivial-main-thread))
6505 (home-page "https://github.com/AlexCharlton/cl-glfw3")
6506 (synopsis "Common Lisp bindings to GLFW version 3.x")
6507 (description
6508 "This package provides a Common Lisp bindings to @code{glfw}, an OpenGL
6509application development library.")
6510 (license license:bsd-2))))
6511
6512(define-public cl-glfw3
6513 (sbcl-package->cl-source-package sbcl-cl-glfw3))
6514
6515(define-public ecl-cl-glfw3
6516 (sbcl-package->ecl-package sbcl-cl-glfw3))
6517
6518(define-public sbcl-cl-glib
6519 (let ((commit "9e52827cce1cbb3962536b6a5e628febab593f57")
6520 (revision "1"))
6521 (package
6522 (name "sbcl-cl-glib")
6523 (version (git-version "1.0.0" revision commit))
6524 (source
6525 (origin
6526 (method git-fetch)
6527 (uri (git-reference
6528 (url "https://github.com/bohonghuang/cl-glib")
6529 (commit commit)))
6530 (file-name (git-file-name "cl-glib" version))
6531 (sha256
6532 (base32 "0dxa493zdp1p93cahhpp3yaggn3j3kkn90mdw99g4ld7scmiglp4" ))))
6533 (build-system asdf-build-system/sbcl)
6534 (arguments
6535 '(#:asd-systems '("cl-gio" "cl-glib" "cl-gobject")))
6536 (inputs
6537 (list glib
6538 gobject-introspection
6539 sbcl-bordeaux-threads
6540 sbcl-cl-gobject-introspection-wrapper))
6541 (home-page "https://github.com/bohonghuang/cl-glib")
6542 (synopsis "Glib, GIO and Gobject bindings for Common Lisp")
6543 (description "This library provides Glib, GIO and Gobject bindings for
6544Common Lisp via Gobject Introspection.")
6545 (license license:lgpl3+))))
6546
6547(define-public cl-glib
6548 (sbcl-package->cl-source-package sbcl-cl-glib))
6549
6550(define-public ecl-cl-glib
6551 (sbcl-package->ecl-package sbcl-cl-glib))
6552
6553(define-public sbcl-cl-gltf
6554 (let ((commit "7a3af05a7f491d8973b217f096806ef12a97474b")
6555 (revision "1"))
6556 (package
6557 (name "sbcl-cl-gltf")
6558 (version (git-version "2.0.0" revision commit))
6559 (source
6560 (origin
6561 (method git-fetch)
6562 (uri (git-reference
6563 (url "https://github.com/Shirakumo/cl-gltf")
6564 (commit commit)))
6565 (file-name (git-file-name "cl-gltf" version))
6566 (sha256
6567 (base32 "1d64fg2l2c0wns3wpp1xypd8687gnp3k70fv9fb48m1kpzg4kvrh"))))
6568 (build-system asdf-build-system/sbcl)
6569 (arguments
6570 ;; No tests provided.
6571 `(#:tests? #f))
6572 (inputs
6573 (list sbcl-documentation-utils
6574 sbcl-cffi
6575 sbcl-jzon
6576 sbcl-mmap
6577 sbcl-nibbles
6578 sbcl-qbase64
6579 sbcl-static-vectors
6580 sbcl-trivial-extensible-sequences))
6581 (home-page "https://shirakumo.github.io/cl-gltf/")
6582 (synopsis "Common Lisp parser for glTF file format")
6583 (description
6584 "This package provides a Common Lisp parser for glTF file format.")
6585 (license license:zlib))))
6586
6587(define-public cl-gltf
6588 (sbcl-package->cl-source-package sbcl-cl-gltf))
6589
6590;; FIXME: ECL part is failing
6591;; ;;; Internal error:
6592;;
6593;; ** There is no package with the name SEQUENCE.An error occurred during
6594;; initialization: COMPILE-FILE-ERROR while compiling #<cl-source-file
6595;; "trivial-extensible-sequences" "fallback">.
6596;;
6597;; See <https://github.com/Shirakumo/cl-gltf/issues/3>
6598;;
6599;; (define-public ecl-cl-gltf
6600;; (sbcl-package->ecl-package sbcl-cl-gltf))
6601
6602(define-public sbcl-cl-gobject-introspection
6603 (let ((commit "4908a84c16349929b309c50409815ff81fb9b3c4")
6604 (revision "4"))
6605 (package
6606 (name "sbcl-cl-gobject-introspection")
6607 (version (git-version "0.3" revision commit))
6608 (home-page "https://github.com/andy128k/cl-gobject-introspection")
6609 (source
6610 (origin
6611 (method git-fetch)
6612 (uri (git-reference
6613 (url home-page)
6614 (commit commit)))
6615 (file-name (git-file-name "cl-gobject-introspection" version))
6616 (sha256
6617 (base32 "0iw8fciydh9bi2svq30hi029df16arpspk0mjzh0cm1c6kjm9dcj"))))
6618 (build-system asdf-build-system/sbcl)
6619 (inputs
6620 (list glib
6621 gobject-introspection
6622 sbcl-alexandria
6623 sbcl-cffi
6624 sbcl-iterate
6625 sbcl-trivial-garbage))
6626 (native-inputs
6627 (list sbcl-fiveam))
6628 (arguments
6629 '(#:phases
6630 (modify-phases %standard-phases
6631 (add-after 'unpack 'fix-paths
6632 (lambda* (#:key inputs #:allow-other-keys)
6633 (substitute* "src/init.lisp"
6634 (("libgobject-2\\.0\\.so")
6635 (search-input-file inputs "/lib/libgobject-2.0.so"))
6636 (("libgirepository-1\\.0\\.so")
6637 (search-input-file inputs
6638 "/lib/libgirepository-1.0.so"))))))))
6639 (synopsis "Common Lisp bindings to GObject Introspection")
6640 (description
6641 "This library is a bridge between Common Lisp and GObject
6642Introspection, which enables Common Lisp programs to access the full interface
6643of C+GObject libraries without the need of writing dedicated bindings.")
6644 (license (list license:bsd-3
6645 ;; Tests are under a different license.
6646 license:llgpl)))))
6647
6648(define-public cl-gobject-introspection
6649 (sbcl-package->cl-source-package sbcl-cl-gobject-introspection))
6650
6651(define-public ecl-cl-gobject-introspection
6652 (sbcl-package->ecl-package sbcl-cl-gobject-introspection))
6653
6654(define-public sbcl-cl-gobject-introspection-wrapper
6655 (let ((commit "2d197cba7e7d734ac8a2e181e5e709e5b218bada")
6656 (revision "1"))
6657 (package
6658 (name "sbcl-cl-gobject-introspection-wrapper")
6659 (version (git-version "1.0.0" revision commit))
6660 (source
6661 (origin
6662 (method git-fetch)
6663 (uri (git-reference
6664 (url "https://github.com/bohonghuang/cl-gobject-introspection-wrapper")
6665 (commit commit)))
6666 (file-name (git-file-name "cl-gobject-introspection-wrapper" version))
6667 (sha256
6668 (base32 "05np2zs5806ib6qfz7d6knyaz6llxgwvjqavl1fsz5hcga40296s"))))
6669 (build-system asdf-build-system/sbcl)
6670 (inputs
6671 (list sbcl-alexandria
6672 sbcl-cl-gobject-introspection
6673 sbcl-cl-ppcre))
6674 (home-page
6675 "https://github.com/bohonghuang/cl-gobject-introspection-wrapper")
6676 (synopsis
6677 "Wrap and call GObject Introspection FFI function in Common Lisp")
6678 (description
6679 "This library converts the elements from GObject Introspection into
6680Common Lisp-style definitions, based on cl-gobject-introspection.")
6681 (license license:lgpl3+))))
6682
6683(define-public cl-gobject-introspection-wrapper
6684 (sbcl-package->cl-source-package sbcl-cl-gobject-introspection-wrapper))
6685
6686(define-public ecl-cl-gobject-introspection-wrapper
6687 (sbcl-package->ecl-package sbcl-cl-gobject-introspection-wrapper))
6688
6689(define-public sbcl-cl-gopher
6690 (let ((commit "0899e7fa2134206f9d9778c7d53c49b7a59ff070")
6691 (revision "3"))
6692 (package
6693 (name "sbcl-cl-gopher")
6694 (version (git-version "0.0.0" revision commit))
6695 (source
6696 (origin
6697 (method git-fetch)
6698 (uri (git-reference
6699 (url "https://github.com/knusbaum/cl-gopher")
6700 (commit commit)))
6701 (file-name (git-file-name "cl-gopher" version))
6702 (sha256
6703 (base32 "1ky4s33m5d0wvdaqji12pxr93qqfl5x62zjp3m4ihbdj0ws3yw2f"))
6704 (snippet
6705 '(begin
6706 ;; These files are mostly examples (that assume Quicklisp) which
6707 ;; drag the SBCL package into the CL package.
6708 (for-each delete-file
6709 '("cl-gopher-network.lsh"
6710 "cl-gopher-start.lsh"))
6711 #t))))
6712 (build-system asdf-build-system/sbcl)
6713 (inputs
6714 (list sbcl-bordeaux-threads
6715 sbcl-drakma
6716 sbcl-flexi-streams
6717 sbcl-quri
6718 sbcl-split-sequence
6719 sbcl-usocket))
6720 (home-page "https://github.com/knusbaum/cl-gopher")
6721 (synopsis "Gopher protocol library in Common Lisp")
6722 (description
6723 "@code{cl-gopher} is a Common Lisp library for interacting with the
6724Gopher protocol.
6725
6726It is suitable for building both clients and servers, and provides a sample
6727client.")
6728 (license license:bsd-2))))
6729
6730(define-public cl-gopher
6731 (sbcl-package->cl-source-package sbcl-cl-gopher))
6732
6733(define-public ecl-cl-gopher
6734 (sbcl-package->ecl-package sbcl-cl-gopher))
6735
6736(define-public sbcl-cl-graph
6737 (let ((commit "c617de35390cb02db88bc5b5febffafdb8947ae8")
6738 (revision "2"))
6739 (package
6740 (name "sbcl-cl-graph")
6741 (version (git-version "0.10.2" revision commit))
6742 (source
6743 (origin
6744 (method git-fetch)
6745 (uri (git-reference
6746 (url "https://github.com/hraban/cl-graph")
6747 (commit commit)))
6748 (file-name (git-file-name "cl-graph" version))
6749 (sha256
6750 (base32 "0g1abkph9zb0m9zz6q2471ml9q9acdhwyapk8ra3bisqpwlxvpyf"))))
6751 (build-system asdf-build-system/sbcl)
6752 (arguments
6753 ;; TODO: (Sharlatan-20221118T215839+0000): Tests failed
6754 ;;
6755 ;; https://github.com/gwkkwg/cl-graph/issues/17
6756 ;;
6757 `(#:tests? #f
6758 #:asd-systems '("cl-graph" "cl-graph+hu.dwim.graphviz")))
6759 (native-inputs
6760 (list sbcl-lift sbcl-moptilities))
6761 (inputs
6762 (list sbcl-cl-containers
6763 sbcl-cl-mathstats
6764 sbcl-dynamic-classes
6765 sbcl-hu.dwim.graphviz
6766 sbcl-metabang-bind
6767 sbcl-metacopy
6768 sbcl-metatilities-base))
6769 (home-page "https://github.com/gwkkwg/cl-graph")
6770 (synopsis "Graph manipulation utilities for Common Lisp")
6771 (description
6772 "This package provides a Common Lisp library for manipulating graphs
6773and running graph algorithms.")
6774 (license license:expat))))
6775
6776(define-public cl-cl-graph
6777 (sbcl-package->cl-source-package sbcl-cl-graph))
6778
6779;; NOTE: (Sharlatan-20221118T214734+0000): No ECL support
6780;;
6781;; ecl-cl-graph
6782
6783(define-public sbcl-cl-grnm
6784 (let ((commit "778a312e9eb3d3de7541457b516ea3d9055a15aa")
6785 (revision "0"))
6786 (package
6787 (name "sbcl-cl-grnm")
6788 (version (git-version "0.1.0" revision commit))
6789 (source
6790 (origin
6791 (method git-fetch)
6792 (uri (git-reference
6793 (url "https://github.com/quil-lang/cl-grnm")
6794 (commit commit)))
6795 (file-name (git-file-name "cl-grnm" version))
6796 (sha256
6797 (base32 "1hb5n37n3x2ylrghcqsia2g9a6f5wg24l659jiz4ncpi5bsv4m3s"))))
6798 (build-system asdf-build-system/sbcl)
6799 (synopsis "Common Lisp implementation of (grid restrained) Nelder-Mead")
6800 (description
6801 "These common lisp sources contain two variants of the Nelder-Mead
6802algorithm. The original algorithm and a provably convergent, reliable variant
6803by A. Bürmen et al, called the @acronym{GRNMA, Grid Restrained Nelder Mead
6804Algorithm}.")
6805 (home-page "https://github.com/quil-lang/cl-grnm")
6806 (license license:expat))))
6807
6808(define-public cl-grnm
6809 (sbcl-package->cl-source-package sbcl-cl-grnm))
6810
6811(define-public ecl-cl-grnm
6812 (sbcl-package->ecl-package sbcl-cl-grnm))
6813
6814(define-public sbcl-cl-gserver
6815 (package
6816 (name "sbcl-cl-gserver")
6817 (version "1.8.0")
6818 (source
6819 (origin
6820 (method git-fetch)
6821 (uri (git-reference
6822 (url "https://github.com/mdbergmann/cl-gserver")
6823
6824 ;; The "1.8.0" tag must have been moved from
6825 ;; c83d92a66102faa514b546029a9bd2078b95dc0f to
6826 ;; 90832f02f0556463e332cd055c3c1be58f323aea, 22 commits later!
6827 (commit "c83d92a66102faa514b546029a9bd2078b95dc0f")))
6828 (file-name (git-file-name "cl-gserver" version))
6829 (sha256
6830 (base32 "1bfz7z8v417dvsp1jz76ir3ihcs8g7zis2d56xx1dpzqzjd95g7z"))))
6831 (build-system asdf-build-system/sbcl)
6832 (inputs
6833 (list sbcl-alexandria
6834 sbcl-bordeaux-threads
6835 sbcl-lparallel
6836 sbcl-cl-speedy-queue
6837 sbcl-log4cl
6838 sbcl-cl-str
6839 sbcl-blackbird
6840 sbcl-cl-hamt
6841 sbcl-binding-arrows
6842 sbcl-atomics))
6843 (native-inputs
6844 (list sbcl-fiveam sbcl-cl-mock))
6845 (home-page "https://mdbergmann.github.io/cl-gserver/index.html")
6846 (synopsis "Actor framework for easy access to state and async operations")
6847 (description
6848 "@code{cl-gserver} is a 'message passing' library / framework with actors
6849similar to Erlang or Akka. It supports creating reactive systems for parallel
6850computing and event based message handling.")
6851 (license license:agpl3)))
6852
6853(define-public cl-gserver
6854 (sbcl-package->cl-source-package sbcl-cl-gserver))
6855
6856(define-public ecl-cl-gserver
6857 (sbcl-package->ecl-package sbcl-cl-gserver))
6858
6859(define-public sbcl-cl-gss
6860 (let ((commit "60086f4fd3b82316352e7f2288edbd58f03e08c5")
6861 (revision "1"))
6862 (package
6863 (name "sbcl-cl-gss")
6864 (version (git-version "0.0.0" revision commit))
6865 (source
6866 (origin
6867 (method git-fetch)
6868 (uri (git-reference
6869 (url "https://github.com/lokedhs/cl-gss")
6870 (commit commit)))
6871 (file-name (git-file-name "cl-gss" version))
6872 (sha256
6873 (base32 "0zhxxn3zarird255s9i56bz0fm6dkv00mn8bbsjrhskg3wpcg4pb"))))
6874 (build-system asdf-build-system/sbcl)
6875 (arguments
6876 (list
6877 #:phases
6878 #~(modify-phases %standard-phases
6879 (add-after 'unpack 'patch-gss-lib-path
6880 (lambda* (#:key inputs #:allow-other-keys)
6881 (substitute* "src/functions.lisp"
6882 (("libgssapi_krb5.so")
6883 (search-input-file inputs "/lib/libgssapi_krb5.so"))))))))
6884 (inputs
6885 (list mit-krb5
6886 sbcl-cffi
6887 sbcl-trivial-garbage
6888 sbcl-trivial-utf-8))
6889 (home-page "https://github.com/lokedhs/cl-gss")
6890 (synopsis "Common Lisp CFFI bindings to Generic Security Service (GSS)")
6891 (description
6892 "This package provides Common Lisp bindings to GSSAPI, which is
6893designed to provide a standard API to authentication services. The API itself
6894is generic, and the system can provide different underlying implementations.
6895The most common one is Kerberos, which has several implementations, the most
6896common of which is probably Active Directory.")
6897 (license license:bsd-3))))
6898
6899(define-public cl-gss
6900 (sbcl-package->cl-source-package sbcl-cl-gss))
6901
6902(define-public ecl-cl-gss
6903 (sbcl-package->ecl-package sbcl-cl-gss))
6904
6905(define-public sbcl-cl-gtk4
6906 (let ((commit "b3e69daf2f96e69881b053046bbe8544a54e087f")
6907 (revision "3"))
6908 (package
6909 (name "sbcl-cl-gtk4")
6910 (version (git-version "1.0.0" revision commit))
6911 (source
6912 (origin
6913 (method git-fetch)
6914 (uri (git-reference
6915 (url "https://github.com/bohonghuang/cl-gtk4")
6916 (commit commit)))
6917 (file-name (git-file-name "cl-gtk4" version))
6918 (sha256
6919 (base32 "17fk4sr5pfydr977a8mni9l5ir425fxs48sdh1xk9d6brp2p3d7m"))))
6920 (build-system asdf-build-system/sbcl)
6921 (arguments
6922 '(#:asd-systems '("cl-gtk4" "cl-gdk4")))
6923 ;; propagate because it at least requires the typelib files at runtime
6924 (propagated-inputs (list gtk))
6925 (inputs
6926 (list gobject-introspection
6927 sbcl-cl-glib
6928 sbcl-cl-gobject-introspection-wrapper))
6929 (home-page "https://github.com/bohonghuang/cl-gtk4")
6930 (synopsis "GTK4 bindings for Common Lisp")
6931 (description
6932 "This library provides GTK4 bindings for Common Lisp via Gobject
6933Introspection, in the cl-gtk4 ASDF system.")
6934 (license license:lgpl3))))
6935
6936(define-public cl-gtk4
6937 (sbcl-package->cl-source-package sbcl-cl-gtk4))
6938
6939(define-public ecl-cl-gtk4
6940 (sbcl-package->ecl-package sbcl-cl-gtk4))
6941
6942(define-public sbcl-cl-hamt
6943 ;; No release
6944 (let ((commit "7a99eaaca1f952029def9ad5a2b80a612a712208"))
6945 (package
6946 (name "sbcl-cl-hamt")
6947 (version (git-version "0.0.0" "1" commit))
6948 (source
6949 (origin
6950 (method git-fetch)
6951 (uri (git-reference
6952 (url "https://github.com/danshapero/cl-hamt/")
6953 (commit commit)))
6954 (file-name (git-file-name name version))
6955 (sha256
6956 (base32 "1ycbd73ykfj5j9sdhlzamyv18qbjj6xqf7fhm4fa0nsyr6sr3rf5"))))
6957 (build-system asdf-build-system/sbcl)
6958 (inputs
6959 (list sbcl-cl-murmurhash))
6960 (native-inputs
6961 (list sbcl-fiveam))
6962 (home-page "https://github.com/danshapero/cl-hamt")
6963 (synopsis "Dictionary & set data structure using hash array-mapped tries")
6964 (description
6965 "This library provides purely functional dictionaries and sets in
6966Common Lisp based on the hash array-mapped trie data structure.")
6967 (license license:bsd-3))))
6968
6969(define-public cl-hamt
6970 (sbcl-package->cl-source-package sbcl-cl-hamt))
6971
6972(define-public ecl-cl-hamt
6973 (sbcl-package->ecl-package sbcl-cl-hamt))
6974
6975(define-public sbcl-cl-hash-util
6976 (let ((commit "7f88cb7579b2af8c21022554f46dddd6ce6a5fc2")
6977 (revision "0"))
6978 (package
6979 (name "sbcl-cl-hash-util")
6980 (version (git-version "0.1.7" revision commit))
6981 (source
6982 (origin
6983 (method git-fetch)
6984 (uri (git-reference
6985 (url "https://github.com/orthecreedence/cl-hash-util")
6986 (commit commit)))
6987 (file-name (git-file-name name commit))
6988 (sha256
6989 (base32 "1xab7v2mav241rs8w68qmg485g4f75nrac3hjcnm0cb19ickbs1m"))))
6990 (build-system asdf-build-system/sbcl)
6991 (arguments
6992 (list
6993 #:asd-systems ''("cl-hash-util")))
6994 (native-inputs
6995 (list sbcl-fiveam))
6996 (inputs
6997 (list))
6998 (home-page "https://github.com/orthecreedence/cl-hash-util")
6999 (synopsis "Small hash utility library for Common Lisp")
7000 (description "Very basic library for dealing with CL's hash tables. The
7001idea was spawned through working with enough JSON APIs and config files, causing
7002a lot of headaches in the process.")
7003 (license license:expat))))
7004
7005(define-public ecl-cl-hash-util
7006 (sbcl-package->ecl-package sbcl-cl-hash-util))
7007
7008(define-public cl-hash-util
7009 (sbcl-package->cl-source-package sbcl-cl-hash-util))
7010
7011(define-public sbcl-cl-heap
7012 (package
7013 (name "sbcl-cl-heap")
7014 (version "0.1.6")
7015 (source
7016 (origin
7017 (method url-fetch)
7018 (uri (string-append "https://common-lisp.net/project/cl-heap/releases/"
7019 "cl-heap_" version ".tar.gz"))
7020 (sha256
7021 (base32
7022 "163hb07p2nxz126rpq3cj5dyala24n0by5i5786n2qcr1w0bak4i"))))
7023 (build-system asdf-build-system/sbcl)
7024 (native-inputs
7025 (list sbcl-xlunit))
7026 (arguments
7027 '(#:asd-test-systems '("cl-heap-tests")))
7028 (synopsis "Heap and priority queue data structures for Common Lisp")
7029 (description
7030 "CL-HEAP provides various implementations of heap data structures (a
7031binary heap and a Fibonacci heap) as well as an efficient priority queue.")
7032 (home-page "https://common-lisp.net/project/cl-heap/")
7033 (license license:gpl3+)))
7034
7035(define-public cl-heap
7036 (sbcl-package->cl-source-package sbcl-cl-heap))
7037
7038(define-public ecl-cl-heap
7039 (sbcl-package->ecl-package sbcl-cl-heap))
7040
7041(define-public sbcl-cl-hooks
7042 (let ((commit "5b638083f3b4f1221a52631d9c8a0a265565cac7")
7043 (revision "1"))
7044 (package
7045 (name "sbcl-cl-hooks")
7046 (build-system asdf-build-system/sbcl)
7047 (version (git-version "0.2.1" revision commit))
7048 (home-page "https://github.com/scymtym/architecture.hooks")
7049 (source
7050 (origin
7051 (method git-fetch)
7052 (uri (git-reference
7053 (url home-page)
7054 (commit commit)))
7055 (file-name (git-file-name name version))
7056 (sha256
7057 (base32
7058 "0bg3l0a28lw5gqqjp6p6b5nhwqk46sgkb7184w5qbfngw1hk8x9y"))))
7059 (inputs
7060 (list sbcl-alexandria sbcl-let-plus sbcl-trivial-garbage
7061 sbcl-closer-mop))
7062 (native-inputs
7063 (list sbcl-fiveam))
7064 (synopsis "Hooks extension point mechanism (as in Emacs) for Common Lisp")
7065 (description "A hook, in the present context, is a certain kind of
7066extension point in a program that allows interleaving the execution of
7067arbitrary code with the execution of a the program without introducing any
7068coupling between the two. Hooks are used extensively in the extensible editor
7069Emacs.
7070
7071In the Common LISP Object System (CLOS), a similar kind of extensibility is
7072possible using the flexible multi-method dispatch mechanism. It may even seem
7073that the concept of hooks does not provide any benefits over the possibilities
7074of CLOS. However, there are some differences:
7075
7076@itemize
7077
7078@item There can be only one method for each combination of specializers and
7079qualifiers. As a result this kind of extension point cannot be used by
7080multiple extensions independently.
7081@item Removing code previously attached via a @code{:before}, @code{:after} or
7082@code{:around} method can be cumbersome.
7083@item There could be other or even multiple extension points besides @code{:before}
7084and @code{:after} in a single method.
7085@item Attaching codes to individual objects using eql specializers can be
7086cumbersome.
7087@item Introspection of code attached a particular extension point is
7088cumbersome since this requires enumerating and inspecting the methods of a
7089generic function.
7090@end itemize
7091
7092This library tries to complement some of these weaknesses of method-based
7093extension-points via the concept of hooks.")
7094 (license license:llgpl))))
7095
7096(define-public cl-hooks
7097 (sbcl-package->cl-source-package sbcl-cl-hooks))
7098
7099(define-public ecl-cl-hooks
7100 (sbcl-package->ecl-package sbcl-cl-hooks))
7101
7102(define-public sbcl-cl-html-diff
7103 (let ((commit "5a0b39d1c524278d6f60851d7786bb2585614310")
7104 (revision "0"))
7105 (package
7106 (name "sbcl-cl-html-diff")
7107 (version (git-version "0.1" revision commit))
7108 (source
7109 (origin
7110 (method git-fetch)
7111 (uri (git-reference
7112 (url "https://github.com/wiseman/cl-html-diff")
7113 (commit commit)))
7114 (file-name
7115 (git-file-name name version))
7116 (sha256
7117 (base32 "1varnijivzd4jpimn1cz8p5ks713zzha5cgl4vmb0xr8ahravwzb"))))
7118 (build-system asdf-build-system/sbcl)
7119 (inputs
7120 (list sbcl-cl-difflib))
7121 (home-page "https://github.com/wiseman/cl-html-diff")
7122 (synopsis "Generate a human-readable diff of two HTML documents")
7123 (description
7124 "A Common Lisp library for generating a human-readable diff of two
7125HTML documents.")
7126 (license license:expat))))
7127
7128(define-public cl-html-diff
7129 (sbcl-package->cl-source-package sbcl-cl-html-diff))
7130
7131(define-public ecl-cl-html-diff
7132 (sbcl-package->ecl-package sbcl-cl-html-diff))
7133
7134(define-public sbcl-cl-html5-parser
7135 (let ((commit "74a92eb3a183a0afd089ea33350e816e6b9aeefa")
7136 (revision "1"))
7137 (package
7138 (name "sbcl-cl-html5-parser")
7139 (version (git-version "0.0.0" revision commit))
7140 (source
7141 (origin
7142 (method git-fetch)
7143 (uri (git-reference
7144 (url "https://github.com/rotatef/cl-html5-parser")
7145 (commit commit)))
7146 (file-name (git-file-name "cl-html5-parser" version))
7147 (sha256
7148 (base32 "04if61wigylsmn996rbfl8ylsd0d9hzdmg7p2wiglncibjzcl5k9"))))
7149 (build-system asdf-build-system/sbcl)
7150 (native-inputs
7151 (list sbcl-json-streams sbcl-split-sequence sbcl-stefil))
7152 (inputs
7153 (list sbcl-cl-ppcre sbcl-flexi-streams sbcl-string-case))
7154 (synopsis "HTML5 parser for Common Lisp")
7155 (description "This a Common Lisp library to parse HTML5 documents.")
7156 (home-page "https://github.com/rotatef/cl-html5-parser")
7157 (license license:lgpl3+))))
7158
7159(define-public cl-html5-parser
7160 (sbcl-package->cl-source-package sbcl-cl-html5-parser))
7161
7162(define-public ecl-cl-html5-parser
7163 (sbcl-package->ecl-package sbcl-cl-html5-parser))
7164
7165(define-public sbcl-cl-https-everywhere
7166 ;; No release.
7167 ;; Don't forget to update the https-everywhere input.
7168 (let ((commit "cbcc73b985a5b1c0ce0d4ec38bc982a0538d4bd8"))
7169 (package
7170 (name "sbcl-cl-https-everywhere")
7171 (version (git-version "0.0.0" "1" commit))
7172 (source
7173 (origin
7174 (method git-fetch)
7175 (uri (git-reference
7176 (url "https://github.com/ruricolist/cl-https-everywhere/")
7177 (commit commit)))
7178 (file-name (git-file-name name version))
7179 (sha256
7180 (base32 "1wcvx1icwym1ncd6wl1wxzkyyndrm796caalbklvjd4a2cbl3xxi"))))
7181 (build-system asdf-build-system/sbcl)
7182 (inputs
7183 `(("alexandria" ,sbcl-alexandria)
7184 ("global-vars" ,sbcl-global-vars)
7185 ("parenscript" ,sbcl-parenscript)
7186 ("cl-markdown" ,sbcl-cl-markdown)
7187 ("cl-tld" ,sbcl-cl-tld)
7188 ("fxml" ,sbcl-fxml)
7189 ("overlord" ,sbcl-overlord)
7190 ("ppcre" ,sbcl-cl-ppcre)
7191 ("serapeum" ,sbcl-serapeum)
7192 ("trivial-gray-streams" ,sbcl-trivial-gray-streams)
7193 ("vernacular" ,sbcl-vernacular)))
7194 (native-inputs
7195 `(("fiveam" ,sbcl-fiveam)
7196 ("https-everywhere"
7197 ,(let ((version "2021.7.13"))
7198 (origin
7199 (method git-fetch)
7200 (uri (git-reference
7201 (url "https://github.com/EFForg/https-everywhere")
7202 (commit version)))
7203 (file-name (git-file-name "https-everywhere" version))
7204 (sha256
7205 (base32
7206 "1k5gj29imhxf47sv3d8rxyrgr6k65scp2fm040va3nfshayslzia")))))))
7207 (arguments
7208 `(#:phases
7209 (modify-phases %standard-phases
7210 (add-after 'unpack 'link-https-everywhere-repo
7211 (lambda* (#:key inputs #:allow-other-keys)
7212 (let ((https-everywhere (assoc-ref inputs "https-everywhere")))
7213 (symlink https-everywhere "https-everywhere"))))
7214 (add-after 'unpack 'fix-overlord-build
7215 ;; Upstream bugs? See
7216 ;; https://github.com/ruricolist/cl-https-everywhere/issues/1.
7217 (lambda* (#:key outputs #:allow-other-keys)
7218 (let* ((out (assoc-ref outputs "out"))
7219 (rulesets.xml (string-append out "/share/common-lisp/" (%lisp-type)
7220 "/cl-https-everywhere/rulesets.xml")))
7221 (substitute* "build.lisp"
7222 (("\\(depends-on https-everywhere-version\\)") "")
7223 ;; Don't rebuild the rulesets just because the timestamp is epoch.
7224 (("\\(vernacular:require-default :cl-https-everywhere/rulesets-file \"rulesets.xml\"\\)")
7225 (format #f "(if (uiop:file-exists-p ~s)
7226 (compile-rulesets ~s)
7227 (vernacular:require-default :cl-https-everywhere/rulesets-file \"rulesets.xml\"))"
7228 rulesets.xml
7229 rulesets.xml))
7230 (("\\(uiop:parse-unix-namestring \"https-everywhere/src/chrome/content/rules/\\*\\.xml\")")
7231 "\"https-everywhere/src/chrome/content/rules/*.xml\"")
7232 (("\\(out temp :external-format :utf-8\\)")
7233 "(out temp :external-format :utf-8 :if-exists :supersede)")))
7234 #t)))))
7235 (home-page "https://github.com/ruricolist/cl-https-everywhere/")
7236 (synopsis "Use HTTPS Everywhere rules from Lisp")
7237 (description
7238 "CL-HTTPS-EVERYWHERE parses HTTPS Everywhere rulesets and makes them
7239available for use in Lisp programs.")
7240 (license (list license:expat
7241 ;; For the ruleset
7242 license:gpl2+)))))
7243
7244(define-public cl-https-everywhere
7245 (sbcl-package->cl-source-package sbcl-cl-https-everywhere))
7246
7247(define-public sbcl-cl-i18n
7248 (let ((commit "acb162a12dac50fc46d83da8934fce85d19e31c4")
7249 (revision "3"))
7250 (package
7251 (name "sbcl-cl-i18n")
7252 (version (git-version "0.5.5" revision commit))
7253 (source
7254 (origin
7255 (method git-fetch)
7256 (uri (git-reference
7257 (url "https://codeberg.org/cage/cl-i18n")
7258 (commit commit)))
7259 (file-name (git-file-name "cl-i18n" version))
7260 (sha256
7261 (base32 "1y29cirmlyc406a45sdx39spvnjzbs772c977075ccicz46qaxz7"))))
7262 (build-system asdf-build-system/sbcl)
7263 (inputs
7264 (list sbcl-alexandria sbcl-babel sbcl-cl-ppcre-unicode))
7265 (synopsis "Internationalisation framework for Common Lisp")
7266 (description
7267 "This is a Gettext-style internationalisation framework for Common
7268Lisp.")
7269 (home-page "https://codeberg.org/cage/cl-i18n")
7270 (license license:llgpl))))
7271
7272(define-public cl-i18n
7273 (sbcl-package->cl-source-package sbcl-cl-i18n))
7274
7275(define-public ecl-cl-i18n
7276 (sbcl-package->ecl-package sbcl-cl-i18n))
7277
7278(define-public sbcl-cl-iconv
7279 (let ((commit "54900c3f00e19da15a9c65451bddde839d0a7f75")
7280 (revision "0"))
7281 (package
7282 (name "sbcl-cl-iconv")
7283 (version (git-version "0.3" revision commit))
7284 (source
7285 (origin
7286 (method git-fetch)
7287 (uri (git-reference
7288 (url "https://github.com/quek/cl-iconv")
7289 (commit commit)))
7290 (file-name (git-file-name name version))
7291 (sha256
7292 (base32 "1lpw95c02inifhdh9kkab9q92i5w9zd788dww1wly2p0a6kyx9wg"))))
7293 (build-system asdf-build-system/sbcl)
7294 ;; The project is called cl-iconv but the system is declared as iconv.
7295 (arguments
7296 '(#:asd-systems '("iconv")
7297 #:phases
7298 (modify-phases %standard-phases
7299 (add-after 'unpack 'fix-paths
7300 (lambda* (#:key inputs #:allow-other-keys)
7301 (substitute* "iconv.lisp"
7302 (("libiconv.so")
7303 (search-input-file inputs "/lib/libiconv.so"))))))))
7304 (native-inputs (list sbcl-ptester))
7305 (inputs (list libiconv sbcl-cffi))
7306 (home-page "https://github.com/quek/cl-iconv")
7307 (synopsis "@command{iconv} library for Common Lisp")
7308 (description
7309 "This package provides CFFI bindings to convert between different
7310character encodings using iconv.")
7311 (license license:bsd-3))))
7312
7313(define-public cl-iconv
7314 (sbcl-package->cl-source-package sbcl-cl-iconv))
7315
7316(define-public ecl-cl-iconv
7317 (sbcl-package->ecl-package sbcl-cl-iconv))
7318
7319(define-public sbcl-cl-indentify
7320 (let ((commit "eb770f434defa4cd41d84bca822428dfd0dbac53"))
7321 (package
7322 (name "sbcl-cl-indentify")
7323 (version (git-version "0.1" "1" commit))
7324 (source
7325 (origin
7326 (method git-fetch)
7327 (uri (git-reference
7328 (url "https://github.com/yitzchak/cl-indentify")
7329 (commit commit)))
7330 (file-name (git-file-name name commit))
7331 (sha256
7332 (base32 "0ha36bhg474vr76vfhr13szc8cfdj1ickg92k1icz791bqaqg67p"))))
7333 (build-system asdf-build-system/sbcl)
7334 (inputs
7335 (list sbcl-alexandria sbcl-command-line-arguments
7336 sbcl-trivial-gray-streams))
7337 (native-inputs
7338 (list sbcl-trivial-escapes sbcl-rove))
7339 (home-page "https://github.com/yitzchak/cl-indentify")
7340 (synopsis "Code beautifier for Common Lisp")
7341 (description
7342 "A library and command line utility to automatically indent Common Lisp
7343source files.")
7344 (license license:expat))))
7345
7346(define-public cl-indentify
7347 (sbcl-package->cl-source-package sbcl-cl-indentify))
7348
7349(define-public ecl-cl-indentify
7350 (sbcl-package->ecl-package sbcl-cl-indentify))
7351
7352(define-public sbcl-cl-inflector
7353 (let ((commit "f1ab16919ccce3bd82a0042677d9616dde2034fe")
7354 (revision "1"))
7355 (package
7356 (name "sbcl-cl-inflector")
7357 (version (git-version "0.2" revision commit))
7358 (source
7359 (origin
7360 (method git-fetch)
7361 (uri (git-reference
7362 (url "https://github.com/AccelerationNet/cl-inflector")
7363 (commit commit)))
7364 (file-name (git-file-name name version))
7365 (sha256
7366 (base32 "1xwwlhik1la4fp984qnx2dqq24v012qv4x0y49sngfpwg7n0ya7y"))))
7367 (build-system asdf-build-system/sbcl)
7368 (native-inputs
7369 (list sbcl-lisp-unit2))
7370 (inputs
7371 (list sbcl-alexandria sbcl-cl-ppcre))
7372 (home-page "https://github.com/AccelerationNet/cl-inflector")
7373 (synopsis "Library to pluralize/singularize English and Portuguese words")
7374 (description
7375 "This is a common lisp library to easily pluralize and singularize
7376English and Portuguese words. This is a port of the ruby ActiveSupport
7377Inflector module.")
7378 (license license:expat))))
7379
7380(define-public cl-inflector
7381 (sbcl-package->cl-source-package sbcl-cl-inflector))
7382
7383(define-public ecl-cl-inflector
7384 (sbcl-package->ecl-package sbcl-cl-inflector))
7385
7386(define-public sbcl-cl-ini
7387 (let ((commit "e630acb405022a7ae11969bf908669fee1191ab7")
7388 (revision "0"))
7389 (package
7390 (name "sbcl-cl-ini")
7391 (version (git-version "0.1" revision commit))
7392 (source
7393 (origin
7394 (method git-fetch)
7395 (uri (git-reference
7396 (url "https://github.com/compufox/cl-ini")
7397 (commit commit)))
7398 (file-name (git-file-name "sbcl-cl-ini" version))
7399 (sha256
7400 (base32
7401 "12vy3gspqn0wmkyz5id1xrgv1scgb16m7pkvmbmi19vlpj2iyq7p"))))
7402 (build-system asdf-build-system/sbcl)
7403 (native-inputs (list sbcl-prove))
7404 (inputs (list sbcl-cl-str))
7405 (home-page "https://github.com/compufox/cl-ini")
7406 (synopsis "INI file parser for Common Lisp")
7407 (description
7408 "Parse INI formatted files into a Common Lisp list structure.")
7409 (license license:expat))))
7410
7411(define-public cl-ini
7412 (sbcl-package->cl-source-package sbcl-cl-ini))
7413
7414(define-public ecl-cl-ini
7415 (sbcl-package->ecl-package sbcl-cl-ini))
7416
7417(define-public sbcl-cl-inotify
7418 (let ((commit "66f29e01ec28355ebba8292411b4de90eebd76a3")
7419 (revision "0"))
7420 (package
7421 (name "sbcl-cl-inotify")
7422 (version (git-version "0.0.0" revision commit))
7423 (source
7424 (origin
7425 (method git-fetch)
7426 (uri (git-reference
7427 (url "https://github.com/Ferada/cl-inotify")
7428 (commit commit)))
7429 (file-name (git-file-name "cl-inotify" version))
7430 (sha256
7431 (base32 "0d3bvp5lqnddzhk1w9yyli03njbkhc8d129a058g0j49kgd47c7v"))))
7432 (build-system asdf-build-system/sbcl)
7433 (native-inputs (list sbcl-fiveam))
7434 (inputs
7435 (list libfixposix
7436 sbcl-binary-types
7437 sbcl-cffi
7438 sbcl-osicat
7439 sbcl-trivial-utf-8))
7440 (synopsis "Common Lisp interface to the Linux inotify API")
7441 (description
7442 "@code{cl-inotify} uses @code{cl-cffi} to provide a Common Lisp
7443interface to the Linux inotify API.")
7444 (home-page "https://github.com/Ferada/cl-inotify/")
7445 (license license:bsd-2))))
7446
7447(define-public cl-inotify
7448 (sbcl-package->cl-source-package sbcl-cl-inotify))
7449
7450(define-public ecl-cl-inotify
7451 (sbcl-package->ecl-package sbcl-cl-inotify))
7452
7453(define-public sbcl-cl-interpol
7454 (let ((commit "70a1137f41dd8889004dbab9536b1adeac2497aa")
7455 (revision "1"))
7456 (package
7457 (name "sbcl-cl-interpol")
7458 (version (git-version "0.2.7" revision commit))
7459 (source
7460 (origin
7461 (method git-fetch)
7462 (uri (git-reference
7463 (url "https://github.com/edicl/cl-interpol")
7464 (commit commit)))
7465 (file-name (git-file-name "cl-interpol" version))
7466 (sha256
7467 (base32
7468 "1kr00zf62m7la7rxa2m5w49r9cyzamc106hvjcc8ffmi7a4jw490"))))
7469 (build-system asdf-build-system/sbcl)
7470 (inputs
7471 (list sbcl-cl-unicode sbcl-named-readtables))
7472 (native-inputs
7473 (list sbcl-flexi-streams))
7474 (synopsis "String interpolation for Common Lisp")
7475 (description
7476 "CL-INTERPOL is a library for Common Lisp which modifies the
7477reader so that you can have interpolation within strings similar to
7478Perl or Unix Shell scripts. It also provides various ways to insert
7479arbitrary characters into literal strings even if your editor/IDE
7480doesn't support them.")
7481 (home-page "https://edicl.github.io/cl-interpol/")
7482 (license license:bsd-3))))
7483
7484(define-public cl-interpol
7485 (sbcl-package->cl-source-package sbcl-cl-interpol))
7486
7487(define-public ecl-cl-interpol
7488 (sbcl-package->ecl-package sbcl-cl-interpol))
7489
7490(define-public sbcl-cl-ipfs-api2
7491 (let ((commit "3ee52c80023bcc662f7d01276ea0a5814bd0011b")
7492 (revision "0"))
7493 (package
7494 (name "sbcl-cl-ipfs-api2")
7495 (version (git-version "0.51" revision commit))
7496 (source
7497 (origin
7498 (method git-fetch)
7499 (uri (git-reference
7500 (url "https://github.com/JadedCtrl/cl-ipfs-api2")
7501 (commit commit)))
7502 (file-name (git-file-name "cl-ipfs-api2" version))
7503 (sha256
7504 (base32 "1h0csxk4db1hid793mk5kz3nbjyl7z4ic1zk2wy46k1vz5lnnsph"))))
7505 (build-system asdf-build-system/sbcl)
7506 (arguments
7507 '(#:tests? #f)) ; There are no tests.
7508 (inputs
7509 (list sbcl-arnesi
7510 sbcl-drakma
7511 sbcl-yason))
7512 (home-page "https://github.com/JadedCtrl/cl-ipfs-api2/")
7513 (synopsis "Bindings for the IPFS HTTP API")
7514 (description
7515 "@code{cl-sbcl-cl-ipfs-api2} is a pretty simple set of IPFS bindings
7516for Common Lisp, using the HTTP API for (almost) everything, except for pubsub
7517(which uses the locally installed go-ipfs program).")
7518 (license license:lgpl3))))
7519
7520(define-public cl-ipfs-api2
7521 (sbcl-package->cl-source-package sbcl-cl-ipfs-api2))
7522
7523(define-public ecl-cl-ipfs-api2
7524 (sbcl-package->ecl-package sbcl-cl-ipfs-api2))
7525
7526(define-public sbcl-cl-irc
7527 (let ((commit "963823537c7bfcda2edd4c44d172192da6722175")
7528 (revision "0"))
7529 (package
7530 (name "sbcl-cl-irc")
7531 (version (git-version "0.9.2" revision commit))
7532 (source
7533 (origin
7534 (method git-fetch)
7535 (uri (git-reference
7536 (url "https://salsa.debian.org/common-lisp-team/cl-irc.git")
7537 (commit commit)))
7538 (file-name (git-file-name "cl-irc" version))
7539 (sha256
7540 (base32 "1b3nqbb4pj377lxl47rfgrs82pidadnrc65l48bk553c2f59b52w"))))
7541 (build-system asdf-build-system/sbcl)
7542 (native-inputs
7543 (list sbcl-rt))
7544 (inputs
7545 (list sbcl-cl+ssl
7546 sbcl-flexi-streams
7547 sbcl-split-sequence
7548 sbcl-usocket))
7549 (arguments
7550 `(#:asd-test-systems '("cl-irc-test")))
7551 (synopsis "IRC client library for Common Lisp")
7552 (description "@code{cl-irc} is a Common Lisp IRC client library that
7553features (partial) DCC, CTCP and all relevant commands from the IRC
7554RFCs (RFC2810, RFC2811 and RFC2812).
7555
7556Features:
7557@itemize
7558@item implements all commands in the RFCs
7559@item extra convenience commands such as op/deop, ban, ignore, etc.
7560@item partial DCC SEND/CHAT support
7561@item event driven model with hooks makes interfacing easy
7562@item the user can keep multiple connections
7563@item all CTCP commands
7564@end itemize\n")
7565 (home-page "https://common-lisp.net/project/cl-irc/")
7566 (license license:bsd-2))))
7567
7568(define-public cl-irc
7569 (sbcl-package->cl-source-package sbcl-cl-irc))
7570
7571(define-public ecl-cl-irc
7572 (sbcl-package->ecl-package sbcl-cl-irc))
7573
7574(define-public sbcl-cl-isaac
7575 (let ((commit "9cd88f39733be753facbf361cb0e08b9e42ff8d5")
7576 (revision "0"))
7577 (package
7578 (name "sbcl-cl-isaac")
7579 (version (git-version "1.0.7" revision commit))
7580 (source
7581 (origin
7582 (method git-fetch)
7583 (uri (git-reference
7584 (url "https://github.com/thephoeron/cl-isaac")
7585 (commit commit)))
7586 (file-name (git-file-name "cl-isaac" version))
7587 (sha256
7588 (base32 "0ig1mf8iridfr7vci9gy499194h0hda0xki5s6g0y04g85ibnpw9"))))
7589 (build-system asdf-build-system/sbcl)
7590 (native-inputs (list sbcl-prove))
7591 (home-page "https://github.com/thephoeron/cl-isaac/")
7592 (synopsis "Fast cryptographic random number generators")
7593 (description "This is an optimized Common Lisp library of Bob Jenkins'
7594ISAAC-32 and ISAAC-64 algorithms, which are fast cryptographic random number
7595generators: Indirection, Shift, Accumulate, Add, and Count.")
7596 (license license:bsd-0))))
7597
7598(define-public cl-isaac
7599 (sbcl-package->cl-source-package sbcl-cl-isaac))
7600
7601(define-public ecl-cl-isaac
7602 (sbcl-package->ecl-package sbcl-cl-isaac))
7603
7604(define-public sbcl-cl-jpeg
7605 (let ((commit "ec557038128df6895fbfb743bfe8faf8ec2534af")
7606 (revision "1"))
7607 (package
7608 (name "sbcl-cl-jpeg")
7609 (version (git-version "2.8" revision commit))
7610 (source
7611 (origin
7612 (method git-fetch)
7613 (uri (git-reference
7614 (url "https://github.com/sharplispers/cl-jpeg")
7615 (commit commit)))
7616 (file-name (git-file-name name version))
7617 (sha256
7618 (base32 "1bkkiqz8fqldlj1wbmrccjsvxcwj98h6s4b6gslr3cg2wmdv5xmy"))))
7619 (build-system asdf-build-system/sbcl)
7620 (synopsis "JPEG image library for Common Lisp")
7621 (description
7622 "This is a baseline JPEG codec written in Common Lisp. It can be used
7623for reading and writing JPEG image files.")
7624 (home-page "https://github.com/sharplispers/cl-jpeg")
7625 (license license:bsd-3))))
7626
7627(define-public cl-jpeg
7628 (sbcl-package->cl-source-package sbcl-cl-jpeg))
7629
7630(define-public ecl-cl-jpeg
7631 (sbcl-package->ecl-package sbcl-cl-jpeg))
7632
7633(define-public sbcl-cl-json
7634 (package
7635 (name "sbcl-cl-json")
7636 (version "0.6.0")
7637 (source
7638 (origin
7639 (method git-fetch)
7640 (uri (git-reference
7641 (url "https://github.com/sharplispers/cl-json")
7642 (commit (string-append "v" version))))
7643 (file-name (git-file-name "cl-json" version))
7644 (sha256
7645 (base32 "12vakz47d1i7pywgb9cm2364fzykidc9m7l7b6n9lx0gn2qx9ar5"))))
7646 (build-system asdf-build-system/sbcl)
7647 (native-inputs
7648 (list sbcl-fiveam))
7649 (home-page "https://github.com/sharplispers/cl-json")
7650 (synopsis "JSON encoder and decoder for Common-Lisp")
7651 (description "@command{cl-json} provides an encoder of Lisp objects
7652to JSON format and a corresponding decoder of JSON data to Lisp
7653objects. Both the encoder and the decoder are highly customizable; at the
7654same time, the default settings ensure a very simple mode of operation,
7655similar to that provided by @command{yason} or @command{st-json}.")
7656 (license license:expat)))
7657
7658(define-public cl-json
7659 (sbcl-package->cl-source-package sbcl-cl-json))
7660
7661(define-public ecl-cl-json
7662 (sbcl-package->ecl-package sbcl-cl-json))
7663
7664(define-public sbcl-cl-json-pointer
7665 (let ((commit "f6760e2a02972783f96b92a15f801e14a6828e0c")
7666 (revision "0"))
7667 (package
7668 (name "sbcl-cl-json-pointer")
7669 (version (git-version "0.0.0" revision commit))
7670 (source
7671 (origin
7672 (method git-fetch)
7673 (uri (git-reference
7674 (url "https://github.com/y2q-actionman/cl-json-pointer")
7675 (commit commit)))
7676 (file-name (git-file-name "cl-json-pointer" version))
7677 (sha256
7678 (base32 "0b7a755wc2ghsd1pv7d32877b21h4nssp41xs017anbmj55czb2h"))))
7679 (build-system asdf-build-system/sbcl)
7680 (arguments
7681 ;; FIXME: Component "cl-json-pointer/test" not found.
7682 `(#:tests? #f
7683 #:asd-systems '("cl-json-pointer" "cl-json-pointer/synonyms")))
7684 (inputs
7685 (list sbcl-alexandria
7686 sbcl-boost-json
7687 sbcl-cl-json
7688 sbcl-closer-mop
7689 sbcl-st-json))
7690 (home-page "https://github.com/y2q-actionman/cl-json-pointer")
7691 (synopsis "JSON Pointer processor for Common Lisp")
7692 (description "
7693This package provides a JSON
7694Pointer (@url{https://tools.ietf.org/html/rfc6901,RFC6901}) implementation for
7695Common Lisp. This library aims to be independent from any JSON libraries (as much
7696as possible).")
7697 (license license:expat))))
7698
7699(define-public cl-json-pointer
7700 (sbcl-package->cl-source-package sbcl-cl-json-pointer))
7701
7702(define-public ecl-cl-json-pointer
7703 (sbcl-package->ecl-package sbcl-cl-json-pointer))
7704
7705(define-public sbcl-cl-ledger
7706 (let ((commit "b0174f5634e389fb022ae72cc527a13b719655bd")
7707 (revision "2"))
7708 (package
7709 (name "sbcl-cl-ledger")
7710 (version (git-version "4.0.0" revision commit))
7711 (source
7712 (origin
7713 (method git-fetch)
7714 (uri (git-reference
7715 (url "https://github.com/ledger/cl-ledger")
7716 (commit commit)))
7717 (file-name (git-file-name "cl-ledger" version))
7718 (sha256
7719 (base32 "02zg53j8d7lpyafif9kplp6clchz4id429j0dc5w80wvcwfal123"))))
7720 (build-system asdf-build-system/sbcl)
7721 (inputs
7722 (list sbcl-cambl
7723 sbcl-cl-ppcre
7724 sbcl-local-time
7725 sbcl-periods))
7726 (arguments
7727 (list #:phases
7728 #~(modify-phases %standard-phases
7729 (add-after 'unpack 'fix-system-definition
7730 (lambda _
7731 (substitute* "cl-ledger.asd"
7732 ((" :build-operation program-op") "")
7733 ((" :build-pathname \"cl-ledger\"") "")
7734 ((" :entry-point \"ledger::main\"") "")))))))
7735 (synopsis "Common Lisp port of the Ledger accounting system")
7736 (description
7737 "CL-Ledger is a Common Lisp port of the Ledger double-entry accounting
7738system.")
7739 (home-page "https://github.com/ledger/cl-ledger")
7740 (license license:bsd-3))))
7741
7742(define-public cl-ledger
7743 (sbcl-package->cl-source-package sbcl-cl-ledger))
7744
7745(define-public ecl-cl-ledger
7746 (sbcl-package->ecl-package sbcl-cl-ledger))
7747
7748(define-public sbcl-cl-lex
7749 (let ((commit "f2dbbe25ef553005fb402d9a6203180c3fa1093b")
7750 (revision "1"))
7751 (package
7752 (name "sbcl-cl-lex")
7753 (version (git-version "1.1.3" revision commit))
7754 (source
7755 (origin
7756 (method git-fetch)
7757 (uri (git-reference
7758 (url "https://github.com/djr7C4/cl-lex")
7759 (commit commit)))
7760 (file-name (git-file-name name version))
7761 (sha256
7762 (base32 "1kg50f76bfpfxcv4dfivq1n9a0xlsra2ajb0vd68lxwgbidgyc2y"))))
7763 (build-system asdf-build-system/sbcl)
7764 (inputs
7765 (list sbcl-cl-ppcre))
7766 (synopsis "Common Lisp macros for generating lexical analyzers")
7767 (description
7768 "This is a Common Lisp library providing a set of macros for generating
7769lexical analyzers automatically. The lexers generated using @code{cl-lex} can
7770be used with @code{cl-yacc}.")
7771 (home-page "https://github.com/djr7C4/cl-lex")
7772 (license license:gpl3))))
7773
7774(define-public cl-lex
7775 (sbcl-package->cl-source-package sbcl-cl-lex))
7776
7777(define-public ecl-cl-lex
7778 (sbcl-package->ecl-package sbcl-cl-lex))
7779
7780(define-public sbcl-cl-liballegro
7781 (let ((commit "49f632ce97fc4f835bf5d450588793234b980a64")
7782 (revision "1"))
7783 (package
7784 (name "sbcl-cl-liballegro")
7785 (version (git-version "0.2.15" revision commit))
7786 (source
7787 (origin
7788 (method git-fetch)
7789 (uri (git-reference
7790 (url "https://github.com/resttime/cl-liballegro")
7791 (commit commit)))
7792 (file-name (git-file-name name version))
7793 (sha256
7794 (base32 "0brbr7i342s0gadlnzd3a61w2b9ihhx60l19ararnc2asvyhmz7x"))))
7795 (build-system asdf-build-system/sbcl)
7796 (arguments
7797 `(#:phases
7798 (modify-phases %standard-phases
7799 (add-after 'unpack 'patch-allegro-lib-path
7800 (lambda* (#:key inputs #:allow-other-keys)
7801 (let ((allegro-lib-path (string-append
7802 (assoc-ref inputs "allegro") "/lib/")))
7803 (substitute* "src/library.lisp"
7804 (("lib \".so\"" all)
7805 (string-append "\"" allegro-lib-path "\"" " lib \".so\"")))))))))
7806 (inputs
7807 (list allegro
7808 sbcl-cffi
7809 sbcl-float-features
7810 sbcl-trivial-garbage
7811 sbcl-trivial-main-thread))
7812 (home-page "https://github.com/resttime/cl-liballegro")
7813 (synopsis "Allegro 5 game programming library bindings for Common Lisp")
7814 (description
7815 "This package provides CFFI bindings and interface to Allegro 5 game
7816developing library for Common Lisp.")
7817 (license license:zlib))))
7818
7819(define-public cl-liballegro
7820 (sbcl-package->cl-source-package sbcl-cl-liballegro))
7821
7822(define-public ecl-cl-liballegro
7823 (sbcl-package->ecl-package sbcl-cl-liballegro))
7824
7825(define-public sbcl-cl-libsvm-format
7826 (let ((commit "3300f84fd8d9f5beafc114f543f9d83417c742fb")
7827 (revision "0"))
7828 (package
7829 (name "sbcl-cl-libsvm-format")
7830 (version (git-version "0.1.0" revision commit))
7831 (source
7832 (origin
7833 (method git-fetch)
7834 (uri (git-reference
7835 (url "https://github.com/masatoi/cl-libsvm-format")
7836 (commit commit)))
7837 (file-name (git-file-name name version))
7838 (sha256
7839 (base32
7840 "0284aj84xszhkhlivaigf9qj855fxad3mzmv3zfr0qzb5k0nzwrg"))))
7841 (build-system asdf-build-system/sbcl)
7842 (native-inputs
7843 (list sbcl-prove))
7844 (inputs
7845 (list sbcl-alexandria))
7846 (synopsis "LibSVM data format reader for Common Lisp")
7847 (description
7848 "This Common Lisp library provides a fast reader for data in LibSVM
7849format.")
7850 (home-page "https://github.com/masatoi/cl-libsvm-format")
7851 (license license:expat))))
7852
7853(define-public cl-libsvm-format
7854 (sbcl-package->cl-source-package sbcl-cl-libsvm-format))
7855
7856(define-public ecl-cl-libsvm-format
7857 (sbcl-package->ecl-package sbcl-cl-libsvm-format))
7858
7859(define-public sbcl-cl-libuv
7860 (let ((commit "32100c023c518038d0670a103eaa4d50dd785d29")
7861 (revision "1"))
7862 (package
7863 (name "sbcl-cl-libuv")
7864 (version (git-version "0.1.6" revision commit))
7865 (source
7866 (origin
7867 (method git-fetch)
7868 (uri (git-reference
7869 (url "https://github.com/orthecreedence/cl-libuv")
7870 (commit commit)))
7871 (file-name (git-file-name name version))
7872 (sha256
7873 (base32
7874 "1kwix4si8a8hza34ab2k7whrh7z0yrmx39v2wc3qblv9m244jkh1"))))
7875 (build-system asdf-build-system/sbcl)
7876 (inputs
7877 (list sbcl-alexandria
7878 sbcl-cffi
7879 libuv))
7880 (arguments
7881 `(#:phases
7882 (modify-phases %standard-phases
7883 (add-after 'unpack 'fix-paths
7884 (lambda* (#:key inputs #:allow-other-keys)
7885 (substitute* "lib.lisp"
7886 (("/usr/lib/libuv.so")
7887 (search-input-file inputs "/lib/libuv.so")))))
7888 (add-after 'fix-paths 'fix-system-definition
7889 (lambda _
7890 (substitute* "cl-libuv.asd"
7891 (("#:cffi #:alexandria")
7892 "#:cffi #:cffi-grovel #:alexandria"))
7893 #t)))))
7894 (synopsis "Common Lisp bindings to libuv")
7895 (description
7896 "This library provides low-level libuv bindings for Common Lisp.")
7897 (home-page "https://github.com/orthecreedence/cl-libuv")
7898 (license license:expat))))
7899
7900(define-public cl-libuv
7901 (sbcl-package->cl-source-package sbcl-cl-libuv))
7902
7903(define-public ecl-cl-libuv
7904 (sbcl-package->ecl-package sbcl-cl-libuv))
7905
7906(define-public sbcl-cl-libxml2
7907 (let ((commit "8d03110c532c1a3fe15503fdfefe82f60669e4bd"))
7908 (package
7909 (name "sbcl-cl-libxml2")
7910 (version (git-version "0.3.4" "1" commit))
7911 (source
7912 (origin
7913 (method git-fetch)
7914 (uri (git-reference
7915 (url "https://github.com/archimag/cl-libxml2")
7916 (commit commit)))
7917 (file-name (git-file-name "cl-libxml2" version))
7918 (sha256
7919 (base32 "09049c13cfp5sc6x9lrw762jd7a9qkfq5jgngqgrzn4kn9qscarw"))))
7920 (build-system asdf-build-system/sbcl)
7921 (inputs
7922 (list sbcl-alexandria
7923 sbcl-cffi
7924 sbcl-flexi-streams
7925 sbcl-garbage-pools
7926 sbcl-iterate
7927 sbcl-metabang-bind
7928 sbcl-puri
7929 ;; Non-Lisp inputs:
7930 libxml2
7931 libxslt))
7932 (native-inputs
7933 (list sbcl-lift))
7934 (arguments
7935 `(#:tests? #f ; FIXME: Tests get stuck indefinitely
7936 #:phases
7937 (modify-phases %standard-phases
7938 (add-after 'unpack 'fix-paths
7939 (lambda* (#:key inputs outputs #:allow-other-keys)
7940 (substitute* "tree/xtree.lisp"
7941 (("libxml2.so.2")
7942 (string-append (assoc-ref inputs "libxml2") "/lib/libxml2.so")))
7943 (let ((libxslt (assoc-ref inputs "libxslt")))
7944 (substitute* "xslt/xslt.lisp"
7945 (("libxslt.so.1")
7946 (string-append libxslt "/lib/libxslt.so"))
7947 (("libexslt.so.0")
7948 (string-append libxslt "/lib/libexslt.so"))
7949 (("cllibxml2.so")
7950 (string-append (assoc-ref outputs "out") "/lib/cllibxml2.so"))))
7951 #t))
7952 (add-before 'build 'build-helper-library
7953 (lambda* (#:key inputs outputs #:allow-other-keys)
7954 (let ((prefix-dir (string-append (assoc-ref outputs "out"))))
7955 (mkdir-p (string-append prefix-dir "/lib"))
7956 (invoke "make" "-C" "foreign" "install"
7957 "INSOPTS="
7958 (string-append "PREFIX=" prefix-dir))
7959 #t)))
7960 (add-after 'unpack 'fix-tests
7961 (lambda _
7962 (substitute* '("cl-libxml2.asd" "cl-libxslt.asd" "xfactory.asd")
7963 ((" :force t") ""))
7964 #t)))))
7965 (home-page "https://web.archive.org/web/20160121073421/http://cl-libxml2.googlecode.com/svn/doc/index.html")
7966 (synopsis "High-level wrapper around libxml2 and libxslt libraries")
7967 (description
7968 "cl-libxml2 is high-level Common Lisp wrapper around the @code{libxml2}
7969and @code{libxslt} libraries.
7970
7971@itemize
7972@item Interfaces for tree manipulation (like @code{cxml-stp}).
7973@item Interface for HTML 4.0 non-validating parsers.
7974@item Specific APIs to process HTML trees, especially serialization.
7975@item XPath API.
7976@item XSLT API.
7977@item Custom URL resolvers.
7978@item XPath extension functions.
7979@item XSLT extension elements.
7980@item Translates @code{libxml2} and @code{libxslt} errors to Lisp conditions.
7981@item Extends the Common Lisp @code{iterate} library with custom drivers for
7982child nodes enumeration, etc.
7983@item The @code{XFACTORY} system provides a simple and compact syntax for XML generation.
7984@end itemize\n")
7985 (license license:llgpl))))
7986
7987(define-public cl-libxml2
7988 (sbcl-package->cl-source-package sbcl-cl-libxml2))
7989
7990(define-public ecl-cl-libxml2
7991 (sbcl-package->ecl-package sbcl-cl-libxml2))
7992
7993(define-public sbcl-cl-libyaml
7994 (let ((commit "a7fe9f68bddfd00b7ca467b65b3b41b276336843")
7995 (revision "1"))
7996 (package
7997 (name "sbcl-cl-libyaml")
7998 (version (git-version "0.1" revision commit))
7999 (source
8000 (origin
8001 (method git-fetch)
8002 (uri (git-reference
8003 (url "https://github.com/eudoxia0/cl-libyaml")
8004 (commit commit)))
8005 (file-name (git-file-name "cl-libyaml" version))
8006 (sha256
8007 (base32
8008 "06pvmackyhq03rjmihpx6w63m6cy8wx78ll5xpwwvd85bgrqq817"))))
8009 (build-system asdf-build-system/sbcl)
8010 (native-inputs
8011 (list sbcl-fiveam))
8012 (inputs
8013 (list sbcl-cffi
8014 libyaml))
8015 (arguments
8016 '(#:phases
8017 (modify-phases %standard-phases
8018 (add-after 'unpack 'fix-paths
8019 (lambda* (#:key inputs #:allow-other-keys)
8020 (substitute* "src/library.lisp"
8021 (("libyaml.so")
8022 (string-append (assoc-ref inputs "libyaml")
8023 "/lib/libyaml.so"))))))))
8024 (home-page "https://github.com/eudoxia0/cl-libyaml")
8025 (synopsis "Libyaml bindings for Common Lisp")
8026 (description
8027 "This is a binding to the libyaml library. It's not meant as
8028a full library for YAML, just a bare binding with a couple of utility macros.
8029For a YAML parser and emitter using this, check out cl-yaml.")
8030 (license license:expat))))
8031
8032(define-public cl-libyaml
8033 (sbcl-package->cl-source-package sbcl-cl-libyaml))
8034
8035(define-public ecl-cl-libyaml
8036 (sbcl-package->ecl-package sbcl-cl-libyaml))
8037
8038(define-public sbcl-cl-llog
8039 (let ((commit "4910388ad4790e2284db83ac2848662edb96cdfe")
8040 (revision "0"))
8041 (package
8042 (name "sbcl-cl-llog")
8043 (version (git-version "0.1.0" revision commit))
8044 (source
8045 (origin
8046 (method git-fetch)
8047 (uri (git-reference
8048 (url "https://github.com/atgreen/cl-llog")
8049 (commit commit)))
8050 (file-name (git-file-name "cl-llog" version))
8051 (sha256
8052 (base32 "0i5pjcsvgj8a3ih4yghwx7crwmsfgj6psyp4106c010lls8rm117"))))
8053 (build-system asdf-build-system/sbcl)
8054 (inputs
8055 (list sbcl-babel
8056 sbcl-bordeaux-threads
8057 sbcl-cl-base64
8058 sbcl-cl-ppcre
8059 sbcl-ironclad))
8060 (native-inputs
8061 (list sbcl-fiveam))
8062 (arguments
8063 ;; Build the core logger, the REPL integration and the audit-trail
8064 ;; extension; the benchmark system (trivial-benchmark) is omitted.
8065 ;; Run only the two systems that carry a real FiveAM suite.
8066 '(#:asd-systems '("llog" "llog/repl" "llog/audit")
8067 #:asd-test-systems '("llog" "llog/audit")))
8068 (home-page "https://github.com/atgreen/cl-llog")
8069 (synopsis "Structured logging framework for Common Lisp")
8070 (description
8071 "LLOG is a structured logging framework for Common Lisp with a sugared
8072and a typed API, leveled logging (trace/debug/info/warn/error/fatal/panic),
8073multiple encoders (console, JSON, s-expression and pattern) and
8074stream/file/async outputs. Optional subsystems add REPL integration and
8075tamper-evident, hash-chained audit trails.")
8076 (license license:expat))))
8077
8078(define-public cl-llog
8079 (sbcl-package->cl-source-package sbcl-cl-llog))
8080
8081(define-public ecl-cl-llog
8082 (sbcl-package->ecl-package sbcl-cl-llog))
8083
8084(define-public sbcl-cl-locale
8085 (let ((commit "0a36cc0dcf5e0a8c8bf97869cd6199980ca25eec")
8086 (revision "1"))
8087 (package
8088 (name "sbcl-cl-locale")
8089 (version (git-version "0.1.1" revision commit))
8090 (source
8091 (origin
8092 (method git-fetch)
8093 (uri (git-reference
8094 (url "https://github.com/fukamachi/cl-locale")
8095 (commit commit)))
8096 (file-name (git-file-name "cl-locale" version))
8097 (sha256
8098 (base32 "1rhannhpsw1yg1fpflam483a3w9qb1izgyvmnmiddv3dn4qsmn9p"))))
8099 (build-system asdf-build-system/sbcl)
8100 (arguments
8101 '(#:asd-systems '("cl-locale-test" "cl-locale")))
8102 (native-inputs
8103 (list sbcl-prove
8104 sbcl-flexi-streams))
8105 (inputs
8106 (list sbcl-anaphora
8107 sbcl-arnesi
8108 sbcl-cl-annot
8109 sbcl-cl-syntax))
8110 (home-page "https://github.com/fukamachi/cl-locale")
8111 (synopsis "Internalization library for Common Lisp")
8112 (description
8113 "This package provides a Common Lisp translation library similar to
8114CL-I18N and CL-L10N.")
8115 (license license:llgpl))))
8116
8117(define-public cl-locale
8118 (sbcl-package->cl-source-package sbcl-cl-locale))
8119
8120(define-public ecl-cl-locale
8121 (sbcl-package->ecl-package sbcl-cl-locale))
8122
8123(define-public sbcl-cl-log
8124 (let ((commit "8f4b766d51e02245c310526cf1e4534ce634f837")
8125 (revision "1"))
8126 (package
8127 (name "sbcl-cl-log")
8128 (version "1.0.1")
8129 (source
8130 (origin
8131 (method git-fetch)
8132 (uri (git-reference
8133 (url "https://github.com/nicklevine/cl-log")
8134 (commit commit)))
8135 (sha256
8136 (base32 "1r3z9swy1b59swvaa5b97is9ysrfmjvjjhhw56p7p5hqg93b92ak"))
8137 (file-name (git-file-name "cl-log" version))))
8138 (build-system asdf-build-system/sbcl)
8139 (synopsis "Common Lisp general purpose logging utility")
8140 (description "CL-LOG is a general purpose logging utility, loosely modelled
8141in some respects after Gary King's Log5. Its features include: logging to
8142several destinations at once, via \"messengers\", each messenger is tailored to
8143accept some log messages and reject others, and this tailoring can be changed
8144on-the-fly, very rapid processing of messages which are rejected by all
8145messengers, fully independent use of the utility by several different
8146sub-systems in an application, support for messengers which cl:format text to a
8147stream, support for messengers which do not invoke cl:format, timestamps in
8148theory accurate to internal-time-units-per-second.")
8149 (home-page "https://github.com/nicklevine/cl-log")
8150 (license license:expat))))
8151
8152(define-public cl-log
8153 (sbcl-package->cl-source-package sbcl-cl-log))
8154
8155(define-public ecl-cl-log
8156 (sbcl-package->ecl-package sbcl-cl-log))
8157
8158(define-public sbcl-cl-markdown
8159 ;; The latest changes with fixes are not released yet, see
8160 ;; https://github.com/hraban/cl-markdown/issues/9
8161 (let ((commit "3788802199228b49d0e06c3feb80c1c22af05cfc")
8162 (revision "0"))
8163 (package
8164 (name "sbcl-cl-markdown")
8165 (version (git-version "0.10.6" revision commit))
8166 (source
8167 (origin
8168 (method git-fetch)
8169 (uri (git-reference
8170 (url "https://github.com/hraban/cl-markdown")
8171 (commit commit)))
8172 (file-name (git-file-name "cl-markdown" version))
8173 (sha256
8174 (base32 "1algqwmafipyf194cx9wfhg0pdx1ppx6s444p1pm8yaycbsyla1v"))))
8175 (build-system asdf-build-system/sbcl)
8176 (native-inputs
8177 (list sbcl-lift sbcl-trivial-shell))
8178 (inputs
8179 (list sbcl-anaphora
8180 sbcl-cl-containers
8181 sbcl-cl-ppcre
8182 sbcl-dynamic-classes
8183 sbcl-metabang-bind
8184 sbcl-metatilities-base))
8185 (home-page "https://common-lisp.net/project/cl-markdown/")
8186 (synopsis "Common Lisp rewrite of Markdown")
8187 (description
8188 "This is an implementation of a Markdown parser in Common Lisp.")
8189 (license license:expat))))
8190
8191(define-public cl-markdown
8192 (sbcl-package->cl-source-package sbcl-cl-markdown))
8193
8194(define-public ecl-cl-markdown
8195 (let ((pkg (sbcl-package->ecl-package sbcl-cl-markdown)))
8196 (package
8197 (inherit pkg)
8198 (arguments
8199 ;; XXX: Tests fail with "The function LIFT::GET-BACKTRACE-AS-STRING is
8200 ;; undefined" on ECL.
8201 ;; See https://github.com/hraban/cl-markdown/issues/11
8202 '(#:tests? #f)))))
8203
8204(define-public sbcl-cl-markless
8205 (let ((commit "a0e145c03103bd3bf7e275d5ac0e19e8381eb844")
8206 (revision "1"))
8207 (package
8208 (name "sbcl-cl-markless")
8209 (version (git-version "1.1.0" revision commit))
8210 (source
8211 (origin
8212 (method git-fetch)
8213 (uri (git-reference
8214 (url "https://github.com/Shirakumo/cl-markless")
8215 (commit commit)))
8216 (file-name (git-file-name "cl-markless" version))
8217 (sha256
8218 (base32 "154ax1yk0b1035yij29c5pgfn7ifghrxy821mk68wyljg8afgvh5"))))
8219 (build-system asdf-build-system/sbcl)
8220 (native-inputs
8221 (list sbcl-parachute))
8222 (inputs
8223 (list sbcl-3bmd
8224 sbcl-babel
8225 sbcl-command-line-arguments
8226 sbcl-documentation-utils
8227 sbcl-plump
8228 sbcl-trivial-gray-streams
8229 sbcl-trivial-indent
8230 sbcl-trivial-mimes
8231 sbcl-zip))
8232 (arguments
8233 '(#:asd-systems '("cl-markless"
8234 "cl-markless-plump"
8235 "cl-markless-epub"
8236 "cl-markless-markdown"
8237 "cl-markless-standalone")))
8238 (home-page "https://shirakumo.github.io/cl-markless/")
8239 (synopsis "Parser implementation for Markless")
8240 (description "This is an implementation of the \"Markless
8241standard\" (@url{https://github.com/shirakumo/markless}) at version 1.0. It
8242handles the parsing of plaintext from a stream into an abstract syntax tree
8243composed out of strings and component objects. From there the AST can be
8244easily compiled into a target markup language like HTML.")
8245 (license license:zlib))))
8246
8247(define-public cl-markless
8248 (sbcl-package->cl-source-package sbcl-cl-markless))
8249
8250(define-public ecl-cl-markless
8251 (sbcl-package->ecl-package sbcl-cl-markless))
8252
8253(define-public sbcl-cl-markup
8254 (let ((commit "e0eb7debf4bdff98d1f49d0f811321a6a637b390"))
8255 (package
8256 (name "sbcl-cl-markup")
8257 (version (git-version "0.1" "1" commit))
8258 (source
8259 (origin
8260 (method git-fetch)
8261 (uri (git-reference
8262 (url "https://github.com/arielnetworks/cl-markup/")
8263 (commit commit)))
8264 (file-name (git-file-name "cl-markup" version))
8265 (sha256
8266 (base32
8267 "10l6k45971dl13fkdmva7zc6i453lmq9j4xax2ci6pjzlc6xjhp7"))))
8268 (build-system asdf-build-system/sbcl)
8269 (home-page "https://github.com/arielnetworks/cl-markup/")
8270 (synopsis "Markup generation library for Common Lisp")
8271 (description
8272 "A modern markup generation library for Common Lisp that features:
8273
8274@itemize
8275@item Fast (even faster through compiling the code)
8276@item Safety
8277@item Support for multiple document types (markup, xml, html, html5, xhtml)
8278@item Output with doctype
8279@item Direct output to stream
8280@end itemize\n")
8281 (license license:lgpl3+))))
8282
8283(define-public cl-markup
8284 (sbcl-package->cl-source-package sbcl-cl-markup))
8285
8286(define-public ecl-cl-markup
8287 (sbcl-package->ecl-package sbcl-cl-markup))
8288
8289(define-public sbcl-cl-mathstats
8290 (let ((commit "4df38ea1b9de069cf939919253565a9ca9538eca")
8291 (revision "1"))
8292 (package
8293 (name "sbcl-cl-mathstats")
8294 (version (git-version "0.8.2" revision commit))
8295 (source
8296 (origin
8297 (method git-fetch)
8298 (uri (git-reference
8299 (url "https://github.com/hraban/cl-mathstats")
8300 (commit commit)))
8301 (file-name (git-file-name "cl-mathstats" version))
8302 (sha256
8303 (base32 "0gsjvmkmnxc4hp5z9mkm5vsllywqyg7kx8jgz88vnx47yj3va1s8"))))
8304 (build-system asdf-build-system/sbcl)
8305 (native-inputs
8306 (list sbcl-lift))
8307 (inputs
8308 (list sbcl-cl-containers sbcl-metatilities-base))
8309 (home-page "https://github.com/hraban/cl-mathstats")
8310 (synopsis "Common Lisp collection of mathematical routines")
8311 (description
8312 "This package provides Common Lisp math and statistics routines.")
8313 (license license:expat))))
8314
8315(define-public cl-mathstats
8316 (sbcl-package->cl-source-package sbcl-cl-mathstats))
8317
8318(define-public ecl-cl-mathstats
8319 (sbcl-package->ecl-package sbcl-cl-mathstats))
8320
8321(define-public sbcl-cl-messagepack
8322 (let ((commit "8ff2060ed20677feef8ac01558690df0aeac30b6")
8323 (revision "0"))
8324 (package
8325 (name "sbcl-cl-messagepack")
8326 (version (git-version "0.0.0" revision commit))
8327 (source
8328 (origin
8329 (method git-fetch)
8330 (uri (git-reference
8331 (url "https://github.com/mbrezu/cl-messagepack")
8332 (commit commit)))
8333 (file-name (git-file-name "cl-messagepack" version))
8334 (sha256
8335 (base32 "1hjd1q18lz46k46afz94ljflp76mfr30d6z4jrsgd26y2lc4gchc"))))
8336 (build-system asdf-build-system/sbcl)
8337 (native-inputs (list sbcl-cl-json sbcl-fiveam))
8338 (inputs (list sbcl-babel sbcl-closer-mop sbcl-flexi-streams))
8339 (synopsis "Common Lisp implementation of MessagePack")
8340 (description
8341 "This is a Common Lisp implementation of the MessagePack
8342(@url{http://msgpack.org/}) serialization/deserialization format,
8343implemented according to
8344@url{http://wiki.msgpack.org/display/MSGPACK/Format+specification}.")
8345 (home-page "https://github.com/mbrezu/cl-messagepack")
8346 (license license:bsd-2))))
8347
8348(define-public cl-messagepack
8349 (sbcl-package->cl-source-package sbcl-cl-messagepack))
8350
8351(define-public ecl-cl-messagepack
8352 (sbcl-package->ecl-package sbcl-cl-messagepack))
8353
8354(define-public sbcl-cl-mime
8355 (let ((commit "d30a28e0a40393bd3af7d138daa05319ed2e9d07")
8356 (revision "1"))
8357 (package
8358 (name "sbcl-cl-mime")
8359 ;; One commit says "update to cl-mime-0.5.3", even though the .asd is at 0.5.1.
8360 (version (git-version "0.5.3" revision commit))
8361 (source
8362 (origin
8363 (method git-fetch)
8364 (uri (git-reference
8365 ;; Maintained fork according to http://www.cliki.net/CL-MIME:
8366 (url "https://github.com/40ants/cl-mime")
8367 (commit commit)))
8368 (file-name (git-file-name name version))
8369 (sha256
8370 (base32 "0qn8if0fj6vzc897pqqqs0m1y107gmzqngpqhqmwrcsp1ckj5k0v"))))
8371 (build-system asdf-build-system/sbcl)
8372 (inputs
8373 (list sbcl-cl-ppcre sbcl-cl-base64 sbcl-cl-qprint))
8374 (native-inputs
8375 (list sbcl-rove))
8376 (home-page "https://github.com/40ants/cl-mime/")
8377 (synopsis "Read and print MIME content in Common Lisp")
8378 (description
8379 "This is a Common Lisp library for reading and printing MIME content.
8380It supports automatic conversion between 7-bit, quoted-printable and base64
8381encodings.")
8382 (license license:lgpl2.1))))
8383
8384(define-public cl-mime
8385 (sbcl-package->cl-source-package sbcl-cl-mime))
8386
8387(define-public ecl-cl-mime
8388 (sbcl-package->ecl-package sbcl-cl-mime))
8389
8390(define-public sbcl-cl-mimeparse
8391 (let ((commit "93cbdf6f6fe8a2eb5f652f8adec453eb98ea0547")
8392 (revision "0"))
8393 (package
8394 (name "sbcl-cl-mimeparse")
8395 (version (git-version "0.0.1" revision commit))
8396 (source
8397 (origin
8398 (method git-fetch)
8399 (uri (git-reference
8400 (url "https://github.com/mmontone/cl-mimeparse")
8401 (commit commit)))
8402 (file-name (git-file-name "cl-mimeparse" version))
8403 (sha256
8404 (base32 "0gdkpi3620va0a3q56svcn1q9f5w0pqfhx30lnldg8fjnrdfiwkk"))))
8405 (build-system asdf-build-system/sbcl)
8406 (arguments
8407 '(#:asd-test-systems '("cl-mimeparse-tests")))
8408 (native-inputs
8409 (list sbcl-rt))
8410 (inputs
8411 (list sbcl-cl-ppcre sbcl-parse-number))
8412 (home-page "https://github.com/mmontone/cl-mimeparse/")
8413 (synopsis "Common Lisp library for parsing MIME types")
8414 (description
8415 "This package provides a library for parsing MIME types, in the spirit
8416of http://code.google.com/p/mimeparse/, with a Common Lisp flavor.")
8417 (license license:expat))))
8418
8419(define-public cl-mimeparse
8420 (sbcl-package->cl-source-package sbcl-cl-mimeparse))
8421
8422(define-public ecl-cl-mimeparse
8423 (sbcl-package->ecl-package sbcl-cl-mimeparse))
8424
8425(define-public clasp-cl-mimeparse
8426 (sbcl-package->clasp-package sbcl-cl-mimeparse))
8427
8428(define-public sbcl-cl-mixed
8429 ;; There are no releases, but this commit is entitled
8430 ;; "Bump to libmixed-2.4.0".
8431 (let ((commit "3da661ae199be94f822e3f9ef6bf03bc6456652b")
8432 (revision "1"))
8433 (package
8434 (name "sbcl-cl-mixed")
8435 (version (git-version "2.1.0" revision commit))
8436 (source
8437 (origin
8438 (method git-fetch)
8439 (uri (git-reference
8440 (url "https://github.com/Shirakumo/cl-mixed")
8441 (commit commit)))
8442 (file-name (git-file-name "cl-mixed" version))
8443 (sha256
8444 (base32 "0i7bb2b3a9i4kgp7dzzs5211xj56zzcpwkjlfxpslfp7iz0685y0"))
8445 (modules '((guix build utils)))
8446 (snippet
8447 ;; Delete bundled libraries.
8448 `(begin
8449 (delete-file-recursively "static")))))
8450 (build-system asdf-build-system/sbcl)
8451 (arguments
8452 '(#:asd-systems '("cl-mixed"
8453 "cl-mixed-examples"
8454 "cl-mixed-flac"
8455 "cl-mixed-vorbis"
8456 "cl-mixed-alsa"
8457 "cl-mixed-jack"
8458 "cl-mixed-mpg123"
8459 "cl-mixed-mpt"
8460 "cl-mixed-out123"
8461 "cl-mixed-pulse"
8462 "cl-mixed-sdl2"
8463 "cl-mixed-wav")
8464 #:phases
8465 (modify-phases %standard-phases
8466 (add-after 'unpack 'fix-paths
8467 (lambda* (#:key inputs #:allow-other-keys)
8468 (substitute* "low-level.lisp"
8469 (("libmixed.so.2")
8470 (search-input-file inputs "/lib/libmixed.so.2"))))))))
8471 (inputs
8472 (list libmixed
8473 sbcl-alexandria
8474 sbcl-cffi
8475 sbcl-cl-flac
8476 sbcl-cl-mpg123
8477 sbcl-cl-out123
8478 sbcl-cl-vorbis
8479 sbcl-documentation-utils
8480 sbcl-sdl2
8481 sbcl-static-vectors
8482 sbcl-trivial-features))
8483 (home-page "https://shirakumo.github.io/cl-mixed/")
8484 (synopsis "Extended audio library for Common Lisp")
8485 (description
8486 "This package provides CFFI binding to @code{libmixed} audio library for
8487Common Lisp with support of other audio formats available on GNU/Linux systems:
8488
8489@itemize
8490
8491@item @acronym{Alsa, Advanced Linux Sound Architecture}
8492@item @acronym{Jack, JackAudio toolkit}
8493@item @acronym{Openmpt, Libopenmpt playback drain for tracker files}
8494@item @acronym{PulseAudio, PulseAudio based playback drain}
8495@item Flac (via CL-FLAC)
8496@item Mpg123 (via CL-MPG123)
8497@item Ogg/vorbis (via CL-VORBIS)
8498@item Out123 (via CL-OUT123)
8499@item WAV
8500
8501@end itemize")
8502 (license license:zlib))))
8503
8504(define-public cl-mixed
8505 (sbcl-package->cl-source-package sbcl-cl-mixed))
8506
8507(define-public ecl-cl-mixed
8508 (sbcl-package->ecl-package sbcl-cl-mixed))
8509
8510(define-public sbcl-cl-modio
8511 (let ((commit "b1322bbfb306f5fbd39ef3141150a213603c5d22")
8512 (revision "2"))
8513 (package
8514 (name "sbcl-cl-modio")
8515 (version (git-version "1.0.0" revision commit))
8516 (source
8517 (origin
8518 (method git-fetch)
8519 (uri (git-reference
8520 (url "https://codeberg.org/shinmera/cl-modio")
8521 (commit commit)))
8522 (sha256
8523 (base32 "11njccizmpak57fxprvf84xbx45r03xgyrqbdjdhwrj1r1k9fdny"))
8524 (file-name (git-file-name "cl-modio" version))))
8525 (build-system asdf-build-system/sbcl)
8526 (inputs
8527 (list sbcl-alexandria
8528 sbcl-zippy
8529 sbcl-jzon
8530 sbcl-cl-ppcre
8531 sbcl-drakma
8532 sbcl-documentation-utils
8533 sbcl-language-codes))
8534 (synopsis "Client library for the mod.io API")
8535 (description "This is a client library to interact with the
8536\"mod.io\" (@url{https://mod.io}) platform to manage \"mods\" or extensions
8537for games and other applications. It covers the full v1 API and includes
8538convenience methods to make interacting with the API as well as syncing mods
8539and so on easy.")
8540 (home-page "https://codeberg.org/shinmera/cl-modio")
8541 (license license:zlib))))
8542
8543(define-public cl-modio
8544 (sbcl-package->cl-source-package sbcl-cl-modio))
8545
8546(define-public ecl-cl-modio
8547 (sbcl-package->ecl-package sbcl-cl-modio))
8548
8549(define-public sbcl-cl-morse
8550 (package
8551 (name "sbcl-cl-morse")
8552 (version "1.0.0")
8553 (source
8554 (origin
8555 (method git-fetch)
8556 (uri (git-reference
8557 (url "https://github.com/em7/cl-morse")
8558 (commit (string-append "v" version))))
8559 (file-name (git-file-name "cl-morse" version))
8560 (sha256
8561 (base32 "01sh34nhbsx2dsrb2r1vkd4j8lzm9gjd5jfi8a4cs4m3djjwhh5i"))))
8562 (build-system asdf-build-system/sbcl)
8563 (inputs (list sbcl-cl-ppcre))
8564 (native-inputs (list sbcl-fiveam))
8565 (home-page "https://github.com/em7/cl-morse")
8566 (synopsis "Morse code translation library for Common Lisp")
8567 (description
8568 "@code{cl-morse} is a Morse code translation library for Common Lisp.")
8569 (license license:bsd-3)))
8570
8571(define-public cl-morse
8572 (sbcl-package->cl-source-package sbcl-cl-morse))
8573
8574(define-public ecl-cl-morse
8575 (sbcl-package->ecl-package sbcl-cl-morse))
8576
8577(define-public sbcl-cl-mount-info
8578 (let ((commit "2024f5037a7f63db3e3587dc9972cd7b9318f06b")
8579 (revision "1"))
8580 (package
8581 (name "sbcl-cl-mount-info")
8582 (version (git-version "0.0.1" revision commit))
8583 (source
8584 (origin
8585 (method git-fetch)
8586 (uri (git-reference
8587 (url "https://notabug.org/cage/cl-mount-info.git")
8588 (commit commit)))
8589 (file-name (git-file-name "cl-mount-info" version))
8590 (sha256
8591 (base32 "0vza9gj9q42nzb5v8aj22lmn4aqx9vrddsb5a343nbwfz89hbh9x"))))
8592 (build-system asdf-build-system/sbcl)
8593 (inputs
8594 (list sbcl-alexandria sbcl-cffi sbcl-cl-ppcre))
8595 (home-page "https://notabug.org/cage/cl-mount-info.git")
8596 (synopsis "Library to get information about mounted filesystems")
8597 (description
8598 "CL-MOUNT-INFO is a Common Lisp wrapper around @code{getmntent(3)} and
8599related C functions to get information about the mounted file system.")
8600 (license license:lgpl3))))
8601
8602(define-public cl-mount-info
8603 (sbcl-package->cl-source-package sbcl-cl-mount-info))
8604
8605(define-public ecl-cl-mount-info
8606 (sbcl-package->ecl-package sbcl-cl-mount-info))
8607
8608(define-public sbcl-cl-mpg123
8609 (let ((commit "5f042c839d2ea4a2ff2a7b60c839d8633d64161d")
8610 (revision "1"))
8611 (package
8612 (name "sbcl-cl-mpg123")
8613 (version (git-version "1.0.0" revision commit))
8614 (source
8615 (origin
8616 (method git-fetch)
8617 (uri (git-reference
8618 (url "https://github.com/Shirakumo/cl-mpg123")
8619 (commit commit)))
8620 (file-name (git-file-name "cl-mpg123" version))
8621 (sha256
8622 (base32 "1hl721xaczxck008ax2y3jpkm509ry1sg3lklh2k76764m3ndrjf"))
8623 (modules '((guix build utils)))
8624 (snippet
8625 '(begin
8626 ;; Remove bundled pre-compiled libraries.
8627 (delete-file-recursively "static")
8628 #t))))
8629 (build-system asdf-build-system/sbcl)
8630 (arguments
8631 `(#:asd-systems '("cl-mpg123" "cl-mpg123-example")
8632 #:phases
8633 (modify-phases %standard-phases
8634 (add-after 'unpack 'fix-paths
8635 (lambda* (#:key inputs #:allow-other-keys)
8636 (substitute* "low-level.lisp"
8637 (("libmpg123.so" all)
8638 (string-append (assoc-ref inputs "libmpg123")
8639 "/lib/" all))))))))
8640 (inputs
8641 `(("cffi" ,sbcl-cffi)
8642 ("cl-out123" ,sbcl-cl-out123)
8643 ("documentation-utils" ,sbcl-documentation-utils)
8644 ("libmpg123" ,libmpg123)
8645 ("trivial-features" ,sbcl-trivial-features)
8646 ("trivial-garbage" ,sbcl-trivial-garbage)
8647 ("verbose" ,sbcl-verbose)))
8648 (home-page "https://shirakumo.github.io/cl-mpg123/")
8649 (synopsis "Common Lisp bindings to libmpg123")
8650 (description
8651 "This is a bindings and wrapper library to @code{libmpg123} allowing for
8652convenient, extensive, and fast decoding of MPEG1/2/3 (most prominently mp3)
8653files.")
8654 (license license:zlib))))
8655
8656(define-public cl-mpg123
8657 (sbcl-package->cl-source-package sbcl-cl-mpg123))
8658
8659(define-public ecl-cl-mpg123
8660 (sbcl-package->ecl-package sbcl-cl-mpg123))
8661
8662(define-public sbcl-cl-murmurhash
8663 ;; No release.
8664 (let ((commit "5433f5e95f1cce63a81259a471150834c6a59364")
8665 (revision "1"))
8666 (package
8667 (name "sbcl-cl-murmurhash")
8668 (version (git-version "0.0.0" revision commit))
8669 (home-page "https://github.com/ruricolist/cl-murmurhash/")
8670 (source
8671 (origin
8672 (method git-fetch)
8673 (uri (git-reference
8674 (url home-page)
8675 (commit commit)))
8676 (file-name (git-file-name name version))
8677 (sha256
8678 (base32
8679 "0251r0mpjm0y3qsm4lm7ncvrkxvgwc53spdm1p2mpayhvkkqqsws"))))
8680 (build-system asdf-build-system/sbcl)
8681 (inputs
8682 (list sbcl-babel))
8683 (native-inputs
8684 (list sbcl-fiveam))
8685 (synopsis "32-bit version of Murmurhash3 for Common Lisp")
8686 (description
8687 "This Common Lisp package offers an implementation of the 32-bit
8688variant of MurmurHash3 (@url{https://github.com/aappleby/smhasher}), a fast
8689non-crytographic hashing algorithm.")
8690 (license license:expat))))
8691
8692(define-public cl-murmurhash
8693 (sbcl-package->cl-source-package sbcl-cl-murmurhash))
8694
8695(define-public ecl-cl-murmurhash
8696 (sbcl-package->ecl-package sbcl-cl-murmurhash))
8697
8698(define-public sbcl-cl-mustache
8699 (package
8700 (name "sbcl-cl-mustache")
8701 (version "0.12.1")
8702 (source
8703 (origin
8704 (method git-fetch)
8705 (uri (git-reference
8706 (url "https://github.com/kanru/cl-mustache")
8707 (commit (string-append "v" version))))
8708 (file-name (git-file-name "cl-mustache" version))
8709 (sha256
8710 (base32 "149xbb6wxq1napliwm9cv729hwcgfnjli6y8hingfixz7f10lhks"))))
8711 (build-system asdf-build-system/sbcl)
8712 (home-page "https://github.com/kanru/cl-mustache")
8713 (synopsis "Common Lisp Mustache template renderer")
8714 (description "This is a Common Lisp implementation for the Mustache
8715template system. More details on the standard are available at
8716@url{https://mustache.github.io}.")
8717 (license license:expat)))
8718
8719(define-public cl-mustache
8720 (sbcl-package->cl-source-package sbcl-cl-mustache))
8721
8722(define-public ecl-cl-mustache
8723 (sbcl-package->ecl-package sbcl-cl-mustache))
8724
8725(define-public sbcl-cl-mysql
8726 (let ((commit "ab56c279c1815aec6ca0bfe85164ff7e85cfb6f9")
8727 (revision "1"))
8728 (package
8729 (name "sbcl-cl-mysql")
8730 (version (git-version "0.1" revision commit))
8731 (source
8732 (origin
8733 (method git-fetch)
8734 (uri (git-reference
8735 (url "https://github.com/hackinghat/cl-mysql")
8736 (commit commit)))
8737 (file-name (git-file-name name version))
8738 (sha256
8739 (base32 "0dg5ynx2ww94d0qfwrdrm7plkn43h64hs4iiq9mj2s1s4ixnp3lr"))))
8740 (build-system asdf-build-system/sbcl)
8741 (native-inputs
8742 (list sbcl-stefil))
8743 (inputs
8744 `(("cffi" ,sbcl-cffi)
8745 ("mariadb-lib" ,mariadb "lib")))
8746 (arguments
8747 `(#:tests? #f ; TODO: Tests require a running server
8748 #:phases
8749 (modify-phases %standard-phases
8750 (add-after 'unpack 'fix-paths
8751 (lambda* (#:key inputs #:allow-other-keys)
8752 (substitute* "system.lisp"
8753 (("libmysqlclient_r" all)
8754 (string-append (assoc-ref inputs "mariadb-lib")
8755 "/lib/"
8756 all)))
8757 #t)))))
8758 (synopsis "Common Lisp wrapper for MySQL")
8759 (description
8760 "@code{cl-mysql} is a Common Lisp implementation of a MySQL wrapper.")
8761 (home-page "http://www.hackinghat.com/index.php/cl-mysql")
8762 (license license:expat))))
8763
8764(define-public cl-mysql
8765 (sbcl-package->cl-source-package sbcl-cl-mysql))
8766
8767(define-public ecl-cl-mysql
8768 (sbcl-package->ecl-package sbcl-cl-mysql))
8769
8770(define-public sbcl-cl-num-utils
8771 (let ((commit "97a88cd34540acf52e872a82ebfef3da0a34fa12")
8772 (revision "1"))
8773 (package
8774 (name "sbcl-cl-num-utils")
8775 (version (git-version "0.1" revision commit))
8776 (source
8777 (origin
8778 (method git-fetch)
8779 (uri (git-reference
8780 (url "https://github.com/tpapp/cl-num-utils")
8781 (commit commit)))
8782 (file-name (git-file-name "cl-num-utils" version))
8783 (sha256
8784 (base32 "15ihsxxs76xnldmqfsbxybckqjwrxwcpphgghiwzr2mnbqjpdqkh"))))
8785 (build-system asdf-build-system/sbcl)
8786 (inputs
8787 (list sbcl-anaphora sbcl-alexandria sbcl-array-operations
8788 sbcl-cl-slice sbcl-let-plus))
8789 (native-inputs
8790 (list sbcl-clunit))
8791 (home-page "https://github.com/tpapp/cl-num-utils")
8792 (synopsis "Numerical utilities for Common Lisp")
8793 (description
8794 "@code{cl-num-utils} implements simple numerical functions for Common
8795Lisp, including:
8796@itemize
8797@item @code{num=}, a comparison operator for floats
8798@item simple arithmeric functions, like @code{sum} and @code{l2norm}
8799@item elementwise operations for arrays
8800@item intervals
8801@item special matrices and shorthand for their input
8802@item sample statistics
8803@item Chebyshev polynomials
8804@item univariate rootfinding
8805@end itemize")
8806 (license license:boost1.0))))
8807
8808(define-public cl-num-utils
8809 (sbcl-package->cl-source-package sbcl-cl-num-utils))
8810
8811(define-public ecl-cl-num-utils
8812 (sbcl-package->ecl-package sbcl-cl-num-utils))
8813
8814(define-public sbcl-cl-octet-streams
8815 (package
8816 (name "sbcl-cl-octet-streams")
8817 (version "1.2")
8818 (source
8819 (origin
8820 (method git-fetch)
8821 (uri (git-reference
8822 (url "https://codeberg.org/glv/cl-octet-streams")
8823 (commit (string-append "v" version))))
8824 (file-name (git-file-name name version))
8825 (sha256
8826 (base32 "1hffh98bv4w5yrchagzwqrc43d2p473pvw7ka4kyyvhrr52dk2f8"))))
8827 (build-system asdf-build-system/sbcl)
8828 (native-inputs
8829 (list sbcl-fiveam))
8830 (inputs
8831 (list sbcl-trivial-gray-streams))
8832 (synopsis "In-memory octet streams for Common Lisp")
8833 (description
8834 "CL-octet-streams is a library implementing in-memory octet
8835streams for Common Lisp. It was inspired by the trivial-octet-streams and
8836cl-plumbing libraries.")
8837 (home-page "https://codeberg.org/glv/cl-octet-streams")
8838 (license license:gpl3+)))
8839
8840(define-public cl-octet-streams
8841 (sbcl-package->cl-source-package sbcl-cl-octet-streams))
8842
8843(define-public ecl-cl-octet-streams
8844 (sbcl-package->ecl-package sbcl-cl-octet-streams))
8845
8846(define-public sbcl-cl-online-learning
8847 (let ((commit "87fbef8a340219e853adb3a5bf44a0470da76964")
8848 (revision "1"))
8849 (package
8850 (name "sbcl-cl-online-learning")
8851 (version (git-version "0.5" revision commit))
8852 (source
8853 (origin
8854 (method git-fetch)
8855 (uri (git-reference
8856 (url "https://github.com/masatoi/cl-online-learning")
8857 (commit commit)))
8858 (file-name (git-file-name "cl-online-learning" version))
8859 (sha256
8860 (base32
8861 "1lfq04lnxivx59nq5dd02glyqsqzf3vdn4s9b8wnaln5fs8g2ph9"))))
8862 (build-system asdf-build-system/sbcl)
8863 (native-inputs
8864 (list sbcl-prove))
8865 (inputs
8866 (list sbcl-cl-libsvm-format
8867 sbcl-cl-store))
8868 (home-page "https://github.com/masatoi/cl-online-learning")
8869 (synopsis "Online Machine Learning for Common Lisp")
8870 (description
8871 "This library contains a collection of machine learning algorithms for
8872online linear classification written in Common Lisp.")
8873 (license license:expat))))
8874
8875(define-public cl-online-learning
8876 (sbcl-package->cl-source-package sbcl-cl-online-learning))
8877
8878(define-public ecl-cl-online-learning
8879 (sbcl-package->ecl-package sbcl-cl-online-learning))
8880
8881(define-public sbcl-cl-opengl
8882 (let ((commit "e2d83e0977b7e7ac3f3d348d8ccc7ccd04e74d59")
8883 (revision "1"))
8884 (package
8885 (name "sbcl-cl-opengl")
8886 (version (git-version "0.1.0" revision commit))
8887 (source
8888 (origin
8889 (method git-fetch)
8890 (uri (git-reference
8891 (url "https://github.com/3b/cl-opengl")
8892 (commit commit)))
8893 (file-name (git-file-name "cl-opengl" version))
8894 (sha256
8895 (base32 "0mhqmll09f079pnd6mgswz9nvr6h5n27d4q7zpmm2igf1v460id7"))))
8896 (build-system asdf-build-system/sbcl)
8897 (arguments
8898 `(#:asd-systems '("cl-opengl" "cl-glu" "cl-glut")
8899 #:phases
8900 (modify-phases %standard-phases
8901 (add-after 'unpack 'patch-lib-path
8902 (lambda* (#:key inputs #:allow-other-keys)
8903 (substitute* "gl/library.lisp"
8904 (("libGL.so" all)
8905 (search-input-file inputs "/lib/libGL.so")))
8906 (substitute* "glu/library.lisp"
8907 (("libGLU.so" all)
8908 (search-input-file inputs "/lib/libGLU.so")))
8909 (substitute* "glut/library.lisp"
8910 (("libglut.so" all)
8911 (search-input-file inputs "/lib/libglut.so"))))))))
8912 (inputs
8913 (list sbcl-alexandria
8914 sbcl-cffi
8915 sbcl-float-features
8916 freeglut
8917 glu
8918 mesa))
8919 (home-page "https://github.com/3b/cl-opengl")
8920 (synopsis "Common Lisp bindings to OpenGL, GLU and GLUT APIs")
8921 (description
8922 "This package provides a set of bindings and utilities for accessing the
8923OpenGL (Mesa), GLU and GLUT (FreeGLUT) APIs using CFFI.")
8924 (license license:bsd-3))))
8925
8926(define-public cl-opengl
8927 (sbcl-package->cl-source-package sbcl-cl-opengl))
8928
8929(define-public ecl-cl-opengl
8930 (sbcl-package->ecl-package sbcl-cl-opengl))
8931
8932(define-public sbcl-cl-out123
8933 (let ((commit "41771bfd419e7349ad569f8e6fcd8a26d6f9e5b7")
8934 (revision "2"))
8935 (package
8936 (name "sbcl-cl-out123")
8937 (version (git-version "1.0.0" revision commit))
8938 (source
8939 (origin
8940 (method git-fetch)
8941 (uri (git-reference
8942 (url "https://github.com/Shirakumo/cl-out123")
8943 (commit commit)))
8944 (file-name (git-file-name "cl-out123" version))
8945 (sha256
8946 (base32 "0ahgc5l5lbpl3ini4pn5crh8b7dlr386pxczl0d4h6djhccxzs4w"))
8947 (modules '((guix build utils)))
8948 (snippet
8949 '(begin
8950 ;; Remove bundled pre-compiled libraries.
8951 (delete-file-recursively "static")))))
8952 (build-system asdf-build-system/sbcl)
8953 (arguments
8954 `(#:tests? #f ; No tests
8955 #:phases
8956 (modify-phases %standard-phases
8957 (add-after 'unpack 'fix-paths
8958 (lambda* (#:key inputs #:allow-other-keys)
8959 (substitute* "low-level.lisp"
8960 (("libout123.so")
8961 (search-input-file inputs "/lib/libout123.so"))))))))
8962 (inputs
8963 (list libout123
8964 sbcl-bordeaux-threads
8965 sbcl-cffi
8966 sbcl-documentation-utils
8967 sbcl-trivial-features
8968 sbcl-trivial-garbage))
8969 (home-page "https://shirakumo.github.io/cl-out123/")
8970 (synopsis "Common Lisp bindings to libout123")
8971 (description
8972 "This is a bindings library to @code{libout123} which allows easy
8973cross-platform audio playback.")
8974 (license license:zlib))))
8975
8976(define-public cl-out123
8977 (sbcl-package->cl-source-package sbcl-cl-out123))
8978
8979(define-public ecl-cl-out123
8980 (sbcl-package->ecl-package sbcl-cl-out123))
8981
8982(define-public sbcl-cl-package-locks
8983 (let ((commit "96a358ede7cef416d61d2f699e724fe1d9de602c")
8984 (revision "1"))
8985 (package
8986 (name "sbcl-cl-package-locks")
8987 (version (git-version "0.0.2" revision commit))
8988 (source
8989 (origin
8990 (method git-fetch)
8991 (uri (git-reference
8992 (url "https://github.com/elliottjohnson/cl-package-locks")
8993 (commit commit)))
8994 (file-name (git-file-name "cl-package-locks" version))
8995 (sha256
8996 (base32 "0g3gfljnvpgd66ccd2sqawlkwqx4a0wsdrg5180va61w869cgxqq"))))
8997 (build-system asdf-build-system/sbcl)
8998 (home-page "https://github.com/elliottjohnson/cl-package-locks")
8999 (synopsis "Compatibility layer for dealing with package locks")
9000 (description
9001 "This is a Common Lisp library providing a unified way to work with
9002package locks across supported Common Lisp implementations.")
9003 (license license:expat))))
9004
9005(define-public cl-package-locks
9006 (sbcl-package->cl-source-package sbcl-cl-package-locks))
9007
9008(define-public ecl-cl-package-locks
9009 (sbcl-package->ecl-package sbcl-cl-package-locks))
9010
9011(define-public clasp-cl-package-locks
9012 (sbcl-package->clasp-package sbcl-cl-package-locks))
9013
9014(define-public sbcl-cl-pango
9015 (let ((commit "ee4904d19ce22d00eb2fe17a4fe42e5df8ac8701")
9016 (revision "0"))
9017 (package
9018 (name "sbcl-cl-pango")
9019 (version (git-version "0.5" revision commit))
9020 (source
9021 (origin
9022 (method git-fetch)
9023 (uri (git-reference
9024 (url "https://github.com/BradWBeer/cl-pango")
9025 (commit commit)))
9026 (file-name (git-file-name "cl-pango" version))
9027 (sha256
9028 (base32 "0zkn4yn8nkkjr0x1vcy856cvbmnyhdidqz0in8xvd2i93jvw5w0i"))))
9029 (build-system asdf-build-system/sbcl)
9030 (arguments
9031 (list
9032 #:phases
9033 #~(modify-phases %standard-phases
9034 (add-after 'unpack 'fix-paths
9035 (lambda* (#:key inputs #:allow-other-keys)
9036 (substitute* "library.lisp"
9037 (("libpango-1.0.so")
9038 (search-input-file inputs "/lib/libpango-1.0.so"))
9039 (("libpangocairo-1.0.so")
9040 (search-input-file inputs "/lib/libpangocairo-1.0.so"))))))))
9041 (inputs
9042 (list pango
9043 sbcl-cffi
9044 sbcl-cl-cairo2
9045 sbcl-xmls))
9046 (home-page "https://github.com/BradWBeer/cl-pango")
9047 (synopsis "Pango bindings for Common Lisp")
9048 (description
9049 "This package provides Common Lisp bindings to the pango text layout
9050library.")
9051 (license license:expat))))
9052
9053(define-public cl-pango
9054 (sbcl-package->cl-source-package sbcl-cl-pango))
9055
9056(define-public ecl-cl-pango
9057 (let ((pkg (sbcl-package->ecl-package sbcl-cl-pango)))
9058 (package
9059 (inherit pkg)
9060 (inputs
9061 (list pango
9062 ecl-cffi
9063 ecl-cl-cairo2
9064 ecl-xmls)))))
9065
9066(define-public sbcl-cl-pass
9067 (let ((commit "e58e97c0c0588dc742c061208afb9bc31e4dbd34")
9068 (revision "1"))
9069 (package
9070 (name "sbcl-cl-pass")
9071 (version (git-version "0.1" revision commit))
9072 (source
9073 (origin
9074 (method git-fetch)
9075 (uri (git-reference
9076 (url "https://github.com/eudoxia0/cl-pass")
9077 (commit commit)))
9078 (file-name (git-file-name "cl-pass" version))
9079 (sha256
9080 (base32 "05qx4jrkxqbqi72cxgswbpnifbdvp9mh7apc7566v522899bh0hb"))))
9081 (build-system asdf-build-system/sbcl)
9082 (inputs
9083 (list sbcl-ironclad sbcl-trivial-utf-8 sbcl-split-sequence))
9084 (native-inputs
9085 (list sbcl-fiveam))
9086 (home-page "https://github.com/eudoxia0/cl-pass")
9087 (synopsis "Password hashing and verification library")
9088 (description
9089 "@code{cl-pass} is a password hashing and verification library.")
9090 (license license:expat))))
9091
9092(define-public cl-pass
9093 (sbcl-package->cl-source-package sbcl-cl-pass))
9094
9095(define-public ecl-cl-pass
9096 (sbcl-package->ecl-package sbcl-cl-pass))
9097
9098(define-public sbcl-cl-pcg
9099 (let ((commit "8263d85ab0ca17fb05637a4430c2d564456bce8f")
9100 (revision "1"))
9101 (package
9102 (name "sbcl-cl-pcg")
9103 (version (git-version "1.0.0" revision commit))
9104 (source
9105 (origin
9106 (method git-fetch)
9107 (uri (git-reference
9108 (url "https://github.com/sjl/cl-pcg")
9109 (commit commit)))
9110 (file-name (git-file-name "cl-pcg" version))
9111 (sha256
9112 (base32 "0s57wvvlvshp1gcp9i9d3qcmqhswnxps3i0y7wbb0v8i1a3p46m4"))))
9113 (build-system asdf-build-system/sbcl)
9114 (native-inputs
9115 (list sbcl-1am))
9116 (home-page "https://github.com/sjl/cl-pcg")
9117 (synopsis "Permuted congruential generators in Common Lisp")
9118 (description
9119 "This is a bare-bones Permuted Congruential Generator implementation in
9120pure Common Lisp.")
9121 (license license:expat))))
9122
9123(define-public cl-pcg
9124 (sbcl-package->cl-source-package sbcl-cl-pcg))
9125
9126(define-public ecl-cl-pcg
9127 (let ((pkg (sbcl-package->ecl-package sbcl-cl-pcg)))
9128 (package
9129 (inherit pkg)
9130 (arguments
9131 (substitute-keyword-arguments arguments
9132 ;; Tests are failing on ECL with:
9133 ;; PCG.TEST::TEST-REWINDAn error occurred during initialization:
9134 ;; 40502229875678917802724098623316930025 is not of type
9135 ;; (INTEGER 0 2305843009213693951)
9136 ((#:tests? _ #f) #f))))))
9137
9138(define-public clasp-cl-pcg
9139 (sbcl-package->clasp-package sbcl-cl-pcg))
9140
9141(define-public sbcl-cl-pdf
9142 (let ((commit "0a1cd33b658c7101766781c534455d4d9e5972bf")
9143 (revision "4"))
9144 (package
9145 (name "sbcl-cl-pdf")
9146 (version (git-version "2.0.0" revision commit))
9147 (source
9148 (origin
9149 (method git-fetch)
9150 (uri (git-reference
9151 (url "https://github.com/mbattyani/cl-pdf")
9152 (commit commit)))
9153 (file-name (git-file-name "cl-pdf" version))
9154 (sha256
9155 (base32 "1x88fvk3kxi3k6a84iajb6myw67z8n3plfidq8d4c26ymiz0kvfm"))))
9156 (build-system asdf-build-system/sbcl)
9157 (inputs
9158 (list sbcl-iterate sbcl-zpb-ttf))
9159 (arguments
9160 `(#:asd-systems '("cl-pdf" "cl-pdf-parser")))
9161 (home-page "https://github.com/mbattyani/cl-pdf")
9162 (synopsis "Common Lisp library for generating PDF files")
9163 (description
9164 "CL-PDF is a cross-platform Common Lisp library for generating PDF
9165files.")
9166 (license license:bsd-2))))
9167
9168(define-public cl-pdf
9169 (sbcl-package->cl-source-package sbcl-cl-pdf))
9170
9171(define-public ecl-cl-pdf
9172 (sbcl-package->ecl-package sbcl-cl-pdf))
9173
9174(define-public sbcl-cl-peppol
9175 (let ((commit "d1c9571e58240022929226481526cc268a6c6ac7")
9176 (revision "0"))
9177 (package
9178 (name "sbcl-cl-peppol")
9179 (version (git-version "0.0.1" revision commit))
9180 (source
9181 (origin
9182 (method git-fetch)
9183 (uri (git-reference
9184 (url "https://github.com/mmontone/cl-peppol")
9185 (commit commit)))
9186 (file-name (git-file-name name version))
9187 (sha256
9188 (base32 "076wvjc666v76k3z62h1360qhh3hw4xkrvzhfdz6anvq9vl13klm"))))
9189 (build-system asdf-build-system/sbcl)
9190 (inputs (list sbcl-cxml sbcl-xpath))
9191 (arguments
9192 '(#:asd-systems '("peppol")))
9193 (home-page "https://github.com/mmontone/cl-peppol")
9194 (synopsis "OpenPEPPOL electronic invoicing code lists for Common Lisp")
9195 (description
9196 "@code{cl-peppol} provides access to code lists extracted from the OpenPEPPOL
9197standard for electronic business and invoicing in Europe.")
9198 (license license:expat))))
9199
9200;; No ECL variant: tests fail because xpath returns 11 instead of the
9201;; expected 11.0d0. Possible incompatibility in numeric type handling.
9202;; This problem also affects dependent packages.
9203
9204(define-public cl-peppol
9205 (sbcl-package->cl-source-package sbcl-cl-peppol))
9206
9207(define-public sbcl-cl-permutation
9208 (let ((commit "20c10e9ca56452d2fafc3ec0984dcdf78b4f4b19")
9209 (revision "0"))
9210 (package
9211 (name "sbcl-cl-permutation")
9212 (version (git-version "0.0.0" revision commit))
9213 (source
9214 (origin
9215 (method git-fetch)
9216 (uri (git-reference
9217 (url "https://github.com/stylewarning/cl-permutation")
9218 (commit commit)))
9219 (file-name (git-file-name "cl-permutation" version))
9220 (sha256
9221 (base32 "0i932g0k50y24hxizni6zfya4kcw77yk3b0llivm9g50s7fxj9dk"))))
9222 (build-system asdf-build-system/sbcl)
9223 (native-inputs (list sbcl-fiasco))
9224 (inputs
9225 (list sbcl-alexandria
9226 sbcl-bordeaux-fft
9227 sbcl-cl-algebraic-data-type
9228 sbcl-cl-cont
9229 sbcl-closer-mop
9230 sbcl-iterate
9231 sbcl-priority-queue))
9232 (synopsis "Permutations and permutation groups in Common Lisp")
9233 (description
9234 "This is a Commin Lisp library for operating on permutations and
9235permutation groups.")
9236 (home-page "https://github.com/stylewarning/cl-permutation")
9237 (license license:bsd-3))))
9238
9239(define-public cl-permutation
9240 (sbcl-package->cl-source-package sbcl-cl-permutation))
9241
9242(define-public ecl-cl-permutation
9243 (sbcl-package->ecl-package sbcl-cl-permutation))
9244
9245(define-public sbcl-cl-portaudio
9246 (let ((commit "c50cd061c25216a736f684e45101f5c0188a384f")
9247 (revision "1"))
9248 (package
9249 (name "sbcl-cl-portaudio")
9250 (version (git-version "1.0.0" revision commit))
9251 (source
9252 (origin
9253 (method git-fetch)
9254 (uri (git-reference
9255 (url "https://github.com/filonenko-mikhail/cl-portaudio")
9256 (commit commit)))
9257 (file-name (git-file-name "cl-portaudio" version))
9258 (sha256
9259 (base32 "177c6bgf30caj5qpzfnzhbamax7c5zm2p4911mw7fay94vjs7zyb"))))
9260 (build-system asdf-build-system/sbcl)
9261 (inputs
9262 (list portaudio sbcl-cffi sbcl-ffa))
9263 (arguments
9264 (list #:tests? #f ; Tests need access to sound cards
9265 #:phases
9266 #~(modify-phases %standard-phases
9267 (add-after 'unpack 'fix-paths
9268 (lambda* (#:key inputs #:allow-other-keys)
9269 (substitute* "src/portaudio.lisp"
9270 (("libportaudio\\.so")
9271 (search-input-file inputs "/lib/libportaudio.so"))))))))
9272 (synopsis "Common Lisp bindings to portaudio")
9273 (description
9274 "This package provides audio input and output functions to Common Lisp
9275using bindings to the portaudio library.")
9276 (home-page "https://github.com/filonenko-mikhail/cl-portaudio")
9277 (license license:expat))))
9278
9279(define-public cl-portaudio
9280 (sbcl-package->cl-source-package sbcl-cl-portaudio))
9281
9282(define-public ecl-cl-portaudio
9283 (sbcl-package->ecl-package sbcl-cl-portaudio))
9284
9285(define-public sbcl-cl-posix-mqueue
9286 (package
9287 (name "sbcl-cl-posix-mqueue")
9288 (version "0.1.3")
9289 (source
9290 (origin
9291 (method git-fetch)
9292 (uri (git-reference
9293 (url "https://github.com/xFA25E/cl-posix-mqueue")
9294 (commit version)))
9295 (file-name (git-file-name "cl-posix-mqueue" version))
9296 ;; This patch has not yet been merged upstream, ref
9297 ;; https://github.com/xFA25E/cl-posix-mqueue/pull/4
9298 (patches (search-patches "sbcl-cl-posix-mqueue-mqattr-size.patch"))
9299 (sha256
9300 (base32 "1c6002yqliqqwsnn08bx9n9ap7nx8ypjxnvhp65g01fqdcx7bpq7"))))
9301 (build-system asdf-build-system/sbcl)
9302 (arguments
9303 `(#:phases
9304 (modify-phases %standard-phases
9305 (add-after 'unpack 'patch-librt-path
9306 (lambda* (#:key inputs #:allow-other-keys)
9307 (substitute* "src/spec.lisp"
9308 (("librt.so" all)
9309 (string-append (assoc-ref inputs "glibc") "/lib/" all))))))))
9310 (native-inputs
9311 (list sbcl-cl-ppcre
9312 sbcl-rove))
9313 (inputs
9314 (list sbcl-alexandria
9315 sbcl-babel
9316 sbcl-cffi
9317 glibc
9318 sbcl-local-time))
9319 (home-page "https://github.com/xFA25E/cl-posix-mqueue")
9320 (synopsis "Common Lisp binding to POSIX mqueue")
9321 (description
9322 "This package provides Common Lisp bindings to POSIX message queue, an
9323@acronym{IPC, Inter-Process Communication} method that is easy to use and quick
9324to setup.")
9325 (license license:gpl3)))
9326
9327(define-public cl-posix-mqueue
9328 (sbcl-package->cl-source-package sbcl-cl-posix-mqueue))
9329
9330(define-public ecl-cl-posix-mqueue
9331 (sbcl-package->ecl-package sbcl-cl-posix-mqueue))
9332
9333(define-public sbcl-cl-ppcre
9334 (package
9335 (name "sbcl-cl-ppcre")
9336 (version "2.1.1")
9337 (source
9338 (origin
9339 (method git-fetch)
9340 (uri (git-reference
9341 (url "https://github.com/edicl/cl-ppcre")
9342 (commit (string-append "v" version))))
9343 (file-name (git-file-name "cl-ppcre" version))
9344 (sha256
9345 (base32 "0dwvr29diqzcg5n6jvbk2rnd90i05l7n828hhw99khmqd0kz7xsi"))))
9346 (build-system asdf-build-system/sbcl)
9347 (native-inputs
9348 (list sbcl-flexi-streams))
9349 (arguments
9350 `(#:phases
9351 (modify-phases %standard-phases
9352 (add-after 'unpack 'disable-ppcre-unicode
9353 ;; cl-ppcre and cl-ppcre-unicode are put in different packages
9354 ;; to work around the circular dependency between edicl/cl-ppcre
9355 ;; and edicl/cl-unicode.
9356 (lambda _
9357 (delete-file "cl-ppcre-unicode.asd")
9358 #t)))))
9359 (synopsis "Portable regular expression library for Common Lisp")
9360 (description "CL-PPCRE is a portable regular expression library for Common
9361Lisp, which is compatible with perl. It is pretty fast, thread-safe, and
9362compatible with ANSI-compliant Common Lisp implementations.")
9363 (home-page "http://weitz.de/cl-ppcre/")
9364 (license license:bsd-2)))
9365
9366(define-public cl-ppcre
9367 (sbcl-package->cl-source-package sbcl-cl-ppcre))
9368
9369(define-public ecl-cl-ppcre
9370 (sbcl-package->ecl-package sbcl-cl-ppcre))
9371
9372(define-public clasp-cl-ppcre
9373 (sbcl-package->clasp-package sbcl-cl-ppcre))
9374
9375(define-public sbcl-cl-ppcre-unicode
9376 (package (inherit sbcl-cl-ppcre)
9377 (name "sbcl-cl-ppcre-unicode")
9378 (inputs
9379 (list sbcl-cl-ppcre sbcl-cl-unicode))
9380 (arguments
9381 `(#:phases
9382 (modify-phases %standard-phases
9383 (add-after 'unpack 'disable-ppcre
9384 ;; cl-ppcre and cl-ppcre-unicode are put in different packages
9385 ;; to work around the circular dependency between edicl/cl-ppcre
9386 ;; and edicl/cl-unicode.
9387 (lambda _
9388 (delete-file "cl-ppcre.asd")
9389 #t)))))))
9390
9391(define-public cl-ppcre-unicode
9392 (sbcl-package->cl-source-package sbcl-cl-ppcre-unicode))
9393
9394(define-public ecl-cl-ppcre-unicode
9395 (sbcl-package->ecl-package sbcl-cl-ppcre-unicode))
9396
9397(define-public sbcl-cl-prevalence
9398 (let ((commit "e6b27640ce89ae5f8af38beb740e319bb6cd2368")
9399 (revision "6"))
9400 (package
9401 (name "sbcl-cl-prevalence")
9402 (build-system asdf-build-system/sbcl)
9403 (version (git-version "5" revision commit))
9404 (home-page "https://github.com/40ants/cl-prevalence")
9405 (source
9406 (origin
9407 (method git-fetch)
9408 (uri (git-reference
9409 (url home-page)
9410 (commit commit)))
9411 (file-name (git-file-name name version))
9412 (sha256
9413 (base32
9414 "1lb957ivshgp56phqhvhsmnc4r55x5shvi3mpsan2xsm4hvqspp0"))))
9415 (inputs
9416 (list sbcl-moptilities sbcl-s-sysdeps sbcl-s-xml))
9417 (native-inputs
9418 (list sbcl-fiveam sbcl-find-port))
9419 (arguments
9420 (list #:phases
9421 #~(modify-phases %standard-phases
9422 (add-after 'unpack 'fix-build-with-usocket-bt2
9423 (lambda _
9424 ;; See https://github.com/40ants/cl-prevalence/pull/27
9425 (substitute* "src/master-slave.lisp"
9426 (("stop-process \\(bt:thread-name server-thread\\)")
9427 "stop-process (bt2:thread-name server-thread)")))))))
9428 (synopsis "Implementation of object prevalence for Common Lisp")
9429 (description "This Common Lisp library implements object prevalence (see
9430@url{https://en.wikipedia.org/wiki/System_prevalence}). It allows
9431for (de)serializing to and from s-exps as well as XML. Serialization of arbitrary
9432classes and cyclic data structures are supported.")
9433 (license license:llgpl))))
9434
9435(define-public cl-prevalence
9436 (sbcl-package->cl-source-package sbcl-cl-prevalence))
9437
9438(define-public sbcl-cl-progress-bar
9439 (let ((commit "9374170858663c8fe829e9fb5a29bd2cb48d95ae"))
9440 (package
9441 (name "sbcl-cl-progress-bar")
9442 (version (git-version "0.0.0" "1" commit))
9443 (source
9444 (origin
9445 (method git-fetch)
9446 (uri (git-reference
9447 (url "https://github.com/sirherrbatka/cl-progress-bar/")
9448 (commit commit)))
9449 (file-name (git-file-name name version))
9450 (sha256
9451 (base32 "1ldb4qhmx431n3lsq71ynwb9ybazbfqd55icjbhi06mj52ngndir"))))
9452 (build-system asdf-build-system/sbcl)
9453 (inputs
9454 (list sbcl-bordeaux-threads sbcl-documentation-utils-extensions))
9455 (home-page "https://github.com/sirherrbatka/cl-progress-bar/")
9456 (synopsis "Progress bars in Common Lisp")
9457 (description
9458 "This library provides almost the same code as used inside Quicklisp
9459for drawning progress bars")
9460 (license license:expat))))
9461
9462(define-public cl-progress-bar
9463 (sbcl-package->cl-source-package sbcl-cl-progress-bar))
9464
9465(define-public ecl-cl-progress-bar
9466 (sbcl-package->ecl-package sbcl-cl-progress-bar))
9467
9468(define-public sbcl-cl-project
9469 (let ((commit "151107014e534fc4666222d57fec2cc8549c8814")
9470 (revision "1"))
9471 (package
9472 (name "sbcl-cl-project")
9473 (version (git-version "0.3.1" revision commit))
9474 (home-page "https://github.com/fukamachi/cl-project")
9475 (source
9476 (origin
9477 (method git-fetch)
9478 (uri (git-reference
9479 (url home-page)
9480 (commit commit)))
9481 (file-name (git-file-name name version))
9482 (sha256
9483 (base32 "1rmh6s1ncv8s2yrr14ja9wisgg745sq6xibqwb341ikdicxdp26y"))))
9484 (build-system asdf-build-system/sbcl)
9485 (inputs
9486 (list sbcl-cl-emb
9487 sbcl-cl-ppcre
9488 sbcl-local-time
9489 sbcl-prove))
9490 (arguments
9491 ;; Tests depend on caveman, which in turns depends on cl-project.
9492 '(#:tests? #f))
9493 (synopsis "Generate a skeleton for modern Common Lisp projects")
9494 (description "This library provides a modern project skeleton generator.
9495In contract with other generators, CL-Project generates one package per file
9496and encourages unit testing by generating a system for unit testing, so you
9497can begin writing unit tests as soon as the project is generated.")
9498 (license license:llgpl))))
9499
9500(define-public cl-project
9501 (sbcl-package->cl-source-package sbcl-cl-project))
9502
9503(define-public ecl-cl-project
9504 (sbcl-package->ecl-package sbcl-cl-project))
9505
9506(define-public sbcl-cl-punch
9507 (package
9508 (name "sbcl-cl-punch")
9509 (version "0.2")
9510 (source
9511 (origin
9512 (method git-fetch)
9513 (uri (git-reference
9514 (url "https://github.com/windymelt/cl-punch")
9515 (commit (string-append "v" version))))
9516 (file-name (git-file-name "cl-punch" version))
9517 (sha256
9518 (base32 "1vmbaz9y9lq4wvi8mfbyif8vc9yfk2i0qd3ysbzl152wx32dbzs3"))))
9519 (build-system asdf-build-system/sbcl)
9520 (native-inputs
9521 (list sbcl-prove))
9522 (inputs
9523 (list sbcl-cl-syntax))
9524 (home-page "https://github.com/windymelt/cl-punch")
9525 (synopsis "Anonymous lambda literal in Common Lisp, respecting Scala")
9526 (description
9527 "CL-PUNCH is a Scala-like anonymous lambda literal.")
9528 (license license:expat )))
9529
9530(define-public cl-punch
9531 (sbcl-package->cl-source-package sbcl-cl-punch))
9532
9533(define-public ecl-cl-punch
9534 (sbcl-package->ecl-package sbcl-cl-punch))
9535
9536(define-public sbcl-cl-qprint
9537 (let ((commit "bfe398551cbfb7ca84a9ba59a26a1116ac5c06eb")
9538 (revision "1"))
9539 (package
9540 (name "sbcl-cl-qprint")
9541 (version (git-version "0.9.0" revision commit))
9542 (source
9543 (origin
9544 (method git-fetch)
9545 (uri (git-reference
9546 (url "https://github.com/eugeneia/cl-qprint/")
9547 (commit commit)))
9548 (file-name (git-file-name name version))
9549 (sha256
9550 (base32 "099h0rrdzxnlmn8avi72mg2dl0kccp7w01b2p9nwyy4b8yr32cir"))))
9551 (build-system asdf-build-system/sbcl)
9552 (inputs
9553 (list sbcl-flexi-streams))
9554 (home-page "https://github.com/eugeneia/cl-qprint/")
9555 (synopsis "Implementation of the quoted-printable encoding")
9556 (description
9557 "This Common Lisp library implements the quoted-printable encoding as
9558described in RFC 2045 (see @url{http://tools.ietf.org/html/rfc2045}).")
9559 (license license:lgpl2.1))))
9560
9561(define-public cl-qprint
9562 (sbcl-package->cl-source-package sbcl-cl-qprint))
9563
9564(define-public ecl-cl-qprint
9565 (sbcl-package->ecl-package sbcl-cl-qprint))
9566
9567(define-public sbcl-cl-qrencode
9568 (package
9569 (name "sbcl-cl-qrencode")
9570 (version "0.1.2")
9571 (source
9572 (origin
9573 (method git-fetch)
9574 (uri (git-reference
9575 (url "https://github.com/jnjcc/cl-qrencode")
9576 (commit (string-append "v" version))))
9577 (file-name (git-file-name name version))
9578 (sha256
9579 (base32 "1l5k131dchbf6cj8a8xqa731790p01p3qa1kdy2wa9dawy3ymkxr"))))
9580 (build-system asdf-build-system/sbcl)
9581 (native-inputs
9582 (list sbcl-lisp-unit))
9583 (inputs
9584 (list sbcl-zpng))
9585 (synopsis "QR code encoder for Common Lisp")
9586 (description
9587 "This Common Lisp library provides function to make QR codes and to save
9588them as PNG files.")
9589 (home-page "https://github.com/jnjcc/cl-qrencode")
9590 (license license:gpl2+)))
9591
9592(define-public cl-qrencode
9593 (sbcl-package->cl-source-package sbcl-cl-qrencode))
9594
9595(define-public ecl-cl-qrencode
9596 (sbcl-package->ecl-package sbcl-cl-qrencode))
9597
9598(define-public sbcl-cl-randist
9599 (package
9600 (name "sbcl-cl-randist")
9601 (version "0.4.2")
9602 (source
9603 (origin
9604 (method git-fetch)
9605 (uri (git-reference
9606 (url "https://github.com/lvaruzza/cl-randist")
9607 (commit "f088a54b540a7adefab7c04094a6103f9edda3d0")))
9608 (file-name (git-file-name name version))
9609 (sha256
9610 (base32
9611 "0l8hyd6nbxb7f50vyxz3rbbm7kgr1fnadc40jywy4xj5vi5kpj5g"))))
9612 (build-system asdf-build-system/sbcl)
9613 (synopsis "Random distributions for Common Lisp")
9614 (description
9615 "Manual translation from C to Common Lisp of some random number
9616generation functions from the GSL library.")
9617 (home-page "https://github.com/lvaruzza/cl-randist")
9618 (license license:bsd-2)
9619 (arguments
9620 `(#:tests? #f))))
9621
9622(define-public cl-randist
9623 (sbcl-package->cl-source-package sbcl-cl-randist))
9624
9625(define-public ecl-cl-randist
9626 (sbcl-package->ecl-package sbcl-cl-randist))
9627
9628(define-public sbcl-cl-random
9629 (let ((commit "5bb65911037f95a4260bd29a594a09df3849f4ea")
9630 (revision "1"))
9631 (package
9632 (name "sbcl-cl-random")
9633 (version (git-version "0.0.1" revision commit))
9634 (source
9635 (origin
9636 (method git-fetch)
9637 (uri (git-reference
9638 (url "https://github.com/tpapp/cl-random")
9639 (commit commit)))
9640 (file-name (git-file-name "cl-random" version))
9641 (sha256
9642 (base32 "0jn80xphyvyp2v72acr6b8a2f6dw06myr5vrjfl14brsvks7wr89"))))
9643 (build-system asdf-build-system/sbcl)
9644 (inputs
9645 (list sbcl-alexandria
9646 sbcl-anaphora
9647 sbcl-array-operations
9648 sbcl-cl-rmath
9649 sbcl-cl-slice
9650 sbcl-gsll
9651 sbcl-let-plus
9652 sbcl-lla
9653 sbcl-numerical-utilities))
9654 (native-inputs
9655 (list sbcl-clunit))
9656 (arguments
9657 (list #:phases
9658 #~(modify-phases %standard-phases
9659 (add-after 'unpack 'fix-build
9660 ;; Fixes to use numerical-utils instead of the deprecated
9661 ;; cl-num-utils.
9662 (lambda _
9663 (substitute* (list "cl-random.asd"
9664 "src/package.lisp")
9665 (("cl-num-utils")
9666 "num-utils"))
9667 (substitute* (list "src/continuous-time.lisp"
9668 "src/internals.lisp"
9669 "src/random.lisp"
9670 "src/univariate.lisp")
9671 (("clnu:")
9672 "nu:")))))))
9673 (home-page "https://github.com/tpapp/cl-random")
9674 (synopsis "Random variates for Common Lisp")
9675 (description
9676 "@code{cl-random} is a library for generating random draws from various
9677commonly used distributions, and for calculating statistical functions, such as
9678density, distribution and quantiles for these distributions.")
9679 (license license:expat))))
9680
9681(define-public cl-random
9682 (sbcl-package->cl-source-package sbcl-cl-random))
9683
9684(define-public ecl-cl-random
9685 (sbcl-package->ecl-package sbcl-cl-random))
9686
9687(define-public sbcl-cl-random-forest
9688 (let ((commit "fedb36ce99bb6f4d7e3a7dd6d8b058f331308f91")
9689 (revision "1"))
9690 (package
9691 (name "sbcl-cl-random-forest")
9692 (version (git-version "0.1" revision commit))
9693 (source
9694 (origin
9695 (method git-fetch)
9696 (uri (git-reference
9697 (url "https://github.com/masatoi/cl-random-forest")
9698 (commit commit)))
9699 (file-name (git-file-name name version))
9700 (sha256
9701 (base32
9702 "0wqh4dxy5hrvm14jgyfypwhdw35f24rsksid4blz5a6l2z16rlmq"))))
9703 (build-system asdf-build-system/sbcl)
9704 (native-inputs
9705 (list sbcl-prove
9706 sbcl-trivial-garbage))
9707 (inputs
9708 (list sbcl-alexandria
9709 sbcl-cl-libsvm-format
9710 sbcl-cl-online-learning
9711 sbcl-lparallel))
9712 (arguments
9713 `(#:tests? #f)) ; The tests download data from the Internet
9714 (synopsis "Random Forest and Global Refinement for Common Lisp")
9715 (description
9716 "CL-random-forest is an implementation of Random Forest for multiclass
9717classification and univariate regression written in Common Lisp. It also
9718includes an implementation of Global Refinement of Random Forest.")
9719 (home-page "https://github.com/masatoi/cl-random-forest")
9720 (license license:expat))))
9721
9722(define-public cl-random-forest
9723 (sbcl-package->cl-source-package sbcl-cl-random-forest))
9724
9725(define-public ecl-cl-random-forest
9726 (sbcl-package->ecl-package sbcl-cl-random-forest))
9727
9728(define-public sbcl-cl-raylib
9729 (let ((commit "985ceebef4cb56c651cddc23bd71812f2be38c2d")
9730 (revision "0"))
9731 (package
9732 (name "sbcl-cl-raylib")
9733 (version (git-version "0.0.1" revision commit))
9734 (source
9735 (origin
9736 (method git-fetch)
9737 (uri (git-reference
9738 (url "https://github.com/longlene/cl-raylib")
9739 (commit commit)))
9740 (file-name (git-file-name "cl-raylib" version))
9741 (sha256
9742 (base32 "1kighj35g6dn426mhr2ppz3gm49v1q4n42ydn619pclrqwyrnc2z"))))
9743 (build-system asdf-build-system/sbcl)
9744 (arguments
9745 `(#:tests? #f ; no tests https://github.com/longlene/cl-raylib/issues/40
9746 #:phases
9747 (modify-phases %standard-phases
9748 (add-after 'unpack 'fix-paths
9749 (lambda* (#:key inputs #:allow-other-keys)
9750 (substitute* "src/library.lisp"
9751 (("libraylib\\.so")
9752 (search-input-file inputs "/lib/libraylib.so"))))))))
9753 (inputs
9754 (list raylib
9755 sbcl-3d-matrices
9756 sbcl-3d-vectors
9757 sbcl-alexandria
9758 sbcl-cffi))
9759 (home-page "https://github.com/longlene/cl-raylib")
9760 (synopsis "Common Lisp bindings to raylib")
9761 (description "This package provides Common Lisp CFFI bindings to the
9762Raylib game development library.")
9763 (license license:expat))))
9764
9765(define-public cl-raylib
9766 (sbcl-package->cl-source-package sbcl-cl-raylib))
9767
9768(define-public ecl-cl-raylib
9769 (sbcl-package->ecl-package sbcl-cl-raylib))
9770
9771(define-public sbcl-cl-rdkafka
9772 (package
9773 (name "sbcl-cl-rdkafka")
9774 (version "1.1.0")
9775 (source
9776 (origin
9777 (method git-fetch)
9778 (uri (git-reference
9779 (url "https://github.com/SahilKang/cl-rdkafka")
9780 (commit (string-append "v" version))))
9781 (file-name (git-file-name name version))
9782 (sha256
9783 (base32
9784 "0z2g0k0xy8k1p9g93h8dy9wbygaq7ziwagm4yz93zk67mhc0b84v"))))
9785 (build-system asdf-build-system/sbcl)
9786 (arguments
9787 `(#:tests? #f ; Attempts to connect to locally running Kafka
9788 #:phases
9789 (modify-phases %standard-phases
9790 (add-after 'unpack 'fix-paths
9791 (lambda* (#:key inputs #:allow-other-keys)
9792 (substitute* "src/low-level/librdkafka-bindings.lisp"
9793 (("librdkafka" all)
9794 (string-append (assoc-ref inputs "librdkafka") "/lib/"
9795 all))))))))
9796 (inputs
9797 (list sbcl-bordeaux-threads
9798 sbcl-cffi
9799 librdkafka
9800 sbcl-lparallel
9801 sbcl-trivial-garbage))
9802 (home-page "https://github.com/SahilKang/cl-rdkafka")
9803 (synopsis "Common Lisp client library for Apache Kafka")
9804 (description "A Common Lisp client library for Apache Kafka.")
9805 (license license:gpl3)))
9806
9807(define-public cl-rdkafka
9808 (sbcl-package->cl-source-package sbcl-cl-rdkafka))
9809
9810(define-public ecl-cl-rdkafka
9811 (sbcl-package->ecl-package sbcl-cl-rdkafka))
9812
9813(define-public sbcl-cl-readline
9814 (let ((commit "8438c9ebd92ccc95ebab9cc9cbe6c72d44fccc58")
9815 (revision "1"))
9816 (package
9817 (name "sbcl-cl-readline")
9818 (version (git-version "0.1.2" revision commit))
9819 (source
9820 (origin
9821 (method git-fetch)
9822 (uri (git-reference
9823 (url "https://github.com/vindarel/cl-readline")
9824 (commit commit)))
9825 (file-name (git-file-name "cl-readline" version))
9826 (sha256
9827 (base32 "14iskvqfw71ssaav483vmqw62lrpznysjs800gjjppxs785p1fa0"))))
9828 (build-system asdf-build-system/sbcl)
9829 (inputs
9830 (list sbcl-alexandria
9831 sbcl-cffi
9832 readline))
9833 (arguments
9834 '(#:phases
9835 (modify-phases %standard-phases
9836 (add-after 'unpack 'fix-paths
9837 (lambda* (#:key inputs #:allow-other-keys)
9838 (substitute* "cl-readline.lisp"
9839 (("libreadline.so")
9840 (string-append (assoc-ref inputs "readline")
9841 "/lib/libreadline.so"))))))))
9842 (home-page "https://github.com/vindarel/cl-readline")
9843 (synopsis "Common Lisp bindings to the GNU Readline library")
9844 (description
9845 "The Readline library provides a set of functions for use by
9846applications that allow users to edit command lines as they are typed in.
9847Both Emacs and vi editing modes are available. The Readline library includes
9848additional functions to maintain a list of previously-entered command lines, to
9849recall and perhaps reedit those lines, and perform csh-like history expansion on
9850previous commands.")
9851 (license license:gpl3+))))
9852
9853(define-public cl-readline
9854 (sbcl-package->cl-source-package sbcl-cl-readline))
9855
9856(define-public ecl-cl-readline
9857 (sbcl-package->ecl-package sbcl-cl-readline))
9858
9859(define-public sbcl-cl-redis
9860 (let ((commit "06ff30e9f5b7bc2b4c0f4d18ce1823f0de4d32a7")
9861 (revision "1"))
9862 (package
9863 (name "sbcl-cl-redis")
9864 (version (git-version "2.3.8" revision commit))
9865 (source
9866 (origin
9867 (method git-fetch)
9868 (uri (git-reference
9869 (url "https://github.com/vseloved/cl-redis")
9870 (commit commit)))
9871 (file-name (git-file-name "cl-redis" version))
9872 ;; https://github.com/vseloved/cl-redis/pull/42
9873 (patches (search-patches "sbcl-cl-redis-replace-sbcl-specific-calls.patch"))
9874 (sha256
9875 (base32 "1jb82zpiwx7ri86z0xqdynr3m40jnlzinyc0b47lvpbqs7cydrrg"))))
9876 (build-system asdf-build-system/sbcl)
9877 (arguments
9878 '(#:phases
9879 (modify-phases %standard-phases
9880 (add-before 'check 'start-redis
9881 (lambda _
9882 (system "redis-server --port 6379 &"))))))
9883 (native-inputs
9884 (list sbcl-bordeaux-threads
9885 sbcl-flexi-streams
9886 redis
9887 sbcl-should-test))
9888 (inputs
9889 (list sbcl-babel
9890 sbcl-cl-ppcre
9891 sbcl-cl+ssl
9892 sbcl-flexi-streams
9893 sbcl-rutils
9894 sbcl-usocket))
9895 (home-page "https://github.com/vseloved/cl-redis")
9896 (synopsis "Common Lisp client for Redis")
9897 (description "This is a Common Lisp wrapper for interacting with the
9898Redis data structure store.")
9899 (license license:expat))))
9900
9901(define-public cl-redis
9902 (sbcl-package->cl-source-package sbcl-cl-redis))
9903
9904(define-public ecl-cl-redis
9905 (let ((pkg (sbcl-package->ecl-package sbcl-cl-redis)))
9906 (package
9907 (inherit pkg)
9908 (arguments
9909 (substitute-keyword-arguments arguments
9910 ;; Tests are failing on ECL with:
9911 ;; Test L-COMMANDS: An error occurred during initialization:
9912 ;; Protocol not found: "tcp".
9913 ((#:tests? _ #f) #f))))))
9914
9915(define-public sbcl-cl-reexport
9916 (let ((commit "03ad7a0e7307e510b3b25a622d3c5f8a077879b4")
9917 (revision "2"))
9918 (package
9919 (name "sbcl-cl-reexport")
9920 (build-system asdf-build-system/sbcl)
9921 (version (git-version "0.1" revision commit))
9922 (home-page "https://github.com/takagi/cl-reexport")
9923 (source
9924 (origin
9925 (method git-fetch)
9926 (uri (git-reference
9927 (url "https://github.com/takagi/cl-reexport")
9928 (commit commit)))
9929 (file-name (git-file-name "cl-reexport" version))
9930 (sha256
9931 (base32
9932 "02la6z3ickhmh2m87ymm2ijh9nkn7l6slskj99l8a1rhps394qqc"))))
9933 (inputs
9934 (list sbcl-alexandria))
9935 (native-inputs
9936 (list sbcl-prove))
9937 (synopsis "Reexport external symbols in other Common Lisp packages")
9938 (description
9939 "Cl-reexport makes a package reexport symbols which are external
9940symbols in other Common Lisp packages. This functionality is intended to be
9941used with (virtual) hierarchical packages.")
9942 (license license:llgpl))))
9943
9944(define-public cl-reexport
9945 (sbcl-package->cl-source-package sbcl-cl-reexport))
9946
9947(define-public ecl-cl-reexport
9948 (sbcl-package->ecl-package sbcl-cl-reexport))
9949
9950(define-public sbcl-cl-rmath
9951 (let ((commit "f6add1edda31547691d08e36ccf6c17305161aca")
9952 (revision "1"))
9953 (package
9954 (name "sbcl-cl-rmath")
9955 (version (git-version "0.0.1" revision commit))
9956 (source
9957 (origin
9958 (method git-fetch)
9959 (uri (git-reference
9960 (url "https://github.com/tpapp/cl-rmath")
9961 (commit commit)))
9962 (file-name (git-file-name "cl-rmath" version))
9963 (sha256
9964 (base32 "1ld8vbpy10paymx2hn0mcgd21i7cjhdrayln1jx0kayqxm12mmk4"))))
9965 (build-system asdf-build-system/sbcl)
9966 (arguments
9967 `(#:phases
9968 (modify-phases %standard-phases
9969 (add-after 'unpack 'fix-paths
9970 (lambda* (#:key inputs #:allow-other-keys)
9971 (substitute* "cl-rmath.lisp"
9972 (("\\(cffi:define-foreign-library librmath" all)
9973 (string-append all "\n"
9974 " (:unix \""
9975 (assoc-ref inputs "librmath")
9976 "/lib/libRmath.so\")"))))))))
9977 (inputs
9978 `(("cffi" ,sbcl-cffi)
9979 ("librmath" ,rmath-standalone)))
9980 (home-page "https://github.com/tpapp/cl-rmath")
9981 (synopsis "Common Lisp wrapper for libRmath")
9982 (description
9983 "@code{cl-rmath} is a simple, autogenerated foreign interface for the
9984standalone R API @code{libRmath}. There has been no effort to provide a
9985high-level interface for the original library, instead, this library is meant
9986to serve as a building block for such an interface.")
9987 (license license:boost1.0))))
9988
9989(define-public cl-rmath
9990 (sbcl-package->cl-source-package sbcl-cl-rmath))
9991
9992(define-public ecl-cl-rmath
9993 (sbcl-package->ecl-package sbcl-cl-rmath))
9994
9995(define-public sbcl-cl-semver
9996 (let ((commit "b125d2c49ea6d370302dde73a6e0841c0e928184")
9997 (revision "0"))
9998 (package
9999 (name "sbcl-cl-semver")
10000 (version (git-version "0.0.0" revision commit))
10001 (source
10002 (origin
10003 (method git-fetch)
10004 (uri (git-reference
10005 (url "https://github.com/cldm/cl-semver")
10006 (commit commit)))
10007 (file-name (git-file-name "cl-semver" version))
10008 (sha256
10009 (base32 "1zlcn7lrpvjiixgqm4yxnqqwak1hxfmxmchkpvrly41yhl586ril"))))
10010 (build-system asdf-build-system/sbcl)
10011 (native-inputs (list sbcl-stefil))
10012 (inputs
10013 (list sbcl-alexandria
10014 sbcl-esrap
10015 sbcl-named-readtables))
10016 (home-page "https://github.com/cldm/cl-semver")
10017 (synopsis "Semantic version handling in Common Lisp")
10018 (description
10019 "This package provides a Common Lisp implementation of the semantic
10020versioning specification: @url{http://semver.org}.")
10021 (license license:expat))))
10022
10023(define-public ecl-cl-semver
10024 (let ((pkg (sbcl-package->ecl-package sbcl-cl-semver)))
10025 (package
10026 (inherit pkg)
10027 (arguments
10028 (substitute-keyword-arguments arguments
10029 ;; TODO: https://github.com/cldm/cl-semver/issues/9
10030 ((#:tests? _ #f) #f))))))
10031
10032(define-public cl-semver
10033 (sbcl-package->cl-source-package sbcl-cl-semver))
10034
10035(define-public sbcl-cl-setlocale
10036 (let ((commit "f660d07dac72bc3e99caae1c6c8a789991e2694c")
10037 (revision "0"))
10038 (package
10039 (name "sbcl-cl-setlocale")
10040 (version (git-version "0.1" revision commit))
10041 (source
10042 (origin
10043 (method git-fetch)
10044 (uri (git-reference
10045 (url "https://github.com/shamazmazum/cl-setlocale")
10046 (commit commit)))
10047 (file-name (git-file-name "cl-setlocale" version))
10048 (sha256
10049 (base32 "0g1b89yj6n42ayf2074krk3h9yvglqxn54a6i3sxgpsqww2ll2a1"))))
10050 (build-system asdf-build-system/sbcl)
10051 (native-inputs (list sbcl-fiveam))
10052 (inputs (list sbcl-cffi))
10053 (home-page "https://github.com/shamazmazum/cl-setlocale")
10054 (synopsis "Common Lisp wrapper around setlocale")
10055 (description
10056 "This library provides a tiny Common Lisp wrapper around setlocale(3)
10057and can be used in conjunction with other FFI wrappers like cl-charms.")
10058 (license license:bsd-2))))
10059
10060(define-public cl-setlocale
10061 (sbcl-package->cl-source-package sbcl-cl-setlocale))
10062
10063(define-public ecl-cl-setlocale
10064 (sbcl-package->ecl-package sbcl-cl-setlocale))
10065
10066(define-public sbcl-cl-slice
10067 (let ((commit "c531683f287216aebbb0affbe090611fa1b5d697")
10068 (revision "1"))
10069 (package
10070 (name "sbcl-cl-slice")
10071 (version (git-version "0.1.0" revision commit))
10072 (source
10073 (origin
10074 (method git-fetch)
10075 (uri (git-reference
10076 (url "https://github.com/tpapp/cl-slice")
10077 (commit commit)))
10078 (file-name (git-file-name "cl-slice" version))
10079 (sha256
10080 (base32 "1ybznf4y5lda6bn163jcvj281qzhm24dfcwhbgxmm5n6f27gdccl"))))
10081 (build-system asdf-build-system/sbcl)
10082 (native-inputs
10083 (list sbcl-clunit))
10084 (inputs
10085 (list sbcl-alexandria sbcl-anaphora sbcl-let-plus))
10086 (home-page "https://github.com/tpapp/cl-slice")
10087 (synopsis "Array slices for Common Lisp")
10088 (description
10089 "This package provides a DSL for array slices in Common Lisp.")
10090 (license license:expat))))
10091
10092(define-public cl-slice
10093 (sbcl-package->cl-source-package sbcl-cl-slice))
10094
10095(define-public ecl-cl-slice
10096 (sbcl-package->ecl-package sbcl-cl-slice))
10097
10098(define-public sbcl-cl-slug
10099 (let ((commit "ffb229d10f0d3f7f54e706791725225e200bf749")
10100 (revision "1"))
10101 (package
10102 (name "sbcl-cl-slug")
10103 (version (git-version "0.4.1" revision commit))
10104 (source
10105 (origin
10106 (method git-fetch)
10107 (uri (git-reference
10108 (url "https://github.com/EuAndreh/cl-slug")
10109 (commit commit)))
10110 (file-name (git-file-name "cl-slug" version))
10111 (sha256
10112 (base32 "1asdq6xllmsvfw5fky9wblqcx9isac9jrrlkfl7vyxcq1wxrnflx"))))
10113 (build-system asdf-build-system/sbcl)
10114 (native-inputs
10115 (list sbcl-prove))
10116 (inputs
10117 (list sbcl-cl-ppcre))
10118 (home-page "https://github.com/EuAndreh/cl-slug")
10119 (synopsis "Multi-language slug formatter")
10120 (description
10121 "This is a small Common Lisp library to make slugs, mainly for URIs,
10122from English and beyond.")
10123 (license license:llgpl))))
10124
10125(define-public cl-slug
10126 (sbcl-package->cl-source-package sbcl-cl-slug))
10127
10128(define-public ecl-cl-slug
10129 (sbcl-package->ecl-package sbcl-cl-slug))
10130
10131(define-public sbcl-cl-smtp
10132 (let ((commit "ed47d326fad867ee11323fa3a0f307b5d40e8f2b")
10133 (revision "0"))
10134 (package
10135 (name "sbcl-cl-smtp")
10136 (version (git-version "20191031.1" revision commit))
10137 (source
10138 (origin
10139 (method git-fetch)
10140 (uri (git-reference
10141 (url "https://gitlab.common-lisp.net/cl-smtp/cl-smtp")
10142 (commit commit)))
10143 (file-name (git-file-name "cl-smtp" version))
10144 (sha256
10145 (base32 "0vjjfapcrdc5671jz2d24h8zvpz7skq1x6pi9fvw6ls5sgms6fr0"))))
10146 (build-system asdf-build-system/sbcl)
10147 (inputs
10148 (list sbcl-cl+ssl
10149 sbcl-cl-base64
10150 sbcl-flexi-streams
10151 sbcl-trivial-gray-streams
10152 sbcl-usocket))
10153 (home-page "https://gitlab.common-lisp.net/cl-smtp/cl-smtp")
10154 (synopsis "Simple Common Lisp SMTP client")
10155 (description "This package provides a client for SMTP.")
10156 (license license:llgpl))))
10157
10158(define-public cl-smtp
10159 (sbcl-package->cl-source-package sbcl-cl-smtp))
10160
10161(define-public ecl-cl-smtp
10162 (sbcl-package->ecl-package sbcl-cl-smtp))
10163
10164(define-public sbcl-cl-spark
10165 (let ((commit "4e34bcebdcf8e45265986eb43ad4ad03bb41a581")
10166 (revision "1"))
10167 (package
10168 (name "sbcl-cl-spark")
10169 (version (git-version "0.1.13" revision commit))
10170 (source
10171 (origin
10172 (method git-fetch)
10173 (uri (git-reference
10174 (url "https://github.com/tkych/cl-spark")
10175 (commit commit)))
10176 (file-name (git-file-name "cl-spark" version))
10177 (sha256
10178 (base32 "0my1fsgi2rjaqkpk934f2bjy63pmnj7faza3fzvnk6k3l66y19nk"))))
10179 (build-system asdf-build-system/sbcl)
10180 (native-inputs
10181 (list sbcl-fiveam))
10182 (synopsis "Common Lisp library to make histograms")
10183 (description "This is a Common Lisp library to make histograms using
10184UTF-8 block characters.")
10185 (home-page "https://github.com/tkych/cl-spark")
10186 (license license:expat))))
10187
10188(define-public cl-spark
10189 (sbcl-package->cl-source-package sbcl-cl-spark))
10190
10191(define-public ecl-cl-spark
10192 (sbcl-package->ecl-package sbcl-cl-spark))
10193
10194(define-public sbcl-cl-speedy-queue
10195 (let ((commit "0425c7c62ad3b898a5ec58cd1b3e74f7d91eec4b")
10196 (revision "1"))
10197 (package
10198 (name "sbcl-cl-speedy-queue")
10199 (version (git-version "0.0.0" revision commit))
10200 (source
10201 (origin
10202 (method git-fetch)
10203 (uri (git-reference
10204 (url "https://github.com/zkat/cl-speedy-queue")
10205 (commit commit)))
10206 (file-name (git-file-name "cl-speedy-queue" version))
10207 (sha256
10208 (base32 "0czhnvxn9lvbjz9h1lb7y18nqrsq3drq5icd3lqdaa07362alriq"))))
10209 (build-system asdf-build-system/sbcl)
10210 (home-page "https://github.com/zkat/cl-speedy-queue")
10211 (synopsis "Lightweight optimized queue for Common Lisp")
10212 (description
10213 "This is a lightweight, non-consing, optimized queue implementation for
10214Common Lisp.")
10215 (license license:expat))))
10216
10217(define-public cl-speedy-queue
10218 (sbcl-package->cl-source-package sbcl-cl-speedy-queue))
10219
10220(define-public ecl-cl-speedy-queue
10221 (sbcl-package->ecl-package sbcl-cl-speedy-queue))
10222
10223(define-public sbcl-cl-sqlite
10224 (package
10225 (name "sbcl-cl-sqlite")
10226 (version "0.2.1")
10227 (source
10228 (origin
10229 (method git-fetch)
10230 (uri (git-reference
10231 (url "https://github.com/dmitryvk/cl-sqlite")
10232 (commit version)))
10233 (file-name (git-file-name "cl-sqlite" version))
10234 (sha256
10235 (base32
10236 "08iv7b4m0hh7qx2cvq4f510nrgdld0vicnvmqsh9w0fgrcgmyg4k"))))
10237 (build-system asdf-build-system/sbcl)
10238 (inputs
10239 (list sbcl-iterate
10240 sbcl-cffi
10241 sqlite))
10242 (native-inputs
10243 (list sbcl-fiveam
10244 sbcl-bordeaux-threads))
10245 (arguments
10246 `(#:asd-systems '("sqlite")
10247 #:phases
10248 (modify-phases %standard-phases
10249 (add-after 'unpack 'fix-paths
10250 (lambda* (#:key inputs #:allow-other-keys)
10251 (substitute* "sqlite-ffi.lisp"
10252 (("libsqlite3" all) (string-append
10253 (assoc-ref inputs "sqlite")"/lib/" all))))))))
10254 (home-page "https://common-lisp.net/project/cl-sqlite/")
10255 (synopsis "Common Lisp binding for SQLite")
10256 (description
10257 "The @command{cl-sqlite} package is an interface to the SQLite embedded
10258relational database engine.")
10259 (license license:public-domain)))
10260
10261(define-public cl-sqlite
10262 (sbcl-package->cl-source-package sbcl-cl-sqlite))
10263
10264(define-public ecl-cl-sqlite
10265 (sbcl-package->ecl-package sbcl-cl-sqlite))
10266
10267(define-public sbcl-cl+ssl
10268 (let ((commit "17d5cdd65405f1d26e26f3e875e70027d0c8eedb")
10269 (revision "6"))
10270 (package
10271 (name "sbcl-cl+ssl")
10272 (version (git-version "0.0.0" revision commit))
10273 (source
10274 (origin
10275 (method git-fetch)
10276 (uri (git-reference
10277 (url "https://github.com/cl-plus-ssl/cl-plus-ssl")
10278 (commit commit)))
10279 (file-name (git-file-name "cl+ssl" version))
10280 (sha256
10281 (base32 "0v0kx2m5355jkdshmj0z923c5rlvdl2n11rb3hjbv3kssdfsbs0s"))))
10282 (build-system asdf-build-system/sbcl)
10283 (arguments
10284 '(#:phases
10285 (modify-phases %standard-phases
10286 (add-after 'unpack 'fix-paths
10287 (lambda* (#:key inputs #:allow-other-keys)
10288 (substitute* "src/reload.lisp"
10289 (("libssl.so" all)
10290 (string-append
10291 (assoc-ref inputs "openssl") "/lib/" all))
10292 (("libcrypto.so" all)
10293 (string-append
10294 (assoc-ref inputs "openssl") "/lib/" all)))))
10295 (add-after 'fix-paths 'fix-tests
10296 (lambda _
10297 ;; Disable coverall support in tests because of a circular
10298 ;; dependency: cl+ssl -> cl-coverall -> dexador
10299 ;; -> clack -> hunchentoot -> cl+ssl
10300 (substitute* "cl+ssl.test.asd"
10301 (("\\(:feature \\(:or :sbcl :ccl\\) :cl-coveralls\\)")
10302 "")))))))
10303 (native-inputs
10304 (list ;sbcl-cl-coveralls
10305 sbcl-fiveam
10306 sbcl-trivial-sockets))
10307 (inputs
10308 (list openssl
10309 sbcl-alexandria
10310 sbcl-bordeaux-threads
10311 sbcl-cffi
10312 sbcl-flexi-streams
10313 sbcl-trivial-features
10314 sbcl-trivial-garbage
10315 sbcl-trivial-gray-streams
10316 sbcl-usocket))
10317 (home-page "https://common-lisp.net/project/cl-plus-ssl/")
10318 (synopsis "Common Lisp bindings to OpenSSL")
10319 (description
10320 "This library is a fork of SSL-CMUCL. The original SSL-CMUCL source
10321code was written by Eric Marsden and includes contributions by Jochen Schmidt.
10322Development into CL+SSL was done by David Lichteblau.")
10323 (license license:expat))))
10324
10325(define-public cl-cl+ssl
10326 (sbcl-package->cl-source-package sbcl-cl+ssl))
10327
10328(define-public ecl-cl+ssl
10329 ;; The trivial-sockets system used for the tests doesn't support ECL, so we
10330 ;; remove it from native-inputs and disable the tests.
10331 (let ((pkg (sbcl-package->ecl-package sbcl-cl+ssl)))
10332 (package
10333 (inherit pkg)
10334 (native-inputs
10335 (modify-inputs native-inputs
10336 (delete "sbcl-trivial-sockets")))
10337 (arguments
10338 (substitute-keyword-arguments arguments
10339 ((#:tests? _ #f) #f))))))
10340
10341(define-public sbcl-cl-steamworks
10342 (let ((commit "95f25ae89d6ecc1a9461720d91d208e537eb8f17")
10343 (revision "2"))
10344 (package
10345 (name "sbcl-cl-steamworks")
10346 (version (git-version "1.0.0" revision commit))
10347 (source
10348 (origin
10349 (method git-fetch)
10350 (uri (git-reference
10351 (url "https://codeberg.org/shinmera/cl-steamworks")
10352 (commit commit)))
10353 (sha256
10354 (base32 "1h9qz603ab62sw0j7yyixb20z05pfgxqpg8mhd8zxhgmfm7cccy7"))
10355 (file-name (git-file-name "cl-steamworks" version))))
10356 (build-system asdf-build-system/sbcl)
10357 (inputs
10358 (list sbcl-alexandria
10359 sbcl-babel
10360 sbcl-cffi
10361 sbcl-documentation-utils
10362 sbcl-float-features
10363 sbcl-pathname-utils
10364 sbcl-trivial-features
10365 sbcl-trivial-garbage
10366 sbcl-trivial-gray-streams))
10367 (synopsis "Wrapper for the Valve SteamWorks API")
10368 (description "This is a wrapper library to allow you to interface with
10369the Valve SteamWorks API.")
10370 (home-page "https://shinmera.com/docs/cl-steamworks")
10371 (license license:zlib))))
10372
10373(define-public cl-steamworks
10374 (sbcl-package->cl-source-package sbcl-cl-steamworks))
10375
10376(define-public ecl-cl-steamworks
10377 (sbcl-package->ecl-package sbcl-cl-steamworks))
10378
10379(define-public sbcl-cl-stencl
10380 (let ((commit "432cfdcd34d47eac5d0fbc93b876abafaa1f8659")
10381 (revision "0"))
10382 (package
10383 (name "sbcl-cl-stencl")
10384 (version (git-version "0.0.0" revision commit))
10385 (source
10386 (origin
10387 (method git-fetch)
10388 (uri (git-reference
10389 (url "https://codeberg.org/dlowe/stencl")
10390 (commit commit)))
10391 (file-name (git-file-name "cl-stencl" version))
10392 (sha256
10393 (base32 "0b7ki5vrxw68g7vypvy86gs12smpwydcjwvwcyhvk1qwhaxhv6gf"))))
10394 (build-system asdf-build-system/sbcl)
10395 (arguments
10396 (list
10397 #:asd-systems ''("stencl")))
10398 (native-inputs (list sbcl-stefil))
10399 (synopsis "Lightweight templating library")
10400 (description
10401 "A simple templating library loosely based on BRL (the Beautiful Report
10402Language). It leverages the power of the lisp reader to create a dynamic
10403templating system that is easy to understand and powerful enough for most
10404applications.")
10405 (home-page "https://codeberg.org/dlowe/stencl")
10406 (license (license:non-copyleft "file://COPYING")))))
10407
10408(define-public cl-stencl
10409 (sbcl-package->cl-source-package sbcl-cl-stencl))
10410
10411(define-public ecl-cl-stencl
10412 (sbcl-package->ecl-package sbcl-cl-stencl))
10413
10414(define-public sbcl-cl-store
10415 (let ((commit "c787337a16ea8cf8a06227f35933a4ec774746b3")
10416 (revision "1"))
10417 (package
10418 (name "sbcl-cl-store")
10419 (version (git-version "0.8.11" revision commit))
10420 (source
10421 (origin
10422 (method git-fetch)
10423 (uri (git-reference
10424 (url "https://github.com/skypher/cl-store")
10425 (commit commit)))
10426 (file-name (git-file-name name version))
10427 (sha256
10428 (base32
10429 "194srkg8nrym19c6i7zbnkzshc1qhqa82m53qnkirz9fw928bqxr"))))
10430 (build-system asdf-build-system/sbcl)
10431 (native-inputs
10432 (list sbcl-rt))
10433 (synopsis "Common Lisp library to serialize data")
10434 (description
10435 "CL-STORE is a portable serialization package which should give you the
10436ability to store all Common Lisp data types into streams.")
10437 (home-page "https://www.common-lisp.net/project/cl-store/")
10438 (license license:expat))))
10439
10440(define-public cl-store
10441 (sbcl-package->cl-source-package sbcl-cl-store))
10442
10443(define-public ecl-cl-store
10444 (sbcl-package->ecl-package sbcl-cl-store))
10445
10446(define-public sbcl-cl-str
10447 (package
10448 (name "sbcl-cl-str")
10449 (version "0.21")
10450 (source (origin
10451 (method git-fetch)
10452 (uri (git-reference
10453 (url "https://github.com/vindarel/cl-str")
10454 (commit version)))
10455 (sha256
10456 (base32 "0r9niyvkj7jyc93rxys6pgqazzpl1ybfryjn8jig721xhjxrsblm"))
10457 (file-name (git-file-name name version))))
10458 (build-system asdf-build-system/sbcl)
10459 (inputs
10460 (list sbcl-cl-ppcre
10461 sbcl-cl-ppcre-unicode
10462 sbcl-cl-change-case))
10463 (native-inputs
10464 (list sbcl-prove))
10465 (arguments
10466 `(#:asd-systems '("str")))
10467 (home-page "https://vindarel.github.io/cl-str")
10468 (synopsis "Modern, consistent and terse Common Lisp string manipulation library")
10469 (description "A modern and consistent Common Lisp string manipulation
10470library that focuses on modernity, simplicity and discoverability:
10471@code{(str:trim s)} instead of @code{(string-trim '(#\\Space ...) s)}), or
10472@code{str:concat strings} instead of an unusual format construct; one
10473discoverable library instead of many; consistency and composability, where
10474@code{s} is always the last argument, which makes it easier to feed pipes and
10475arrows.")
10476 (license license:expat)))
10477
10478(define-public cl-str
10479 (sbcl-package->cl-source-package sbcl-cl-str))
10480
10481(define-public ecl-cl-str
10482 (sbcl-package->ecl-package sbcl-cl-str))
10483
10484(define-public sbcl-cl-strftime
10485 ;; No release.
10486 (let ((commit "21cb57f2595faa26d687893963f24ec41822b63c"))
10487 (package
10488 (name "sbcl-cl-strftime")
10489 (version (git-version "0.0.0" "1" commit))
10490 (source
10491 (origin
10492 (method git-fetch)
10493 (uri (git-reference
10494 (url "https://github.com/ruricolist/cl-strftime/")
10495 (commit commit)))
10496 (file-name (git-file-name name version))
10497 (sha256
10498 (base32 "00c8hq7vzgb89ab3q7mrp60x743kiqmsk1g51ynhxlqhph2bnslf"))))
10499 (build-system asdf-build-system/sbcl)
10500 (inputs
10501 (list sbcl-alexandria sbcl-local-time sbcl-cl-ppcre sbcl-serapeum))
10502 (native-inputs
10503 (list sbcl-fiveam sbcl-cffi))
10504 (home-page "https://github.com/ruricolist/cl-strftime")
10505 (synopsis "Common Lisp compiler for the strftime language")
10506 (description
10507 "CL-STRFTIME is a Common Lisp compiler for the strftime “language.”")
10508 (license license:expat))))
10509
10510(define-public cl-strftime
10511 (sbcl-package->cl-source-package sbcl-cl-strftime))
10512
10513(define-public ecl-cl-strftime
10514 (sbcl-package->ecl-package sbcl-cl-strftime))
10515
10516(define-public sbcl-cl-string-match
10517 (let ((revision "1")
10518 (changeset "5048480a61243e6f1b02884012c8f25cdbee6d97"))
10519 (package
10520 (name "sbcl-cl-string-match")
10521 (version (git-version "0" revision changeset))
10522 (source
10523 (origin
10524 (method hg-fetch)
10525 (uri (hg-reference
10526 (url "https://github.com/vityok/cl-string-match")
10527 (changeset changeset)))
10528 (sha256
10529 (base32
10530 "01wn5qx562w43ssy92xlfgv79w7p0nv0wbl76mpmba131n9ziq2y"))
10531 (file-name (git-file-name "cl-string-match" version))))
10532 (build-system asdf-build-system/sbcl)
10533 (inputs
10534 (list sbcl-alexandria
10535 sbcl-babel
10536 sbcl-iterate
10537 sbcl-jpl-queues
10538 sbcl-jpl-util
10539 sbcl-mgl-pax
10540 sbcl-parse-float
10541 sbcl-proc-parse
10542 sbcl-cl-yacc))
10543 ;; TODO: Tests are not evaluated properly.
10544 (native-inputs
10545 ;; For testing:
10546 (list sbcl-lisp-unit))
10547 (arguments
10548 `(#:tests? #f
10549 #:phases
10550 (modify-phases %standard-phases
10551 (add-after 'unpack 'fix-dependency
10552 (lambda _
10553 (substitute* "cl-string-match.asd"
10554 ((":mgl-pax")
10555 ":mgl-pax/document")))))))
10556 (synopsis "Set of utilities to manipulate strings in Common Lisp")
10557 (description
10558 "@command{cl-strings} is a small, portable, dependency-free set of
10559utilities that make it even easier to manipulate text in Common Lisp. It has
10560100% test coverage and works at least on sbcl, ecl, ccl, abcl and clisp.")
10561 (home-page "https://github.com/vityok/cl-string-match")
10562 (license license:bsd-3))))
10563
10564(define-public cl-string-match
10565 (sbcl-package->cl-source-package sbcl-cl-string-match))
10566
10567(define-public ecl-cl-string-match
10568 (sbcl-package->ecl-package sbcl-cl-string-match))
10569
10570(define-public sbcl-cl-strings
10571 (let ((revision "1")
10572 (commit "93ec4177fc51f403a9f1ef0a8933f36d917f2140"))
10573 (package
10574 (name "sbcl-cl-strings")
10575 (version (git-version "0.0.1" revision commit))
10576 (source
10577 (origin
10578 (method git-fetch)
10579 (uri (git-reference
10580 (url "https://github.com/diogoalexandrefranco/cl-strings")
10581 (commit commit)))
10582 (sha256
10583 (base32 "1j8hs54fn0wsf5zfzhhgiva47n9hsmfa74iinahz6nmcs8iy75aj"))
10584 (file-name (git-file-name "cl-strings" version))))
10585 (build-system asdf-build-system/sbcl)
10586 (synopsis "Set of utilities to manipulate strings in Common Lisp")
10587 (description
10588 "@command{cl-strings} is a small, portable, dependency-free set of
10589utilities that make it even easier to manipulate text in Common Lisp. It has
10590100% test coverage and works at least on sbcl, ecl, ccl, abcl and clisp.")
10591 (home-page "https://github.com/diogoalexandrefranco/cl-strings")
10592 (license license:expat))))
10593
10594(define-public cl-strings
10595 (sbcl-package->cl-source-package sbcl-cl-strings))
10596
10597(define-public ecl-cl-strings
10598 (sbcl-package->ecl-package sbcl-cl-strings))
10599
10600(define-public clasp-cl-strings
10601 (sbcl-package->clasp-package sbcl-cl-strings))
10602
10603(define-public sbcl-cl-svg
10604 (let ((commit "1e988ebd2d6e2ee7be4744208828ef1b59e5dcdc")
10605 (revision "1"))
10606 (package
10607 (name "sbcl-cl-svg")
10608 (version (git-version "0.0.3" revision commit))
10609 (source
10610 (origin
10611 (method git-fetch)
10612 (uri (git-reference
10613 (url "https://github.com/wmannis/cl-svg")
10614 (commit commit)))
10615 (file-name (git-file-name "cl-svg" version))
10616 (sha256
10617 (base32 "11rmzimy6j7ln7q5y1h2kw1225rsfb6fpn89qjcq7h5lc8fay0wz"))))
10618 (build-system asdf-build-system/sbcl)
10619 (home-page "https://github.com/wmannis/cl-svg")
10620 (synopsis "Write SVG file format")
10621 (description
10622 "This package provides the @code{CL-SVG} Common Lisp system to produce
10623Scalable Vector Graphics files.")
10624 (license license:expat))))
10625
10626(define-public cl-svg
10627 (sbcl-package->cl-source-package sbcl-cl-svg))
10628
10629(define-public ecl-cl-svg
10630 (sbcl-package->ecl-package sbcl-cl-svg))
10631
10632(define-public sbcl-cl-sxml
10633 (let ((commit "e5542b1d9bd6cee03ae27547d00660ccfbb60109")
10634 (revision "1"))
10635 (package
10636 (name "sbcl-cl-sxml")
10637 (version (git-version "0.0.0" revision commit))
10638 (source
10639 (origin
10640 (method git-fetch)
10641 (uri (git-reference
10642 (url "https://github.com/eadmund/cl-sxml")
10643 (commit commit)))
10644 (file-name (git-file-name "cl-sxml" version))
10645 (sha256
10646 (base32 "1105s9whidq1lf0lli2wdhcfcs5gwzxa0h1x3izx4mp2p7psvciz"))))
10647 (build-system asdf-build-system/sbcl)
10648 (inputs (list sbcl-cxml))
10649 (native-inputs
10650 (list sbcl-fiveam
10651 sbcl-flexi-streams))
10652 (home-page "https://github.com/eadmund/cl-sxml")
10653 (synopsis "SXML parsing for Common Lisp")
10654 (description
10655 "@code{CL-SXML} implements Oleg Kiselyov’s SXML, an S-expression-based
10656rendering of the XML Infoset.")
10657 (license license:gpl3+))))
10658
10659(define-public cl-sxml
10660 (sbcl-package->cl-source-package sbcl-cl-sxml))
10661
10662(define-public ecl-cl-sxml
10663 (sbcl-package->ecl-package sbcl-cl-sxml))
10664
10665(define-public sbcl-cl-syntax
10666 (package
10667 (name "sbcl-cl-syntax")
10668 (version "0.0.3")
10669 (source
10670 (origin
10671 (method git-fetch)
10672 (uri (git-reference
10673 (url "https://github.com/m2ym/cl-syntax")
10674 (commit "03f0c329bbd55b8622c37161e6278366525e2ccc")))
10675 (file-name (git-file-name "cl-syntax" version))
10676 (sha256
10677 (base32 "17ran8xp77asagl31xv8w819wafh6whwfc9p6dgx22ca537gyl4y"))))
10678 (build-system asdf-build-system/sbcl)
10679 (inputs
10680 (list sbcl-cl-annot
10681 sbcl-cl-interpol
10682 sbcl-named-readtables
10683 sbcl-trivial-types))
10684 (arguments
10685 '(#:asd-systems '("cl-syntax"
10686 "cl-syntax-annot"
10687 "cl-syntax-interpol")))
10688 (home-page "https://github.com/m2ym/cl-syntax")
10689 (synopsis "Reader Syntax Conventions for Common Lisp and SLIME")
10690 (description
10691 "CL-SYNTAX provides Reader Syntax Conventions for Common Lisp and SLIME.")
10692 (license license:llgpl)))
10693
10694(define-public cl-syntax
10695 (sbcl-package->cl-source-package sbcl-cl-syntax))
10696
10697(define-public ecl-cl-syntax
10698 (sbcl-package->ecl-package sbcl-cl-syntax))
10699
10700(define-public sbcl-cl-syslog
10701 (let ((commit "d5d46f777f0735938e6f650cf17d814b88b70305")
10702 (revision "0"))
10703 (package
10704 (name "sbcl-cl-syslog")
10705 (version (git-version "0.2.4" revision commit))
10706 (source
10707 (origin
10708 (method git-fetch)
10709 (uri (git-reference
10710 (url "https://github.com/mmaul/cl-syslog")
10711 (commit commit)))
10712 (file-name (git-file-name "cl-syslog" version))
10713 (sha256
10714 (base32 "1qcz55jiqwk91b01hsahxnha884f6zf2883j2m51sqph0mvj69mh"))))
10715 (build-system asdf-build-system/sbcl)
10716 (inputs
10717 (list sbcl-alexandria
10718 sbcl-babel
10719 sbcl-cffi
10720 sbcl-global-vars
10721 sbcl-local-time
10722 sbcl-split-sequence
10723 sbcl-usocket))
10724 (arguments
10725 (list #:tests? #f))
10726 (synopsis "Common Lisp interface to local and remote Syslog facilities")
10727 (description "@code{cl-syslog} is a Common Lisp library that provides
10728access to the syslog logging facility.")
10729 (home-page "https://cl-syslog.common-lisp.dev/")
10730 (license license:bsd-3))))
10731
10732(define-public cl-syslog
10733 (sbcl-package->cl-source-package sbcl-cl-syslog))
10734
10735(define-public ecl-cl-syslog
10736 (sbcl-package->ecl-package sbcl-cl-syslog))
10737
10738(define-public sbcl-cl-template
10739 (let ((commit "46193a9a389bb950530e579eae7e6e5a18184832")
10740 (revision "0"))
10741 (package
10742 (name "sbcl-cl-template")
10743 (version (git-version "0.0.1" revision commit))
10744 (home-page "https://github.com/alpha123/cl-template")
10745 (source
10746 (origin
10747 (method git-fetch)
10748 (uri (git-reference
10749 (url "https://github.com/alpha123/cl-template")
10750 (commit commit)))
10751 (file-name (git-file-name "cl-template" version))
10752 (sha256
10753 (base32 "1rhg023a2nxsk5x6abd6i0a8sh36aj0bgsh80w60m3b7xlsva2x2"))))
10754 (build-system asdf-build-system/sbcl)
10755 (native-inputs
10756 (list sbcl-fiveam))
10757 (synopsis "Template engine for Common Lisp")
10758 (description "@code{cl-template} is a template engine for Common Lisp,
10759taking inspiration from Ruby's ERb module.")
10760 (license license:expat))))
10761
10762(define-public cl-template
10763 (sbcl-package->cl-source-package sbcl-cl-template))
10764
10765(define-public ecl-cl-template
10766 (sbcl-package->ecl-package sbcl-cl-template))
10767
10768(define-public sbcl-cl-tga
10769 (let ((commit "4dc2f7b8a259b9360862306640a07a23d4afaacc")
10770 (revision "0"))
10771 (package
10772 (name "sbcl-cl-tga")
10773 (version (git-version "0.0.0" revision commit))
10774 (source
10775 (origin
10776 (method git-fetch)
10777 (uri (git-reference
10778 (url "https://github.com/fisxoj/cl-tga")
10779 (commit commit)))
10780 (file-name (git-file-name name version))
10781 (sha256
10782 (base32 "03k3npmn0xd3fd2m7vwxph82av2xrfb150imqrinlzqmzvz1v1br"))))
10783 (build-system asdf-build-system/sbcl)
10784 (home-page "https://github.com/fisxoj/cl-tga")
10785 (synopsis "TGA file loader for Common Lisp")
10786 (description
10787 "Cl-tga was written to facilitate loading @emph{.tga} files into OpenGL
10788programs. It's a very simple library, and, at the moment, only supports
10789non-RLE encoded forms of the files.")
10790 (license license:expat))))
10791
10792(define-public cl-tga
10793 (sbcl-package->cl-source-package sbcl-cl-tga))
10794
10795(define-public ecl-cl-tga
10796 (sbcl-package->ecl-package sbcl-cl-tga))
10797
10798(define-public sbcl-cl-tld
10799 ;; No release.
10800 (let ((commit "f5014da8d831fa9481d4181d4450f10a52850c75"))
10801 (package
10802 (name "sbcl-cl-tld")
10803 (version (git-version "0.1" "2" commit))
10804 (source
10805 (origin
10806 (method git-fetch)
10807 (uri (git-reference
10808 (url "https://github.com/lu4nx/cl-tld")
10809 (commit commit)))
10810 (file-name (git-file-name name version))
10811 (sha256
10812 (base32 "0sxnn35gzdby1ixil6zbjg72vli9fcspwzsqimqk455310syx9iv"))))
10813 (build-system asdf-build-system/sbcl)
10814 (home-page "https://github.com/lu4nx/cl-tld/")
10815 (synopsis "Extract the Top Level Domain from domains, in Common Lisp")
10816 (description
10817 "This library extracts the TLD (Top Level Domain) from domains. The
10818information is taken from @url{https://publicsuffix.org}.")
10819 (license license:public-domain))))
10820
10821(define-public cl-tld
10822 (sbcl-package->cl-source-package sbcl-cl-tld))
10823
10824(define-public ecl-cl-tld
10825 (sbcl-package->ecl-package sbcl-cl-tld))
10826
10827(define-public sbcl-cl-tls
10828 (let ((commit "2ab4fc3ae7e79e451126a9bb6bc38ca2cd2cb4ba")
10829 (revision "0"))
10830 (package
10831 (name "sbcl-cl-tls")
10832 (version (git-version "0.0.0" revision commit))
10833 (source
10834 (origin
10835 (method git-fetch)
10836 (uri (git-reference
10837 (url "https://github.com/shrdlu68/cl-tls")
10838 (commit commit)))
10839 (file-name (git-file-name "cl-tls" version))
10840 (sha256
10841 (base32 "1j6gwv21ibkk6xd1xxm54wgwp09dzqg60b8z72hivpnq8gwm0ba7"))))
10842 (build-system asdf-build-system/sbcl)
10843 (inputs
10844 (list sbcl-alexandria
10845 sbcl-babel
10846 sbcl-cl-base64
10847 sbcl-fast-io
10848 sbcl-ironclad))
10849 (home-page "https://github.com/shrdlu68/cl-tls")
10850 (synopsis "Implementation of Transport Layer Security Protocols")
10851 (description "This package provides prototype Common Lisp
10852implementations of TLS, RFC5246, ASN.1, x{501,509}, and PKCS{1,3,5,8}.")
10853 (license license:bsd-3))))
10854
10855(define-public cl-tls
10856 (sbcl-package->cl-source-package sbcl-cl-tls))
10857
10858(define-public ecl-cl-tls
10859 (sbcl-package->ecl-package sbcl-cl-tls))
10860
10861(define-public sbcl-cl-typesetting
10862 (let ((commit "86eba981fc4254addebecf765578ec350d6e3b75")
10863 (revision "1"))
10864 (package
10865 (name "sbcl-cl-typesetting")
10866 (version (git-version "0.8.0" revision commit))
10867 (source
10868 (origin
10869 (method git-fetch)
10870 (uri (git-reference
10871 (url "https://github.com/mbattyani/cl-typesetting")
10872 (commit commit)))
10873 (file-name (git-file-name "cl-typesetting" version))
10874 (sha256
10875 (base32 "0fcs5mq0gxfczbrg7ay8r4bf5r4g6blvpdbjkhcl8dapcikyn35h"))))
10876 (build-system asdf-build-system/sbcl)
10877 (arguments
10878 ;; NOTE: (Sharlatan-20210515T213014+0100): Circular dependencies with
10879 ;; cl-typegraph
10880 `(#:tests? #f))
10881 (inputs
10882 (list sbcl-cl-pdf
10883 sbcl-xmls))
10884 (home-page "https://github.com/mbattyani/cl-typesetting")
10885 (synopsis "Stand-alone Common Lisp typesetting system")
10886 (description
10887 "CL-TYPESETTING is a cross-platform Common Lisp typesetting library for
10888all kind of typesetting applications.")
10889 (license license:bsd-2))))
10890
10891(define-public cl-typesetting
10892 (sbcl-package->cl-source-package sbcl-cl-typesetting))
10893
10894(define-public ecl-cl-typesetting
10895 (sbcl-package->ecl-package sbcl-cl-typesetting))
10896
10897(define-public sbcl-cl-uglify-js
10898 ;; There have been many bug fixes since the 2010 release.
10899 (let ((commit "429c5e1d844e2f96b44db8fccc92d6e8e28afdd5")
10900 (revision "1"))
10901 (package
10902 (name "sbcl-cl-uglify-js")
10903 (version (git-version "0.1" revision commit))
10904 (source
10905 (origin
10906 (method git-fetch)
10907 (uri (git-reference
10908 (url "https://github.com/mishoo/cl-uglify-js")
10909 (commit commit)))
10910 (file-name (git-file-name "cl-uglify-js" version))
10911 (sha256
10912 (base32
10913 "0k39y3c93jgxpr7gwz7w0d8yknn1fdnxrjhd03057lvk5w8js27a"))))
10914 (build-system asdf-build-system/sbcl)
10915 (inputs
10916 (list sbcl-parse-js sbcl-cl-ppcre sbcl-cl-ppcre-unicode
10917 sbcl-parse-number sbcl-iterate))
10918 (home-page "https://github.com/mishoo/cl-uglify-js")
10919 (synopsis "JavaScript compressor library for Common Lisp")
10920 (description "This is a Common Lisp version of UglifyJS, a JavaScript
10921compressor. It works on data produced by @code{parse-js} to generate a
10922@dfn{minified} version of the code. Currently it can:
10923
10924@itemize
10925@item reduce variable names (usually to single letters)
10926@item join consecutive @code{var} statements
10927@item resolve simple binary expressions
10928@item group most consecutive statements using the @code{sequence} operator (comma)
10929@item remove unnecessary blocks
10930@item convert @code{IF} expressions in various ways that result in smaller code
10931@item remove some unreachable code
10932@end itemize\n")
10933 (license license:zlib))))
10934
10935(define-public cl-uglify-js
10936 (sbcl-package->cl-source-package sbcl-cl-uglify-js))
10937
10938(define-public ecl-cl-uglify-js
10939 (sbcl-package->ecl-package sbcl-cl-uglify-js))
10940
10941(define-public uglify-js
10942 (package
10943 (inherit sbcl-cl-uglify-js)
10944 (name "uglify-js")
10945 (build-system trivial-build-system)
10946 (arguments
10947 `(#:modules ((guix build utils))
10948 #:builder
10949 (let* ((bin (string-append (assoc-ref %outputs "out") "/bin/"))
10950 (script (string-append bin "uglify-js")))
10951 (use-modules (guix build utils))
10952 (mkdir-p bin)
10953 (with-output-to-file script
10954 (lambda _
10955 (format #t "#!~a/bin/sbcl --script
10956
10957 (require :asdf)
10958 (asdf:initialize-source-registry
10959 #p\"~a/etc/xdg/common-lisp/source-registry.conf.d/\")
10960 (asdf:initialize-output-translations
10961 #p\"~a/etc/xdg/common-lisp/asdf-output-translations.conf.d/\")"
10962 (assoc-ref %build-inputs "sbcl")
10963 (assoc-ref %build-inputs "sbcl-cl-uglify-js")
10964 (assoc-ref %build-inputs "sbcl-cl-uglify-js"))
10965 ;; FIXME: cannot use progn here because otherwise it fails to
10966 ;; find cl-uglify-js.
10967 (for-each
10968 write
10969 '(;; Quiet, please!
10970 (let ((*standard-output* (make-broadcast-stream))
10971 (*error-output* (make-broadcast-stream)))
10972 (asdf:load-system :cl-uglify-js))
10973 (let ((file (cadr *posix-argv*)))
10974 (if file
10975 (format t "~a"
10976 (cl-uglify-js:ast-gen-code
10977 (cl-uglify-js:ast-mangle
10978 (cl-uglify-js:ast-squeeze
10979 (with-open-file (in file)
10980 (parse-js:parse-js in))))
10981 :beautify nil))
10982 (progn
10983 (format *error-output*
10984 "Please provide a JavaScript file.~%")
10985 (sb-ext:exit :code 1))))))))
10986 (chmod script #o755)
10987 #t)))
10988 (inputs
10989 (list sbcl sbcl-cl-uglify-js))
10990 (synopsis "JavaScript compressor")))
10991
10992(define-public sbcl-cl-unicode
10993 (package
10994 (name "sbcl-cl-unicode")
10995 (version "0.1.6")
10996 (source (origin
10997 (method git-fetch)
10998 (uri (git-reference
10999 (url "https://github.com/edicl/cl-unicode")
11000 (commit (string-append "v" version))))
11001 (file-name (git-file-name name version))
11002 (sha256
11003 (base32
11004 "0ykx2s9lqfl74p1px0ik3l2izd1fc9jd1b4ra68s5x34rvjy0hza"))))
11005 (build-system asdf-build-system/sbcl)
11006 (native-inputs
11007 (list sbcl-flexi-streams))
11008 (inputs
11009 (list sbcl-cl-ppcre))
11010 (home-page "http://weitz.de/cl-unicode/")
11011 (synopsis "Portable Unicode library for Common Lisp")
11012 (description "CL-UNICODE is a portable Unicode library Common Lisp, which
11013is compatible with perl. It is pretty fast, thread-safe, and compatible with
11014ANSI-compliant Common Lisp implementations.")
11015 (license license:bsd-2)))
11016
11017(define-public cl-unicode
11018 (sbcl-package->cl-source-package sbcl-cl-unicode))
11019
11020(define-public ecl-cl-unicode
11021 (sbcl-package->ecl-package sbcl-cl-unicode))
11022
11023(define-public clasp-cl-unicode
11024 (sbcl-package->clasp-package sbcl-cl-unicode))
11025
11026(define-public sbcl-cl-unification
11027 (let ((commit "01079f34d197495880aa49ab727d63774d83035c")
11028 (revision "1"))
11029 (package
11030 (name "sbcl-cl-unification")
11031 (version (git-version "0.0.0" revision commit))
11032 (source
11033 (origin
11034 (method git-fetch)
11035 (uri (git-reference
11036 (url "https://gitlab.common-lisp.net/cl-unification/cl-unification")
11037 (commit commit)))
11038 (file-name (git-file-name "cl-unification" version))
11039 (sha256
11040 (base32 "0nhqamn3qgg38i6aw2pshffdwr2hzslycg8ficmn333gw0h9rf4g"))))
11041 (build-system asdf-build-system/sbcl)
11042 (native-inputs
11043 (list sbcl-ptester))
11044 (inputs
11045 (list sbcl-cl-ppcre))
11046 (home-page "https://common-lisp.net/project/cl-unification/")
11047 (synopsis "Unification framework for Common Lisp")
11048 (description
11049 "This package provides a framework to unify arbitrary
11050Common Lisp objects while constructing bindings for placeholders
11051(unification variables) in a template sublanguage.")
11052 (license license:bsd-0))))
11053
11054(define-public cl-unification
11055 (sbcl-package->cl-source-package sbcl-cl-unification))
11056
11057(define-public ecl-cl-unification
11058 (let ((pkg (sbcl-package->ecl-package sbcl-cl-unification)))
11059 (package
11060 (inherit pkg)
11061 (arguments
11062 (substitute-keyword-arguments arguments
11063 ;; The tests fail on ECL with:
11064 ;; "In MAKE-ARRAY: the elements in :INITIAL-CONTENTS do not match
11065 ;; the array dimensions."
11066 ((#:tests? _ #f) #f))))))
11067
11068(define-public sbcl-cl-utilities
11069 (let ((commit "dce2d2f6387091ea90357a130fa6d13a6776884b")
11070 (revision "1"))
11071 (package
11072 (name "sbcl-cl-utilities")
11073 (version (git-version "0.0.0" revision commit))
11074 (source
11075 (origin
11076 (method url-fetch)
11077 (uri
11078 (string-append
11079 "https://gitlab.common-lisp.net/cl-utilities/cl-utilities/-/"
11080 "archive/" commit "/cl-utilities-" commit ".tar.gz"))
11081 (sha256
11082 (base32 "1r46v730yf96nk2vb24qmagv9x96xvd08abqwhf02ghgydv1a7z2"))))
11083 (build-system asdf-build-system/sbcl)
11084 (arguments
11085 '(#:phases
11086 (modify-phases %standard-phases
11087 (add-after 'unpack 'fix-paths
11088 (lambda* (#:key inputs #:allow-other-keys)
11089 (substitute* "rotate-byte.lisp"
11090 (("in-package :cl-utilities)" all)
11091 "in-package :cl-utilities)\n\n#+sbcl\n(require :sb-rotate-byte)")))))))
11092 (home-page "https://common-lisp.net/project/cl-utilities")
11093 (synopsis "Collection of semi-standard utilities")
11094 (description
11095 "On Cliki.net <http://www.cliki.net/Common%20Lisp%20Utilities>, there
11096is a collection of Common Lisp Utilities, things that everybody writes since
11097they're not part of the official standard. There are some very useful things
11098there; the only problems are that they aren't implemented as well as you'd
11099like (some aren't implemented at all) and they aren't conveniently packaged
11100and maintained. It takes quite a bit of work to carefully implement utilities
11101for common use, commented and documented, with error checking placed
11102everywhere some dumb user might make a mistake.")
11103 (license license:public-domain))))
11104
11105(define-public cl-utilities
11106 (sbcl-package->cl-source-package sbcl-cl-utilities))
11107
11108(define-public ecl-cl-utilities
11109 (sbcl-package->ecl-package sbcl-cl-utilities))
11110
11111(define-public clasp-cl-utilities
11112 (sbcl-package->clasp-package sbcl-cl-utilities))
11113
11114(define-public sbcl-cl-variates
11115 (let ((commit "4e7548754d8a8731a42487fae31174db4bf36d47")
11116 (revision "0"))
11117 (package
11118 (name "sbcl-cl-variates")
11119 (version "0.9.0")
11120 (source
11121 (origin
11122 (method git-fetch)
11123 (uri (git-reference
11124 (url "https://gitlab.common-lisp.net/cl-variates/cl-variates")
11125 (commit commit)))
11126 (file-name (git-file-name "cl-variates" version))
11127 (sha256
11128 (base32 "03wnvfi3yfflpvi0mr732r834msij4vrwdbgf6csh0b8kqxl47zn"))))
11129 (build-system asdf-build-system/sbcl)
11130 ;; USE-PACKAGE #<PACKAGE "CL-VARIATES"> causes name-conflicts in
11131 ;; #<PACKAGE "CL-VARIATES-TEST"> between the following symbols:
11132 ;; CL-VARIATES:RANDOM-ELEMENT, LIFT:RANDOM-ELEMENT
11133 (arguments (list #:tests? #f))
11134 (native-inputs (list sbcl-lift))
11135 (home-page "https://gitlab.common-lisp.net/cl-variates/cl-variates")
11136 (synopsis "Portable Common Lisp Random Number Generation")
11137 (description "The variates package provides portable random number
11138generation as well as numerous distributions.")
11139 (license license:expat))))
11140
11141(define-public cl-variates
11142 (sbcl-package->cl-source-package sbcl-cl-variates))
11143
11144(define-public ecl-cl-variates
11145 (sbcl-package->ecl-package sbcl-cl-variates))
11146
11147(define-public sbcl-cl-vectors
11148 (package
11149 (name "sbcl-cl-vectors")
11150 (version "0.1.5")
11151 (source
11152 (origin
11153 (method url-fetch)
11154 (uri (string-append "http://projects.tuxee.net/cl-vectors/"
11155 "files/cl-vectors-" version ".tar.gz"))
11156 (sha256
11157 (base32
11158 "04lhwi0kq8pkwhgd885pk80m1cp9sfvjjn5zj70s1dnckibhdmqh"))))
11159 (build-system asdf-build-system/sbcl)
11160 (inputs
11161 (list sbcl-zpb-ttf))
11162 (arguments
11163 '(#:asd-systems '("cl-vectors"
11164 "cl-paths"
11165 "cl-paths-ttf"
11166 "cl-aa"
11167 "cl-aa-misc")))
11168 (home-page "http://projects.tuxee.net/cl-vectors/")
11169 (synopsis "Create, transform and render anti-aliased vectorial paths")
11170 (description
11171 "This is a pure Common Lisp library to create, transform and render
11172anti-aliased vectorial paths.")
11173 (license license:expat)))
11174
11175(define-public cl-vectors
11176 (sbcl-package->cl-source-package sbcl-cl-vectors))
11177
11178(define-public ecl-cl-vectors
11179 (sbcl-package->ecl-package sbcl-cl-vectors))
11180
11181(define-public sbcl-cl-vorbis
11182 (let ((commit "c5835cd7091aea9e2e389ad359d244542d637758")
11183 (revision "0"))
11184 (package
11185 (name "sbcl-cl-vorbis")
11186 (version (git-version "1.0.0" revision commit))
11187 (source
11188 (origin
11189 (method git-fetch)
11190 (uri (git-reference
11191 (url "https://github.com/Shirakumo/cl-vorbis")
11192 (commit commit)))
11193 (file-name (git-file-name "cl-vorbis" version))
11194 (sha256
11195 (base32 "0713pl5c2khfpf8m3h1l2y0ilack7akf580h70jq6qcrnq3h4b40"))
11196 (modules '((guix build utils)))
11197 (snippet
11198 ;; Delete bundled libraries, GlibC and Vorbis sources.
11199 `(begin
11200 (delete-file-recursively "static")
11201 (for-each delete-file '("glibc-2.13.h"
11202 "stb_vorbis.c"
11203 "stb_vorbis_patch.c"))))))
11204 (build-system asdf-build-system/sbcl)
11205 (arguments
11206 `(#:phases
11207 (modify-phases %standard-phases
11208 (add-after 'unpack 'fix-paths
11209 (lambda* (#:key inputs #:allow-other-keys)
11210 (substitute* "low-level.lisp"
11211 (("libvorbis-lin-amd64.so")
11212 (search-input-file inputs "/lib/libvorbis.so"))))))))
11213 (inputs
11214 (list libvorbis
11215 sbcl-cffi
11216 sbcl-documentation-utils
11217 sbcl-static-vectors
11218 sbcl-trivial-features
11219 sbcl-trivial-garbage))
11220 (home-page "https://shirakumo.github.io/cl-vorbis/")
11221 (synopsis "OGG/Vorbis decoding using stb_vorbis for Common Lisp")
11222 (description "This package provides CFFI bindings for the
11223@code{stb_vorbis} audio library to Common Lisp.")
11224 (license license:zlib))))
11225
11226(define-public cl-vorbis
11227 (sbcl-package->cl-source-package sbcl-cl-vorbis))
11228
11229(define-public ecl-cl-vorbis
11230 (sbcl-package->ecl-package sbcl-cl-vorbis))
11231
11232(define-public sbcl-cl-wayland
11233 (let ((commit "a92a5084b64102f538ab90212e99c7863e5338ae")
11234 (revision "0"))
11235 (package
11236 (name "sbcl-cl-wayland")
11237 (version (git-version "0.0.0" revision commit))
11238 (source
11239 (origin
11240 (method git-fetch)
11241 (uri (git-reference
11242 (url "https://github.com/sdilts/cl-wayland")
11243 (commit commit)))
11244 (file-name (git-file-name "cl-wayland" version))
11245 (sha256
11246 (base32 "1r4fn9dc0dz2b30k8z243yacx1y5z21qk4zh2ildj7ak51qx53zf"))))
11247 (build-system asdf-build-system/sbcl)
11248 (arguments
11249 (list #:phases
11250 #~(modify-phases %standard-phases
11251 (add-after 'unpack 'fix-paths
11252 (lambda* (#:key inputs #:allow-other-keys)
11253 (substitute* "wayland-server-core.lisp"
11254 (("libwayland-server.so")
11255 (search-input-file inputs
11256 "/lib/libwayland-server.so"))))))))
11257 (inputs
11258 (list sbcl-cffi
11259 sbcl-closer-mop
11260 wayland))
11261 (home-page "https://github.com/sdilts/cl-wayland")
11262 (synopsis "Common Lisp FFI bindings for libwayland")
11263 (description
11264 "This package provides Common Lisp FFI bindings for libwayland,
11265primarily for the mahogany window manager.")
11266 (license license:bsd-3))))
11267
11268(define-public cl-wayland
11269 (sbcl-package->cl-source-package sbcl-cl-wayland))
11270
11271(define-public ecl-cl-wayland
11272 (sbcl-package->ecl-package sbcl-cl-wayland))
11273
11274(define-public sbcl-cl-webkit
11275 (package
11276 (name "sbcl-cl-webkit")
11277 (version "3.5.10")
11278 (source
11279 (origin
11280 (method git-fetch)
11281 (uri (git-reference
11282 (url "https://github.com/joachifm/cl-webkit")
11283 (commit version)))
11284 (file-name (git-file-name "cl-webkit" version))
11285 (sha256
11286 (base32
11287 "0bn8idvbi58kg0g76lanvjzkgnkcy41yn9vbp7f80q9fa7w892rq"))))
11288 (build-system asdf-build-system/sbcl)
11289 (inputs
11290 `(("cffi" ,sbcl-cffi)
11291 ("cl-cffi-gtk" ,sbcl-cl-cffi-gtk)
11292 ("webkitgtk" ,webkitgtk-for-gtk3)))
11293 (native-inputs
11294 `(;; Tests seem to need Xorg.
11295 ;; ("xorg-server" ,xorg-server-for-tests)
11296 ("calispel" ,sbcl-calispel)
11297 ("fiveam" ,sbcl-fiveam)
11298 ("float-features" ,sbcl-float-features)))
11299 (arguments
11300 `(#:asd-systems '("cl-webkit2")
11301 #:tests? #f ; TODO: Tests hang, why?
11302 #:phases
11303 (modify-phases %standard-phases
11304 ;; The following phase is needed for tests:
11305 ;; (add-before 'check 'start-xorg-server
11306 ;; (lambda* (#:key inputs #:allow-other-keys)
11307 ;; ;; The test suite requires a running X server.
11308 ;; (system (string-append (assoc-ref inputs "xorg-server")
11309 ;; "/bin/Xvfb :1 &"))
11310 ;; (setenv "DISPLAY" ":1")
11311 ;; #t))
11312 (add-after 'unpack 'fix-paths
11313 (lambda* (#:key inputs #:allow-other-keys)
11314 (substitute* "webkit2/webkit2.init.lisp"
11315 (("libwebkit2gtk" all)
11316 (string-append
11317 (assoc-ref inputs "webkitgtk") "/lib/" all))))))))
11318 (home-page "https://github.com/joachifm/cl-webkit")
11319 (synopsis "Binding to WebKitGTK+ for Common Lisp")
11320 (description
11321 "@command{cl-webkit} is a binding to WebKitGTK+ for Common Lisp,
11322currently targeting WebKit version 2. The WebKitGTK+ library adds web
11323browsing capabilities to an application, leveraging the full power of the
11324WebKit browsing engine.")
11325 (license license:expat)))
11326
11327(define-public cl-webkit
11328 (sbcl-package->cl-source-package sbcl-cl-webkit))
11329
11330(define-public ecl-cl-webkit
11331 (sbcl-package->ecl-package sbcl-cl-webkit))
11332
11333(define-public sbcl-cl-who
11334 (let ((version "1.1.4")
11335 (commit "07dafe9b351c32326ce20b5804e798f10d4f273d")
11336 (revision "3"))
11337 (package
11338 (name "sbcl-cl-who")
11339 (version (git-version version revision commit))
11340 (source
11341 (origin
11342 (method git-fetch)
11343 (uri (git-reference
11344 (url "https://github.com/edicl/cl-who")
11345 (commit commit)))
11346 (file-name (git-file-name "cl-who" version))
11347 (sha256
11348 (base32
11349 "1rdvs113q6d46cblwhsv1vmm31p952wyzkyibqix0ypadpczlgp5"))))
11350 (build-system asdf-build-system/sbcl)
11351 (native-inputs
11352 (list sbcl-flexi-streams))
11353 (home-page "https://edicl.github.io/cl-who/")
11354 (synopsis "Yet another Lisp markup language")
11355 (description
11356 "There are plenty of Lisp Markup Languages out there - every Lisp
11357programmer seems to write at least one during his career - and CL-WHO (where
11358WHO means \"with-html-output\" for want of a better acronym) is probably just
11359as good or bad as the next one.")
11360 (license license:bsd-2))))
11361
11362(define-public cl-who
11363 (sbcl-package->cl-source-package sbcl-cl-who))
11364
11365(define-public ecl-cl-who
11366 (sbcl-package->ecl-package sbcl-cl-who))
11367
11368(define-public sbcl-cl-xkb
11369 (let ((commit "3807a264d04ac242ea65991b19b5fb3f894c6e46")
11370 (revision "1"))
11371 (package
11372 (name "sbcl-cl-xkb")
11373 (version (git-version "0.0.0" revision commit))
11374 (source
11375 (origin
11376 (method git-fetch)
11377 (uri (git-reference
11378 (url "https://github.com/malcolmstill/cl-xkb")
11379 (commit commit)))
11380 (file-name (git-file-name "cl-xkb" version))
11381 (sha256
11382 (base32 "002bskv0dvq2hahz7dah2zwwkp2zrkf98w7lm96jmqfn8vyp4k75"))))
11383 (build-system asdf-build-system/sbcl)
11384 (arguments
11385 (list
11386 #:phases
11387 #~(modify-phases %standard-phases
11388 (add-after 'unpack 'add-xkbcommon
11389 (lambda* (#:key inputs #:allow-other-keys)
11390 (substitute* "cl-xkb.lisp"
11391 (("/usr/lib64/libxkbcommon.so.0")
11392 (search-input-file inputs "/lib/libxkbcommon.so"))))))))
11393 (native-inputs
11394 (list pkg-config))
11395 (inputs
11396 (list libxkbcommon
11397 sbcl-cffi))
11398 (home-page "https://github.com/malcolmstill/cl-xkb")
11399 (synopsis "Common Lisp wrapper for @code{libxkbcommon}")
11400 (description
11401 "@code{cl-xkb} is a Common Lisp wrapper for the libxkbcommon keyboard
11402handling library.
11403
11404The library currently supports these xkb modules:
11405
11406@itemize
11407@item Keysyms
11408@item Library Context
11409@item Include Paths
11410@item Logging Handling
11411@item Keymap Creation
11412@item Keymap Components
11413@item Keyboard State
11414@item Compose and dead-keys support
11415@end itemize")
11416 (license license:bsd-3))))
11417
11418(define-public cl-xkb
11419 (sbcl-package->cl-source-package sbcl-cl-xkb))
11420
11421(define-public ecl-cl-xkb
11422 (sbcl-package->ecl-package sbcl-cl-xkb))
11423
11424(define-public sbcl-cl-xmlspam
11425 (let ((commit "ea06abcca2a73a9779bcfb09081e56665f94e22a"))
11426 (package
11427 (name "sbcl-cl-xmlspam")
11428 (build-system asdf-build-system/sbcl)
11429 (version (git-version "0.0.0" "1" commit))
11430 (home-page "https://github.com/rogpeppe/cl-xmlspam")
11431 (source
11432 (origin
11433 (method git-fetch)
11434 (uri (git-reference
11435 (url home-page)
11436 (commit commit)))
11437 (file-name (string-append name "-" version))
11438 (sha256
11439 (base32
11440 "0w4rqvrgdgk3fwfq3kx4r7wwdr2bv3b6n3bdqwsiriw9psqzpz2s"))))
11441 (inputs
11442 (list sbcl-cxml sbcl-cl-ppcre))
11443 (synopsis "Concise, regexp-like pattern matching on streaming XML for Common Lisp")
11444 (description "CXML does an excellent job at parsing XML elements, but what
11445do you do when you have a XML file that's larger than you want to fit in
11446memory, and you want to extract some information from it? Writing code to deal
11447with SAX events, or even using Klacks, quickly becomes tedious.
11448@code{cl-xmlspam} (for XML Stream PAttern Matcher) is designed to make it easy
11449to write code that mirrors the structure of the XML that it's parsing. It
11450also makes it easy to shift paradigms when necessary - the usual Lisp control
11451constructs can be used interchangeably with pattern matching, and the full
11452power of CXML is available when necessary.")
11453 (license license:bsd-3))))
11454
11455(define-public cl-xmlspam
11456 (sbcl-package->cl-source-package sbcl-cl-xmlspam))
11457
11458(define-public ecl-cl-xmlspam
11459 (sbcl-package->ecl-package sbcl-cl-xmlspam))
11460
11461(define-public sbcl-cl-yacc
11462 (package
11463 (name "sbcl-cl-yacc")
11464 (version "0.4")
11465 (source
11466 (origin
11467 (method git-fetch)
11468 (uri (git-reference
11469 (url "https://github.com/jech/cl-yacc")
11470 (commit (string-append "cl-yacc-" version))))
11471 (sha256
11472 (base32
11473 "1l5nmgdmb7w0pabqc6dk09saj85a4x9ijfhhc2fjxl0gln7rncjz"))
11474 (file-name (string-append "cl-yacc-" version "-checkout"))))
11475 (build-system asdf-build-system/sbcl)
11476 (arguments
11477 `(#:asd-systems '("yacc")))
11478 (synopsis "LALR(1) parser generator for Common Lisp, similar in spirit to Yacc")
11479 (description
11480 "CL-Yacc is a LALR(1) parser generator for Common Lisp, similar in spirit
11481to AT&T Yacc, Berkeley Yacc, GNU Bison, Zebu, lalr.cl or lalr.scm.
11482
11483CL-Yacc uses the algorithm due to Aho and Ullman, which is the one also used
11484by AT&T Yacc, Berkeley Yacc and Zebu. It does not use the faster algorithm due
11485to DeRemer and Pennello, which is used by Bison and lalr.scm (not lalr.cl).")
11486 (home-page "https://www.irif.fr/~jch//software/cl-yacc/")
11487 (license license:expat)))
11488
11489(define-public cl-yacc
11490 (sbcl-package->cl-source-package sbcl-cl-yacc))
11491
11492(define-public ecl-cl-yacc
11493 (sbcl-package->ecl-package sbcl-cl-yacc))
11494
11495(define-public sbcl-cl-yaml
11496 (let ((commit "c3202be9a753c51f3bc79538a5a498a8865192aa")
11497 (revision "1"))
11498 (package
11499 (name "sbcl-cl-yaml")
11500 (version (git-version "0.1" revision commit))
11501 (source
11502 (origin
11503 (method git-fetch)
11504 (uri (git-reference
11505 (url "https://github.com/eudoxia0/cl-yaml")
11506 (commit commit)))
11507 (file-name (git-file-name "cl-yaml" version))
11508 (sha256
11509 (base32 "1izjg0v6rf7dh069bbnnr67l30lsqj86wdk7y9ggbgiwh6v9j185"))))
11510 (build-system asdf-build-system/sbcl)
11511 (inputs
11512 (list sbcl-alexandria sbcl-cl-libyaml sbcl-cl-ppcre
11513 sbcl-parse-number))
11514 (native-inputs
11515 (list sbcl-cl-fad sbcl-fiveam sbcl-generic-comparability
11516 sbcl-trivial-benchmark sbcl-yason))
11517 (home-page "https://github.com/eudoxia0/cl-yaml")
11518 (synopsis "YAML parser for Common Lisp")
11519 (description
11520 "This is a YAML parser and emitter for Common Lisp built on top of
11521libyaml.")
11522 (license license:expat))))
11523
11524(define-public cl-yaml
11525 (sbcl-package->cl-source-package sbcl-cl-yaml))
11526
11527(define-public ecl-cl-yaml
11528 (sbcl-package->ecl-package sbcl-cl-yaml))
11529
11530(define-public sbcl-cl-z85
11531 (let ((commit "85b3951a9cfa2603acb6aee15567684f9a108098")
11532 (revision "1"))
11533 (package
11534 (name "sbcl-cl-z85")
11535 (version (git-version "1.0" revision commit))
11536 (source
11537 (origin
11538 (method git-fetch)
11539 (uri (git-reference
11540 (url "https://codeberg.org/glv/cl-z85")
11541 (commit commit)))
11542 (file-name (git-file-name name version))
11543 (sha256
11544 (base32 "0r27pidjaxbm7k1rr90nnajwl5xm2kp65g1fv0fva17lzy45z1mp"))))
11545 (build-system asdf-build-system/sbcl)
11546 (native-inputs
11547 (list sbcl-cl-octet-streams sbcl-fiveam))
11548 (synopsis "Common Lisp library for Z85 encoding and decoding")
11549 (description
11550 "This package provides functions to encode or decode byte vectors or
11551byte streams using the Z85 format, which is a base-85 encoding used by
11552ZeroMQ.")
11553 (home-page "https://codeberg.org/glv/cl-z85")
11554 (license license:gpl3+))))
11555
11556(define-public cl-z85
11557 (sbcl-package->cl-source-package sbcl-cl-z85))
11558
11559(define-public ecl-cl-z85
11560 (sbcl-package->ecl-package sbcl-cl-z85))
11561
11562(define-public sbcl-clache
11563 (let ((commit "112976729565e1035532389ca25090ae99badd07"))
11564 (package
11565 (name "sbcl-clache")
11566 (version (git-version "0.2.1" "1" commit))
11567 (source
11568 (origin
11569 (method git-fetch)
11570 (uri (git-reference
11571 (url "https://github.com/html/clache/")
11572 (commit commit)))
11573 (file-name (git-file-name "cl-clache" version))
11574 (sha256
11575 (base32 "0wxg004bsay58vr6xr6mlk7wj415qmvisqxvpnjsg6glfwca86ys"))))
11576 (build-system asdf-build-system/sbcl)
11577 (inputs
11578 (list sbcl-alexandria
11579 sbcl-babel
11580 sbcl-cl-annot
11581 sbcl-cl-fad
11582 sbcl-cl-store
11583 sbcl-cl-syntax
11584 sbcl-ironclad
11585 sbcl-trivial-garbage))
11586 (native-inputs
11587 (list sbcl-prove))
11588 (arguments
11589 `(#:phases
11590 (modify-phases %standard-phases
11591 (add-after 'unpack 'fix-tests
11592 (lambda _
11593 (substitute* "clache-test.asd"
11594 (("cl-test-more") "prove"))
11595 #t)))))
11596 (home-page "https://github.com/html/clache/")
11597 (synopsis "General caching facility for Common Lisp")
11598 (description
11599 "CLACHE provides a general caching facility for Common Lisp. The API is
11600similar to the standard hash-table interface.")
11601 (license license:llgpl))))
11602
11603(define-public cl-clache
11604 (sbcl-package->cl-source-package sbcl-clache))
11605
11606(define-public ecl-clache
11607 (sbcl-package->ecl-package sbcl-clache))
11608
11609(define-public sbcl-clack
11610 (let ((commit "4916ebb243d42d1b52f8030db146215033b1b71e")
11611 (revision "1"))
11612 (package
11613 (name "sbcl-clack")
11614 (version (git-version "2.1.0" revision commit))
11615 (source
11616 (origin
11617 (method git-fetch)
11618 (uri (git-reference
11619 (url "https://github.com/fukamachi/clack")
11620 (commit commit)))
11621 (file-name (git-file-name "cl-clack" version))
11622 (sha256
11623 (base32 "0kgymwvv1ghzvl4jryl3fxf0kf44i6z19izcf1rf0k4cidx093a7"))))
11624 (build-system asdf-build-system/sbcl)
11625 (arguments
11626 ;; Only the handler for hunchentoot is included. The other
11627 ;; two Web servers supported by clack, toot and wookie,
11628 ;; have not yet been packaged for Guix.
11629 '(#:asd-systems '("clack"
11630 "clack-handler-hunchentoot"
11631 "clack-socket")))
11632 (inputs
11633 (list sbcl-alexandria
11634 sbcl-bordeaux-threads
11635 sbcl-flexi-streams
11636 sbcl-hunchentoot
11637 sbcl-lack
11638 sbcl-split-sequence
11639 sbcl-slime-swank
11640 sbcl-usocket))
11641 (home-page "https://github.com/fukamachi/clack")
11642 (synopsis "Web Application Environment for Common Lisp")
11643 (description
11644 "Clack is a web application environment for Common Lisp inspired by
11645Python's WSGI and Ruby's Rack.")
11646 (license license:expat))))
11647
11648(define-public cl-clack
11649 (sbcl-package->cl-source-package sbcl-clack))
11650
11651(define-public ecl-clack
11652 (sbcl-package->ecl-package sbcl-clack))
11653
11654(define-public sbcl-clad
11655 (let ((commit "1ff6f417d4ee3836d1edd96923d4b03f3cafa849")
11656 (revision "0"))
11657 (package
11658 (name "sbcl-clad")
11659 (version
11660 ;; There's no version, but there's a timestamp
11661 (git-version "2023-01-21" revision commit))
11662 (source
11663 (origin
11664 (method git-fetch)
11665 (uri (git-reference
11666 (url "https://gitlab.common-lisp.net/mantoniotti/CLAD")
11667 (commit commit)))
11668 (file-name (git-file-name "cl-clad" version))
11669 (sha256
11670 (base32 "184mhdq7pxd6hd4rzv8z4lfbwnkyhgm5bdn3xsqaav2j0d1dqm6i"))
11671 (modules '((guix build utils)))
11672 (snippet
11673 ;; Delete compiled ABCL files.
11674 '(begin
11675 (delete-file "clad-package.abcl")
11676 (delete-file "clad.abcl")))))
11677 (build-system asdf-build-system/sbcl)
11678 (synopsis "Library providing standard locations on the file system")
11679 (description
11680 "The Common Lisp Application Directories (CLAD) library is
11681a simple API collection that provides access to a set of @emph{standard}
11682Common Lisp folders on a per-application or per-library basis.")
11683 (home-page "https://gitlab.common-lisp.net/mantoniotti/CLAD")
11684 (license license:expat)))) ;the mit-modern-variant is used
11685
11686(define-public cl-clad
11687 (sbcl-package->cl-source-package sbcl-clad))
11688
11689(define-public sbcl-clamp
11690 (let ((commit "02b8f3953e5753cc61a719807c82f3795cd28fe1"))
11691 (package
11692 (name "sbcl-clamp")
11693 (version (git-version "0.3" "1" commit))
11694 (source
11695 (origin
11696 (method git-fetch)
11697 (uri (git-reference
11698 (url "https://github.com/arclanguage/Clamp")
11699 (commit commit)))
11700 (file-name (git-file-name name version))
11701 (sha256
11702 (base32 "0fdr9nqfmmpxm6hvjdxi1jkclya9xlnrw1yc3cn1m4ww3f50p31m"))))
11703 (build-system asdf-build-system/sbcl)
11704 (inputs
11705 (list sbcl-iterate
11706 sbcl-cl-syntax))
11707 (native-inputs
11708 (list sbcl-clunit
11709 sbcl-check-it))
11710 (arguments
11711 `(#:phases
11712 (modify-phases %standard-phases
11713 (add-after 'unpack 'fix-build
11714 (lambda _
11715 (substitute* "clamp.asd"
11716 (("\\(:file \"read\" :depends-on \\(\"aliases\"\\)\\)")
11717 "(:file \"read\" :depends-on (\"aliases\" \"base\"))"))
11718 #t)))))
11719 (home-page "https://github.com/arclanguage/Clamp")
11720 (synopsis "Common Lisp with Arc macros and procedures")
11721 (description
11722 "Clamp is an attempt to bring the powerful, but verbose, language of
11723Common Lisp up to the terseness of Arc.
11724
11725There are two parts to Clamp. There is the core of Clamp, which implements
11726the utilities of Arc that are easily converted from Arc to Common Lisp. The
11727other part is the \"experimental\" part. It contains features of Arc that are
11728not so easy to copy (ssyntax, argument destructuring, etc.).")
11729 (license license:artistic2.0))))
11730
11731(define-public cl-clamp
11732 (sbcl-package->cl-source-package sbcl-clamp))
11733
11734(define-public ecl-clamp
11735 (sbcl-package->ecl-package sbcl-clamp))
11736
11737(define-public sbcl-class-options
11738 (package
11739 (name "sbcl-class-options")
11740 (version "1.0.1")
11741 (source
11742 (origin
11743 (method git-fetch)
11744 (uri (git-reference
11745 (url "https://github.com/Hexstream/class-options")
11746 (commit (string-append "v" version))))
11747 (file-name (git-file-name "cl-class-options" version))
11748 (sha256
11749 (base32 "1dkgr1vbrsra44jznzz2bvdf8nlpdrrkjcqrfs8aa7axksda3bqk"))))
11750 (build-system asdf-build-system/sbcl)
11751 (native-inputs
11752 (list sbcl-enhanced-boolean sbcl-parachute))
11753 (inputs
11754 (list sbcl-closer-mop sbcl-enhanced-find-class))
11755 (home-page "https://www.hexstreamsoft.com/libraries/class-options/")
11756 (synopsis "Accessing defining class and its options during modification")
11757 (description
11758 "This package provides easy access to the defining class and its options
11759during initialization or reinitialization of its subcomponents.")
11760 (license license:unlicense)))
11761
11762(define-public cl-class-options
11763 (sbcl-package->cl-source-package sbcl-class-options))
11764
11765(define-public ecl-class-options
11766 (sbcl-package->ecl-package sbcl-class-options))
11767
11768(define-public clasp-class-options
11769 (sbcl-package->clasp-package sbcl-class-options))
11770
11771(define-public sbcl-classimp
11772 (let ((commit "6c74f3808e00781a2662f37ddc26ccbbf2687b6b")
11773 (revision "1"))
11774 (package
11775 (name "sbcl-classimp")
11776 (version (git-version "0.0.0" revision commit))
11777 (source
11778 (origin
11779 (method git-fetch)
11780 (uri (git-reference
11781 (url "https://github.com/3b/classimp")
11782 (commit commit)))
11783 (file-name (git-file-name "cl-classimp" version))
11784 (sha256
11785 (base32 "1sq34s5yrljh7fffllsscay7xi11lg03alrkyrh6xfwa2w7cnqmx"))))
11786 (build-system asdf-build-system/sbcl)
11787 (arguments
11788 (list
11789 #:phases
11790 #~(modify-phases %standard-phases
11791 (add-after 'unpack 'patch-assimp-lib-path
11792 (lambda* (#:key inputs #:allow-other-keys)
11793 (substitute* "library.lisp"
11794 (("libassimp.so.5" _)
11795 (search-input-file inputs "/lib/libassimp.so.5"))))))))
11796 (inputs
11797 (list assimp
11798 sbcl-cffi
11799 sbcl-split-sequence))
11800 (home-page "https://github.com/3b/classimp")
11801 (synopsis "Common Lisp CFFI bindings for Open Asset Import Library")
11802 (description
11803 "This package provides CFFI bindings to the @acronym{ASSIMP, Asset
11804Import} library for Common Lisp.")
11805 (license license:expat))))
11806
11807(define-public cl-classimp
11808 (sbcl-package->cl-source-package sbcl-classimp))
11809
11810(define-public ecl-classimp
11811 (sbcl-package->ecl-package sbcl-classimp))
11812
11813(define-public sbcl-clavier
11814 (let ((commit "9b1424eaad131e114a45b400784079124b5e2321")
11815 (revision "1"))
11816 (package
11817 (name "sbcl-clavier")
11818 (version (git-version "0.0.0" revision commit))
11819 (source
11820 (origin
11821 (method git-fetch)
11822 (uri (git-reference
11823 (url "https://github.com/mmontone/clavier")
11824 (commit commit)))
11825 (file-name (git-file-name "cl-clavier" version))
11826 (sha256
11827 (base32 "1gjd0rhxs2x7gn3fw1hnxivmm4ca4f1wxlg0fqv8fdfabgzsvl5y"))))
11828 (build-system asdf-build-system/sbcl)
11829 (native-inputs (list sbcl-stefil))
11830 (inputs
11831 (list sbcl-alexandria
11832 sbcl-chronicity
11833 sbcl-cl-fad
11834 sbcl-cl-ppcre
11835 sbcl-closer-mop))
11836 (home-page "https://github.com/mmontone/clavier/")
11837 (synopsis "General purpose validation library")
11838 (description "Clavier is a general purpose validation library for
11839Common Lisp.")
11840 (license license:expat))))
11841
11842(define-public cl-clavier
11843 (sbcl-package->cl-source-package sbcl-clavier))
11844
11845(define-public ecl-clavier
11846 (sbcl-package->ecl-package sbcl-clavier))
11847
11848(define-public sbcl-claw
11849 (let ((revision "0")
11850 (commit "3cd4a96fca95eb9e8d5d069426694669f81b2250"))
11851 (package
11852 (name "sbcl-claw")
11853 (version (git-version "1.0" revision commit))
11854 (source
11855 (origin
11856 (method git-fetch)
11857 (uri (git-reference
11858 (url "https://github.com/borodust/claw")
11859 (commit commit)))
11860 (file-name (git-file-name "claw" version))
11861 (sha256
11862 (base32 "146yv0hc4hmk72562ssj2d41143pp84dcbd1h7f4nx1c7hf2bb0d"))))
11863 (build-system asdf-build-system/sbcl)
11864 (inputs
11865 (list sbcl-alexandria
11866 sbcl-cffi
11867 sbcl-cl-json
11868 sbcl-cl-ppcre
11869 sbcl-claw-support
11870 sbcl-local-time
11871 sbcl-trivial-features))
11872 (home-page "https://github.com/borodust/claw")
11873 (synopsis "Autowrapper for Common Lisp")
11874 (description
11875 "This is a Common Lisp autowrapping facility for quickly creating clean
11876and lean bindings to C libraries.")
11877 (license license:bsd-2))))
11878
11879(define-public cl-claw
11880 (sbcl-package->cl-source-package sbcl-claw))
11881
11882(define-public ecl-claw
11883 (sbcl-package->ecl-package sbcl-claw))
11884
11885(define-public sbcl-claw-raylib
11886 (package
11887 (name "sbcl-claw-raylib")
11888 (version "1.0.0")
11889 (source
11890 (origin
11891 (method git-fetch)
11892 (uri (git-reference
11893 ;; The prebuild branch of the original repository is reset when
11894 ;; there are changes. We use a fork which maintains a stable
11895 ;; reference to the prebuild commit.
11896 (url "https://github.com/simendsjo/claw-raylib")
11897 (commit "prebuild-raylib-5.5-and-raygui-4.0")))
11898 (file-name (git-file-name name version))
11899 (sha256
11900 (base32 "19xaxcinw4lxsp4snaa2azcxz9hwii729gfpcv2vdw7qlzc9cg9g"))))
11901 (build-system asdf-build-system/sbcl)
11902 (arguments
11903 (list
11904 #:asd-systems
11905 ''("claw-raylib"
11906 "claw-raylib/examples")
11907 #:phases
11908 #~(modify-phases %standard-phases
11909 (add-after 'unpack 'fix-paths
11910 (lambda _
11911 (substitute* "library.lisp"
11912 (("libraylib\\.so")
11913 (string-append #$(this-package-input "raylib") "/lib/libraylib.so"))
11914 (("libraygui\\.so")
11915 (string-append #$(this-package-input "raygui") "/lib/libraygui.so")))))
11916 (add-before 'build 'build-libraries
11917 (lambda _
11918 ;; Converted from the "Compile the adapters" in the README
11919 (let ((lib (string-append #$output "/share/common-lisp/sbcl/claw-raylib/lib")))
11920 (invoke #$(cc-for-target) "-O3" "-fPIC" "-shared"
11921 "-o" (string-append lib "/libraylib-adapter.so")
11922 (string-append lib "/libraylib-adapter.x86_64-pc-linux-gnu.c"))
11923 (invoke #$(cc-for-target) "-O3" "-fPIC" "-shared"
11924 "-o" (string-append lib "/librlgl-adapter.so")
11925 (string-append lib "/librlgl-adapter.x86_64-pc-linux-gnu.c"))
11926 (invoke #$(cc-for-target) "-O3" "-fPIC" "-shared"
11927 "-o" (string-append lib "/libraygui-adapter.so")
11928 (string-append lib "/libraygui-adapter.x86_64-pc-linux-gnu.c"))))))))
11929 (inputs
11930 (list sbcl-alexandria
11931 sbcl-global-vars
11932 sbcl-cffi
11933 sbcl-cffi-ops
11934 sbcl-cffi-object
11935 raylib
11936 raygui))
11937 (home-page "https://github.com/bohonghuang/claw-raylib")
11938 (synopsis "Fully auto-generated Common Lisp bindings to Raylib and Raygui")
11939 (description "Fully auto-generated Common Lisp bindings to Raylib and
11940Raygui.")
11941 (license license:asl2.0)))
11942
11943;; This does not work yet
11944#;(define-public ecl-claw-raylib
11945 (sbcl-package->ecl-package sbcl-claw-raylib))
11946
11947;; This does not work yet
11948#;(define-public cl-claw-raylib
11949 (sbcl-package->cl-source-package sbcl-claw-raylib))
11950
11951(define-public sbcl-claw-support
11952 (package
11953 (name "sbcl-claw-support")
11954 (version "1.0.0")
11955 (source
11956 (origin
11957 (method git-fetch)
11958 (uri (git-reference
11959 (url "https://github.com/borodust/claw-support")
11960 (commit "9a15c8bed04585f45e6a461bcda1b475144dbd0b")))
11961 (file-name (git-file-name name version))
11962 (sha256
11963 (base32 "1my2ka7h72ipx5n3b465g6kjkasrhsvhqlijwcg6dhlzs5yygl23"))))
11964 (build-system asdf-build-system/sbcl)
11965 (home-page "https://github.com/borodust/claw-support")
11966 (synopsis "Support routines for claw")
11967 (description
11968 "This package provides support routines for the @code{claw} Common Lisp
11969package.")
11970 (license license:expat)))
11971
11972(define-public cl-claw-support
11973 (sbcl-package->cl-source-package sbcl-claw-support))
11974
11975(define-public ecl-claw-support
11976 (sbcl-package->ecl-package sbcl-claw-support))
11977
11978(define-public sbcl-claw-utils
11979 (let ((revision "0")
11980 (commit "efe25016501973dc369f067a64c7d225802bc56f"))
11981 (package
11982 (name "sbcl-claw-utils")
11983 ;; version is not specified
11984 (version (git-version "0.0.0" revision commit))
11985 (source
11986 (origin
11987 (method git-fetch)
11988 (uri (git-reference
11989 (url "https://github.com/borodust/claw-utils")
11990 (commit commit)))
11991 (file-name (git-file-name "claw-utils" version))
11992 (sha256
11993 (base32 "01df3kyf2qs3czi332dnz2s35x2j0fq46vgmsw7wjrrvnqc22mk5"))))
11994 (build-system asdf-build-system/sbcl)
11995 (inputs
11996 (list sbcl-alexandria sbcl-cffi sbcl-claw))
11997 (home-page "https://github.com/borodust/claw-utils")
11998 (synopsis "Utilities for easier autowrapping")
11999 (description
12000 "This Common Lisp library contains various handy utilities to help
12001autowrapping with @code{claw}.")
12002 (license license:expat))))
12003
12004(define-public cl-claw-utils
12005 (sbcl-package->cl-source-package sbcl-claw-utils))
12006
12007(define-public ecl-claw-utils
12008 (sbcl-package->ecl-package sbcl-claw-utils))
12009
12010(define-public sbcl-clawk
12011 (let ((commit "3a91634df686417114044a98c063cbe76bfac7b6"))
12012 (package
12013 (name "sbcl-clawk")
12014 (version (git-version "4" "1" commit))
12015 (source
12016 (origin
12017 (method git-fetch)
12018 (uri (git-reference
12019 (url "https://github.com/sharplispers/clawk")
12020 (commit commit)))
12021 (file-name (git-file-name name version))
12022 (sha256
12023 (base32 "1ph3xjqilvinvgr9q3w47zxqyz1sqnq030nlx7kgkkv8j3bnqk7a"))))
12024 (build-system asdf-build-system/sbcl)
12025 (inputs
12026 (list sbcl-regex))
12027 (home-page "https://github.com/sharplispers/clawk")
12028 (synopsis "Common Lisp AWK")
12029 (description
12030 "CLAWK is an AWK implementation embedded into Common Lisp.")
12031 (license license:bsd-2))))
12032
12033(define-public cl-clawk
12034 (sbcl-package->cl-source-package sbcl-clawk))
12035
12036(define-public ecl-clawk
12037 (sbcl-package->ecl-package sbcl-clawk))
12038
12039(define-public sbcl-clesh
12040 (let ((commit "44e96e04a72e5bc006dc4eb02ce8962348dd4a11"))
12041 (package
12042 (name "sbcl-clesh")
12043 (version (git-version "0.0.0" "1" commit))
12044 (source
12045 (origin
12046 (method git-fetch)
12047 (uri (git-reference
12048 (url "https://github.com/Neronus/Clesh")
12049 (commit commit)))
12050 (file-name (git-file-name name version))
12051 (sha256
12052 (base32 "012ry02djnqyvvs61wbbqj3saz621w2l9gczrywdxhi5p4ycx318"))))
12053 (build-system asdf-build-system/sbcl)
12054 (inputs
12055 (list sbcl-trivial-shell sbcl-named-readtables))
12056 (home-page "https://github.com/Neronus/Clesh")
12057 (synopsis "Embed shell code in Common Lisp")
12058 (description
12059 "This is a very short and simple program, written in Common Lisp, that
12060extends Common Lisp to embed shell code in a manner similar to Perl's
12061backtick. It has been forked from SHELISP.")
12062 (license license:bsd-2))))
12063
12064(define-public cl-clesh
12065 (sbcl-package->cl-source-package sbcl-clesh))
12066
12067(define-public ecl-clesh
12068 (sbcl-package->ecl-package sbcl-clesh))
12069
12070(define-public sbcl-clinenoise
12071 (let ((commit "46e21f99d06a55d93eaa382cf652d55d457032ef")
12072 (revision "1"))
12073 (package
12074 (name "sbcl-clinenoise")
12075 (version (git-version "0.0.0" revision commit))
12076 (source
12077 (origin
12078 (method git-fetch)
12079 (uri (git-reference
12080 (url "https://github.com/jasom/clinenoise")
12081 (commit commit)))
12082 (file-name (git-file-name "clinenoise" version))
12083 (sha256
12084 (base32 "0ydlirfk4dbpqqjwwph99v5swcrhd8v9g8q24fvs35wn2vm08lh1"))))
12085 (build-system asdf-build-system/sbcl)
12086 (inputs
12087 (list sbcl-alexandria sbcl-cffi sbcl-split-sequence))
12088 (home-page "https://github.com/jasom/clinenoise")
12089 (synopsis "Port of linenoise to Common Lisp")
12090 (description
12091 "This package provides a trivial line-input library for VT-like
12092terminals.")
12093 (license license:bsd-2))))
12094
12095(define-public cl-clinenoise
12096 (sbcl-package->cl-source-package sbcl-clinenoise))
12097
12098(define-public ecl-clinenoise
12099 (sbcl-package->ecl-package sbcl-clinenoise))
12100
12101(define-public sbcl-clingon
12102 (package
12103 (name "sbcl-clingon")
12104 (version "0.7.0")
12105 (source
12106 (origin
12107 (method git-fetch)
12108 (uri (git-reference
12109 (url "https://github.com/dnaeon/clingon")
12110 (commit (string-append "v" version))))
12111 (file-name (git-file-name "cl-clingon" version))
12112 (sha256
12113 (base32 "1zi7slknz00l4isj6aykif075rg4lnwczrvm83cl31s540ky3w9y"))))
12114 (build-system asdf-build-system/sbcl)
12115 (native-inputs
12116 (list sbcl-rove))
12117 (inputs
12118 (list sbcl-bobbin
12119 sbcl-cl-reexport
12120 sbcl-split-sequence
12121 sbcl-with-user-abort))
12122 (arguments
12123 (list #:tests? #f)) ; FIXME: Tests run forever
12124 (home-page "https://github.com/dnaeon/clingon")
12125 (synopsis "Command-line option parsing library for Common Lisp")
12126 (description
12127 "@code{clingon} is a command-line option parsing library for Common
12128Lisp. Its features include:
12129@itemize
12130@item Support for subcommands
12131@item Support for command aliases
12132@item Support for short and long options
12133@item Related options may be grouped into categories
12134@item Short options may be collapsed into a single argument, as in
12135@option{-xyz}
12136@item Long options support the notations @option{--long-opt arg} and
12137@option{--long-opt=arg}
12138@item Automatic generation of help/usage information for commands and
12139subcommands
12140@item Out-of-the-box support for @option{--version} and @option{--help}
12141@item Support for various kinds of options including string, integer,
12142boolean, switch, enum, list, counter, filepath, etc.
12143@item Subcommands can look up global options defined in parent commands
12144@item Support for required options
12145@item Options can be initialized via environment variables
12146@item Single interface for creating options using @code{CLINGON:MAKE-OPTION}
12147@item Generate documentation for your command-line application
12148@item Support for @code{pre-hook} and @code{post-hook} actions for commands,
12149which allow invoking functions before and after the respective handler of the
12150command is executed
12151@item Support for Bash and Zsh completions
12152@item Extensibility, so if you don't find something you need you can extend it
12153by developing a new option kind, or even a new mechanism for initializing
12154options, e.g., by looking up an external key/value store
12155@end itemize")
12156 (license license:bsd-2)))
12157
12158(define-public cl-clingon
12159 (sbcl-package->cl-source-package sbcl-clingon))
12160
12161(define-public ecl-clingon
12162 (sbcl-package->ecl-package sbcl-clingon))
12163
12164(define-public sbcl-clip
12165 (let ((commit "7afa68702fbb99c47ed115ea0faccd97a29d9b2e")
12166 (revision "1"))
12167 (package
12168 (name "sbcl-clip")
12169 (version (git-version "0.7.0" revision commit))
12170 (source
12171 (origin
12172 (method git-fetch)
12173 (uri (git-reference
12174 (url "https://codeberg.org/shinmera/clip")
12175 (commit commit)))
12176 (file-name (git-file-name "clip" version))
12177 (sha256
12178 (base32 "13kkajkva2shm19fvn4yashsw18l6imv2rmy3hmpcky7g5ay7bv3"))))
12179 (build-system asdf-build-system/sbcl)
12180 (inputs
12181 (list sbcl-array-utils sbcl-lquery))
12182 (home-page "https://shinmera.com/docs/clip/")
12183 (synopsis "Common Lisp HTML templating engine")
12184 (description
12185 "Clip is an attempt at a templating library that allows you to write
12186templates in a way that is both accessible to direct webdesign and
12187flexible. The main idea is to incorporate transformation commands into an HTML
12188file through tags and attributes. Clip is heavily dependent on Plump and
12189lQuery.")
12190 (license license:zlib))))
12191
12192(define-public cl-clip
12193 (sbcl-package->cl-source-package sbcl-clip))
12194
12195(define-public ecl-clip
12196 (sbcl-package->ecl-package sbcl-clip))
12197
12198(define-public sbcl-clml
12199 (let ((commit "95505b54c8c7b4b27f500c3be97fa5732f4b51a8")
12200 (revision "0"))
12201 (package
12202 (name "sbcl-clml")
12203 (version (git-version "0.0.0" revision commit))
12204 (source
12205 (origin
12206 (method git-fetch)
12207 (uri (git-reference
12208 (url "https://github.com/mmaul/clml")
12209 (commit commit)))
12210 (file-name (git-file-name "clml" version))
12211 (sha256
12212 (base32 "006pii59nmpc61n7p7h8ha5vjg6x0dya327i58z0rnvxs249h345"))
12213 ;; TODO: Remove this when the patch has been merged upstream.
12214 (patches (search-patches "sbcl-clml-fix-types.patch"))))
12215 (build-system asdf-build-system/sbcl)
12216 (inputs
12217 (list sbcl-alexandria
12218 sbcl-array-operations
12219 sbcl-cl-fad
12220 sbcl-cl-ppcre
12221 sbcl-drakma
12222 sbcl-introspect-environment
12223 sbcl-iterate
12224 sbcl-lparallel
12225 sbcl-parse-number
12226 sbcl-split-sequence
12227 sbcl-trivial-garbage))
12228 (synopsis "Common Lisp machine learning library")
12229 (description
12230 "CLML (Common Lisp Machine Learning) is a high performance and large
12231scale statistical machine learning package")
12232 (home-page "https://mmaul.github.io/clml/")
12233 (license license:llgpl))))
12234
12235(define-public cl-clml
12236 (sbcl-package->cl-source-package sbcl-clml))
12237
12238(define-public sbcl-clobber
12239 (let ((commit "212721c24a8bb792714314ba52dfe818641f2e98")
12240 (revision "0"))
12241 (package
12242 (name "sbcl-clobber")
12243 (version (git-version "0.0.0" revision commit))
12244 (source
12245 (origin
12246 (method git-fetch)
12247 (uri (git-reference
12248 (url "https://github.com/robert-strandh/Clobber")
12249 (commit commit)))
12250 (file-name (git-file-name "cl-clobber" version))
12251 (sha256
12252 (base32 "0pqzfn2wqbzzwlwc3l84iv3i3wa9zfgnh14mq67h9qkib8wjzx3n"))))
12253 (build-system asdf-build-system/sbcl)
12254 (home-page "https://github.com/robert-strandh/Clobber")
12255 (synopsis "Common Lisp Library for transaction-oriented databases")
12256 (description
12257 "CLOBBER is an alternative to so-called @emph{object prevalence}, and in
12258particular to @code{cl-prevalence}. Clobber is both simpler, more flexible, and
12259more robust than systems based on object prevalence.")
12260 (license license:bsd-2))))
12261
12262(define-public cl-clobber
12263 (sbcl-package->cl-source-package sbcl-clobber))
12264
12265(define-public ecl-clobber
12266 (sbcl-package->ecl-package sbcl-clobber))
12267
12268(define-public sbcl-clog
12269 (package
12270 (name "sbcl-clog")
12271 (version "1.2")
12272 (source
12273 (origin
12274 (method git-fetch)
12275 (uri (git-reference
12276 (url "https://github.com/rabbibotton/clog")
12277 (commit (string-append "v" version))))
12278 (file-name (git-file-name "cl-clog" version))
12279 (sha256
12280 (base32 "0f4i6571nm0j704zgnh60sc9slifs11byb2gs8gamqjcfh931dap"))))
12281 (build-system asdf-build-system/sbcl)
12282 (inputs
12283 (list sbcl-3bmd
12284 sbcl-alexandria
12285 sbcl-bordeaux-threads
12286 sbcl-cl-ppcre
12287 sbcl-cl-sqlite
12288 sbcl-cl-template
12289 sbcl-clack
12290 sbcl-closer-mop
12291 sbcl-colorize
12292 sbcl-dbi
12293 sbcl-hunchentoot
12294 sbcl-lack
12295 sbcl-mgl-pax
12296 sbcl-parse-float
12297 sbcl-quri
12298 sbcl-trivial-open-browser
12299 sbcl-websocket-driver))
12300 (arguments
12301 '(#:asd-systems '("clog" "clog/docs" "clog/tools")
12302 #:phases (modify-phases %standard-phases
12303 (add-after 'unpack 'fix-symbol-name
12304 (lambda _
12305 (substitute* "source/clog-docs.lisp"
12306 (("clog:@CLOG-MANUAL")
12307 "clog::@CLOG_MANUAL")))))))
12308 (home-page "https://github.com/rabbibotton/clog")
12309 (synopsis "Common Lisp Omnificent GUI")
12310 (description
12311 "This package provides a Common Lisp web framework for building GUI
12312applications. CLOG can take the place, or work along side, most cross platform
12313GUI frameworks and website frameworks. The CLOG package starts up the
12314connectivity to the browser or other websocket client (often a browser embedded
12315in a native template application).")
12316 (license license:bsd-3)))
12317
12318(define-public cl-clog
12319 (sbcl-package->cl-source-package sbcl-clog))
12320
12321(define-public ecl-clog
12322 (sbcl-package->ecl-package sbcl-clog))
12323
12324(define-public sbcl-clop
12325 (let ((commit "c0c3fe7efa5ac95ba1644febfb2c2acab757fcda")
12326 (revision "0"))
12327 (package
12328 (name "sbcl-clop")
12329 ;; ASD file indicates 0.1.0, but changelog 1.0.1.
12330 (version (git-version "1.0.1" revision commit))
12331 (source
12332 (origin
12333 (method git-fetch)
12334 (uri (git-reference
12335 (url "https://github.com/sheepduke/clop")
12336 (commit commit)))
12337 (file-name (git-file-name "cl-clop" version))
12338 (sha256
12339 (base32 "1q7rlizr8gcbfz4a9660gdbw7d2zbld18akjpibg54j7jh5kb8gc"))))
12340 (build-system asdf-build-system/sbcl)
12341 (native-inputs
12342 (list sbcl-fiveam))
12343 (inputs
12344 (list sbcl-alexandria
12345 sbcl-cl-str
12346 sbcl-esrap
12347 sbcl-local-time
12348 sbcl-parse-number))
12349 (home-page "https://github.com/sheepduke/clop")
12350 (synopsis "TOML parser for Common Lisp")
12351 (description
12352 "Clop is a Common Lisp library for parsing strings in the TOML
12353configuration file format.")
12354 (license license:expat))))
12355
12356(define-public cl-clop
12357 (sbcl-package->cl-source-package sbcl-clop))
12358
12359(define-public ecl-clop
12360 (sbcl-package->ecl-package sbcl-clop))
12361
12362(define-public sbcl-closer-mop
12363 (let ((commit "7b86f2add029208ebc74ec6a41c2ccfd3c382dbc")
12364 (revision "3"))
12365 (package
12366 (name "sbcl-closer-mop")
12367 (version (git-version "1.0.0" revision commit))
12368 (source
12369 (origin
12370 (method git-fetch)
12371 (uri (git-reference
12372 (url "https://github.com/pcostanza/closer-mop")
12373 (commit commit)))
12374 (sha256
12375 (base32 "1fzxdpq873rpagmj3h9bgv7n95h4p03pnxrklbxp06sxb26xyi16"))
12376 (file-name (git-file-name "cl-closer-mop" version ))))
12377 (build-system asdf-build-system/sbcl)
12378 (home-page "https://github.com/pcostanza/closer-mop")
12379 (synopsis "Rectifies absent or incorrect CLOS MOP features")
12380 (description "Closer to MOP is a compatibility layer that rectifies many
12381of the absent or incorrect CLOS MOP features across a broad range of Common
12382Lisp implementations.")
12383 (license license:expat))))
12384
12385(define-public cl-closer-mop
12386 (sbcl-package->cl-source-package sbcl-closer-mop))
12387
12388(define-public ecl-closer-mop
12389 (sbcl-package->ecl-package sbcl-closer-mop))
12390
12391(define-public clasp-closer-mop
12392 (sbcl-package->clasp-package sbcl-closer-mop))
12393
12394(define-public sbcl-clostrum
12395 (let ((commit "c85d38bde9d093f1f132574e9b98b8d64683cd51")
12396 (revision "0"))
12397 (package
12398 (name "sbcl-clostrum")
12399 (version (git-version "0.0.0" revision commit))
12400 (source
12401 (origin
12402 (method git-fetch)
12403 (uri (git-reference
12404 (url "https://github.com/s-expressionists/Clostrum")
12405 (commit commit)))
12406 (file-name (git-file-name "cl-clostrum" commit))
12407 (sha256
12408 (base32 "10alsdnpzbgic75xghwjp414sqwg4npvp69zn0r4l8ms0ki9zr1x"))))
12409 (build-system asdf-build-system/sbcl)
12410 (native-inputs (list sbcl-fiveam))
12411 (home-page "https://github.com/s-expressionists/Clostrum")
12412 (synopsis "First Class Global Environments")
12413 (description
12414 "This package provides first-class global environments for
12415Common Lisp.")
12416 (license license:bsd-2))))
12417
12418(define-public cl-clostrum
12419 (sbcl-package->cl-source-package sbcl-clostrum))
12420
12421(define-public ecl-clostrum
12422 (sbcl-package->ecl-package sbcl-clostrum))
12423
12424(define sbcl-closure-common
12425 (let ((commit "e3c5f5f454b72b01b89115e581c3c52a7e201e5c")
12426 (revision "1"))
12427 (package
12428 (name "sbcl-closure-common")
12429 (build-system asdf-build-system/sbcl)
12430 (version (git-version "20101006" revision commit))
12431 (home-page "https://common-lisp.net/project/cxml/")
12432 (source
12433 (origin
12434 (method git-fetch)
12435 (uri (git-reference
12436 (url "https://github.com/sharplispers/closure-common")
12437 (commit commit)))
12438 (file-name (git-file-name name version))
12439 (sha256
12440 (base32
12441 "0k5r2qxn122pxi301ijir3nayi9sg4d7yiy276l36qmzwhp4mg5n"))))
12442 (inputs
12443 (list sbcl-trivial-gray-streams
12444 sbcl-babel))
12445 (synopsis "Support Common Lisp library for CXML")
12446 (description "Closure-common is an internal helper library. The name
12447Closure is a reference to the web browser it was originally written for.")
12448 (license license:llgpl))))
12449
12450(define-public sbcl-closure-template
12451 ;; There are no releases since 2015.
12452 (let ((commit "f1983aa525045691e128027d2a2d74831c873d6e")
12453 (revision "0"))
12454 (package
12455 (name "sbcl-closure-template")
12456 (version (git-version "0.2.1" revision commit))
12457 (source
12458 (origin
12459 (method git-fetch)
12460 (uri (git-reference
12461 (url "https://github.com/archimag/cl-closure-template")
12462 (commit commit)))
12463 (file-name (git-file-name "cl-closure-template" version))
12464 (sha256
12465 (base32 "16h0fs6bjjd4n9pbkwcprpgyj26vsw2akk3q08m7xmsmqi05dppv"))))
12466 (build-system asdf-build-system/sbcl)
12467 (native-inputs (list sbcl-lift))
12468 (inputs
12469 (list sbcl-alexandria
12470 sbcl-babel
12471 sbcl-closer-mop
12472 sbcl-esrap
12473 sbcl-iterate
12474 sbcl-parse-number
12475 sbcl-split-sequence))
12476 (synopsis "Lisp implementation of Google Closure Templates")
12477 (description
12478 "This package provides a Common Lisp implementation of Google
12479Closure Templates.")
12480 (home-page "https://github.com/archimag/cl-closure-template/")
12481 (license license:llgpl))))
12482
12483(define-public cl-closure-template
12484 (sbcl-package->cl-source-package sbcl-closure-template))
12485
12486(define-public ecl-closure-template
12487 (let ((pkg (sbcl-package->ecl-package sbcl-closure-template)))
12488 (package
12489 (inherit pkg)
12490 ;; The test suite fails under ecl because the function
12491 ;; LIFT::GET-BACKTRACE-AS-STRING
12492 ;; (from ecl-lift) is undefined. Lift's support for ecl
12493 ;; seems to be incomplete.
12494 (arguments (list #:tests? #false)))))
12495
12496(define-public sbcl-clsql
12497 (package
12498 (name "sbcl-clsql")
12499 (version "6.7.0")
12500 (source
12501 (origin
12502 (method git-fetch)
12503 (uri (git-reference
12504 (url "http://git.kpe.io/clsql.git")
12505 (commit (string-append "v" version))))
12506 (file-name (git-file-name name version))
12507 (sha256
12508 (base32 "1v1k3s5bsy3lgd9gk459bzpb1r0kdjda25s29samxw4gsgf1fqvp"))
12509 (modules '((guix build utils)))
12510 (snippet
12511 '(begin
12512 ;; The useless bundled debian folder drags `make' into the closure.
12513 (delete-file-recursively "debian")
12514 ;; Other Makefiles that drag `make'.
12515 (for-each delete-file
12516 '("Makefile"
12517 "db-db2/Makefile"
12518 "db-mysql/Makefile"
12519 "db-odbc/Makefile"
12520 "db-oracle/Makefile"
12521 "db-sqlite/Makefile"
12522 "doc/Makefile"
12523 "examples/sqlite3/init-func/Makefile"
12524 "sql/Makefile"
12525 "tests/Makefile"
12526 "uffi/Makefile"
12527 "uffi/Makefile.32+64bits"))
12528 ;; Remove precompiled libraries.
12529 (delete-file "db-mysql/clsql_mysql.dll")
12530 (delete-file "uffi/clsql_uffi.dll")
12531 (delete-file "uffi/clsql_uffi.lib")
12532 #t))))
12533 (build-system asdf-build-system/sbcl)
12534 (native-inputs
12535 `(("rt" ,sbcl-rt)))
12536 (inputs
12537 `(("cffi" ,sbcl-cffi)
12538 ("md5" ,sbcl-md5)
12539 ("mariadb-dev" ,mariadb "dev")
12540 ("mariadb-lib" ,mariadb "lib")
12541 ("postgresql" ,postgresql)
12542 ("postmodern" ,sbcl-postmodern)
12543 ("sqlite" ,sqlite)
12544 ("uffi" ,sbcl-uffi)
12545 ("zlib" ,zlib)))
12546 (arguments
12547 `(#:asd-systems '("clsql"
12548 "clsql-uffi"
12549 "clsql-sqlite3"
12550 "clsql-postgresql"
12551 "clsql-postgresql-socket3"
12552 "clsql-mysql")
12553 #:phases
12554 (modify-phases %standard-phases
12555 (add-after 'unpack 'fix-permissions
12556 (lambda _
12557 (make-file-writable "doc/html.tar.gz")
12558 #t))
12559 (add-after 'unpack 'fix-build
12560 (lambda _
12561 (substitute* "clsql-uffi.asd"
12562 (("\\(:version uffi \"2.0\"\\)")
12563 "uffi"))
12564 (substitute* "db-postgresql/postgresql-api.lisp"
12565 (("\\(data :cstring\\)")
12566 "(data :string)"))
12567 #t))
12568 (add-after 'unpack 'fix-paths
12569 (lambda* (#:key inputs outputs #:allow-other-keys)
12570 (substitute* "db-sqlite3/sqlite3-loader.lisp"
12571 (("libsqlite3")
12572 (string-append (assoc-ref inputs "sqlite")
12573 "/lib/libsqlite3")))
12574 (substitute* "db-postgresql/postgresql-loader.lisp"
12575 (("libpq")
12576 (string-append (assoc-ref inputs "postgresql")
12577 "/lib/libpq")))
12578 (let ((lib (string-append "#p\""
12579 (assoc-ref outputs "out")
12580 "/lib/\"")))
12581 (substitute* "clsql-mysql.asd"
12582 (("#p\"/usr/lib/clsql/clsql_mysql\\.so\"")
12583 lib))
12584 (substitute* "db-mysql/mysql-loader.lisp"
12585 (("libmysqlclient" all)
12586 (string-append (assoc-ref inputs "mariadb-lib") "/lib/" all))
12587 (("clsql-mysql-system::\\*library-file-dir\\*")
12588 lib)))
12589 #t))
12590 (add-before 'build 'build-helper-library
12591 (lambda* (#:key inputs outputs #:allow-other-keys)
12592 (let* ((mariadb-dev (assoc-ref inputs "mariadb-dev"))
12593 (mariadb-lib (assoc-ref inputs "mariadb-lib"))
12594 (inc-dir (string-append mariadb-dev "/include/mysql"))
12595 (lib-dir (string-append mariadb-lib "/lib"))
12596 (shared-lib-dir (string-append (assoc-ref outputs "out")
12597 "/lib"))
12598 (shared-lib (string-append shared-lib-dir
12599 "/clsql_mysql.so")))
12600 (mkdir-p shared-lib-dir)
12601 (invoke "gcc" "-fPIC" "-shared"
12602 "-I" inc-dir
12603 "db-mysql/clsql_mysql.c"
12604 "-Wl,-soname=clsql_mysql"
12605 "-L" lib-dir "-lmariadb" "-lz"
12606 "-o" shared-lib)
12607 #t)))
12608 (add-after 'unpack 'fix-tests
12609 (lambda _
12610 (substitute* "clsql.asd"
12611 (("clsql-tests :force t")
12612 "clsql-tests"))
12613 #t)))))
12614 (synopsis "Common Lisp SQL Interface library")
12615 (description
12616 "@code{clsql} is a Common Lisp interface to SQL RDBMS based on the
12617Xanalys CommonSQL interface for Lispworks. It provides low-level database
12618interfaces as well as a functional and an object oriented interface.")
12619 (home-page "https://clsql.kpe.io/")
12620 (license license:llgpl)))
12621
12622(define-public cl-clsql
12623 (package
12624 (inherit (sbcl-package->cl-source-package sbcl-clsql))
12625 (native-inputs
12626 (list cl-rt))
12627 (inputs
12628 (list (list mariadb "dev") postgresql sqlite zlib))
12629 (propagated-inputs
12630 (list cl-cffi
12631 cl-md5
12632 cl-postmodern
12633 cl-uffi))
12634 (arguments
12635 `(#:phases
12636 ;; asdf-build-system/source has its own phases and does not inherit
12637 ;; from asdf-build-system/sbcl phases.
12638 (modify-phases %standard-phases/source
12639 (add-after 'unpack 'fix-permissions
12640 (lambda _
12641 (make-file-writable "doc/html.tar.gz")
12642 #t)))))))
12643
12644(define-public ecl-clsql
12645 (let ((pkg (sbcl-package->ecl-package sbcl-clsql)))
12646 (package
12647 (inherit pkg)
12648 (inputs
12649 (alist-delete "uffi" (package-inputs pkg)))
12650 (arguments
12651 (substitute-keyword-arguments arguments
12652 ((#:asd-systems asd-systems '())
12653 `(cons "clsql-cffi" ,asd-systems)))))))
12654
12655(define-public sbcl-clss
12656 (let ((revision "3")
12657 (commit "cd5f603e8207ec23c147c5cfda636ef8273a7525"))
12658 (package
12659 (name "sbcl-clss")
12660 (version (git-version "0.3.1" revision commit))
12661 (source
12662 (origin
12663 (method git-fetch)
12664 (uri
12665 (git-reference
12666 (url "https://codeberg.org/shinmera/clss")
12667 (commit commit)))
12668 (sha256
12669 (base32 "15wh1zafamxc5z5hni9ni72xg4n24am2xfqv7fwwhfw1sl06bcm2"))
12670 (file-name (git-file-name name version))))
12671 (inputs
12672 (list sbcl-array-utils sbcl-plump))
12673 (build-system asdf-build-system/sbcl)
12674 (synopsis "DOM tree searching engine based on CSS selectors")
12675 (description "CLSS is a DOM traversal engine based on CSS
12676selectors. It makes use of the Plump-DOM and is used by lQuery.")
12677 (home-page "https://codeberg.org/shinmera/clss")
12678 (license license:zlib))))
12679
12680(define-public cl-clss
12681 (sbcl-package->cl-source-package sbcl-clss))
12682
12683(define-public ecl-clss
12684 (sbcl-package->ecl-package sbcl-clss))
12685
12686(define-public sbcl-cluffer
12687 (let ((commit "4aad29c276a58a593064e79972ee4d77cae0af4a"))
12688 (package
12689 (name "sbcl-cluffer")
12690 (version (git-version "0.0.0" "1" commit))
12691 (source
12692 (origin
12693 (method git-fetch)
12694 (uri (git-reference
12695 (url "https://github.com/robert-strandh/cluffer")
12696 (commit commit)))
12697 (file-name (git-file-name name version))
12698 (sha256
12699 (base32
12700 "1bcg13g7qb3dr8z50aihdjqa6miz5ivlc9wsj2csgv1km1mak2kj"))))
12701 (build-system asdf-build-system/sbcl)
12702 (inputs
12703 (list sbcl-acclimation sbcl-clump))
12704 (arguments
12705 `(#:phases
12706 (modify-phases %standard-phases
12707 (add-after 'strip 'unpatch-shebangs
12708 (lambda* (#:key outputs #:allow-other-keys)
12709 ;; The documentation Makefile rely on shell scripts.
12710 ;; TODO: Build it!
12711 ;; In the mean time, remove the shabang as it adds bash to the
12712 ;; closure.
12713 (let* ((out (assoc-ref outputs "out"))
12714 (build-aux (string-append
12715 out "/share/")))
12716 (substitute* (find-files build-aux)
12717 (("^#!.*/bin/sh") "#!/bin/sh")
12718 (("^#!.*/bin/bash") "#!/bin/bash"))))))))
12719 (home-page "https://github.com/robert-strandh/cluffer")
12720 (synopsis "Common Lisp library providing a protocol for text-editor buffers")
12721 (description "Cluffer is a library for representing the buffer of a text
12722editor. As such, it defines a set of CLOS protocols for client code to
12723interact with the buffer contents in various ways, and it supplies different
12724implementations of those protocols for different purposes.")
12725 (license license:bsd-2))))
12726
12727(define-public cl-cluffer
12728 (sbcl-package->cl-source-package sbcl-cluffer))
12729
12730(define-public ecl-cluffer
12731 (sbcl-package->ecl-package sbcl-cluffer))
12732
12733(define-public sbcl-clump
12734 (let ((commit "1ea4dbac1cb86713acff9ae58727dd187d21048a"))
12735 (package
12736 (name "sbcl-clump")
12737 (version (git-version "0.0.0" "1" commit))
12738 (source
12739 (origin
12740 (method git-fetch)
12741 (uri (git-reference
12742 (url "https://github.com/robert-strandh/Clump")
12743 (commit commit)))
12744 (file-name (git-file-name name version))
12745 (sha256
12746 (base32
12747 "1639msyagsswj85gc0wd90jgh8588j3qg5q70by9s2brf2q6w4lh"))))
12748 (inputs
12749 (list sbcl-acclimation))
12750 (build-system asdf-build-system/sbcl)
12751 (home-page "https://github.com/robert-strandh/Clump")
12752 (synopsis "Collection of tree implementations for Common Lisp")
12753 (description "The purpose of this library is to provide a collection of
12754implementations of trees.
12755
12756In contrast to existing libraries such as cl-containers, it does not impose a
12757particular use for the trees. Instead, it aims for a stratified design,
12758allowing client code to choose between different levels of abstraction.
12759
12760As a consequence of this policy, low-level interfaces are provided where
12761the concrete representation is exposed, but also high level interfaces
12762where the trees can be used as search trees or as trees that represent
12763sequences of objects.")
12764 (license license:bsd-2))))
12765
12766(define-public cl-clump
12767 (sbcl-package->cl-source-package sbcl-clump))
12768
12769(define-public ecl-clump
12770 (sbcl-package->ecl-package sbcl-clump))
12771
12772(define-public sbcl-cluster
12773 (let ((commit "b040e97578f3027d7d8c7652c74917726574c43e")
12774 (revision "0"))
12775 (package
12776 (name "sbcl-cluster")
12777 (version (git-version "0.0.0" revision commit))
12778 (source
12779 (origin
12780 (method git-fetch)
12781 (uri (git-reference
12782 (url "https://github.com/robert-strandh/Cluster")
12783 (commit commit)))
12784 (file-name (git-file-name "cl-cluster" commit))
12785 (sha256
12786 (base32 "0ixbr3wm7d3m8mgzasd95rxvs9kip6ngr5s1zk7j3604mcfssqyi"))))
12787 (build-system asdf-build-system/sbcl)
12788 (inputs
12789 (list sbcl-acclimation
12790 sbcl-split-sequence))
12791 (home-page "https://github.com/robert-strandh/Cluster")
12792 (synopsis "Assembler with input in the form of standard instances")
12793 (description
12794 "Cluster is an assembler (initially for x86 and x86-64) with a difference.
12795To avoid the issue of defining a syntax, the input to Cluster is a list
12796of standard objects (i.e., instances of the class STANDARD-OBJECT),
12797as opposed to a character file or S-expressions.")
12798 (license license:bsd-2))))
12799
12800(define-public cl-cluster
12801 (sbcl-package->cl-source-package sbcl-cluster))
12802
12803(define-public ecl-cluster
12804 (sbcl-package->ecl-package sbcl-cluster))
12805
12806(define-public sbcl-clx
12807 (let ((version "0.7.7"))
12808 (package
12809 (name "sbcl-clx")
12810 (version version)
12811 (source
12812 (origin
12813 (method git-fetch)
12814 (uri
12815 (git-reference
12816 (url "https://github.com/sharplispers/clx")
12817 (commit version)))
12818 (sha256
12819 (base32 "12cqmr1h5sn79fifn2jzcx1y1vsc1kf0q231axqc5aa4xg04g2b0"))
12820 (file-name (git-file-name "cl-clx" version))))
12821 (build-system asdf-build-system/sbcl)
12822 (native-inputs
12823 (list sbcl-fiasco xorg-server-for-tests))
12824 (arguments
12825 (list #:phases
12826 #~(modify-phases %standard-phases
12827 (add-before 'check 'prepare-test-environment
12828 (lambda _
12829 (system "Xvfb :1 &")
12830 (setenv "DISPLAY" ":1"))))))
12831 (home-page "https://www.cliki.net/portable-clx")
12832 (synopsis "X11 client library for Common Lisp")
12833 (description "CLX is an X11 client library for Common Lisp. The code was
12834originally taken from a CMUCL distribution, was modified somewhat in order to
12835make it compile and run under SBCL, then a selection of patches were added
12836from other CLXes around the net.")
12837 (license license:x11))))
12838
12839(define-public cl-clx
12840 (sbcl-package->cl-source-package sbcl-clx))
12841
12842(define-public ecl-clx
12843 (sbcl-package->ecl-package sbcl-clx))
12844
12845(define-public sbcl-clx-truetype
12846 (let ((commit "c6e10a918d46632324d5863a8ed067a83fc26de8")
12847 (revision "1"))
12848 (package
12849 (name "sbcl-clx-truetype")
12850 (version (git-version "0.0.1" revision commit))
12851 (source
12852 (origin
12853 (method git-fetch)
12854 (uri (git-reference
12855 (url "https://github.com/l04m33/clx-truetype")
12856 (commit commit)))
12857 (file-name (git-file-name name version))
12858 (sha256
12859 (base32
12860 "079hyp92cjkdfn6bhkxsrwnibiqbz4y4af6nl31lzw6nm91j5j37"))
12861 (modules '((guix build utils)))
12862 (snippet
12863 '(begin
12864 (substitute* "package.lisp"
12865 ((":export") ":export\n :+font-cache-filename+"))
12866 #t))))
12867 (build-system asdf-build-system/sbcl)
12868 (inputs
12869 (list sbcl-clx
12870 sbcl-zpb-ttf
12871 sbcl-cl-vectors
12872 sbcl-cl-fad
12873 sbcl-cl-store
12874 sbcl-trivial-features))
12875 (home-page "https://github.com/l04m33/clx-truetype")
12876 (synopsis "Antialiased TrueType font rendering using CLX and XRender")
12877 (description "CLX-TrueType is pure common lisp solution for
12878antialiased TrueType font rendering using CLX and XRender extension.")
12879 (license license:expat))))
12880
12881(define-public cl-clx-truetype
12882 (sbcl-package->cl-source-package sbcl-clx-truetype))
12883
12884(define-public ecl-clx-truetype
12885 (sbcl-package->ecl-package sbcl-clx-truetype))
12886
12887(define-public sbcl-clx-xembed
12888 (let ((commit "a5c4b844d31ee68ffa58c933cc1cdddde6990743")
12889 (revision "1"))
12890 (package
12891 (name "sbcl-clx-xembed")
12892 (version (git-version "0.1" revision commit))
12893 (home-page "https://github.com/laynor/clx-xembed")
12894 (source
12895 (origin
12896 (method git-fetch)
12897 (uri (git-reference
12898 (url "https://github.com/laynor/clx-xembed")
12899 (commit commit)))
12900 (file-name (git-file-name name version))
12901 (sha256
12902 (base32 "1abx4v36ycmfjdwpjk4hh8058ya8whwia7ds9vd96q2qsrs57f12"))))
12903 (build-system asdf-build-system/sbcl)
12904 (arguments
12905 `(#:asd-systems '("xembed")))
12906 (inputs
12907 (list sbcl-clx))
12908 (synopsis "CL(x) xembed protocol implementation")
12909 (description "CL(x) xembed protocol implementation")
12910 ;; MIT License
12911 (license license:expat))))
12912
12913(define-public cl-clx-xembed
12914 (sbcl-package->cl-source-package sbcl-clx-xembed))
12915
12916(define-public ecl-clx-xembed
12917 (sbcl-package->ecl-package sbcl-clx-xembed))
12918
12919(define-public sbcl-cmd
12920 (let ((commit "0164d574ba236e2001ee1d9dba3f4774c7512a8c")
12921 (revision "8"))
12922 (package
12923 (name "sbcl-cmd")
12924 (version (git-version "0.0.1" revision commit))
12925 (source
12926 (origin
12927 (method git-fetch)
12928 (uri (git-reference
12929 (url "https://github.com/ruricolist/cmd/")
12930 (commit commit)))
12931 (file-name (git-file-name "cl-cmd" version))
12932 (sha256
12933 (base32 "03wbckzmz6pqdlz7pyar6nfg4vs4bl0b2np7n3kk3qhjbrdakc4m"))))
12934 (build-system asdf-build-system/sbcl)
12935 (arguments
12936 (list #:phases
12937 #~(modify-phases %standard-phases
12938 (add-after 'unpack 'fix-paths
12939 (lambda* (#:key inputs #:allow-other-keys)
12940 (let ((bin (string-append (assoc-ref inputs "coreutils")
12941 "/bin"))
12942 (ps-bin (string-append (assoc-ref inputs "procps")
12943 "/bin")))
12944 (substitute* "cmd.lisp"
12945 (("\\(def \\+env\\+ \"env\"\\)")
12946 (format #f "(def +env+ \"~a/env\")" bin))
12947 (("\\(def \\+kill\\+ \"kill\"\\)")
12948 (format #f "(def +kill+ \"~a/kill\")" bin))
12949 (("\\(def \\+ps\\+ \"ps\"\\)")
12950 (format #f "(def +ps+ \"~a/ps\")" ps-bin))
12951 (("\\(def \\+pwd\\+ \"pwd\"\\)")
12952 (format #f "(def +pwd+ \"~a/pwd\")" bin))
12953 (("\\(def \\+sh\\+ \"/bin/sh\"\\)")
12954 (format #f "(def +sh+ \"~a\")" (which "sh")))
12955 (("\\(def \\+tr\\+ \"tr\"\\)")
12956 (format #f "(def +tr+ \"~a/tr\")" bin)))))))))
12957 (inputs
12958 (list coreutils
12959 procps
12960 sbcl-alexandria
12961 sbcl-serapeum
12962 sbcl-shlex
12963 sbcl-trivia))
12964 (home-page "https://github.com/ruricolist/cmd")
12965 (synopsis "Conveniently run external programs from Common Lisp")
12966 (description
12967 "A utility for running external programs, built on UIOP.
12968Cmd is designed to be natural to use, protect against shell interpolation and
12969be usable from multi-threaded programs.")
12970 (license license:expat))))
12971
12972(define-public cl-cmd
12973 (sbcl-package->cl-source-package sbcl-cmd))
12974
12975(define-public ecl-cmd
12976 (sbcl-package->ecl-package sbcl-cmd))
12977
12978(define-public sbcl-cm
12979 (let ((commit "4b72b9e17eccc012b5dd78e61c828b08c4530e7b")
12980 (revision "0"))
12981 (package
12982 (name "sbcl-cm")
12983 (version (git-version "2.12.0" revision commit))
12984 (source
12985 (origin
12986 (method git-fetch)
12987 (uri (git-reference
12988 (url "https://codeberg.org/ormf/cm")
12989 (commit commit)))
12990 (file-name (git-file-name name version))
12991 (sha256
12992 (base32 "0578j1xmhgfch4rp2dvkwn0dfhiy7kdd1i1p84f56vfdmzb540qx"))))
12993 (build-system asdf-build-system/sbcl)
12994 (inputs (list sbcl-alexandria))
12995 (synopsis " Algorithmic music composition system")
12996 (description "Common Music (CM) is a real-time music composition system.")
12997 (home-page "http://www.sourceforge.net/projects/commonmusic")
12998 (license license:llgpl))))
12999
13000(define-public cl-cm
13001 (sbcl-package->cl-source-package sbcl-cm))
13002
13003(define-public ecl-cm
13004 (sbcl-package->ecl-package sbcl-cm))
13005
13006(define-public sbcl-cmn
13007 (package
13008 (name "sbcl-cmn")
13009 (version "2021.11.22")
13010 (source
13011 (origin
13012 (method url-fetch)
13013 (uri "https://ccrma.stanford.edu/software/cmn/cmn.tar.gz")
13014 (file-name (string-append "cmn-" version ".tar.gz"))
13015 (sha256
13016 (base32 "04j1l57cdyfi2zzxqwmvmf1hl899ffgs3bl4r42ba47zsw45kq14"))))
13017 (build-system asdf-build-system/sbcl)
13018 (home-page "https://ccrma.stanford.edu/software/cmn/")
13019 (synopsis "Western music notation package written in Common Lisp")
13020 (description
13021 "CMN provides a package of functions to hierarchically describe a musical
13022score. When evaluated, the musical score is rendered to an image.")
13023 (license license:expat)))
13024
13025(define-public cl-cmn
13026 (sbcl-package->cl-source-package sbcl-cmn))
13027
13028(define-public ecl-cmn
13029 (sbcl-package->ecl-package sbcl-cmn))
13030
13031(define-public sbcl-coalton
13032 (let ((commit "14ed6dc733f8c23c1a345ceb11d3f75ee47f7525")
13033 (revision "6"))
13034 (package
13035 (name "sbcl-coalton")
13036 (version (git-version "0.0.1" revision commit))
13037 (source
13038 (origin
13039 (method git-fetch)
13040 (uri (git-reference
13041 (url "https://github.com/coalton-lang/coalton")
13042 (commit commit)))
13043 (file-name (git-file-name "cl-coalton" version))
13044 (sha256
13045 (base32 "024n72lxi8nycy012lqy6zx19lv7jh2ngs1mf559rw8kgwh3k54c"))))
13046 (build-system asdf-build-system/sbcl)
13047 (native-inputs
13048 (list sbcl-fiasco
13049 sbcl-html-entities
13050 sbcl-spinneret
13051 sbcl-yason))
13052 (inputs
13053 (list sbcl-alexandria
13054 sbcl-computable-reals
13055 sbcl-concrete-syntax-tree
13056 sbcl-eclector
13057 sbcl-float-features
13058 sbcl-fset
13059 sbcl-named-readtables
13060 sbcl-trivial-garbage))
13061 (home-page "https://coalton-lang.github.io")
13062 (synopsis "Dialect of ML in Common Lisp")
13063 (description
13064 "Coalton is a dialect of ML embedded in Common Lisp. It emphasizes
13065practicality and interoperability with Lisp, and is intended to be a DSL that
13066allows one to gradually make their programs safer.")
13067 (license license:expat))))
13068
13069(define-public cl-coalton
13070 (sbcl-package->cl-source-package sbcl-coalton))
13071
13072(define-public sbcl-coleslaw
13073 (let ((commit "ef76a42e4ad2e19043b893f852619d0718b94a9b")
13074 (revision "1"))
13075 (package
13076 (name "sbcl-coleslaw")
13077 (version (git-version "0.9.7" revision commit))
13078 (source
13079 (origin
13080 (method git-fetch)
13081 (uri (git-reference
13082 (url "https://github.com/coleslaw-org/coleslaw")
13083 (commit commit)))
13084 (file-name (git-file-name "cl-coleslaw" version))
13085 (sha256
13086 (base32 "126dl1m6zh7m6gmq2xnam0bfg6nv7gdkvcr4x1i3407s3wpmirw5"))))
13087 (build-system asdf-build-system/sbcl)
13088 (outputs '("out" "bin"))
13089 (arguments
13090 '(#:asd-systems '("coleslaw" "coleslaw-cli")
13091 #:phases
13092 (modify-phases %standard-phases
13093 (add-after 'unpack 'fix-paths
13094 (lambda _
13095 (substitute* "plugins/publish-gh-pages.sh"
13096 (("^rsync\\b") (which "rsync")))
13097 (substitute* '("plugins/rsync.lisp"
13098 "src/coleslaw.lisp")
13099 (("\\brun-program \"rsync\\b")
13100 (string-append "run-program \"" (which "rsync"))))))
13101 (add-after 'create-asdf-configuration 'build-program
13102 (lambda* (#:key outputs #:allow-other-keys)
13103 (build-program
13104 (string-append (assoc-ref outputs "bin") "/bin/coleslaw")
13105 outputs
13106 #:dependencies '("coleslaw-cli")
13107 #:entry-program '((apply (function coleslaw-cli::main)
13108 arguments))
13109 #:compress? #t))))))
13110 (native-inputs
13111 (list sbcl-prove))
13112 (inputs
13113 (list rsync
13114 sbcl-3bmd
13115 sbcl-alexandria
13116 sbcl-cl-fad
13117 sbcl-cl-ppcre
13118 sbcl-cl-unicode
13119 sbcl-clack
13120 sbcl-closer-mop
13121 sbcl-closure-template
13122 sbcl-inferior-shell
13123 sbcl-local-time
13124 sbcl-trivia))
13125 (home-page "https://github.com/coleslaw-org/coleslaw")
13126 (synopsis "Static site generator")
13127 (description
13128 "Coleslaw is a static site generator written in Common Lisp.")
13129 (license license:bsd-2))))
13130
13131(define-public cl-coleslaw
13132 (sbcl-package->cl-source-package sbcl-coleslaw))
13133
13134(define-public sbcl-collectors
13135 (let ((commit "4c5e70cf399381de8fb485d4ed5a5c8fd7555146")
13136 (revision "2"))
13137 (package
13138 (name "sbcl-collectors")
13139 (version (git-version "1.0" revision commit))
13140 (source
13141 (origin
13142 (method git-fetch)
13143 (uri (git-reference
13144 (url "https://github.com/AccelerationNet/collectors")
13145 (commit commit)))
13146 (file-name (git-file-name "cl-collectors" version))
13147 (sha256
13148 (base32 "1kc9q05wyp8yjz5wqc73nar7l49vcnfhj4924li81v76hlb03665"))))
13149 (build-system asdf-build-system/sbcl)
13150 (inputs
13151 (list sbcl-alexandria sbcl-closer-mop sbcl-symbol-munger))
13152 (native-inputs
13153 (list sbcl-lisp-unit2))
13154 (home-page "https://github.com/AccelerationNet/collectors/")
13155 (synopsis "Common lisp library providing collector macros")
13156 (description "A small collection of common lisp macros to make
13157collecting values easier.")
13158 (license license:bsd-3))))
13159
13160(define-public cl-collectors
13161 (sbcl-package->cl-source-package sbcl-collectors))
13162
13163(define-public ecl-collectors
13164 (sbcl-package->ecl-package sbcl-collectors))
13165
13166(define-public sbcl-colored
13167 (let ((commit "54e6184da4aca380cc7240c417f1e2a0d76b3a84")
13168 (revision "2"))
13169 (package
13170 (name "sbcl-colored")
13171 (version (git-version "1.0.0" revision commit))
13172 (source
13173 (origin
13174 (method git-fetch)
13175 (uri (git-reference
13176 (url "https://codeberg.org/shinmera/colored")
13177 (commit commit)))
13178 (file-name (git-file-name name version))
13179 (sha256
13180 (base32 "1n9k8rh2p7kb2ikxpgw8sywaxw0n5m3iky808dwc4hqz04piqmmh"))))
13181 (build-system asdf-build-system/sbcl)
13182 (native-inputs
13183 (list sbcl-parachute))
13184 (inputs
13185 (list sbcl-documentation-utils))
13186 (synopsis "Colour representation, conversion, and operation for Common Lisp")
13187 (description
13188 "This is a library for representing and mapping colours between their
13189various spaces.")
13190 (home-page "https://shinmera.com/docs/colored")
13191 (license license:zlib))))
13192
13193(define-public cl-colored
13194 (sbcl-package->cl-source-package sbcl-colored))
13195
13196(define-public ecl-colored
13197 (sbcl-package->ecl-package sbcl-colored))
13198
13199(define-public sbcl-colorize
13200 (let ((commit "ea676b584e0899cec82f21a9e6871172fe3c0eb5"))
13201 (package
13202 (name "sbcl-colorize")
13203 (version (git-version "0.0.0" "1" commit))
13204 (source
13205 (origin
13206 (method git-fetch)
13207 (uri (git-reference
13208 (url "https://github.com/kingcons/colorize")
13209 (commit commit)))
13210 (sha256
13211 (base32
13212 "1pdg4kiaczmr3ivffhirp7m3lbr1q27rn7dhaay0vwghmi31zcw9"))
13213 (file-name (git-file-name "colorize" version))))
13214 (build-system asdf-build-system/sbcl)
13215 (inputs
13216 (list sbcl-alexandria sbcl-split-sequence sbcl-html-encode))
13217 (synopsis "Common Lisp for syntax highlighting")
13218 (description
13219 "@command{colorize} is a Lisp library for syntax highlighting
13220supporting the following languages: Common Lisp, Emacs Lisp, Scheme, Clojure,
13221C, C++, Java, Python, Erlang, Haskell, Objective-C, Diff, Webkit.")
13222 (home-page "https://github.com/kingcons/colorize")
13223 ;; TODO: Missing license?
13224 (license license:expat))))
13225
13226(define-public cl-colorize
13227 (sbcl-package->cl-source-package sbcl-colorize))
13228
13229(define-public ecl-colorize
13230 (sbcl-package->ecl-package sbcl-colorize))
13231
13232(define-public sbcl-com.gigamonkeys.binary-data
13233 (let ((commit "22e908976d7f3e2318b7168909f911b4a00963ee")
13234 (revision "0"))
13235 (package
13236 (name "sbcl-com.gigamonkeys.binary-data")
13237 (version (git-version "0.0.0" revision commit))
13238 (source
13239 (origin
13240 (method git-fetch)
13241 (uri (git-reference
13242 (url "https://github.com/gigamonkey/monkeylib-binary-data")
13243 (commit commit)))
13244 (file-name (git-file-name name version))
13245 (sha256
13246 (base32 "072v417vmcnvmyh8ddq9vmwwrizm7zwz9dpzi14qy9nsw8q649zw"))))
13247 (build-system asdf-build-system/sbcl)
13248 (inputs
13249 (list sbcl-alexandria))
13250 (home-page "https://github.com/gigamonkey/monkeylib-binary-data")
13251 (synopsis "Common Lisp library for reading and writing binary data")
13252 (description
13253 "This a Common Lisp library for reading and writing binary data. It is
13254based on code from chapter 24 of the book @emph{Practical Common Lisp}.")
13255 (license license:bsd-3))))
13256
13257(define-public cl-com.gigamonkeys.binary-data
13258 (sbcl-package->cl-source-package sbcl-com.gigamonkeys.binary-data))
13259
13260(define-public ecl-com.gigamonkeys.binary-data
13261 (sbcl-package->ecl-package sbcl-com.gigamonkeys.binary-data))
13262
13263(define-public sbcl-command-line-args
13264 (package
13265 (name "sbcl-command-line-args")
13266 (version "0.1.3")
13267 (source
13268 (origin
13269 (method git-fetch)
13270 (uri (git-reference
13271 (url "https://git.sr.ht/~whereiseveryone/command-line-args")
13272 (commit (string-append "v" version))))
13273 (file-name (git-file-name "cl-command-line-args" version))
13274 (sha256
13275 (base32 "1vzybqnqwrfl8b708h8wx8xsm1ml5c3r0lcx23615hb4p800iagf"))))
13276 (build-system asdf-build-system/sbcl)
13277 (arguments
13278 '(#:asd-systems '("whereiseveryone.command-line-args")))
13279 (inputs
13280 (list sbcl-alexandria
13281 sbcl-charje.documentation
13282 sbcl-cl-str
13283 sbcl-serapeum
13284 sbcl-trivia))
13285 (home-page "https://git.sr.ht/~whereiseveryone/command-line-args")
13286 (synopsis "Automatically generate command line interfaces")
13287 (description "Command-Line-Args provides a main macro (@code{command})
13288that wraps a @code{defun} form and creates a new function that parses the
13289command line arguments. It has support for command-line options, positional,
13290and variadic arguments. It also generates a basic help message. The
13291interface is meant to be easy and non-intrusive.")
13292 (license license:agpl3+)))
13293
13294(define-public cl-command-line-args
13295 (sbcl-package->cl-source-package sbcl-command-line-args))
13296
13297(define-public ecl-command-line-args
13298 (let ((pkg (sbcl-package->ecl-package sbcl-command-line-args)))
13299 (package
13300 (inherit pkg)
13301 (arguments
13302 (substitute-keyword-arguments arguments
13303 ;; The tests only work on SBCL.
13304 ((#:tests? _ #f) #f))))))
13305
13306(define-public sbcl-command-line-arguments
13307 (let ((commit "fbac862fb01c0e368141204f3f639920462c23fe")
13308 (revision "1"))
13309 (package
13310 (name "sbcl-command-line-arguments")
13311 (version (git-version "2.0.0" revision commit))
13312 (source
13313 (origin
13314 (method git-fetch)
13315 (uri (git-reference
13316 (url "https://github.com/fare/command-line-arguments")
13317 (commit commit)))
13318 (file-name (git-file-name name version))
13319 (sha256
13320 (base32 "054m1ikndzqf72mb9ajaa64136cwr3bgag4yfbi1574a9vq75mjq"))))
13321 (build-system asdf-build-system/sbcl)
13322 (home-page "https://github.com/fare/command-line-arguments")
13323 (synopsis "Trivial command-line argument parsing library for Common Lisp")
13324 (description "This is a library to abstract away the parsing of
13325Unix-style command-line arguments. Use it in conjunction with asdf:program-op
13326or cl-launch for portable processing of command-line arguments.")
13327 (license license:expat))))
13328
13329(define-public cl-command-line-arguments
13330 (sbcl-package->cl-source-package sbcl-command-line-arguments))
13331
13332(define-public ecl-command-line-arguments
13333 (sbcl-package->ecl-package sbcl-command-line-arguments))
13334
13335(define-public clasp-command-line-arguments
13336 (sbcl-package->clasp-package sbcl-command-line-arguments))
13337
13338(define-public sbcl-common-doc
13339 (let ((commit "bcde4cfee3d34482d9830c8f9ea45454c73cf5aa")
13340 (revision "0"))
13341 (package
13342 (name "sbcl-common-doc")
13343 (version (git-version "0.2.0" revision commit))
13344 (source
13345 (origin
13346 (method git-fetch)
13347 (uri (git-reference
13348 (url "https://github.com/CommonDoc/common-doc")
13349 (commit commit)))
13350 (file-name (git-file-name name version))
13351 (sha256
13352 (base32 "0bzc4w37cq5mbkd15vxziks6nq58yad04mki4nwy5w6pza7z0faa"))))
13353 (build-system asdf-build-system/sbcl)
13354 (native-inputs
13355 (list sbcl-fiveam))
13356 (inputs
13357 (list sbcl-alexandria
13358 sbcl-anaphora
13359 sbcl-cl-ppcre
13360 sbcl-closer-mop
13361 sbcl-local-time
13362 sbcl-quri
13363 sbcl-split-sequence
13364 sbcl-trivial-shell
13365 sbcl-trivial-types))
13366 (home-page "https://github.com/CommonDoc/common-doc")
13367 (synopsis "Framework for representing and manipulating documents")
13368 (description "Framework for representing and manipulating documents.")
13369 (license license:expat))))
13370
13371(define-public ecl-common-doc
13372 (sbcl-package->ecl-package sbcl-common-doc))
13373
13374(define-public cl-common-doc
13375 (sbcl-package->cl-source-package sbcl-common-doc))
13376
13377(define-public sbcl-common-html
13378 (let ((commit "96987bd9db21639ed55d1b7d72196f9bc58243fd")
13379 (revision "0"))
13380 (package
13381 (name "sbcl-common-html")
13382 (version (git-version "0.1.0" revision commit))
13383 (source
13384 (origin
13385 (method git-fetch)
13386 (uri (git-reference
13387 (url "https://github.com/CommonDoc/common-html")
13388 (commit commit)))
13389 (file-name (git-file-name name version))
13390 (sha256
13391 (base32 "1i11w4l95nybz5ibnaxrnrkfhch2s9wynqrg6kx6sl6y47khq1xz"))))
13392 (build-system asdf-build-system/sbcl)
13393 (native-inputs
13394 (list sbcl-fiveam))
13395 (inputs
13396 (list sbcl-alexandria
13397 sbcl-anaphora
13398 sbcl-common-doc
13399 sbcl-plump))
13400 (home-page "https://github.com/CommonDoc/common-html")
13401 (synopsis "HTML parser/emitter for CommonDoc")
13402 (description "HTML parser/emitter for CommonDoc.")
13403 (license license:expat))))
13404
13405(define-public ecl-common-html
13406 (sbcl-package->ecl-package sbcl-common-html))
13407
13408(define-public cl-common-html
13409 (sbcl-package->cl-source-package sbcl-common-html))
13410
13411(define-public sbcl-common-lisp-jupyter
13412 (let ((commit "3555a009f6d8734751bda1feadc8a09e7b0099b6")
13413 (revision "0"))
13414 (package
13415 (name "sbcl-common-lisp-jupyter")
13416 (version (git-version "1.0" revision commit))
13417 (source
13418 (origin
13419 (method git-fetch)
13420 (uri (git-reference
13421 (url "https://github.com/yitzchak/common-lisp-jupyter")
13422 (commit commit)))
13423 (file-name (git-file-name "cl-common-lisp-jupyter" commit))
13424 (sha256
13425 (base32 "05nj171jad9819iq137i7vxgxyxz1sr3p4qxgr2k7z1ihq5kb0gw"))))
13426 (build-system asdf-build-system/sbcl)
13427 (inputs
13428 (list sbcl-alexandria
13429 sbcl-babel
13430 sbcl-bordeaux-threads
13431 sbcl-cl-base64
13432 sbcl-cl-indentify
13433 sbcl-closer-mop
13434 sbcl-dissect
13435 sbcl-eclector
13436 sbcl-ironclad
13437 sbcl-multilang-documentation
13438 sbcl-nontrivial-gray-streams
13439 sbcl-puri
13440 sbcl-pzmq
13441 sbcl-shasht
13442 sbcl-trivial-do
13443 sbcl-trivial-features
13444 sbcl-trivial-mimes))
13445 (home-page "https://yitzchak.github.io/common-lisp-jupyter/")
13446 (synopsis "Common Lisp kernel for Jupyter")
13447 (description
13448 "This is a Common Lisp kernel for Jupyter along with a library for
13449building Jupyter kernels, based on Maxima-Jupyter which was based on
13450@code{cl-jupyter}.")
13451 (license license:expat))))
13452
13453(define-public cl-common-lisp-jupyter
13454 (sbcl-package->cl-source-package sbcl-common-lisp-jupyter))
13455
13456(define-public ecl-common-lisp-jupyter
13457 (sbcl-package->ecl-package sbcl-common-lisp-jupyter))
13458
13459(define-public sbcl-commondoc-markdown
13460 (let ((commit "7abd28806bec33f291b982684d143edddb5cc32a")
13461 (revision "0"))
13462 (package
13463 (name "sbcl-commondoc-markdown")
13464 (version (git-version "0.5.0" revision commit))
13465 (source
13466 (origin
13467 (method git-fetch)
13468 (uri (git-reference
13469 (url "https://github.com/40ants/commondoc-markdown")
13470 (commit commit)))
13471 (file-name (git-file-name name version))
13472 (sha256
13473 (base32 "12n8yx8jhz8713r63gmrymplm1mfczm7q7a343d13wl6gng1gjs1"))))
13474 (build-system asdf-build-system/sbcl)
13475 (native-inputs
13476 (list sbcl-hamcrest))
13477 (inputs
13478 (list sbcl-3bmd
13479 sbcl-cl-str
13480 sbcl-common-doc
13481 sbcl-common-html
13482 sbcl-ironclad
13483 sbcl-plump))
13484 (home-page "https://github.com/40ants/commondoc-markdown")
13485 (synopsis "Converts Markdown text into CommonDoc nodes and vice versa")
13486 (description "Converts Markdown text into CommonDoc nodes and vice
13487versa.")
13488 (license license:unlicense))))
13489
13490(define-public ecl-commondoc-markdown
13491 (sbcl-package->ecl-package sbcl-commondoc-markdown))
13492
13493(define-public cl-commondoc-markdown
13494 (sbcl-package->cl-source-package sbcl-commondoc-markdown))
13495
13496(define-public sbcl-compatible-metaclasses
13497 (package
13498 (name "sbcl-compatible-metaclasses")
13499 (version "1.0")
13500 (source
13501 (origin
13502 (method git-fetch)
13503 (uri (git-reference
13504 (url "https://github.com/Hexstream/compatible-metaclasses")
13505 (commit (string-append "v" version))))
13506 (file-name (git-file-name "cl-compatible-metaclasses" version))
13507 (sha256
13508 (base32 "17cf74j400cl6sjslfhkv13lir85k705v63mx3dd4y6dl5hvsdh6"))))
13509 (build-system asdf-build-system/sbcl)
13510 (native-inputs
13511 (list sbcl-parachute))
13512 (inputs
13513 (list sbcl-class-options
13514 sbcl-closer-mop
13515 sbcl-enhanced-find-class))
13516 (home-page "https://www.hexstreamsoft.com/libraries/compatible-metaclasses/")
13517 (synopsis "Simplifies class mixins by validating superclasses")
13518 (description
13519 "This library validates superclasses according to a simple substitution
13520model, thereby greatly simplifying the definition of class mixins.")
13521 (license license:unlicense)))
13522
13523(define-public cl-compatible-metaclasses
13524 (sbcl-package->cl-source-package sbcl-compatible-metaclasses))
13525
13526(define-public ecl-compatible-metaclasses
13527 (sbcl-package->ecl-package sbcl-compatible-metaclasses))
13528
13529(define-public clasp-compatible-metaclasses
13530 (sbcl-package->clasp-package sbcl-compatible-metaclasses))
13531
13532(define-public sbcl-compiler-macro
13533 (let ((commit "7796bda64aec5af3ca175170ad3565167868789c")
13534 (revision "0"))
13535 (package
13536 (name "sbcl-compiler-macro")
13537 (version (git-version "0.1" revision commit))
13538 (source
13539 (origin
13540 (method git-fetch)
13541 (uri (git-reference
13542 (url "https://github.com/Bike/compiler-macro")
13543 (commit commit)))
13544 (file-name (git-file-name "cl-compiler-macro" version))
13545 (sha256
13546 (base32 "13sswps7s0qy6939mvj8q57hkx0qkga6rl6xjhjr7pk7by0xdsjq"))))
13547 (build-system asdf-build-system/sbcl)
13548 (native-inputs
13549 (list sbcl-fiveam))
13550 (inputs
13551 (list sbcl-introspect-environment))
13552 (home-page "https://github.com/Bike/compiler-macro")
13553 (synopsis "Common Lisp compiler macro utilities")
13554 (description "This library is a collection of utilities for writing
13555compiler macros. It is intended to make it possible to make compiler macros
13556much more useful, by granting them access to lexical type information, making
13557the protocol for declining expansion more convenient, and establishing some
13558information for signaling optimization advice to programmers. Some utilities
13559to support this, especially for reasoning on types, are also included.")
13560 (license license:cc0))))
13561
13562(define-public cl-compiler-macro
13563 (sbcl-package->cl-source-package sbcl-compiler-macro))
13564
13565(define-public ecl-compiler-macro
13566 (sbcl-package->ecl-package sbcl-compiler-macro))
13567
13568(define-public sbcl-compiler-macro-notes
13569 (package
13570 (name "sbcl-compiler-macro-notes")
13571 (version "0.3.1")
13572 (source
13573 (origin
13574 (method git-fetch)
13575 (uri (git-reference
13576 (url "https://github.com/digikar99/compiler-macro-notes")
13577 (commit (string-append "v" version))))
13578 (file-name (git-file-name "cl-compiler-macro-notes" version))
13579 (sha256
13580 (base32 "0pchhvk14fx54p7qq92dnf0g4jnapqr6p2a4za6bhzd8im1d9gad"))))
13581 (build-system asdf-build-system/sbcl)
13582 (inputs
13583 (list sbcl-alexandria
13584 sbcl-cl-environments))
13585 (home-page "https://github.com/digikar99/compiler-macro-notes")
13586 (synopsis "Macros and conditions for use within macros and compiler-macros")
13587 (description
13588 "Alternative to the @code{compiler-macro} library:
13589
13590@itemize
13591@item Here, we do not treat compiler notes as warnings, but instead these are
13592a separate class of conditions. These are also not errors.
13593@item Two main condition classes are provided: compiler-macro-notes:note and
13594compiler-macro-notes:optimization-failure-note. While the latter is a subclass
13595of the former, the latter notes are printed in a slightly different manner to
13596the former.
13597@item To be able to correctly print the expansion path that led to the
13598condition, user code is expected to avoid performing a nonlocal exit to a
13599place outside with-notes.
13600@end itemize\n")
13601 (license license:expat)))
13602
13603(define-public cl-compiler-macro-notes
13604 (sbcl-package->cl-source-package sbcl-compiler-macro-notes))
13605
13606(define-public ecl-compiler-macro-notes
13607 (sbcl-package->ecl-package sbcl-compiler-macro-notes))
13608
13609(define-public sbcl-computable-reals
13610 (let ((commit "607a5d5b95387c06f92a661aa5562a7be0f5cad8"))
13611 (package
13612 (name "sbcl-computable-reals")
13613 (version (git-version "1.1.0" "2" commit))
13614 (source
13615 (origin
13616 (method git-fetch)
13617 (uri (git-reference
13618 (url "https://github.com/stylewarning/computable-reals")
13619 (commit commit)))
13620 (file-name (git-file-name name version))
13621 (sha256
13622 (base32 "1x8kkdyjil0zzg8fq9b76z12kmfrqwhsxnr6qqnlrg0c8c5bzz9c"))))
13623 (build-system asdf-build-system/sbcl)
13624 (home-page "https://github.com/stylewarning/computable-reals")
13625 (synopsis "Arbitrary-precision, re-computing real-numbers in Common Lisp")
13626 (description
13627 "This library provides arbitrary precision (floating point) real
13628numbers in Common Lisp.")
13629 (license license:bsd-3))))
13630
13631(define-public cl-computable-reals
13632 (sbcl-package->cl-source-package sbcl-computable-reals))
13633
13634(define-public ecl-computable-reals
13635 (sbcl-package->ecl-package sbcl-computable-reals))
13636
13637(define-public sbcl-concrete-syntax-tree
13638 (package
13639 (name "sbcl-concrete-syntax-tree")
13640 (version "0.3.0")
13641 (source
13642 (origin
13643 (method git-fetch)
13644 (uri (git-reference
13645 (url "https://github.com/s-expressionists/Concrete-Syntax-Tree")
13646 (commit version)))
13647 (file-name (git-file-name "cl-concrete-syntax-tree" version))
13648 (sha256
13649 (base32 "05cl83fhn4a4y492f8sq29560jgbg26c5wz5aqawz5gw3riz0n4b"))))
13650 (build-system asdf-build-system/sbcl)
13651 (native-inputs (list sbcl-fiveam))
13652 (inputs
13653 (list sbcl-acclimation))
13654 (arguments
13655 '(#:asd-systems '("concrete-syntax-tree"
13656 "concrete-syntax-tree-destructuring"
13657 "concrete-syntax-tree-source-info")))
13658 (home-page "https://github.com/s-expressionists/Concrete-Syntax-Tree")
13659 (synopsis "Parse Common Lisp code into a concrete syntax tree")
13660 (description
13661 "This library is intended to solve the problem of source tracking for
13662Common Lisp code.
13663
13664By \"source tracking\", it is meant that code elements that have a known
13665origin in the form of a position in a file or in an editor buffer are
13666associated with some kind of information about this origin.
13667
13668Since the exact nature of such origin information depends on the Common Lisp
13669implementation and the purpose of wanting to track that origin, the library
13670does not impose a particular structure of this information. Instead, it
13671provides utilities for manipulating source code in the form of what is called
13672concrete syntax trees (CSTs for short) that preserve this information about
13673the origin.")
13674 (license license:bsd-2)))
13675
13676(define-public cl-concrete-syntax-tree
13677 (sbcl-package->cl-source-package sbcl-concrete-syntax-tree))
13678
13679(define-public ecl-concrete-syntax-tree
13680 (sbcl-package->ecl-package sbcl-concrete-syntax-tree))
13681
13682(define-public sbcl-concurrent-hash-tables
13683 (let ((commit "6ad539b8970ff94b1e1369b59065ed7d0660904c")
13684 (revision "1"))
13685 (package
13686 (name "sbcl-concurrent-hash-tables")
13687 (version (git-version "0.0.0" revision commit))
13688 (source
13689 (origin
13690 (method git-fetch)
13691 (uri (git-reference
13692 (url "https://github.com/no-defun-allowed/concurrent-hash-tables")
13693 (commit commit)))
13694 (file-name (git-file-name "cl-concurrent-hash-tables" version))
13695 (sha256
13696 (base32 "0wgbv3wl33rlfbywmjag0gk7igzfksmib30r8cbnd5n47ic09iip"))))
13697 (build-system asdf-build-system/sbcl)
13698 (inputs
13699 (list sbcl-atomics sbcl-bordeaux-threads))
13700 (home-page "https://github.com/no-defun-allowed/concurrent-hash-tables")
13701 (synopsis "Portability library for concurrent hash tables in Common Lisp")
13702 (description "@code{concurrent-hash-tables} is a Common Lisp portability
13703library wrapping some implementations of concurrent hash tables which do not
13704have to be entirely locked in their operation, including
13705@code{42nd-at-threadmill}, @code{luckless}, and a fallback, segmented hash
13706table.")
13707 (license license:bsd-2))))
13708
13709(define-public cl-concurrent-hash-tables
13710 (sbcl-package->cl-source-package sbcl-concurrent-hash-tables))
13711
13712(define-public ecl-concurrent-hash-tables
13713 (sbcl-package->ecl-package sbcl-concurrent-hash-tables))
13714
13715(define-public sbcl-conduit-packages
13716 (package
13717 (name "sbcl-conduit-packages")
13718 (version "5.0.0")
13719 (source
13720 (origin
13721 (method git-fetch)
13722 (uri (git-reference
13723 (url "https://github.com/tfeb/conduit-packages")
13724 (commit (string-append "v" version))))
13725 (file-name (git-file-name "cl-conduit-packages" version))
13726 (sha256
13727 (base32 "10dr3982924n37dnch6mxhqav6w5aglf5gqbs90ja6qc4kf8shhz"))))
13728 (build-system asdf-build-system/sbcl)
13729 (arguments '(#:asd-systems '("org.tfeb.conduit-packages")))
13730 (synopsis "Conduit packages for Common Lisp")
13731 (description "This library defines a way of treating Common Lisp
13732packages as conduits which can sit between one or more implementation
13733packages and users of those packages.")
13734 (home-page "https://github.com/tfeb/conduit-packages/")
13735 (license license:expat)))
13736
13737(define-public cl-conduit-packages
13738 (sbcl-package->cl-source-package sbcl-conduit-packages))
13739
13740(define-public ecl-conduit-packages
13741 (sbcl-package->ecl-package sbcl-conduit-packages))
13742
13743(define-public clasp-conduit-packages
13744 (sbcl-package->clasp-package sbcl-conduit-packages))
13745
13746(define-public sbcl-conium
13747 (let ((commit "089adfd8759ec7973bb6f67b98d7a246e67aeb05")
13748 (revision "1"))
13749 (package
13750 (name "sbcl-conium")
13751 (version (git-version "0.0.0" revision commit))
13752 (source
13753 (origin
13754 (method git-fetch)
13755 (uri (git-reference
13756 (url "https://github.com/sharplispers/conium")
13757 (commit commit)))
13758 (file-name (git-file-name "conium" version))
13759 (sha256
13760 (base32 "0y31za8xr8734p2pf8mrw1jd1fksh2d4y1p12wwjyn8hxxsvsx1w"))))
13761 (build-system asdf-build-system/sbcl)
13762 (inputs
13763 (list sbcl-closer-mop))
13764 (home-page "https://github.com/sharplispers/conium")
13765 (synopsis "Portability library for debugger- and compiler-related tasks")
13766 (description
13767 "Conium is a portability library for debugger- and compiler-related
13768tasks in Common Lisp. It is fork of SWANK-BACKEND.")
13769 (license license:public-domain))))
13770
13771(define-public cl-conium
13772 (sbcl-package->cl-source-package sbcl-conium))
13773
13774(define-public ecl-conium
13775 (sbcl-package->ecl-package sbcl-conium))
13776
13777(define-public clasp-conium
13778 (sbcl-package->clasp-package sbcl-conium))
13779
13780(define-public sbcl-constantfold
13781 (let ((commit "0ff1d97a3fbcb89264f6a2af6ce62b73e7b421f4")
13782 (revision "1"))
13783 (package
13784 (name "sbcl-constantfold")
13785 (version (git-version "0.1" revision commit))
13786 (source
13787 (origin
13788 (method git-fetch)
13789 (uri (git-reference
13790 (url "https://github.com/numcl/constantfold")
13791 (commit commit)))
13792 (file-name (git-file-name name version))
13793 (sha256
13794 (base32
13795 "153h0569z6bff1qbad0bdssplwwny75l7ilqwcfqfdvzsxf9jh06"))))
13796 (build-system asdf-build-system/sbcl)
13797 (synopsis "Support library for numcl")
13798 (description
13799 "Support library for numcl. Registers a function as an
13800additional form that is considered as a candidate for a constant.")
13801 (home-page "https://github.com/numcl/constantfold")
13802 (license license:lgpl3+)
13803 (inputs
13804 (list sbcl-trivia
13805 sbcl-alexandria
13806 sbcl-iterate
13807 sbcl-lisp-namespace))
13808 (native-inputs
13809 (list sbcl-fiveam)))))
13810
13811(define-public cl-constantfold
13812 (sbcl-package->cl-source-package sbcl-constantfold))
13813
13814(define-public ecl-constantfold
13815 (sbcl-package->ecl-package sbcl-constantfold))
13816
13817(define-public sbcl-contextl
13818 ;; No release since 2013.
13819 (let ((commit "f4fb3f59b0844788613fc4d1cc0d2b08df9488bb")
13820 (revision "2"))
13821 (package
13822 (name "sbcl-contextl")
13823 (version (git-version "1.0.0" revision commit))
13824 (source
13825 (origin
13826 (method git-fetch)
13827 (uri (git-reference
13828 (url "https://github.com/pcostanza/contextl/")
13829 (commit commit)))
13830 (file-name (git-file-name name version))
13831 (sha256
13832 (base32 "0apgznz4g6lpmd86lq7w0xddfjgnirk83ig7p0j6i93xadhy9wh0"))))
13833 (build-system asdf-build-system/sbcl)
13834 (inputs
13835 (list sbcl-closer-mop sbcl-lw-compat))
13836 (home-page "https://github.com/pcostanza/contextl")
13837 (synopsis "Context-oriented programming for Common Lisp")
13838 (description "ContextL is a CLOS extension for Context-Oriented
13839Programming (COP).
13840
13841Find overview of ContextL's features in an overview paper:
13842@url{http://www.p-cos.net/documents/contextl-soa.pdf}. See also this general
13843overview article about COP which also contains some ContextL examples:
13844@url{http://www.jot.fm/issues/issue_2008_03/article4/}.")
13845 (license license:expat))))
13846
13847(define-public cl-contextl
13848 (sbcl-package->cl-source-package sbcl-contextl))
13849
13850(define-public ecl-contextl
13851 (sbcl-package->ecl-package sbcl-contextl))
13852
13853(define-public sbcl-core-gp
13854 (let ((commit "90ec1c4599a19c5a911be1f703f78d5108aee160")
13855 (revision "1"))
13856 (package
13857 (name "sbcl-core-gp")
13858 (version (git-version "0.1" revision commit))
13859 (source
13860 (origin
13861 (method git-fetch)
13862 (uri (git-reference
13863 (url "https://github.com/jorgetavares/core-gp")
13864 (commit commit)))
13865 (file-name (git-file-name "cl-core-gp" version))
13866 (sha256
13867 (base32 "0nzlb2gwqisa1amlpl4zc5xxph2g3qwhfyaxchci67d31rzws6l3"))))
13868 (build-system asdf-build-system/sbcl)
13869 (home-page "https://github.com/jorgetavares/core-gp")
13870 (synopsis "Common Lisp library for genetic programming")
13871 (description
13872 "@code{core-gp} is a Common Lisp library for genetic programming (GP)
13873algorithms. It allows standard GP, strongly-typed GP, grammatical evolution as
13874well as standard genetic algorithms.")
13875 (license license:expat))))
13876
13877(define-public cl-core-gp
13878 (sbcl-package->cl-source-package sbcl-core-gp))
13879
13880(define-public ecl-core-gp
13881 (sbcl-package->ecl-package sbcl-core-gp))
13882
13883(define-public clasp-core-gp
13884 (sbcl-package->clasp-package sbcl-core-gp))
13885
13886(define-public sbcl-croatoan
13887 (let ((commit "470055739ef6ece42655ef0f3878a87a9e3e9b78")
13888 (revision "2"))
13889 (package
13890 (name "sbcl-croatoan")
13891 (version (git-version "0.3" revision commit))
13892 (source
13893 (origin
13894 (method git-fetch)
13895 (uri (git-reference
13896 (url "https://codeberg.org/McParen/croatoan")
13897 (commit commit)))
13898 (file-name (git-file-name "cl-croatoan" version))
13899 (sha256
13900 (base32 "04776x4i8inxs8n4mgy9xf0q39bzv4mfz4cl880sxwk6mnhwnn4c"))))
13901 (build-system asdf-build-system/sbcl)
13902 (arguments
13903 '(#:phases
13904 (modify-phases %standard-phases
13905 (add-after 'unpack 'fix-paths
13906 (lambda* (#:key inputs #:allow-other-keys)
13907 (substitute* "ncurses/ncurses.lisp"
13908 (("libncursesw.so")
13909 (search-input-file inputs "/lib/libncursesw.so"))))))))
13910 (inputs
13911 (list ncurses
13912 sbcl-cffi
13913 sbcl-trivial-gray-streams
13914 sbcl-bordeaux-threads))
13915 (synopsis "Common Lisp bindings for the ncurses terminal library")
13916 (description "Croatoan provides high-level Common Lisp CLOS bindings for
13917the ncurses terminal library.")
13918 (home-page "https://codeberg.org/McParen/croatoan")
13919 (license license:expat))))
13920
13921(define-public cl-croatoan
13922 (sbcl-package->cl-source-package sbcl-croatoan))
13923
13924(define-public ecl-croatoan
13925 (sbcl-package->ecl-package sbcl-croatoan))
13926
13927(define-public sbcl-crypto-shortcuts
13928 (let ((commit "9b77282d7d52ff89753bd71b5584169b53942dbc")
13929 (revision "2"))
13930 (package
13931 (name "sbcl-crypto-shortcuts")
13932 (version (git-version "2.0.0" revision commit))
13933 (source
13934 (origin
13935 (method git-fetch)
13936 (uri (git-reference
13937 (url "https://codeberg.org/shinmera/crypto-shortcuts")
13938 (commit commit)))
13939 (file-name (git-file-name "crypto-shortcuts" version))
13940 (sha256
13941 (base32 "1b0dzf84xzw444kib1744sls4l24zh3nx1cz77xbc8qphic0m0ms"))))
13942 (build-system asdf-build-system/sbcl)
13943 (inputs
13944 (list sbcl-cl-base64 sbcl-cl-base32 sbcl-flexi-streams sbcl-ironclad))
13945 (synopsis "Collection of common cryptography functions")
13946 (description
13947 "This is a collection of common cryptography functions for Common
13948Lisp.")
13949 (home-page "https://shinmera.com/docs/crypto-shortcuts")
13950 (license license:zlib))))
13951
13952(define-public cl-crypto-shortcuts
13953 (sbcl-package->cl-source-package sbcl-crypto-shortcuts))
13954
13955(define-public ecl-crypto-shortcuts
13956 (sbcl-package->ecl-package sbcl-crypto-shortcuts))
13957
13958(define-public sbcl-css-lite
13959 (let ((commit "6ee4e6212ed56943d665df163d2a834b122e6273")
13960 (revision "0"))
13961 (package
13962 (name "sbcl-css-lite")
13963 (version "0.01")
13964 (source
13965 (origin
13966 (method git-fetch)
13967 (uri (git-reference
13968 (url "https://github.com/paddymul/css-lite")
13969 (commit commit)))
13970 (sha256
13971 (base32 "1lyvw7hcy09k5qs6icky23s13psqxncyc73hdyiimb66p0jx6k0d"))
13972 (file-name (git-file-name "cl-css-lite" commit))))
13973 (build-system asdf-build-system/sbcl)
13974 (home-page "https://github.com/paddymul/css-lite")
13975 (synopsis "CSS grammar for Lisp")
13976 (description
13977 "@code{cl-css-lite} is a library for generating CSS from an s-exp based
13978syntax. When compiled with Parenscript loaded in the Lisp image, it
13979also provides the same CSS generation facilities in Parenscript-generated
13980JavaScript code.")
13981 (license license:bsd-3))))
13982
13983(define-public cl-css-lite
13984 (sbcl-package->cl-source-package sbcl-css-lite))
13985
13986(define-public ecl-css-lite
13987 (sbcl-package->ecl-package sbcl-css-lite))
13988
13989(define-public clasp-css-lite
13990 (sbcl-package->clasp-package sbcl-css-lite))
13991
13992(define-public sbcl-ctype
13993 (let ((commit "d9a77273cf2bdfd98c6a5f920b04c5909b674c17")
13994 (revision "5"))
13995 (package
13996 (name "sbcl-ctype")
13997 (version (git-version "0.0.0" revision commit))
13998 (source
13999 (origin
14000 (method git-fetch)
14001 (uri (git-reference
14002 (url "https://github.com/s-expressionists/ctype")
14003 (commit commit)))
14004 (file-name (git-file-name "cl-ctype" version))
14005 (sha256
14006 (base32 "1l1qz49584l8kss3l1lp5k2brw4xs4xqxhnjzq9fnnwbmy8253nq"))))
14007 (build-system asdf-build-system/sbcl)
14008 (inputs
14009 (list sbcl-alexandria))
14010 (arguments
14011 '(#:asd-systems '("ctype" "ctype/tfun" "ctype/ext")))
14012 (home-page "https://github.com/s-expressionists/ctype")
14013 (synopsis "Common Lisp type system implementation")
14014 (description
14015 "This system is an implementation of the Common Lisp type system;
14016particularly @code{cl:typep} and @code{cl:subtypep}.")
14017 (license license:bsd-2))))
14018
14019(define-public cl-ctype
14020 (sbcl-package->cl-source-package sbcl-ctype))
14021
14022;; FIXME: https://github.com/s-expressionists/ctype/issues/31
14023;; (define-public ecl-ctype
14024;; (sbcl-package->ecl-package sbcl-ctype))
14025
14026(define-public clasp-ctype
14027 (sbcl-package->clasp-package sbcl-ctype))
14028
14029(define-public sbcl-curry-compose-reader-macros
14030 (let ((commit "beaa92dedf392726c042184bfd6149fa8d9e6ac2")
14031 (revision "0"))
14032 (package
14033 (name "sbcl-curry-compose-reader-macros")
14034 (version (git-version "1.0.0" revision commit))
14035 (source
14036 (origin
14037 (method git-fetch)
14038 (uri
14039 (git-reference
14040 (url "https://github.com/eschulte/curry-compose-reader-macros")
14041 (commit commit)))
14042 (file-name (git-file-name name version))
14043 (sha256
14044 (base32
14045 "0rv9bl8xrad5wfcg5zs1dazvnpmvqz6297lbn8bywsrcfnlf7h98"))))
14046 (build-system asdf-build-system/sbcl)
14047 (inputs
14048 (list sbcl-alexandria sbcl-named-readtables))
14049 (synopsis "Reader macros for partial application and composition")
14050 (description
14051 "This Common Lisp library provides reader macros for concise expression
14052of function partial application and composition.")
14053 (home-page "https://eschulte.github.io/curry-compose-reader-macros/")
14054 (license license:public-domain))))
14055
14056(define-public cl-curry-compose-reader-macros
14057 (sbcl-package->cl-source-package sbcl-curry-compose-reader-macros))
14058
14059(define-public ecl-curry-compose-reader-macros
14060 (sbcl-package->ecl-package sbcl-curry-compose-reader-macros))
14061
14062(define-public clasp-curry-compose-reader-macros
14063 (sbcl-package->clasp-package sbcl-curry-compose-reader-macros))
14064
14065(define-public sbcl-custom-hash-table
14066 (let ((commit "f26983133940f5edf826ebbc8077acc04816ddfa"))
14067 (package
14068 (name "sbcl-custom-hash-table")
14069 (version (git-version "0.3" "1" commit))
14070 (source
14071 (origin
14072 (method git-fetch)
14073 (uri (git-reference
14074 (url "https://github.com/metawilm/cl-custom-hash-table")
14075 (commit commit)))
14076 (file-name (git-file-name name version))
14077 (sha256
14078 (base32 "1k4mvrpbqqds2fwjxp1bxmrfmr8ch4dkwhnkbw559knbqshvrlj5"))))
14079 (build-system asdf-build-system/sbcl)
14080 (arguments
14081 '(#:asd-systems '("cl-custom-hash-table")))
14082 (home-page "https://github.com/metawilm/cl-custom-hash-table")
14083 (synopsis "Custom hash tables for Common Lisp")
14084 (description "This library allows creation of hash tables with arbitrary
14085@code{test}/@code{hash} functions, in addition to the @code{test} functions
14086allowed by the standard (@code{EQ}, @code{EQL}, @code{EQUAL} and
14087@code{EQUALP}), even in implementations that don't support this functionality
14088directly.")
14089 (license license:expat))))
14090
14091(define-public cl-custom-hash-table
14092 (sbcl-package->cl-source-package sbcl-custom-hash-table))
14093
14094(define-public ecl-custom-hash-table
14095 (sbcl-package->ecl-package sbcl-custom-hash-table))
14096
14097(define-public clasp-custom-hash-table
14098 (sbcl-package->clasp-package sbcl-custom-hash-table))
14099
14100(define-public sbcl-cxml
14101 (let ((commit "00b22bf4c4cf11c993d5866fae284f95ab18e6bf")
14102 (revision "1"))
14103 (package
14104 (name "sbcl-cxml")
14105 (version (git-version "0.0.0" revision commit))
14106 (source
14107 (origin
14108 (method git-fetch)
14109 (uri (git-reference
14110 (url "https://github.com/sharplispers/cxml")
14111 (commit commit)))
14112 (file-name (git-file-name name version))
14113 (sha256
14114 (base32
14115 "13kif7rf3gqdycsk9zq0d7y0g9y81krkl0z87k0p2fkbjfgrph37"))))
14116 (build-system asdf-build-system/sbcl)
14117 (inputs
14118 (list sbcl-closure-common sbcl-puri sbcl-trivial-gray-streams))
14119 (synopsis "Common Lisp XML parser")
14120 (description "CXML implements a namespace-aware, validating XML 1.0
14121parser as well as the DOM Level 2 Core interfaces. Two parser interfaces are
14122offered, one SAX-like, the other similar to StAX.")
14123 (home-page "https://common-lisp.net/project/cxml/")
14124 (license license:llgpl))))
14125
14126(define-public cl-cxml
14127 (sbcl-package->cl-source-package sbcl-cxml))
14128
14129(define-public ecl-cxml
14130 (sbcl-package->ecl-package sbcl-cxml))
14131
14132(define-public sbcl-cxml-rng
14133 (let ((commit "bdcfeb92798694b2935a8321e641d8803e814b7b")
14134 (revision "1"))
14135 (package
14136 (name "sbcl-cxml-rng")
14137 (version (git-version "0.0.0" revision commit))
14138 (source
14139 (origin
14140 (method git-fetch)
14141 (uri (git-reference
14142 (url "http://www.lichteblau.com/git/cxml-rng.git")
14143 (commit commit)))
14144 (file-name (git-file-name name version))
14145 (sha256
14146 (base32
14147 "1rld038hmvm0whaffkszd5ks7mg44z1vfbgddal434df8sgspzql"))))
14148 (build-system asdf-build-system/sbcl)
14149 (inputs
14150 (list sbcl-cxml sbcl-cl-ppcre sbcl-cl-yacc sbcl-parse-number
14151 sbcl-cl-base64))
14152 (synopsis "Relax NG for Closure XML (CXML)")
14153 (description "An implementation of Relax NG schema validation written in
14154Common Lisp, including support for compact syntax, DTD Compatibility, and the
14155XSD type library.")
14156 (home-page "http://www.lichteblau.com/cxml-rng/")
14157 (license license:bsd-2))))
14158
14159(define-public cl-cxml-rng
14160 (sbcl-package->cl-source-package sbcl-cxml-rng))
14161
14162;; FIXME: Fails on ECL with
14163;; In function STRUCTURE-SET, the value of the first argument is
14164;; #<empty 0x7fffeb0fd440>
14165;; which is not of the expected type %TYPED-PATTERN.
14166;; (define-public ecl-cxml-rng
14167;; (sbcl-package->ecl-package sbcl-cxml-rng))
14168
14169(define-public sbcl-daemon
14170 (let ((commit "d5652f4332c3cee21e9bf83b9237129605004597")
14171 (revision "1"))
14172 (package
14173 (name "sbcl-daemon")
14174 (version (git-version "0.0.4" revision commit))
14175 (source
14176 (origin
14177 (method git-fetch)
14178 (uri (git-reference
14179 (url "https://github.com/snmsts/daemon")
14180 (commit commit)))
14181 (file-name (git-file-name "daemon" version))
14182 (sha256
14183 (base32 "1kdxfnhh9fz34j8qs7pn7mwjz3v33q4v9nh0hqkyzraq5xs2j3f4"))))
14184 (build-system asdf-build-system/sbcl)
14185 (inputs
14186 (list sbcl-trivial-features))
14187 (home-page "https://github.com/snmsts/daemon")
14188 (synopsis "Daemonize Common Lisp processes")
14189 (description
14190 "DAEMON provides the functionality of daemonizing Common Lisp processes
14191on UNIX like platforms.")
14192 (license license:expat))))
14193
14194(define-public cl-daemon
14195 (sbcl-package->cl-source-package sbcl-daemon))
14196
14197(define-public ecl-daemon
14198 (sbcl-package->ecl-package sbcl-daemon))
14199
14200(define-public sbcl-damn-fast-priority-queue
14201 (let ((commit "f4c03741d05c757aed245b41a5c3f8c7096cc1d2")
14202 (revision "0"))
14203 (package
14204 (name "sbcl-damn-fast-priority-queue")
14205 (version (git-version "0.0.2" revision commit))
14206 (source
14207 (origin
14208 (method git-fetch)
14209 (uri (git-reference
14210 (url "https://github.com/phoe/damn-fast-priority-queue")
14211 (commit commit)))
14212 (file-name (git-file-name "damn-fast-priority-queue" version))
14213 (sha256
14214 (base32 "0ch4yma51r2lnsjpr45mxga7sf03l3c76l6ijffm1rq2g9ywaksa"))))
14215 (build-system asdf-build-system/sbcl)
14216 (inputs
14217 (list sbcl-alexandria))
14218 (arguments
14219 `(#:asd-systems '("damn-fast-priority-queue"
14220 "damn-fast-stable-priority-queue")))
14221 (synopsis "Fast priority queue")
14222 (description
14223 "A heap-based priority queue whose first and foremost priority is speed.")
14224 (home-page "https://github.com/phoe/damn-fast-priority-queue")
14225 (license license:expat))))
14226
14227(define-public cl-damn-fast-priority-queue
14228 (sbcl-package->cl-source-package sbcl-damn-fast-priority-queue))
14229
14230(define-public ecl-damn-fast-priority-queue
14231 (sbcl-package->ecl-package sbcl-damn-fast-priority-queue))
14232
14233(define-public clasp-damn-fast-priority-queue
14234 (sbcl-package->clasp-package sbcl-damn-fast-priority-queue))
14235
14236(define-public sbcl-data-format-validation
14237 (let ((commit "95d44766e829582598f9dcdc5c23719c462d5bfb")
14238 (revision "1"))
14239 (package
14240 (name "sbcl-data-format-validation")
14241 (version (git-version "0.2.0" revision commit))
14242 (source
14243 (origin
14244 (method git-fetch)
14245 (uri
14246 (git-reference
14247 (url "https://github.com/willijar/cl-data-format-validation/")
14248 (commit commit)))
14249 (file-name (git-file-name "data-format-validation" version))
14250 (sha256
14251 (base32
14252 "0zmk47xmicyqvp1impn8kgh5373ysmx3gfpqcvbi9r31qsir2nqa"))))
14253 (build-system asdf-build-system/sbcl)
14254 (inputs
14255 (list sbcl-cl-ppcre))
14256 (synopsis "Validation and conversion between user and internal data")
14257 (description
14258 "@code{data-format-validation} is a library for Common Lisp providing a
14259consistent regular interface for converting (and validating) external data (in
14260the form of strings usually) into internal data types and for formatting
14261internal data back into external presentable strings, all according to a
14262conversion or type specification.")
14263 (home-page "http://www.jarw.org.uk/lisp/cl-data-format-validation.html")
14264 (license license:gpl3))))
14265
14266(define-public sbcl-data-frame
14267 (let ((commit "6f02e58312654ddf19d686f234dcf699fc4cd0f5")
14268 (revision "0"))
14269 (package
14270 (name "sbcl-data-frame")
14271 (version (git-version "1.1.1" revision commit))
14272 (source
14273 (origin
14274 (method git-fetch)
14275 (uri (git-reference
14276 (url "https://github.com/Lisp-Stat/data-frame")
14277 (commit commit)))
14278 (file-name (git-file-name "cl-data-frame" version))
14279 (sha256
14280 (base32 "0bs1jh66bml25bj1lxdzz8cjhj3g060yyd5ggqsnsr4l2j0zyszv"))))
14281 (build-system asdf-build-system/sbcl)
14282 (native-inputs (list sbcl-clunit2))
14283 (inputs
14284 (list sbcl-alexandria
14285 sbcl-alexandria-plus
14286 sbcl-anaphora
14287 sbcl-array-operations
14288 sbcl-duologue
14289 sbcl-let-plus
14290 sbcl-numerical-utilities
14291 sbcl-select
14292 sbcl-serapeum
14293 sbcl-statistics))
14294 (home-page "https://lisp-stat.dev/docs/manuals/data-frame/")
14295 (synopsis "Data frames for Common Lisp")
14296 (description "This package provides data frames for Common Lisp, a
14297two-dimensional array-like structure in which each column contains values
14298of one variable and each row contains one set of values from each column.")
14299 (license license:ms-pl))))
14300
14301(define-public cl-data-frame
14302 (sbcl-package->cl-source-package sbcl-data-frame))
14303
14304;; The data-frame system depends on the sb-cltl2 system, which is only
14305;; available with SBCL.
14306;; (define-public ecl-data-frame
14307;; (sbcl-package->ecl-package sbcl-data-frame))
14308
14309(define-public sbcl-data-lens
14310 (let ((commit "801bc1e0331f19fdc38be314c86ccac9362fde78")
14311 (revision "0"))
14312 (package
14313 (name "sbcl-data-lens")
14314 (version (git-version "0.0.0" revision commit))
14315 (source
14316 (origin
14317 (method git-fetch)
14318 (uri (git-reference
14319 (url "https://github.com/fiddlerwoaroof/data-lens")
14320 (commit commit)))
14321 (file-name (git-file-name "cl-data-lens" version))
14322 (sha256
14323 (base32 "1w4rvhcnss037q0bb1j70kdlhfh9085hy95d9q56sk519alhzhrp"))))
14324 (build-system asdf-build-system/sbcl)
14325 (native-inputs
14326 (list sbcl-fiveam))
14327 (inputs
14328 (list sbcl-cl-ppcre
14329 sbcl-alexandria
14330 sbcl-serapeum))
14331 (synopsis "Functional utilities for Common Lisp")
14332 (description
14333 "The @code{cl-data-lens} library provides a language for expressing data
14334manipulations as the composition of more primitive operations.")
14335 (home-page "https://fiddlerwoaroof.github.io/data-lens/")
14336 (license license:asl2.0))))
14337
14338(define-public cl-data-lens
14339 (sbcl-package->cl-source-package sbcl-data-lens))
14340
14341(define-public ecl-data-lens
14342 (sbcl-package->ecl-package sbcl-data-lens))
14343
14344(define-public sbcl-data-sift
14345 (let ((commit "fd617d8200cdcc1b87ecf45ab59bb38e8b16ef7e")
14346 (revision "1"))
14347 (package
14348 (name "sbcl-data-sift")
14349 (version (git-version "0.0.0" revision commit))
14350 (source
14351 (origin
14352 (method git-fetch)
14353 (uri (git-reference
14354 (url "https://github.com/archimag/data-sift")
14355 (commit commit)))
14356 (file-name (git-file-name "cl-data-sift" version))
14357 (sha256
14358 (base32 "1v7gf0x4ibjzp0c56n9m77hxdgwcm9356zlk5n4l3fx4i0hj6146"))))
14359 (build-system asdf-build-system/sbcl)
14360 (arguments
14361 ;; All test cases test a function that has been removed.
14362 `(#:tests? #f))
14363 (inputs
14364 (list sbcl-alexandria
14365 sbcl-cl-ppcre
14366 sbcl-parse-number
14367 sbcl-puri))
14368 (native-inputs
14369 (list sbcl-lift))
14370 (home-page "https://github.com/archimag/data-sift")
14371 (synopsis
14372 "Common Lisp library for validation and transformation of string data")
14373 (description
14374 "@code{DATA-SIFT} is a Common Lisp data validation and transformation
14375library inspired by @code{cl-data-format-validation} and WTForms validators.")
14376 (license license:llgpl))))
14377
14378(define-public cl-data-sift
14379 (sbcl-package->cl-source-package sbcl-data-sift))
14380
14381(define-public ecl-data-sift
14382 (sbcl-package->ecl-package sbcl-data-sift))
14383
14384(define-public sbcl-datafly
14385 (let ((commit "adece27fcbc4b5ea39ad1a105048b6b7166e3b0d")
14386 (revision "1"))
14387 (package
14388 (name "sbcl-datafly")
14389 (version (git-version "0.1" revision commit))
14390 (home-page "https://github.com/fukamachi/datafly")
14391 (source
14392 (origin
14393 (method git-fetch)
14394 (uri (git-reference
14395 (url home-page)
14396 (commit commit)))
14397 (file-name (git-file-name name version))
14398 (sha256
14399 (base32 "16b78kzmglp2a4nxlxxl7rpf5zaibsgagn0p3c56fsxvx0c4hszv"))))
14400 (build-system asdf-build-system/sbcl)
14401 (inputs
14402 (list sbcl-alexandria
14403 sbcl-iterate
14404 sbcl-optima
14405 sbcl-trivial-types
14406 sbcl-closer-mop
14407 sbcl-cl-syntax
14408 sbcl-sxql
14409 sbcl-dbi
14410 sbcl-babel
14411 sbcl-local-time
14412 sbcl-function-cache
14413 sbcl-jonathan
14414 sbcl-kebab
14415 sbcl-log4cl))
14416 (native-inputs
14417 (list sbcl-prove))
14418 (arguments
14419 ;; TODO: Tests fail with
14420 ;; While evaluating the form starting at line 22, column 0
14421 ;; of #P"/tmp/guix-build-sbcl-datafly-0.1-1.adece27.drv-0/source/t/datafly.lisp":
14422 ;; Unhandled SQLITE:SQLITE-ERROR in thread #<SB-THREAD:THREAD "main thread" RUNNING
14423 ;; {10009F8083}>:
14424 ;; Error when binding parameter 1 to value NIL.
14425 ;; Code RANGE: column index out of range.
14426 `(#:tests? #f))
14427 (synopsis "Lightweight database library for Common Lisp")
14428 (description "Datafly is a lightweight database library for Common Lisp.")
14429 (license license:bsd-3))))
14430
14431(define-public cl-datafly
14432 (sbcl-package->cl-source-package sbcl-datafly))
14433
14434(define-public ecl-datafly
14435 (sbcl-package->ecl-package sbcl-datafly))
14436
14437(define-public sbcl-db3
14438 (let ((commit "38e5ad35f025769fb7f8dcdc6e56df3e8efd8e6d")
14439 (revision "1"))
14440 (package
14441 (name "sbcl-db3")
14442 (version (git-version "0.0.0" revision commit))
14443 (source
14444 (origin
14445 (method git-fetch)
14446 (uri (git-reference
14447 (url "https://github.com/dimitri/cl-db3")
14448 (commit commit)))
14449 (file-name (git-file-name "cl-db3" version))
14450 (sha256
14451 (base32 "1i7j0mlri6kbklcx1lsm464s8kmyhhij5c4xh4aybrw8m4ixn1s5"))))
14452 (build-system asdf-build-system/sbcl)
14453 (home-page "https://github.com/dimitri/cl-db3")
14454 (synopsis "Common Lisp library to read dBase III database files")
14455 (description
14456 "This is a Common Lisp library for processing data found in dBase III
14457database files (dbf and db3 files).")
14458 (license license:public-domain))))
14459
14460(define-public cl-db3
14461 (sbcl-package->cl-source-package sbcl-db3))
14462
14463(define-public ecl-db3
14464 (sbcl-package->ecl-package sbcl-db3))
14465
14466(define-public sbcl-dbi
14467 (let ((commit "5cf8b754affee7b20782e64ac7c80db9a45e488b")
14468 (revision "4"))
14469 (package
14470 (name "sbcl-dbi")
14471 (version (git-version "0.11.1" revision commit))
14472 (source
14473 (origin
14474 (method git-fetch)
14475 (uri (git-reference
14476 (url "https://github.com/fukamachi/cl-dbi")
14477 (commit commit)))
14478 (file-name (git-file-name "cl-dbi" version))
14479 (sha256
14480 (base32 "19kai3kd061valrr3v31shrizyh9qsyxmcl034b16zllqjrnmyi7"))))
14481 (build-system asdf-build-system/sbcl)
14482 (native-inputs
14483 (list sbcl-alexandria
14484 sbcl-rove
14485 sbcl-trivial-types))
14486 (inputs
14487 (list sbcl-bordeaux-threads
14488 sbcl-cl-mysql
14489 sbcl-cl-sqlite
14490 sbcl-closer-mop
14491 sbcl-postmodern
14492 sbcl-split-sequence
14493 sbcl-trivial-garbage))
14494 (arguments
14495 `(#:asd-systems '("dbi"
14496 "dbd-mysql"
14497 "dbd-postgres"
14498 "dbd-sqlite3")))
14499 (synopsis "Database independent interface for Common Lisp")
14500 (description
14501 "@code{dbi} is a Common Lisp library providing a database independent
14502interface for MySQL, PostgreSQL and SQLite.")
14503 (home-page "https://github.com/fukamachi/cl-dbi")
14504 (license license:llgpl))))
14505
14506(define-public cl-dbi
14507 (sbcl-package->cl-source-package sbcl-dbi))
14508
14509(define-public ecl-dbi
14510 (sbcl-package->ecl-package sbcl-dbi))
14511
14512(define-public sbcl-dbus
14513 (let ((commit "8bba6a0942232e9d7fa915b33bbe32dfedc5abb9")
14514 (revision "2"))
14515 (package
14516 (name "sbcl-dbus")
14517 (version (git-version "20231105" revision commit))
14518 (home-page "https://github.com/death/dbus")
14519 (source
14520 (origin
14521 (method git-fetch)
14522 (uri (git-reference
14523 (url home-page)
14524 (commit commit)))
14525 (file-name (git-file-name "cl-dbus" version))
14526 (sha256
14527 (base32
14528 "1y880074m9g0swxrzpbplmkdxc6r62gzyigglf4x2i0zyss3gf65"))))
14529 (build-system asdf-build-system/sbcl)
14530 (inputs
14531 (list sbcl-alexandria
14532 sbcl-trivial-garbage
14533 sbcl-babel
14534 sbcl-iolib
14535 sbcl-ieee-floats
14536 sbcl-flexi-streams
14537 sbcl-cl-xmlspam
14538 sbcl-ironclad))
14539 (synopsis "D-Bus client library for Common Lisp")
14540 (description "This is a Common Lisp library that publishes D-Bus
14541objects as well as send and notify other objects connected to a bus.")
14542 (license license:bsd-2))))
14543
14544(define-public cl-dbus
14545 (sbcl-package->cl-source-package sbcl-dbus))
14546
14547(define-public ecl-dbus
14548 (sbcl-package->ecl-package sbcl-dbus))
14549
14550(define-public sbcl-decimals
14551 (package
14552 (name "sbcl-decimals")
14553 (version "2021")
14554 (source
14555 (origin
14556 (method git-fetch)
14557 (uri (git-reference
14558 (url "https://github.com/tlikonen/cl-decimals")
14559 (commit version)))
14560 (file-name (git-file-name "cl-decimals" version))
14561 (sha256
14562 (base32 "0wn5hq1pwd3wpjqqhpjzarcdk1q6416g8y447iaf55j5nbhlmbn6"))))
14563 (build-system asdf-build-system/sbcl)
14564 (home-page "https://github.com/tlikonen/cl-decimals")
14565 (synopsis "Decimal number parser and formatting package for Common Lisp")
14566 (description "This Common Lisp package offers functions for parsing and
14567formatting decimal numbers. The package's main interface are the functions
14568@code{parse-decimal-number} and @code{format-decimal-number}. The former is
14569for parsing strings for decimal numbers and the latter for pretty-printing
14570them as strings.")
14571 (license license:cc0)))
14572
14573(define-public cl-decimals
14574 (sbcl-package->cl-source-package sbcl-decimals))
14575
14576(define-public ecl-decimals
14577 (sbcl-package->ecl-package sbcl-decimals))
14578
14579(define-public sbcl-deeds
14580 (let ((revision "2")
14581 (commit "c63502b9ca3bd7946411686ac98b040c0c6b3e1c"))
14582 (package
14583 (name "sbcl-deeds")
14584 (version (git-version "1.1.1" revision commit))
14585 (source
14586 (origin
14587 (method git-fetch)
14588 (uri (git-reference
14589 (url "https://codeberg.org/shinmera/deeds")
14590 (commit commit)))
14591 (file-name (git-file-name name version))
14592 (sha256
14593 (base32 "1kx5x783cxw5whfwl1akwmzybh6dbrrjmygqmigirqcwdmxk5h8c"))))
14594 (build-system asdf-build-system/sbcl)
14595 (inputs
14596 (list sbcl-bordeaux-threads sbcl-closer-mop sbcl-form-fiddle
14597 sbcl-lambda-fiddle))
14598 (home-page "https://shinmera.com/docs/deeds")
14599 (synopsis "Extensible Event Delivery System")
14600 (description
14601 "@code{deeds} allows for efficient event delivery to multiple handlers
14602with a complex event filtering system.")
14603 (license license:zlib))))
14604
14605(define-public cl-deeds
14606 (sbcl-package->cl-source-package sbcl-deeds))
14607
14608(define-public ecl-deeds
14609 (sbcl-package->ecl-package sbcl-deeds))
14610
14611(define-public sbcl-definitions
14612 (let ((commit "869796051d97bf67779f192733d52714929b48f1")
14613 (revision "2"))
14614 (package
14615 (name "sbcl-definitions")
14616 (version (git-version "1.0.0" revision commit))
14617 (source
14618 (origin
14619 (method git-fetch)
14620 (uri (git-reference
14621 (url "https://codeberg.org/shinmera/definitions")
14622 (commit commit)))
14623 (file-name (git-file-name "cl-definitions" version))
14624 (sha256
14625 (base32 "0vd32rj87f8icqglpkylgr0bs2m4qjsii3wd5i5ixiy5dz3918md"))))
14626 (build-system asdf-build-system/sbcl)
14627 (inputs
14628 (list sbcl-documentation-utils))
14629 (home-page "https://shinmera.com/docs/definitions")
14630 (synopsis "General definitions reflection library")
14631 (description
14632 "This system implements a general definitions introspection library.
14633It gives you the ability to retrieve definitions or bindings associated with
14634designators such as symbols, packages, and names in general. For instance, it
14635allows you to retrieve all function, type, variable, method, etc. definitions
14636of a symbol.")
14637 (license license:zlib))))
14638
14639(define-public cl-definitions
14640 (sbcl-package->cl-source-package sbcl-definitions))
14641
14642(define-public ecl-definitions
14643 (sbcl-package->ecl-package sbcl-definitions))
14644
14645(define-public clasp-definitions
14646 (sbcl-package->clasp-package sbcl-definitions))
14647
14648(define-public sbcl-definitions-systems
14649 (package
14650 (name "sbcl-definitions-systems")
14651 (version "3.0")
14652 (source
14653 (origin
14654 (method git-fetch)
14655 (uri (git-reference
14656 (url "https://github.com/Hexstream/definitions-systems")
14657 (commit (string-append "v" version))))
14658 (file-name (git-file-name "cl-definitions-systems" version))
14659 (sha256
14660 (base32 "0wly8hr9gfxhdz4l46xsh4vj99q9aq7p3cfsglbgv19kdsvv217r"))))
14661 (build-system asdf-build-system/sbcl)
14662 (native-inputs
14663 (list sbcl-parachute))
14664 (inputs
14665 (list sbcl-canonicalized-initargs
14666 sbcl-enhanced-defclass
14667 sbcl-enhanced-find-class
14668 sbcl-shared-preferences))
14669 (home-page "https://www.hexstreamsoft.com/libraries/definitions-systems/")
14670 (synopsis "Unified extensible way of processing named definitions")
14671 (description
14672 "@code{definitions-systems} provides a simple unified extensible way of
14673processing named definitions.")
14674 (license license:unlicense)))
14675
14676(define-public cl-definitions-systems
14677 (sbcl-package->cl-source-package sbcl-definitions-systems))
14678
14679(define-public ecl-definitions-systems
14680 (sbcl-package->ecl-package sbcl-definitions-systems))
14681
14682(define-public sbcl-deflate
14683 (package
14684 (name "sbcl-deflate")
14685 (version "1.0.3")
14686 (source
14687 (origin
14688 (method git-fetch)
14689 (uri (git-reference
14690 (url "https://github.com/pmai/Deflate")
14691 (commit (string-append "release-" version))))
14692 (file-name (git-file-name name version))
14693 (sha256
14694 (base32 "1jpdjnxh6cw2d8hk70r2sxn92is52s9b855irvwkdd777fdciids"))))
14695 (build-system asdf-build-system/sbcl)
14696 (home-page "https://github.com/pmai/Deflate")
14697 (synopsis "Native deflate decompression for Common Lisp")
14698 (description
14699 "This library is an implementation of Deflate (RFC 1951) decompression,
14700with optional support for ZLIB-style (RFC 1950) and gzip-style (RFC 1952)
14701wrappers of deflate streams. It currently does not handle compression.")
14702 (license license:expat)))
14703
14704(define-public cl-deflate
14705 (sbcl-package->cl-source-package sbcl-deflate))
14706
14707(define-public ecl-deflate
14708 (sbcl-package->ecl-package sbcl-deflate))
14709
14710(define-public clasp-deflate
14711 (sbcl-package->clasp-package sbcl-deflate))
14712
14713(define-public sbcl-defpackage-plus
14714 (let ((revision "0")
14715 (commit "5492e27e0bdb7b75fa5177ea4388519dc7a75f11"))
14716 (package
14717 (name "sbcl-defpackage-plus")
14718 (version (git-version "1.0" revision commit))
14719 (source
14720 (origin
14721 (method git-fetch)
14722 (uri (git-reference
14723 (url "https://github.com/rpav/defpackage-plus")
14724 (commit commit)))
14725 (file-name (git-file-name name version))
14726 (sha256
14727 (base32 "0lzljvf343xb6mlh6lni2i27hpm5qd376522mk6hr2pa20vd6rdq"))))
14728 (build-system asdf-build-system/sbcl)
14729 (inputs
14730 (list sbcl-alexandria))
14731 (home-page "https://github.com/rpav/defpackage-plus")
14732 (synopsis "Extensible @code{DEFPACKAGE} variant with version support")
14733 (description
14734 "@code{DEFPACKAGE-PLUS} is an extensible @code{DEFPACKAGE} variant with
14735predictable cross-platform behavior and some utilities useful for versioning.")
14736 (license license:bsd-2))))
14737
14738(define-public cl-defpackage-plus
14739 (sbcl-package->cl-source-package sbcl-defpackage-plus))
14740
14741(define-public ecl-defpackage-plus
14742 (sbcl-package->ecl-package sbcl-defpackage-plus))
14743
14744(define-public clasp-defpackage-plus
14745 (sbcl-package->clasp-package sbcl-defpackage-plus))
14746
14747(define-public sbcl-defstar
14748 (let ((commit "132829dac9f84fa7202a0c5793aa6accb8d2662a"))
14749 (package
14750 (name "sbcl-defstar")
14751 (version (git-version "1.0.0" "1" commit))
14752 (source
14753 (origin
14754 (method git-fetch)
14755 (uri (git-reference
14756 (url "http://bitbucket.org/eeeickythump/defstar/")
14757 (commit commit)))
14758 (file-name (git-file-name "cl-defstar" version))
14759 (sha256
14760 (base32 "0n6m3aqvdfnsrhlhqjcy72d1i55lbkjg13ij5c7vw003p1n78wxi"))))
14761 (build-system asdf-build-system/sbcl)
14762 (home-page "http://bitbucket.org/eeeickythump/defstar/")
14763 (synopsis "Easy inline (return) type declarations for functions")
14764 (description
14765 "Defstar is a collection of Common Lisp macros that can be used in
14766place of @code{defun}, @code{defmethod}, @code{defgeneric}, @code{defvar},
14767@code{defparameter}, @code{flet}, @code{labels}, @code{let*} and
14768@code{lambda}. Each macro has the same name as the form it replaces, with a
14769star added at the end, e.g. @code{defun}. (the exception is the @code{let*}
14770replacement, which is called @code{*let}).")
14771 (license license:gpl3))))
14772
14773(define-public cl-defstar
14774 (sbcl-package->cl-source-package sbcl-defstar))
14775
14776(define-public ecl-defstar
14777 (sbcl-package->ecl-package sbcl-defstar))
14778
14779(define-public clasp-defstar
14780 (sbcl-package->clasp-package sbcl-defstar))
14781
14782(define-public sbcl-deploy
14783 (let ((commit "c9b869d943d39fcddd8c4aa380995645bd2e3c0b")
14784 (revision "4"))
14785 (package
14786 (name "sbcl-deploy")
14787 (version (git-version "3.0.0" revision commit))
14788 (source
14789 (origin
14790 (method git-fetch)
14791 (uri (git-reference
14792 (url "https://codeberg.org/shinmera/deploy")
14793 (commit commit)))
14794 (file-name (git-file-name "deploy" version))
14795 (sha256
14796 (base32 "05xvv6f1nh7p1dmdyqbpddisf2f9v5kvq2ixa38i263p35rg82sr"))))
14797 (build-system asdf-build-system/sbcl)
14798 (native-inputs
14799 (list sbcl-cl-mpg123
14800 sbcl-cl-out123))
14801 (inputs
14802 (list sbcl-cffi
14803 sbcl-documentation-utils
14804 sbcl-pathname-utils
14805 sbcl-trivial-features
14806 sbcl-sha3))
14807 (home-page "https://codeberg.org/shinmera/deploy")
14808 (synopsis "Deployment tools for standalone Common Lisp application")
14809 (description
14810 "This is a system to help you easily and quickly deploy standalone
14811common lisp applications as binaries. Specifically it is geared towards
14812applications with foreign library dependencies that run some kind of GUI.")
14813 (license license:artistic2.0))))
14814
14815(define-public cl-deploy
14816 (sbcl-package->cl-source-package sbcl-deploy))
14817
14818(define-public ecl-deploy
14819 (sbcl-package->ecl-package sbcl-deploy))
14820
14821(define-public sbcl-depot
14822 (let ((commit "6b46c7d85475bb3869589a73fa7dce8614e6f2f7")
14823 (revision "2"))
14824 (package
14825 (name "sbcl-depot")
14826 (version (git-version "1.0.0" revision commit))
14827 (source
14828 (origin
14829 (method git-fetch)
14830 (uri (git-reference
14831 (url "https://codeberg.org/shinmera/depot")
14832 (commit commit)))
14833 (sha256
14834 (base32 "0ka6lan77phinhw66jbzl4xpngyfwk67rhzaxf4vv13f5ajdi2gb"))
14835 (file-name (git-file-name "depot" version))))
14836 (build-system asdf-build-system/sbcl)
14837 (inputs
14838 (list sbcl-atomics
14839 sbcl-babel
14840 sbcl-documentation-utils
14841 sbcl-trivial-features
14842 sbcl-trivial-gray-streams
14843 sbcl-zippy))
14844 ;; TODO: Some 6 tests fail, why? See https://codeberg.org/shinmera/depot/issues/2.
14845 (arguments
14846 '(#:asd-systems '("depot"
14847 "depot-in-memory"
14848 "depot-virtual"
14849 "depot-zip")))
14850 (synopsis "Protocol for transparent collections of files")
14851 (description "This is a system presenting a protocol for \"file
14852systems\": things that present a collection of \"files,\" which are things
14853that have several attributes, and a central data payload. Most notably this
14854includes the OS filesystem, but can also be used to address other
14855filesystem-like things like archives, object stores, etc. in the same
14856manner.")
14857 (home-page "https://shinmera.com/docs/depot/")
14858 (license license:zlib))))
14859
14860(define-public cl-depot
14861 (sbcl-package->cl-source-package sbcl-depot))
14862
14863(define-public ecl-depot
14864 (sbcl-package->ecl-package sbcl-depot))
14865
14866(define-public sbcl-dexador
14867 (let ((commit "d7ac217819e9156abe10cd28ba7a2d548be03cad")
14868 (revision "3"))
14869 (package
14870 (name "sbcl-dexador")
14871 (build-system asdf-build-system/sbcl)
14872 (version (git-version "0.9.15" revision commit))
14873 (home-page "https://github.com/fukamachi/dexador")
14874 (source
14875 (origin
14876 (method git-fetch)
14877 (uri (git-reference
14878 (url home-page)
14879 (commit commit)))
14880 (file-name (git-file-name "cl-dexador" version))
14881 (sha256
14882 (base32 "19y95k821665vcy7gbxhh4rqwk7fh4brv1sgkaykncpw2l2lll5r"))))
14883 (inputs
14884 (list sbcl-alexandria
14885 sbcl-babel
14886 sbcl-bordeaux-threads
14887 sbcl-chipz
14888 sbcl-chunga
14889 sbcl-cl+ssl
14890 sbcl-cl-base64
14891 sbcl-cl-cookie
14892 sbcl-cl-ppcre
14893 sbcl-fast-http
14894 sbcl-fast-io
14895 sbcl-quri
14896 sbcl-trivial-garbage
14897 sbcl-trivial-gray-streams
14898 sbcl-trivial-mimes
14899 sbcl-usocket))
14900 ;; These native-inputs are for tests only, which are disabled.
14901 ;; Leave them commented since they add a lot to the closure size.
14902 ;; (native-inputs
14903 ;; (list sbcl-clack
14904 ;; sbcl-lack
14905 ;; sbcl-rove))
14906 (arguments
14907 ;; TODO: Circular dependency: tests depend on clack-test which depends on dexador.
14908 `(#:tests? #f
14909 #:phases
14910 (modify-phases %standard-phases
14911 (add-after 'unpack 'fix-permissions
14912 (lambda _ (make-file-writable "t/data/test.gz") #t)))))
14913 (synopsis "Yet another HTTP client for Common Lisp")
14914 (description "Dexador is yet another HTTP client for Common Lisp with
14915neat APIs and connection-pooling. It is meant to supersede Drakma.")
14916 (license license:expat))))
14917
14918(define-public cl-dexador
14919 (package
14920 (inherit (sbcl-package->cl-source-package sbcl-dexador))
14921 (arguments
14922 `(#:phases
14923 ;; asdf-build-system/source has its own phases and does not inherit
14924 ;; from asdf-build-system/sbcl phases.
14925 (modify-phases %standard-phases/source
14926 ;; Already done in SBCL package.
14927 (delete 'reset-gzip-timestamps))))))
14928
14929(define-public ecl-dexador
14930 (sbcl-package->ecl-package sbcl-dexador))
14931
14932(define-public sbcl-dfio
14933 (let ((commit "5caf473acb9bc464839e87395724cbd941167915")
14934 (revision "0"))
14935 (package
14936 (name "sbcl-dfio")
14937 (version (git-version "1.0.2" revision commit))
14938 (source
14939 (origin
14940 (method git-fetch)
14941 (uri (git-reference
14942 (url "https://github.com/Lisp-Stat/dfio")
14943 (commit commit)))
14944 (file-name (git-file-name "cl-dfio" version))
14945 (sha256
14946 (base32 "1p53r7773939jnap518xp4b4wfvc1kbrz9jp6yd40xq0jpf9pbqg"))))
14947 (build-system asdf-build-system/sbcl)
14948 (inputs
14949 (list sbcl-alexandria
14950 sbcl-anaphora
14951 sbcl-data-frame
14952 sbcl-dexador
14953 sbcl-fare-csv
14954 sbcl-let-plus
14955 sbcl-yason))
14956 (native-inputs
14957 (list sbcl-clunit2))
14958 (home-page "https://lisp-stat.dev/docs/manuals/data-frame/")
14959 (synopsis "Read data to and from data frames")
14960 (description "This package provides tools for manipulating data
14961in files using data frames.")
14962 (license license:ms-pl))))
14963
14964(define-public cl-dfio
14965 (sbcl-package->cl-source-package sbcl-dfio))
14966
14967;; This depends on ecl-data-frame, which doesn't work yet.
14968;; (define-public ecl-dfio
14969;; (sbcl-package->ecl-package sbcl-dfio))
14970
14971(define-public sbcl-diff
14972 (let ((commit "9c84befa598d4e07c3d223242b5b3f83cd94f301")
14973 (revision "1"))
14974 (package
14975 (name "sbcl-diff")
14976 (version (git-version "0.4" revision commit))
14977 (source
14978 (origin
14979 (method git-fetch)
14980 (uri (git-reference
14981 (url "https://github.com/froydnj/diff")
14982 (commit commit)))
14983 (file-name (git-file-name "cl-diff" version))
14984 (sha256
14985 (base32 "1giafck8qfvb688kx5bn9g32rfc12jjywg8vdav36aqbd6lxf5z5"))))
14986 (build-system asdf-build-system/sbcl)
14987 (inputs
14988 (list sbcl-cl-ppcre sbcl-trivial-gray-streams))
14989 (home-page "https://github.com/froydnj/diff")
14990 (synopsis "Common Lisp library for computing differences between files")
14991 (description
14992 "DIFF is a package for computing various forms of differences between
14993blobs of data and then doing neat things with those differences. Currently diff
14994knows how to compute three common forms of differences: \"unified\" format
14995diffs, \"context\" format diffs, and \"vdelta\" format binary diffs.")
14996 (license license:bsd-3))))
14997
14998(define-public cl-diff
14999 (sbcl-package->cl-source-package sbcl-diff))
15000
15001(define-public ecl-diff
15002 (sbcl-package->ecl-package sbcl-diff))
15003
15004(define-public clasp-diff
15005 (sbcl-package->clasp-package sbcl-diff))
15006
15007(define-public sbcl-dissect
15008 (let ((commit "985fe01e7a14cef19c6b606c96858ad4096e2781")
15009 (revision "3"))
15010 (package
15011 (name "sbcl-dissect")
15012 (version (git-version "1.0.0" revision commit))
15013 (source
15014 (origin
15015 (method git-fetch)
15016 (uri (git-reference
15017 (url "https://codeberg.org/shinmera/dissect")
15018 (commit commit)))
15019 (file-name (git-file-name name version))
15020 (sha256
15021 (base32
15022 "0vrqlinlpjsvwcch6wrbygbyrksi45mrncdwk8vdhzdplhi22h49"))))
15023 (build-system asdf-build-system/sbcl)
15024 (inputs
15025 (list sbcl-cl-ppcre))
15026 (home-page "https://shinmera.com/docs/dissect")
15027 (synopsis
15028 "Introspection library for the call stack and restarts")
15029 (description
15030 "Dissect is a small Common Lisp library for introspecting the call stack
15031and active restarts.")
15032 (license license:zlib))))
15033
15034(define-public cl-dissect
15035 (sbcl-package->cl-source-package sbcl-dissect))
15036
15037(define-public ecl-dissect
15038 (sbcl-package->ecl-package sbcl-dissect))
15039
15040(define-public clasp-dissect
15041 (sbcl-package->clasp-package sbcl-dissect))
15042
15043(define-public sbcl-distributions
15044 (let ((commit "ea72622073ee7e005dfdc621ce1e5a83b22bb39e")
15045 (revision "0"))
15046 (package
15047 (name "sbcl-distributions")
15048 (version (git-version "1.0.0" revision commit))
15049 (source
15050 (origin
15051 (method git-fetch)
15052 (uri (git-reference
15053 (url "https://github.com/Lisp-Stat/distributions")
15054 (commit commit)))
15055 (file-name (git-file-name "cl-distributions" version))
15056 (sha256
15057 (base32 "1fkzigd0s0s0mvszgmv04yc8jp9gm4812445hfh6kpz6cjy5zpsk"))))
15058 (build-system asdf-build-system/sbcl)
15059 ;; https://github.com/Lisp-Stat/distributions/issues/1
15060 (arguments (list #:tests? #f))
15061 (native-inputs (list sbcl-fiveam))
15062 (inputs
15063 (list sbcl-alexandria
15064 sbcl-anaphora
15065 sbcl-array-operations
15066 sbcl-cephes
15067 sbcl-float-features
15068 sbcl-let-plus
15069 sbcl-numerical-utilities
15070 sbcl-special-functions))
15071 (home-page "https://lisp-stat.dev/docs/manuals/distributions/")
15072 (synopsis "Statistical distributions for Common Lisp")
15073 (description "The Distributions package provides a collection of
15074probabilistic distributions and related functions")
15075 (license license:ms-pl))))
15076
15077(define-public cl-distributions
15078 (sbcl-package->cl-source-package sbcl-distributions))
15079
15080(define-public ecl-distributions
15081 (sbcl-package->ecl-package sbcl-distributions))
15082
15083(define-public sbcl-djula
15084 (let ((commit "6f142594e0372437e64f610b796350ad89ba0be1")
15085 (revision "2"))
15086 (package
15087 (name "sbcl-djula")
15088 (version (git-version "0.2.0" revision commit))
15089 (source
15090 (origin
15091 (method git-fetch)
15092 (uri (git-reference
15093 (url "https://github.com/mmontone/djula")
15094 (commit commit)))
15095 (file-name (git-file-name "cl-djula" version))
15096 (sha256
15097 (base32 "0yyg61hrql1vrwllyd23vidiff28ridh0avxyvnqb89v060d1j83"))))
15098 (build-system asdf-build-system/sbcl)
15099 (native-inputs
15100 (list sbcl-fiveam))
15101 (inputs
15102 (list sbcl-access
15103 sbcl-alexandria
15104 sbcl-anaphora
15105 sbcl-babel
15106 sbcl-cl-locale
15107 sbcl-cl-ppcre
15108 sbcl-cl-slice
15109 sbcl-closer-mop
15110 sbcl-gettext
15111 sbcl-iterate
15112 sbcl-local-time
15113 sbcl-parser-combinators
15114 sbcl-split-sequence
15115 sbcl-trivial-backtrace))
15116 (home-page "https://mmontone.github.io/djula/djula/")
15117 (synopsis "Common Lisp port of the Django templating language")
15118 (description
15119 "This package provides a Common Lisp templating system based on Python
15120Django with a syntax similar to Python Jinja2.")
15121 (license license:expat))))
15122
15123(define-public cl-djula
15124 (sbcl-package->cl-source-package sbcl-djula))
15125
15126(define-public ecl-djula
15127 (sbcl-package->ecl-package sbcl-djula))
15128
15129(define-public sbcl-dns-client
15130 (let ((commit "5e861b2c98e6454895bc6ad4bd2f3e336ff711f5")
15131 (revision "1"))
15132 (package
15133 (name "sbcl-dns-client")
15134 (version (git-version "1.0.0" revision commit))
15135 (source
15136 (origin
15137 (method git-fetch)
15138 (uri (git-reference
15139 (url "https://codeberg.org/shinmera/dns-client")
15140 (commit commit)))
15141 (file-name (git-file-name "cl-dns-client" version))
15142 (sha256
15143 (base32 "1k3w52k9j9sbj4vh76lxk5944lpljs4ir1765inrd3fdspvxl0fl"))))
15144 (build-system asdf-build-system/sbcl)
15145 (arguments
15146 ;; No tests provided.
15147 `(#:tests? #f))
15148 (inputs
15149 (list sbcl-punycode sbcl-documentation-utils sbcl-usocket))
15150 (home-page "https://shinmera.com/docs/dns-client/")
15151 (synopsis "DNS protocol client for Common Lisp")
15152 (description
15153 "This package provides a pure-lisp implementation of a DNS client. It can be
15154used to resolve hostnames, reverse-lookup IP addresses, and fetch other kinds of
15155DNS records.")
15156 (license license:zlib))))
15157
15158(define-public cl-dns-client
15159 (sbcl-package->cl-source-package sbcl-dns-client))
15160
15161(define-public ecl-dns-client
15162 (sbcl-package->ecl-package sbcl-dns-client))
15163
15164(define-public sbcl-do-urlencode
15165 (let ((commit "199846441dad5dfac5478b8dee4b4e20d107af6a")
15166 (revision "1"))
15167 (package
15168 (name "sbcl-do-urlencode")
15169 (version (git-version "0.0.0" revision commit))
15170 (home-page "https://github.com/drdo/do-urlencode")
15171 (source
15172 (origin
15173 (method git-fetch)
15174 (uri (git-reference
15175 (url home-page)
15176 (commit commit)))
15177 (file-name (git-file-name name version))
15178 (sha256
15179 (base32 "0k2i3d4k9cpci235mwfm0c5a4yqfkijr716bjv7cdlpzx88lazm9"))))
15180 (build-system asdf-build-system/sbcl)
15181 (inputs
15182 (list sbcl-alexandria sbcl-babel))
15183 (synopsis "Percent Encoding (aka URL Encoding) Common Lisp library")
15184 (description "This library provides trivial percent encoding and
15185decoding functions for URLs.")
15186 (license license:isc))))
15187
15188(define-public cl-do-urlencode
15189 (sbcl-package->cl-source-package sbcl-do-urlencode))
15190
15191(define-public ecl-do-urlencode
15192 (sbcl-package->ecl-package sbcl-do-urlencode))
15193
15194(define-public sbcl-documentation-utils
15195 (let ((commit "cd5b506c7aa555dea0cc0785f36256348c9e839d")
15196 (revision "1"))
15197 (package
15198 (name "sbcl-documentation-utils")
15199 (version (git-version "1.2.0" revision commit))
15200 (source
15201 (origin
15202 (method git-fetch)
15203 (uri
15204 (git-reference
15205 (url "https://codeberg.org/shinmera/documentation-utils")
15206 (commit commit)))
15207 (file-name (git-file-name name version))
15208 (sha256
15209 (base32
15210 "0x0ckmihz19mcd0lfbd9237ky881ifgrd9hv528qli7xnv0r1kz9"))))
15211 (build-system asdf-build-system/sbcl)
15212 (inputs
15213 (list sbcl-trivial-indent))
15214 (synopsis "Few simple tools to document Common Lisp libraries")
15215 (description
15216 "This is a small library to help you with managing the Common Lisp
15217docstrings for your library.")
15218 (home-page "https://shinmera.com/docs/documentation-utils")
15219 (license license:zlib))))
15220
15221(define-public cl-documentation-utils
15222 (sbcl-package->cl-source-package sbcl-documentation-utils))
15223
15224(define-public ecl-documentation-utils
15225 (sbcl-package->ecl-package sbcl-documentation-utils))
15226
15227(define-public clasp-documentation-utils
15228 (sbcl-package->clasp-package sbcl-documentation-utils))
15229
15230(define-public sbcl-documentation-utils-extensions
15231 (let ((commit "f67f8a05d583174662a594b79356b201c1d9d750"))
15232 (package
15233 (name "sbcl-documentation-utils-extensions")
15234 (version (git-version "0.0.0" "1" commit))
15235 (source
15236 (origin
15237 (method git-fetch)
15238 (uri
15239 (git-reference
15240 (url "https://github.com/sirherrbatka/documentation-utils-extensions/")
15241 (commit commit)))
15242 (file-name (git-file-name name version))
15243 (sha256
15244 (base32
15245 "0pn45c9rbxlnhn5nvhqz6kyv0nlirwxpg4j27niwdq80yxzsn51f"))))
15246 (build-system asdf-build-system/sbcl)
15247 (inputs
15248 (list sbcl-documentation-utils))
15249 (home-page "https://github.com/sirherrbatka/documentation-utils-extensions")
15250 (synopsis "Set of extensions for documentation-utils")
15251 (description
15252 "Use @code{rich-formatter} to format documentation with sections @code{:syntax},
15253@code{:arguments}, @code{:examples}, @code{:description}, @code{:returns},
15254@code{:side-effects}, @code{:thread-safety}, @code{:affected-by},
15255@code{:see-also} and @code{:notes}. Gather unformatted input by using
15256@code{rich-aggregating-formatter} and @code{*DOCUMENTATION*} variable. Find
15257gathered documentation with find-documentation function. Execute code stored
15258in documentation with @code{execute-documentation}. See the examples in the
15259@code{src/documentation.lisp} file. See the @code{documentation-utils} system
15260for more information.")
15261 (license license:expat))))
15262
15263(define-public cl-documentation-utils-extensions
15264 (sbcl-package->cl-source-package sbcl-documentation-utils-extensions))
15265
15266(define-public ecl-documentation-utils-extensions
15267 (sbcl-package->ecl-package sbcl-documentation-utils-extensions))
15268
15269(define-public sbcl-docs-config
15270 (let ((commit "9f8f253b1e1cb451c91f3ec9ab700e99461f0fe8")
15271 (revision "0"))
15272 (package
15273 (name "sbcl-docs-config")
15274 (version (git-version "0.8.0" revision commit))
15275 (source
15276 (origin
15277 (method git-fetch)
15278 (uri (git-reference
15279 (url "https://github.com/40ants/docs-builder")
15280 (commit commit)))
15281 (file-name (git-file-name name version))
15282 (sha256
15283 (base32 "1w1fx5b193s5zifnp22sha8s4vqa15p3kg8fwl60yv90gk4wvwwm"))))
15284 (build-system asdf-build-system/sbcl)
15285 (arguments
15286 (list
15287 ;; We only build docs-config as sbcl-40ants-doc requires this project,
15288 ;; and the other systems here requires sbcl-40ants-doc
15289 #:asd-systems ''("docs-config")))
15290 (inputs
15291 (list sbcl-file-types
15292 sbcl-geneva
15293 sbcl-log4cl
15294 sbcl-macro-html
15295 sbcl-maxpc
15296 sbcl-texp
15297 sbcl-trivial-documentation))
15298 (home-page "https://github.com/40ants/docs-builder")
15299 (synopsis "Generic documentation builder for Common Lisp projects")
15300 (description "Generic documentation builder for Common Lisp projects.")
15301 (license license:unlicense))))
15302
15303(define-public ecl-docs-config
15304 (sbcl-package->ecl-package sbcl-docs-config))
15305
15306(define-public cl-docs-config
15307 (sbcl-package->cl-source-package sbcl-docs-config))
15308
15309(define-public sbcl-doplus
15310 (package
15311 (name "sbcl-doplus")
15312 (version "1.1.0")
15313 (source
15314 (origin
15315 (method git-fetch)
15316 (uri (git-reference
15317 (url "https://github.com/alessiostalla/doplus")
15318 (commit (string-append "v" version))))
15319 (file-name (git-file-name "cl-doplus" version))
15320 (sha256
15321 (base32 "1yvda9psw9m08d3bzdb8a2drvhrnr07a0rhza5ibk30v1dkwfw7c"))))
15322 (build-system asdf-build-system/sbcl)
15323 (native-inputs
15324 (list sbcl-fiveam))
15325 (inputs
15326 (list sbcl-parse-declarations sbcl-fset))
15327 (arguments
15328 '(#:asd-systems '("doplus" "doplus-fset")))
15329 (synopsis "Iteration macro for Common Lisp")
15330 (description "@code{doplus} is an iteration macro for Common Lisp.")
15331 (home-page "https://github.com/alessiostalla/doplus")
15332 (license license:gpl3+)))
15333
15334(define-public cl-doplus
15335 (sbcl-package->cl-source-package sbcl-doplus))
15336
15337(define-public ecl-doplus
15338 (sbcl-package->ecl-package sbcl-doplus))
15339
15340(define-public sbcl-drakma
15341 (package
15342 (name "sbcl-drakma")
15343 (version "2.0.8")
15344 (source
15345 (origin
15346 (method git-fetch)
15347 (uri (git-reference
15348 (url "https://github.com/edicl/drakma")
15349 (commit (string-append "v" version))))
15350 (file-name (git-file-name "cl-drakma" version))
15351 (sha256
15352 (base32
15353 "1wf2zivfvhsh6zvd6wcwfd67bm8s8a1p2fismszc8xb819dqk9yl"))))
15354 (build-system asdf-build-system/sbcl)
15355 (inputs
15356 (list sbcl-puri
15357 sbcl-cl-base64
15358 sbcl-chunga
15359 sbcl-flexi-streams
15360 sbcl-cl-ppcre
15361 sbcl-chipz
15362 sbcl-usocket
15363 sbcl-cl+ssl))
15364 (native-inputs
15365 (list sbcl-fiveam))
15366 (home-page "https://edicl.github.io/drakma/")
15367 (synopsis "HTTP client written in Common Lisp")
15368 (description
15369 "Drakma is a full-featured HTTP client implemented in Common Lisp. It
15370knows how to handle HTTP/1.1 chunking, persistent connections, re-usable
15371sockets, SSL, continuable uploads, file uploads, cookies, and more.")
15372 (license license:bsd-2)))
15373
15374(define-public cl-drakma
15375 (sbcl-package->cl-source-package sbcl-drakma))
15376
15377(define-public ecl-drakma
15378 (sbcl-package->ecl-package sbcl-drakma))
15379
15380(define-public sbcl-draw-cons-tree
15381 (let ((commit "04334f5885a85cd7127db8dda3f6d6686a0438b1")
15382 (revision "0"))
15383 (package
15384 (name "sbcl-draw-cons-tree")
15385 (version (git-version "1.0" revision commit))
15386 ;; https://github.com/quicklisp/quicklisp-projects/issues/2149
15387 (source
15388 (origin
15389 (method git-fetch)
15390 (uri (git-reference
15391 (url "https://github.com/phoe/draw-cons-tree")
15392 (commit commit)))
15393 (file-name (git-file-name "cl-draw-cons-tree" version))
15394 (sha256
15395 (base32 "1523bdkq8a5qn0qp9q7r16w47y6jb0hkfj7hbjfj6mg3xv001s3x"))))
15396 (build-system asdf-build-system/sbcl)
15397 (native-inputs
15398 (list sbcl-fiveam sbcl-split-sequence))
15399 (inputs
15400 (list sbcl-alexandria))
15401 (synopsis "Draw an ascii picture of a cons tree")
15402 (description
15403 "@code{cl-draw-cons-tree} draws a cons tree in ASCII-art style.")
15404 (home-page "https://github.com/phoe/draw-cons-tree/")
15405 (license license:unlicense))))
15406
15407(define-public cl-draw-cons-tree
15408 (sbcl-package->cl-source-package sbcl-draw-cons-tree))
15409
15410(define-public ecl-draw-cons-tree
15411 (sbcl-package->ecl-package sbcl-draw-cons-tree))
15412
15413(define-public sbcl-dufy
15414 (package
15415 (name "sbcl-dufy")
15416 (version "0.4.1")
15417 (source
15418 (origin
15419 (method git-fetch)
15420 (uri (git-reference
15421 (url "https://github.com/privet-kitty/dufy")
15422 (commit (string-append "v" version))))
15423 (file-name (git-file-name name version))
15424 (sha256
15425 (base32 "15vrp1kayhjb5c1vc9x8wlm8rimk73vpa7yc101cf0gsg1fjazl6"))))
15426 (build-system asdf-build-system/sbcl)
15427 (inputs
15428 (list sbcl-alexandria sbcl-cl-ppcre))
15429 (native-inputs
15430 (list sbcl-fiveam sbcl-cl-csv sbcl-parse-float sbcl-lispbuilder-sdl
15431 sbcl-lparallel))
15432 (home-page "https://github.com/privet-kitty/dufy")
15433 (synopsis "Color library for Common Lisp")
15434 (description
15435 "Dufy is a library for exact color manipulation and conversion in various
15436color spaces, which supports many color models.")
15437 (license license:expat)))
15438
15439(define-public cl-dufy
15440 (sbcl-package->cl-source-package sbcl-dufy))
15441
15442(define-public sbcl-duologue
15443 (let ((commit "ea1ada244a81da65f85b548823c9a6d7c9c145e1")
15444 (revision "0"))
15445 (package
15446 (name "sbcl-duologue")
15447 (version (git-version "0.0.0" revision commit))
15448 (source
15449 (origin
15450 (method git-fetch)
15451 (uri (git-reference
15452 (url "https://github.com/mmontone/duologue")
15453 (commit commit)))
15454 (file-name (git-file-name "cl-duologue" version))
15455 (sha256
15456 (base32 "1yg7f27im9h0m6jihcay1p7alfhzm9hafwm5dw5hsyacy8f2cwk2"))))
15457 (build-system asdf-build-system/sbcl)
15458 (native-inputs (list sbcl-stefil))
15459 (inputs
15460 (list sbcl-alexandria
15461 sbcl-anaphora
15462 sbcl-chronicity
15463 sbcl-cl-ansi-text
15464 sbcl-cl-fad
15465 sbcl-clavier
15466 sbcl-drakma))
15467 (home-page "https://github.com/mmontone/duologue/")
15468 (synopsis "High level user interaction library")
15469 (description
15470 "Duologue is high-level interaction library for Common Lisp. It features
15471coloured printing via @code{cl-ansi-text} and readline completion.")
15472 (license (list license:expat
15473 ;; https://github.com/mmontone/duologue/issues/9
15474 license:gpl3+)))))
15475
15476(define-public cl-duologue
15477 (sbcl-package->cl-source-package sbcl-duologue))
15478
15479(define-public ecl-duologue
15480 (sbcl-package->ecl-package sbcl-duologue))
15481
15482(define-public sbcl-dynamic-classes
15483 (let ((commit "ebd7405603f67b16e8f2bc08ce8e2bcfcf439501")
15484 (revision "0"))
15485 (package
15486 (name "sbcl-dynamic-classes")
15487 (version (git-version "1.0.2" revision commit))
15488 (source
15489 (origin
15490 (method git-fetch)
15491 (uri (git-reference
15492 (url "https://github.com/hraban/dynamic-classes")
15493 (commit commit)))
15494 (file-name (git-file-name "dynamic-classes" version))
15495 (sha256
15496 (base32 "1k9lkchwyi2xhygp2v8ifq3kg1l3wcnihhzgr06jrivjxgdqpc1a"))))
15497 (build-system asdf-build-system/sbcl)
15498 (inputs
15499 (list sbcl-metatilities-base))
15500 (arguments
15501 ;; NOTE: (Sharlatan-20210106222900+0000) Circular dependencies and failing
15502 ;; test suites. lift-standard.config contains references to deprecated
15503 ;; functionality.
15504 ;; See https://github.com/hraban/dynamic-classes/issues/2
15505 `(#:tests? #f))
15506 (home-page "https://common-lisp.net/project/dynamic-classes/")
15507 (synopsis "Dynamic class definition for Common Lisp")
15508 (description "Dynamic-Classes helps to ease the prototyping process by
15509bringing dynamism to class definition.")
15510 (license license:expat))))
15511
15512(define-public cl-dynamic-classes
15513 (sbcl-package->cl-source-package sbcl-dynamic-classes))
15514
15515(define-public ecl-dynamic-classes
15516 (sbcl-package->ecl-package sbcl-dynamic-classes))
15517
15518(define-public sbcl-dynamic-mixins
15519 (let ((commit "7cc09bee7d68527f37406671fabe910e8235b746"))
15520 (package
15521 (name "sbcl-dynamic-mixins")
15522 (version (git-version "0.0" "1" commit))
15523 (source
15524 (origin
15525 (method git-fetch)
15526 (uri (git-reference
15527 (url "https://github.com/rpav/dynamic-mixins")
15528 (commit commit)))
15529 (file-name (git-file-name "cl-dynamic-mixins" version))
15530 (sha256
15531 (base32 "00g3s509ysh2jp1qwsgb5bwl6qvhzcljwjz3z4mspbcak51484zj"))))
15532 (build-system asdf-build-system/sbcl)
15533 (inputs
15534 (list sbcl-alexandria
15535 sbcl-closer-mop))
15536 (home-page "https://github.com/rpav/dynamic-mixins")
15537 (synopsis "Simple, dynamic class combination for CLOS")
15538 (description
15539 "Dynamic-mixins is for simple, dynamic class combination; it allows
15540objects to be mixed and updated without manually defining many permutations.")
15541 (license license:bsd-2))))
15542
15543(define-public cl-dynamic-mixins
15544 (sbcl-package->cl-source-package sbcl-dynamic-mixins))
15545
15546(define-public ecl-dynamic-mixins
15547 (sbcl-package->ecl-package sbcl-dynamic-mixins))
15548
15549(define-public sbcl-eager-future2
15550 (let ((commit "54df8effd9d9eccac917509590286b5ac5f9cb30"))
15551 (package
15552 (name "sbcl-eager-future2")
15553 (version (git-version "0.0.0" "1" commit))
15554 (source
15555 (origin
15556 (method git-fetch)
15557 (uri (git-reference
15558 (url "https://gitlab.common-lisp.net/vsedach/eager-future2.git")
15559 (commit commit)))
15560 (file-name (git-file-name name version))
15561 (sha256
15562 (base32
15563 "1qs1bv3m0ki8l5czhsflxcryh22r9d9g9a3a3b0cr0pl954q5rld"))))
15564 (build-system asdf-build-system/sbcl)
15565 (inputs
15566 (list sbcl-bordeaux-threads sbcl-trivial-garbage))
15567 (synopsis "Futures promises synchronization mechanism for Common Lisp")
15568 (description
15569 "Eager Future2 is a Common Lisp library that provides composable
15570concurrency primitives that unify parallel and lazy evaluation, are integrated
15571with the Common Lisp condition system, and have automatic resource
15572management.")
15573 (home-page "https://gitlab.common-lisp.net/vsedach/eager-future2")
15574 (license license:lgpl3+))))
15575
15576(define-public cl-eager-future2
15577 (sbcl-package->cl-source-package sbcl-eager-future2))
15578
15579(define-public ecl-eager-future2
15580 (sbcl-package->ecl-package sbcl-eager-future2))
15581
15582(define-public sbcl-easy-routes
15583 (let ((commit "7832f8bf3d07825b5eb967a2ef04da7c40c18248")
15584 (revision "0"))
15585 (package
15586 (name "sbcl-easy-routes")
15587 (version (git-version "0.0.0" revision commit))
15588 (source
15589 (origin
15590 (method git-fetch)
15591 (uri (git-reference
15592 (url "https://github.com/mmontone/easy-routes")
15593 (commit commit)))
15594 (file-name (git-file-name "cl-easy-routes" version))
15595 (sha256
15596 (base32 "1banw54kz2llzb9h5sm47ckfc9l348m7qncm0npsy0w837rxkyzx"))))
15597 (build-system asdf-build-system/sbcl)
15598 (arguments
15599 '(#:asd-systems '("easy-routes"
15600 "easy-routes+djula"
15601 "easy-routes+errors")))
15602 (native-inputs
15603 (list sbcl-stefil))
15604 (inputs
15605 (list sbcl-djula
15606 sbcl-hunchentoot
15607 sbcl-hunchentoot-errors
15608 sbcl-routes))
15609 (home-page "https://github.com/mmontone/easy-routes/")
15610 (synopsis "Routes handling utility on top of Hunchentoot")
15611 (description
15612 "EASY-ROUTES is yet another routes handling system on top of
15613Hunchentoot. It's just glue code for Restas routing subsystem (CL-ROUTES).
15614
15615It supports:
15616@itemize
15617@item dispatch based on HTTP method
15618@item arguments extraction from the url path
15619@item decorators
15620@item URL generation from route names
15621@end itemize
15622
15623This package provides EASY-ROUTES, EASY-ROUTES+DJULA and EASY-ROUTES+ERRORS
15624systems.")
15625 (license license:expat))))
15626
15627(define-public cl-easy-routes
15628 (sbcl-package->cl-source-package sbcl-easy-routes))
15629
15630(define-public ecl-easy-routes
15631 (sbcl-package->ecl-package sbcl-easy-routes))
15632
15633(define-public sbcl-eazy-gnuplot
15634 (let ((commit "2eb900fe2557e6c066a9851c166e572c25bc0996")
15635 (revision "0"))
15636 (package
15637 (name "sbcl-eazy-gnuplot")
15638 (version (git-version "0.2.0" revision commit))
15639 (source
15640 (origin
15641 (method git-fetch)
15642 (uri (git-reference
15643 (url "https://github.com/guicho271828/eazy-gnuplot")
15644 (commit commit)))
15645 (file-name (git-file-name "cl-eazy-gnuplot" version))
15646 (sha256
15647 (base32 "0mpkx1z52riahydzvqv7kk15p0pv2k7k5a7j65fg571kcxmssx8s"))
15648 (patches (search-patches "sbcl-eazy-gnuplot-skip-path-check.patch"))))
15649 (build-system asdf-build-system/sbcl)
15650 (native-inputs
15651 (list sbcl-fiveam))
15652 (inputs
15653 (list gnuplot
15654 sbcl-alexandria
15655 sbcl-iterate
15656 sbcl-trivia))
15657 (arguments
15658 `(#:phases
15659 (modify-phases %standard-phases
15660 (add-after 'unpack 'fix-paths
15661 (lambda _
15662 (substitute* "src/package.lisp"
15663 (("\"gnuplot\"")
15664 (string-append "\"" (which "gnuplot") "\""))))))))
15665 (home-page "https://github.com/guicho271828/eazy-gnuplot")
15666 (synopsis "Common Lisp interface to gnuplot")
15667 (description
15668 "Eazy-Gnuplot is a Common Lisp interface to gnuplot which eschews CFFI,
15669CLOS and structures. It communicates with @command{gnuplot} via
15670@code{*standard-output*}, and users can plot data by printing to that
15671stream.")
15672 (license license:llgpl))))
15673
15674(define-public cl-eazy-gnuplot
15675 (sbcl-package->cl-source-package sbcl-eazy-gnuplot))
15676
15677(define-public ecl-eazy-gnuplot
15678 (sbcl-package->ecl-package sbcl-eazy-gnuplot))
15679
15680(define-public sbcl-eclector
15681 (let ((commit "28d29445556a0c03178e3daff7a2d8b378fa4340")
15682 (revision "0"))
15683 (package
15684 (name "sbcl-eclector")
15685 (version (git-version "0.10.0" revision commit))
15686 (source
15687 (origin
15688 (method git-fetch)
15689 (uri (git-reference
15690 (url "https://github.com/s-expressionists/Eclector")
15691 (commit commit)))
15692 (file-name (git-file-name "cl-eclector" version))
15693 (sha256
15694 (base32 "06qhll5k0hq652gdzvvhcv4amqg9z7qillnn3z9cm8z9sv1n912v"))))
15695 (build-system asdf-build-system/sbcl)
15696 (native-inputs
15697 (list sbcl-fiveam))
15698 (inputs
15699 (list sbcl-acclimation
15700 sbcl-alexandria
15701 sbcl-closer-mop
15702 sbcl-concrete-syntax-tree))
15703 (arguments
15704 '(#:asd-systems '("eclector"
15705 "eclector-concrete-syntax-tree")))
15706 (home-page "https://s-expressionists.github.io/Eclector/")
15707 (synopsis "Highly customizable, portable Common Lisp reader")
15708 (description
15709 "Eclector is a portable Common Lisp reader that is highly customizable,
15710can recover from errors and can return concrete syntax trees.
15711
15712In contrast to many other reader implementations, eclector can recover from
15713most errors in the input supplied to it and continue reading. This capability
15714is realized as a restart.
15715
15716It can also produce instances of the concrete syntax tree classes provided by
15717the concrete syntax tree library.")
15718 (license license:bsd-2))))
15719
15720(define-public cl-eclector
15721 (sbcl-package->cl-source-package sbcl-eclector))
15722
15723(define-public ecl-eclector
15724 (sbcl-package->ecl-package sbcl-eclector))
15725
15726(define-public sbcl-enchant
15727 (let ((commit "6af162a7bf10541cbcfcfa6513894900329713fa"))
15728 (package
15729 (name "sbcl-enchant")
15730 (version (git-version "0.0.0" "1" commit))
15731 (home-page "https://github.com/tlikonen/cl-enchant")
15732 (source
15733 (origin
15734 (method git-fetch)
15735 (uri (git-reference
15736 (url home-page)
15737 (commit commit)))
15738 (file-name (git-file-name name version))
15739 (sha256
15740 (base32 "19yh5ihirzi1d8xqy1cjqipzd6ly3245cfxa5s9xx496rryz0s01"))))
15741 (build-system asdf-build-system/sbcl)
15742 (inputs
15743 (list enchant
15744 sbcl-cffi))
15745 (arguments
15746 `(#:phases
15747 (modify-phases %standard-phases
15748 (add-after 'unpack 'fix-paths
15749 (lambda* (#:key inputs #:allow-other-keys)
15750 (substitute* "load-enchant.lisp"
15751 (("libenchant")
15752 (string-append
15753 (assoc-ref inputs "enchant") "/lib/libenchant-2"))))))))
15754 (synopsis "Common Lisp interface for the Enchant spell-checker library")
15755 (description
15756 "Enchant is a Common Lisp interface for the Enchant spell-checker
15757library. The Enchant library is a generic spell-checker library which uses
15758other spell-checkers transparently as back-end. The library supports the
15759multiple checkers, including Aspell and Hunspell.")
15760 (license license:public-domain))))
15761
15762(define-public cl-enchant
15763 (sbcl-package->cl-source-package sbcl-enchant))
15764
15765(define-public ecl-enchant
15766 (sbcl-package->ecl-package sbcl-enchant))
15767
15768(define-public sbcl-enhanced-boolean
15769 (package
15770 (name "sbcl-enhanced-boolean")
15771 (version "1.0")
15772 (source
15773 (origin
15774 (method git-fetch)
15775 (uri (git-reference
15776 (url "https://github.com/Hexstream/enhanced-boolean")
15777 (commit (string-append "v" version))))
15778 (file-name (git-file-name "cl-enhanced-boolean" version))
15779 (sha256
15780 (base32 "17l18lz07fk2kg835vs6c3189d230n1rm9vghk3ls4i356gbq0gy"))))
15781 (build-system asdf-build-system/sbcl)
15782 (native-inputs
15783 (list sbcl-parachute))
15784 (home-page "https://www.hexstreamsoft.com/libraries/enhanced-boolean/")
15785 (synopsis "Convert generalized booleans to booleans")
15786 (description
15787 "This package provides a canonical way of converting generalized booleans
15788to booleans.")
15789 (license license:unlicense)))
15790
15791(define-public cl-enhanced-boolean
15792 (sbcl-package->cl-source-package sbcl-enhanced-boolean))
15793
15794(define-public ecl-enhanced-boolean
15795 (sbcl-package->ecl-package sbcl-enhanced-boolean))
15796
15797(define-public clasp-enhanced-boolean
15798 (sbcl-package->clasp-package sbcl-enhanced-boolean))
15799
15800(define-public sbcl-enhanced-defclass
15801 (package
15802 (name "sbcl-enhanced-defclass")
15803 (version "2.1")
15804 (source
15805 (origin
15806 (method git-fetch)
15807 (uri (git-reference
15808 (url "https://github.com/Hexstream/enhanced-defclass")
15809 (commit (string-append "v" version))))
15810 (file-name (git-file-name "cl-enhanced-defclass" version))
15811 (sha256
15812 (base32 "142s5c3pl3x7xdawzsj8pdxiqp4wh6fcajf4la5msvnxgf66d8wg"))))
15813 (build-system asdf-build-system/sbcl)
15814 (native-inputs
15815 (list sbcl-parachute))
15816 (inputs
15817 (list sbcl-cesdi
15818 sbcl-closer-mop
15819 sbcl-compatible-metaclasses
15820 sbcl-enhanced-eval-when
15821 sbcl-object-class
15822 sbcl-shared-preferences
15823 sbcl-simple-guess))
15824 (home-page "https://www.hexstreamsoft.com/libraries/enhanced-defclass/")
15825 (synopsis "Extensible implementation of defclass")
15826 (description
15827 "This package provides an extensible implementation of defclass that can
15828accurately control the expansion according to the metaclass and automatically
15829detect the suitable metaclass by analyzing the @code{defclass} form.")
15830 (license license:unlicense)))
15831
15832(define-public cl-enhanced-defclass
15833 (sbcl-package->cl-source-package sbcl-enhanced-defclass))
15834
15835(define-public ecl-enhanced-defclass
15836 (sbcl-package->ecl-package sbcl-enhanced-defclass))
15837
15838(define-public clasp-enhanced-defclass
15839 (sbcl-package->clasp-package sbcl-enhanced-defclass))
15840
15841(define-public sbcl-enhanced-eval-when
15842 (package
15843 (name "sbcl-enhanced-eval-when")
15844 (version "2.0")
15845 (source
15846 (origin
15847 (method git-fetch)
15848 (uri (git-reference
15849 (url "https://github.com/Hexstream/enhanced-eval-when")
15850 (commit (string-append "v" version))))
15851 (file-name (git-file-name "cl-enhanced-eval-when" version))
15852 (sha256
15853 (base32 "1l7n04pzcwsxvw6m4pcksmlx525ijbgh5n28h56clpvpwlwnzjs3"))))
15854 (build-system asdf-build-system/sbcl)
15855 (native-inputs (list sbcl-parachute))
15856 (home-page "https://www.hexstreamsoft.com/libraries/enhanced-eval-when/")
15857 (synopsis "Shortcuts for EVAL-WHEN")
15858 (description
15859 "This package provides an enhanced @code{EVAL-WHEN} macro that supports a
15860shorthand for @code{(eval-when (:compile-toplevel :load-toplevel :execute) ...)},
15861addressing concerns about verbosity.")
15862 (license license:unlicense)))
15863
15864(define-public cl-enhanced-eval-when
15865 (sbcl-package->cl-source-package sbcl-enhanced-eval-when))
15866
15867(define-public ecl-enhanced-eval-when
15868 (sbcl-package->ecl-package sbcl-enhanced-eval-when))
15869
15870(define-public sbcl-enhanced-find-class
15871 (package
15872 (name "sbcl-enhanced-find-class")
15873 (version "1.0")
15874 (source
15875 (origin
15876 (method git-fetch)
15877 (uri (git-reference
15878 (url "https://github.com/Hexstream/enhanced-find-class")
15879 (commit (string-append "v" version))))
15880 (file-name (git-file-name "cl-enhanced-find-class" version))
15881 (sha256
15882 (base32 "1pf1mxb238zrmvgm9s0456s1x0m317ls23ls1d987riw69y3w9vx"))))
15883 (build-system asdf-build-system/sbcl)
15884 (native-inputs
15885 (list sbcl-parachute))
15886 (inputs
15887 (list sbcl-closer-mop))
15888 (home-page "https://www.hexstreamsoft.com/libraries/enhanced-find-class/")
15889 (synopsis "Canonical way of converting class designators to classes")
15890 (description
15891 "This package provides a canonical way of converting class designators
15892to classes.")
15893 (license license:unlicense)))
15894
15895(define-public cl-enhanced-find-class
15896 (sbcl-package->cl-source-package sbcl-enhanced-find-class))
15897
15898(define-public ecl-enhanced-find-class
15899 (sbcl-package->ecl-package sbcl-enhanced-find-class))
15900
15901(define-public clasp-enhanced-find-class
15902 (sbcl-package->clasp-package sbcl-enhanced-find-class))
15903
15904(define-public sbcl-enhanced-typep
15905 (package
15906 (name "sbcl-enhanced-typep")
15907 (version "1.0")
15908 (source
15909 (origin
15910 (method git-fetch)
15911 (uri (git-reference
15912 (url "https://github.com/Hexstream/enhanced-typep")
15913 (commit (string-append "v" version))))
15914 (file-name (git-file-name "cl-enhanced-typep" version))
15915 (sha256
15916 (base32 "0b22gddkbxnhmi71wa2h51495737lrvsqxnri7g1qdsl1hraml21"))))
15917 (build-system asdf-build-system/sbcl)
15918 (native-inputs
15919 (list sbcl-enhanced-boolean sbcl-parachute))
15920 (home-page "https://www.hexstreamsoft.com/libraries/enhanced-typep/")
15921 (synopsis "Enhanced version of typep")
15922 (description
15923 "This package provides an enhanced version of @code{typep} that is exactly
15924like the one in the Lisp spec, except it can also accept a single type argument,
15925in which case it returns the appropriate closure.")
15926 (license license:unlicense)))
15927
15928(define-public cl-enhanced-typep
15929 (sbcl-package->cl-source-package sbcl-enhanced-typep))
15930
15931(define-public ecl-enhanced-typep
15932 (sbcl-package->ecl-package sbcl-enhanced-typep))
15933
15934(define-public clasp-enhanced-typep
15935 (sbcl-package->clasp-package sbcl-enhanced-typep))
15936
15937(define-public sbcl-envy
15938 (let ((commit "26a7faadc981f2a047daa36f715a44faec5dd00c")
15939 (revision "2"))
15940 (package
15941 (name "sbcl-envy")
15942 (version (git-version "0.1" revision commit))
15943 (home-page "https://github.com/fukamachi/envy")
15944 (source
15945 (origin
15946 (method git-fetch)
15947 (uri (git-reference
15948 (url "https://github.com/fukamachi/envy")
15949 (commit commit)))
15950 (file-name (git-file-name "cl-envy" version))
15951 (sha256
15952 (base32 "1r0wgimd7z57x8cv69sw76w3y5l70hq50882a9nq5l4v64lg55fq"))))
15953 (build-system asdf-build-system/sbcl)
15954 (native-inputs
15955 (list sbcl-osicat sbcl-prove))
15956 (arguments
15957 `(#:asd-systems '("envy-test" "envy")
15958 ;; FIXME: Tests fail with
15959 ;; Component ENVY-ASD::ENVY-TEST not found, required by #<SYSTEM "envy">
15960 ;; https://github.com/fukamachi/envy/issues/10
15961 #:tests? #f))
15962 (synopsis "Common Lisp configuration switcher inspired by Perl's Config::ENV")
15963 (description "Envy is a configuration manager for various applications.
15964Envy uses an environment variable to determine a configuration to use. This
15965can separate configuration system from an implementation.")
15966 (license license:bsd-2))))
15967
15968(define-public cl-envy
15969 (sbcl-package->cl-source-package sbcl-envy))
15970
15971(define-public ecl-envy
15972 (sbcl-package->ecl-package sbcl-envy))
15973
15974(define-public sbcl-eris
15975 (package
15976 (name "sbcl-eris")
15977 (version "0.1")
15978 (source
15979 (origin
15980 (method git-fetch)
15981 (uri (git-reference
15982 (url "https://git.ykonai.net/eris-cl")
15983 (commit version)))
15984 (file-name (git-file-name "cl-eris" version))
15985 (sha256
15986 (base32 "0qm74ld70aic39giamvix88500flv86047a82rx9gkjwaisf58rc"))))
15987 (build-system asdf-build-system/sbcl)
15988 (native-inputs (list sbcl-fiveam))
15989 (inputs
15990 (list sbcl-alexandria
15991 sbcl-bordeaux-threads
15992 sbcl-function-cache
15993 sbcl-ironclad
15994 sbcl-mmap
15995 sbcl-osicat
15996 sbcl-serapeum
15997 sbcl-trivial-gray-streams))
15998 (home-page "https://git.ykonai.net/eris-cl/")
15999 (synopsis "ERIS implementation for Common Lisp")
16000 (description
16001 "This is a Common Lisp implementation of the Encoding for Robust Immutable
16002Storage specification (ERIS).")
16003 (license license:lgpl3+)))
16004
16005(define-public cl-eris
16006 (sbcl-package->cl-source-package sbcl-eris))
16007
16008(define-public sbcl-esrap
16009 (let ((commit "d806138342a6b27327649fd5f36e0fe2e0966867")
16010 (revision "4"))
16011 (package
16012 (name "sbcl-esrap")
16013 (version (git-version "0.18" revision commit))
16014 (source
16015 (origin
16016 (method git-fetch)
16017 (uri (git-reference
16018 (url "https://github.com/scymtym/esrap")
16019 (commit commit)))
16020 (file-name (git-file-name "cl-esrap" version))
16021 (sha256
16022 (base32 "0gs0mfamldhaihnlk0qxg2q4bl8bamq68dif9js9fkl8apg3iykl"))))
16023 (build-system asdf-build-system/sbcl)
16024 (native-inputs
16025 (list sbcl-fiveam))
16026 (inputs
16027 (list sbcl-alexandria sbcl-trivial-with-current-source-form))
16028 (synopsis "Common Lisp packrat parser")
16029 (description
16030 "This is a packrat parser for Common Lisp.
16031In addition to regular Packrat / Parsing Grammar / TDPL features ESRAP supports:
16032
16033@itemize
16034@item dynamic redefinition of nonterminals
16035@item inline grammars
16036@item semantic predicates
16037@item introspective facilities (describing grammars, tracing, setting breaks)
16038@item left-recursive grammars
16039@item functions as terminals
16040@item accurate, customizable parse error reports
16041@end itemize\n")
16042 (home-page "https://scymtym.github.io/esrap/")
16043 (license license:expat))))
16044
16045(define-public cl-esrap
16046 (sbcl-package->cl-source-package sbcl-esrap))
16047
16048(define-public ecl-esrap
16049 (sbcl-package->ecl-package sbcl-esrap))
16050
16051(define-public sbcl-evaled-when
16052 (let ((commit "c59f8ab20b846cac81d4be80d056a3d65676e8eb")
16053 (revision "0"))
16054 (package
16055 (name "sbcl-evaled-when")
16056 (version (git-version "1.0" revision commit))
16057 (source
16058 (origin
16059 (method git-fetch)
16060 (uri (git-reference
16061 (url "https://github.com/Hexstream/evaled-when")
16062 (commit commit)))
16063 (file-name (git-file-name "cl-evaled-when" version))
16064 (sha256
16065 (base32 "07g1a50aairvsj57issb18si5a9r3skpbk05nlixmlj0mva3gkl3"))))
16066 (build-system asdf-build-system/sbcl)
16067 (native-inputs
16068 (list sbcl-enhanced-boolean sbcl-parachute))
16069 (inputs
16070 (list sbcl-trivial-cltl2))
16071 (home-page "https://www.hexstreamsoft.com/libraries/evaled-when/")
16072 (synopsis "Extract and replicate the compile-time side-effects of forms")
16073 (description
16074 "This package provides a way of extracting and replicating the
16075compile-time side-effects of forms.")
16076 (license license:unlicense))))
16077
16078(define-public cl-evaled-when
16079 (sbcl-package->cl-source-package sbcl-evaled-when))
16080
16081(define-public ecl-evaled-when
16082 (sbcl-package->ecl-package sbcl-evaled-when))
16083
16084(define-public clasp-evaled-when
16085 (sbcl-package->clasp-package sbcl-evaled-when))
16086
16087(define-public sbcl-event-emitter
16088 (let ((commit "cb0e15f9de4c617cef3f5d5a22a41e28f9613d0b")
16089 (revision "0"))
16090 (package
16091 (name "sbcl-event-emitter")
16092 (version (git-version "0.0.1" revision commit))
16093 (home-page "https://github.com/fukamachi/event-emitter")
16094 (source
16095 (origin
16096 (method git-fetch)
16097 (uri (git-reference
16098 (url "https://github.com/fukamachi/event-emitter")
16099 (commit commit)))
16100 (file-name (git-file-name "cl-event-emitter" version))
16101 (sha256
16102 (base32 "1i18xzfr6334db9dzj0lsl7wxw1r1l0ixvn883mjbyqw0czp21h6"))))
16103 (build-system asdf-build-system/sbcl)
16104 (native-inputs
16105 (list sbcl-prove))
16106 (synopsis "Event mechanism for Common Lisp objects")
16107 (description "Event Emitter provides an event mechanism like Node.js for
16108Common Lisp objects. It is mostly ported from Node.js @code{events} module.")
16109 (license license:bsd-2))))
16110
16111(define-public cl-event-emitter
16112 (sbcl-package->cl-source-package sbcl-event-emitter))
16113
16114(define-public ecl-event-emitter
16115 (sbcl-package->ecl-package sbcl-event-emitter))
16116
16117(define-public sbcl-eventbus
16118 (let ((commit "92c1fa3846ba0e3cc9e6d7605d765379c8658d84")
16119 (revision "1"))
16120 (package
16121 (name "sbcl-eventbus")
16122 (version (git-version "0.1.0" revision commit))
16123 (source
16124 (origin
16125 (method git-fetch)
16126 (uri (git-reference
16127 (url "https://github.com/noloop/eventbus")
16128 (commit commit)))
16129 (file-name (git-file-name "eventbus" version))
16130 (sha256
16131 (base32 "0slqx3zq6sbz3rg4g79j8y25sx4405y6ff3x6l5v8v4v42m1s0p2"))))
16132 (build-system asdf-build-system/sbcl)
16133 (native-inputs (list sbcl-simplet))
16134 (home-page "https://github.com/noloop/eventbus")
16135 (synopsis "Event bus implementation in Common Lisp")
16136 (description "This package provides a Common Lisp system implementing event bus.")
16137 (license license:gpl3))))
16138
16139(define-public cl-eventbus
16140 (sbcl-package->cl-source-package sbcl-eventbus))
16141
16142(define-public ecl-eventbus
16143 (sbcl-package->ecl-package sbcl-eventbus))
16144
16145(define-public sbcl-exit-hooks
16146 ;; No release.
16147 (let ((commit "78050f4f55c138fcea86a9d720928782021b6012"))
16148 (package
16149 (name "sbcl-exit-hooks")
16150 (version (git-version "0.0.0" "1" commit))
16151 (source
16152 (origin
16153 (method git-fetch)
16154 (uri (git-reference
16155 (url "https://github.com/ailisp/exit-hooks/")
16156 (commit commit)))
16157 (file-name (git-file-name name version))
16158 (sha256
16159 (base32 "00rk0pr2cy3hy6giblh166b7yrg06d5lanipjcqv508gkfb0vi47"))))
16160 (build-system asdf-build-system/sbcl)
16161 (home-page "https://github.com/ailisp/exit-hooks")
16162 (synopsis "Call functions automatically when Common Lisp exits")
16163 (description
16164 "@code{exit-hooks} provides a portable way to automatically call some
16165user-defined function when exiting Common Lisp (both @code{quit} from the REPL
16166or a kill in a shell). Like @code{atexit} in C and Python or Java’s
16167@code{Runtime.addShutdownHook()}. It currently supports SBCL, CCL, ECL, ABCL,
16168Allegro CL, clisp and CMUCL. Before exit-hooks, there was no portable way of
16169doing so and no staightforward way to use an exit hook on ABCL. It can be used
16170for tasks like parmenantly save something when exiting Lisp.")
16171 (license license:bsd-2))))
16172
16173(define-public cl-exit-hooks
16174 (sbcl-package->cl-source-package sbcl-exit-hooks))
16175
16176(define-public ecl-exit-hooks
16177 (sbcl-package->ecl-package sbcl-exit-hooks))
16178
16179(define-public sbcl-exponential-backoff
16180 (let ((commit "8d9e8444d8b3184a524c12ce3449f91613ab714f"))
16181 (package
16182 (name "sbcl-exponential-backoff")
16183 (version (git-version "0" "1" commit))
16184 (source
16185 (origin
16186 (method git-fetch)
16187 (uri (git-reference
16188 (url "https://github.com/death/exponential-backoff")
16189 (commit commit)))
16190 (file-name (git-file-name name version))
16191 (sha256
16192 (base32
16193 "1389hm9hxv85s0125ja4js1bvh8ay4dsy9q1gaynjv27ynik6gmv"))))
16194 (build-system asdf-build-system/sbcl)
16195 (home-page "https://github.com/death/exponential-backoff")
16196 (synopsis "Exponential backoff algorithm in Common Lisp")
16197 (description
16198 "An implementation of the exponential backoff algorithm in Common Lisp.
16199Inspired by the implementation found in Chromium. Read the header file to
16200learn about each of the parameters.")
16201 (license license:expat))))
16202
16203(define-public cl-exponential-backoff
16204 (sbcl-package->cl-source-package sbcl-exponential-backoff))
16205
16206(define-public ecl-exponential-backoff
16207 (sbcl-package->ecl-package sbcl-exponential-backoff))
16208
16209(define-public clasp-exponential-backoff
16210 (sbcl-package->clasp-package sbcl-exponential-backoff))
16211
16212(define-public sbcl-external-program
16213 (let ((commit "5888b8f1fd3953feeeacecbba4384ddda584a749")
16214 (revision "1"))
16215 (package
16216 (name "sbcl-external-program")
16217 (version (git-version "0.0.6" revision commit))
16218 (source
16219 (origin
16220 (method git-fetch)
16221 (uri (git-reference
16222 (url "https://github.com/sellout/external-program")
16223 (commit commit)))
16224 (file-name (git-file-name name version))
16225 (sha256
16226 (base32
16227 "0vww1x3yilb3bjwg6k184vaj4vxyxw4vralhnlm6lk4xac67kc9z"))))
16228 (build-system asdf-build-system/sbcl)
16229 (inputs
16230 (list sbcl-trivial-features))
16231 (native-inputs
16232 (list sbcl-fiveam))
16233 (synopsis "Common Lisp library for running external programs")
16234 (description
16235 "EXTERNAL-PROGRAM enables running programs outside the Lisp
16236process. It is an attempt to make the RUN-PROGRAM functionality in
16237implementations like SBCL and CCL as portable as possible without
16238sacrificing much in the way of power.")
16239 (home-page "https://github.com/sellout/external-program")
16240 (license license:llgpl))))
16241
16242(define-public cl-external-program
16243 (sbcl-package->cl-source-package sbcl-external-program))
16244
16245(define-public ecl-external-program
16246 (sbcl-package->ecl-package sbcl-external-program))
16247
16248(define-public sbcl-f-underscore
16249 (package
16250 (name "sbcl-f-underscore")
16251 (version "0.1")
16252 (source
16253 (origin
16254 (method git-fetch)
16255 (uri (git-reference
16256 (url "https://gitlab.common-lisp.net/bpm/f-underscore")
16257 (commit "7988171194cd259e12469dd7c30000be6ef1b31a")))
16258 (file-name (git-file-name name version))
16259 (sha256
16260 (base32
16261 "0mqvb2rxa08y07lj6smp8gf1ig32802fxq7mw5a283f2nkrinnb5"))))
16262 (build-system asdf-build-system/sbcl)
16263 (synopsis "Lambda shorthand macros")
16264 (description "Convenient macros for common lambda patterns.")
16265 (license license:public-domain)
16266 (home-page "https://gitlab.common-lisp.net/bpm/f-underscore")))
16267
16268(define-public ecl-f-underscore
16269 (sbcl-package->ecl-package sbcl-f-underscore))
16270
16271(define-public cl-f-underscore
16272 (sbcl-package->cl-source-package sbcl-f-underscore))
16273
16274(define-public sbcl-f2cl
16275 (let ((commit "a3dabbe429ff2fe6039a60c2546d287b4157f546")
16276 (revision "1"))
16277 (package
16278 (name "sbcl-f2cl")
16279 (version (git-version "1.0" revision commit))
16280 (source
16281 (origin
16282 (method git-fetch)
16283 (uri (git-reference
16284 (url "https://github.com/rtoy/f2cl")
16285 (commit commit)))
16286 (file-name (git-file-name "cl-f2cl" version))
16287 (sha256
16288 (base32 "1fc54n3g7kah93yj99dkvac4i765sysvcc6pwajhp2srr1np204s"))
16289 (modules '((guix build utils)))
16290 (snippet #~(delete-file-recursively "debian"))))
16291 (build-system asdf-build-system/sbcl)
16292 (arguments
16293 (list #:phases
16294 #~(modify-phases %standard-phases
16295 (add-after 'unpack 'fix-build
16296 (lambda _
16297 (substitute* "src/f2cl2.l"
16298 (("\\(optimize \\(speed 3\\) \\(safety 1\\)\\)\\)" all)
16299 (string-append all ")"))))))))
16300 (synopsis "Fortran 77 to Common Lisp translator")
16301 (description
16302 "F2cl is a Common Lisp library that can convert Fortran 77 code into
16303Common Lisp code.")
16304 (home-page "https://github.com/rtoy/f2cl")
16305 (license license:gpl2))))
16306
16307(define-public cl-f2cl
16308 (sbcl-package->cl-source-package sbcl-f2cl))
16309
16310(define-public ecl-f2cl
16311 (sbcl-package->ecl-package sbcl-f2cl))
16312
16313(define-public clasp-f2cl
16314 (sbcl-package->clasp-package sbcl-f2cl))
16315
16316(define-public sbcl-fakenil
16317 (package
16318 (name "sbcl-fakenil")
16319 (version "1.0")
16320 (source
16321 (origin
16322 (method git-fetch)
16323 (uri (git-reference
16324 (url "https://github.com/Hexstream/fakenil")
16325 (commit (string-append "v" version))))
16326 (file-name (git-file-name "cl-fakenil" version))
16327 (sha256
16328 (base32 "0ipqax3sgcs1dsgxz8d2pmfg324k6l35pn0nz89w5jl02fia61l3"))))
16329 (build-system asdf-build-system/sbcl)
16330 (native-inputs
16331 (list sbcl-parachute))
16332 (home-page "https://www.hexstreamsoft.com/libraries/fakenil/")
16333 (synopsis "Provides a canonical stand-in for NIL")
16334 (description
16335 "This package provides a canonical stand-in for NIL for contexts where
16336NIL means no value.")
16337 (license license:unlicense)))
16338
16339(define-public cl-fakenil
16340 (sbcl-package->cl-source-package sbcl-fakenil))
16341
16342(define-public ecl-fakenil
16343 (sbcl-package->ecl-package sbcl-fakenil))
16344
16345(define-public clasp-fakenil
16346 (sbcl-package->clasp-package sbcl-fakenil))
16347
16348(define-public sbcl-fare-csv
16349 (let ((commit "f877a238dcbf587a89359cccf2128919a94a348c")
16350 (revision "0"))
16351 (package
16352 (name "sbcl-fare-csv")
16353 (version (git-version "1.0.4" revision commit))
16354 (source
16355 (origin
16356 (method git-fetch)
16357 (uri (git-reference
16358 (url "https://gitlab.common-lisp.net/frideau/fare-csv")
16359 (commit commit)))
16360 (file-name (git-file-name "cl-fare-csv" version))
16361 (sha256
16362 (base32 "0k3mf968w94m4yff1k2jh7xlnpsm016qs4448bvklacjrr72vk8x"))))
16363 (build-system asdf-build-system/sbcl)
16364 (native-inputs (list sbcl-hu.dwim.stefil))
16365 (home-page "https://gitlab.common-lisp.net/frideau/fare-csv/")
16366 (synopsis "Robust CSV parser and printer")
16367 (description
16368 "This package provides a robust CSV parser and printer that tries to
16369follow the fine print of de facto standards. It can be configured to choose
16370which standard exactly.")
16371 (license license:expat))))
16372
16373(define-public cl-fare-csv
16374 (sbcl-package->cl-source-package sbcl-fare-csv))
16375
16376(define-public ecl-fare-csv
16377 (sbcl-package->ecl-package sbcl-fare-csv))
16378
16379(define-public clasp-fare-csv
16380 (sbcl-package->clasp-package sbcl-fare-csv))
16381
16382(define-public sbcl-fare-memoization
16383 (let ((commit "8b43ac6bcc0057d1a92052e39b6d34c05c2eb7e4")
16384 (revision "0"))
16385 (package
16386 (name "sbcl-fare-memoization")
16387 (version "1.2.0")
16388 (source
16389 (origin
16390 (method git-fetch)
16391 (uri (git-reference
16392 (url "https://gitlab.common-lisp.net/frideau/fare-memoization")
16393 (commit commit)))
16394 (sha256
16395 (base32 "1blmrb4c9gsxj87scz74z1s8w9d1w2r48fyxj0y1sw3vr6bsbb8f"))
16396 (file-name (git-file-name name commit))))
16397 (build-system asdf-build-system/sbcl)
16398 (native-inputs
16399 (list sbcl-hu.dwim.stefil))
16400 (inputs
16401 (list sbcl-named-readtables))
16402 (home-page "https://gitlab.common-lisp.net/frideau/fare-memoization")
16403 (synopsis "Memoization library for Common Lisp")
16404 (description
16405 "This library builds on the venerable idea of dynamically memoizing functions.
16406A memoized function remembers results from previous computations and returns cached
16407results when called again with the same arguments rather than repeating the computation.")
16408 (license license:expat))))
16409
16410(define-public cl-fare-memoization
16411 (sbcl-package->cl-source-package sbcl-fare-memoization))
16412
16413(define-public ecl-fare-memoization
16414 (sbcl-package->ecl-package sbcl-fare-memoization))
16415
16416(define-public clasp-fare-memoization
16417 (sbcl-package->clasp-package sbcl-fare-memoization))
16418
16419(define-public sbcl-fare-mop
16420 (let ((commit "538aa94590a0354f382eddd9238934763434af30")
16421 (revision "1"))
16422 (package
16423 (name "sbcl-fare-mop")
16424 (version (git-version "1.0.1" revision commit))
16425 (source
16426 (origin
16427 (method git-fetch)
16428 (uri (git-reference
16429 (url "https://github.com/fare/fare-mop")
16430 (commit commit)))
16431 (file-name (git-file-name "fare-mop" version))
16432 (sha256
16433 (base32
16434 "0maxs8392953fhnaa6zwnm2mdbhxjxipp4g4rvypm06ixr6pyv1c"))))
16435 (build-system asdf-build-system/sbcl)
16436 (inputs
16437 (list sbcl-closer-mop sbcl-fare-utils))
16438 (home-page "https://github.com/fare/fare-mop")
16439 (synopsis "General purpose Common Lisp utilities using the MOP")
16440 (description
16441 "FARE-MOP is a small collection of utilities using the MetaObject
16442Protocol. It notably contains a SIMPLE-PRINT-OBJECT method, and
16443a SIMPLE-PRINT-OBJECT-MIXIN mixin that allow you to trivially define
16444PRINT-OBJECT methods that print the interesting slots in your objects, which is
16445great for REPL interaction and debugging.")
16446 (license license:unlicense))))
16447
16448(define-public ecl-fare-mop
16449 (sbcl-package->ecl-package sbcl-fare-mop))
16450
16451(define-public clasp-fare-mop
16452 (sbcl-package->clasp-package sbcl-fare-mop))
16453
16454(define-public cl-fare-mop
16455 (sbcl-package->cl-source-package sbcl-fare-mop))
16456
16457(define-public sbcl-fare-quasiquote
16458 (let ((commit "640d39a0451094071b3e093c97667b3947f43639")
16459 (revision "1"))
16460 (package
16461 (name "sbcl-fare-quasiquote")
16462 (build-system asdf-build-system/sbcl)
16463 (version (git-version "1.0.1" revision commit))
16464 (home-page "https://gitlab.common-lisp.net/frideau/fare-quasiquote")
16465 (source
16466 (origin
16467 (method git-fetch)
16468 (uri (git-reference
16469 (url (string-append "https://gitlab.common-lisp.net/frideau/"
16470 "fare-quasiquote.git"))
16471 (commit commit)))
16472 (file-name (git-file-name name version))
16473 (sha256
16474 (base32 "1g6q11l50kgija9f55lzqpcwvaq0ljiw8v1j265hnyg6nahjwjvg"))))
16475 (inputs
16476 (list sbcl-fare-utils
16477 sbcl-named-readtables
16478 sbcl-optima))
16479 (arguments
16480 ;; XXX: Circular dependencies: Tests depend on subsystems,
16481 ;; which depend on the main systems.
16482 `(#:tests? #f
16483 #:asd-systems '("fare-quasiquote"
16484 "fare-quasiquote-extras")
16485 #:phases
16486 (modify-phases %standard-phases
16487 ;; XXX: Require 1.0.0 version of fare-utils, and we package some
16488 ;; commits after 1.0.0.5, but ASDF fails to read the
16489 ;; "-REVISION-COMMIT" part generated by Guix.
16490 (add-after 'unpack 'patch-requirement
16491 (lambda _
16492 (substitute* "fare-quasiquote.asd"
16493 (("\\(:version \"fare-utils\" \"1.0.0\"\\)")
16494 "\"fare-utils\""))
16495 (substitute* "fare-quasiquote-optima.asd"
16496 (("\\(:version \"optima\" \"1\\.0\"\\)")
16497 "\"optima\""))
16498 #t)))))
16499 (synopsis "Pattern-matching friendly implementation of quasiquote")
16500 (description "The main purpose of this n+2nd reimplementation of
16501quasiquote is enable matching of quasiquoted patterns, using Optima or
16502Trivia.")
16503 (license license:expat))))
16504
16505(define-public cl-fare-quasiquote
16506 (sbcl-package->cl-source-package sbcl-fare-quasiquote))
16507
16508(define-public ecl-fare-quasiquote
16509 (sbcl-package->ecl-package sbcl-fare-quasiquote))
16510
16511(define-public clasp-fare-quasiquote
16512 (sbcl-package->clasp-package sbcl-fare-quasiquote))
16513
16514(define-public sbcl-fare-utils
16515 (let ((commit "66e9c6f1499140bc00ccc22febf2aa528cbb5724")
16516 (revision "1"))
16517 (package
16518 (name "sbcl-fare-utils")
16519 (version (git-version "1.0.0.5" revision commit))
16520 (source
16521 (origin
16522 (method git-fetch)
16523 (uri
16524 (git-reference
16525 (url
16526 "https://gitlab.common-lisp.net/frideau/fare-utils.git")
16527 (commit commit)))
16528 (file-name (git-file-name name version))
16529 (sha256
16530 (base32
16531 "01wsr1aap3jdzhn4hrqjbhsjx6qci9dbd3gh4gayv1p49rbg8aqr"))))
16532 (build-system asdf-build-system/sbcl)
16533 (native-inputs
16534 (list sbcl-hu.dwim.stefil))
16535 (synopsis "Collection of utilities and data structures")
16536 (description
16537 "fare-utils is a small collection of utilities. It contains a lot of
16538basic everyday functions and macros.")
16539 (home-page "https://gitlab.common-lisp.net/frideau/fare-utils")
16540 ;; MIT License
16541 (license license:expat))))
16542
16543(define-public cl-fare-utils
16544 (sbcl-package->cl-source-package sbcl-fare-utils))
16545
16546(define-public ecl-fare-utils
16547 (sbcl-package->ecl-package sbcl-fare-utils))
16548
16549(define-public clasp-fare-utils
16550 (sbcl-package->clasp-package sbcl-fare-utils))
16551
16552(define-public sbcl-fast-generic-functions
16553 (let ((commit "6e9d690ec08dacf9ab4e14aa39a084ef7c7edabb")
16554 (revision "2"))
16555 (package
16556 (name "sbcl-fast-generic-functions")
16557 (version (git-version "0.0.0" revision commit))
16558 (source
16559 (origin
16560 (method git-fetch)
16561 (uri (git-reference
16562 (url "https://github.com/marcoheisig/fast-generic-functions/")
16563 (commit commit)))
16564 (file-name (git-file-name "cl-fast-generic-functions" version))
16565 (sha256
16566 (base32 "1v2pwmhnyfvhx8hrl1zk2lm4k1a3kqglf696hnfx7zrpz9kwk15m"))))
16567 (build-system asdf-build-system/sbcl)
16568 (inputs
16569 (list sbcl-closer-mop
16570 sbcl-sealable-metaobjects
16571 sbcl-trivial-macroexpand-all))
16572 (arguments
16573 ;; Tests fail: https://github.com/marcoheisig/fast-generic-functions/issues/10
16574 '(#:tests? #f))
16575 (home-page "https://github.com/marcoheisig/fast-generic-functions/")
16576 (synopsis "Seal generic functions to boost performance")
16577 (description
16578 "This library introduces @emph{fast generic functions}, i.e. functions
16579that behave just like regular generic functions, except that the can be sealed
16580on certain domains. If the compiler can then statically detect that the
16581arguments to a fast generic function fall within such a domain, it will
16582perform a variety of optimizations.")
16583 (license license:expat))))
16584
16585(define-public cl-fast-generic-functions
16586 (sbcl-package->cl-source-package sbcl-fast-generic-functions))
16587
16588(define-public ecl-fast-generic-functions
16589 (sbcl-package->ecl-package sbcl-fast-generic-functions))
16590
16591(define-public sbcl-fast-http
16592 (let ((commit "502a37715dcb8544cc8528b78143a942de662c5a")
16593 (revision "2"))
16594 (package
16595 (name "sbcl-fast-http")
16596 (version (git-version "0.2.0" revision commit))
16597 (source
16598 (origin
16599 (method git-fetch)
16600 (uri (git-reference
16601 (url "https://github.com/fukamachi/fast-http")
16602 (commit commit)))
16603 (file-name (git-file-name name version))
16604 (sha256
16605 (base32 "0al2g7g219jjljsf7b23pbilpgacxy5as5gs2nqf76b5qni396mi"))))
16606 (build-system asdf-build-system/sbcl)
16607 (arguments
16608 '(#:asd-systems '("fast-http-test" "fast-http")))
16609 (native-inputs
16610 (list sbcl-prove
16611 sbcl-cl-syntax))
16612 (inputs
16613 (list sbcl-alexandria sbcl-proc-parse sbcl-xsubseq
16614 sbcl-smart-buffer sbcl-cl-utilities))
16615 (home-page "https://github.com/fukamachi/fast-http")
16616 (synopsis "HTTP request/response parser for Common Lisp")
16617 (description
16618 "@code{fast-http} is a HTTP request/response protocol parser for Common
16619Lisp.")
16620 ;; Author specified the MIT license
16621 (license license:expat))))
16622
16623(define-public cl-fast-http
16624 (sbcl-package->cl-source-package sbcl-fast-http))
16625
16626(define-public ecl-fast-http
16627 (sbcl-package->ecl-package sbcl-fast-http))
16628
16629(define-public sbcl-fast-io
16630 (let ((commit "a4c5ad600425842e8b6233b1fa22610ffcd874c3")
16631 (revision "3"))
16632 (package
16633 (name "sbcl-fast-io")
16634 (version (git-version "1.0.0" revision commit))
16635 (source
16636 (origin
16637 (method git-fetch)
16638 (uri (git-reference
16639 (url "https://github.com/rpav/fast-io")
16640 (commit commit)))
16641 (file-name (git-file-name "cl-fast-io" version))
16642 (sha256
16643 (base32 "0wh02yagbqahy9z6787jz5ggpagvr18qd0z13wvwq1vjf8xd2530"))))
16644 (build-system asdf-build-system/sbcl)
16645 (native-inputs
16646 (list sbcl-fiveam sbcl-checkl))
16647 (inputs
16648 (list sbcl-alexandria sbcl-trivial-gray-streams sbcl-static-vectors))
16649 (home-page "https://github.com/rpav/fast-io")
16650 (synopsis "Fast octet-vector/stream I/O for Common Lisp")
16651 (description
16652 "Fast-io is about improving performance to octet-vectors and octet
16653streams (though primarily the former, while wrapping the latter).")
16654 ;; Author specifies this as NewBSD which is an alias
16655 (license license:bsd-3))))
16656
16657(define-public cl-fast-io
16658 (sbcl-package->cl-source-package sbcl-fast-io))
16659
16660(define-public ecl-fast-io
16661 (sbcl-package->ecl-package sbcl-fast-io))
16662
16663(define-public sbcl-fast-websocket
16664 (let ((commit "baeeaddf1447015863d708f840ef9dfc5ff5b7a2")
16665 (revision "1"))
16666 (package
16667 (name "sbcl-fast-websocket")
16668 (version (git-version "0.1" revision commit))
16669 (home-page "https://github.com/fukamachi/fast-websocket")
16670 (source
16671 (origin
16672 (method git-fetch)
16673 (uri (git-reference
16674 (url "https://github.com/fukamachi/fast-websocket")
16675 (commit commit)))
16676 (file-name (git-file-name "cl-fast-websoclet" version))
16677 (sha256
16678 (base32 "1j7v00gbkzx4mq2v8y44jm4jx321hgrv9igfw23cvzzlyd3dzp6y"))))
16679 (build-system asdf-build-system/sbcl)
16680 (arguments
16681 ;; Test system must be loaded before, otherwise tests fail with:
16682 ;; Component FAST-WEBSOCKET-ASD::FAST-WEBSOCKET-TEST not found,
16683 ;; required by #<SYSTEM "fast-websocket">.
16684 '(#:asd-systems '("fast-websocket-test"
16685 "fast-websocket")))
16686 (inputs
16687 (list sbcl-fast-io
16688 sbcl-babel
16689 sbcl-alexandria))
16690 (native-inputs
16691 (list sbcl-prove
16692 sbcl-trivial-utf-8))
16693 (synopsis "WebSocket protocol parser for Common Lisp")
16694 (description
16695 "@code{fast-websocket} is an optimized low-level WebSocket protocol
16696parser/composer.")
16697 (license license:bsd-2))))
16698
16699(define-public cl-fast-websocket
16700 (sbcl-package->cl-source-package sbcl-fast-websocket))
16701
16702(define-public ecl-fast-websocket
16703 (sbcl-package->ecl-package sbcl-fast-websocket))
16704
16705(define-public sbcl-feeder
16706 ;; No release.
16707 (let ((commit "b05f517d7729564575cc809e086c262646a94d34")
16708 (revision "1"))
16709 (package
16710 (name "sbcl-feeder")
16711 (version (git-version "1.0.0" revision commit))
16712 (source
16713 (origin
16714 (method git-fetch)
16715 (uri (git-reference
16716 (url "https://codeberg.org/shinmera/feeder")
16717 (commit commit)))
16718 (file-name (git-file-name "feeder" version))
16719 (sha256
16720 (base32 "1dpbzhycg50snl3j01c8dh8gdvhfhz0hnfl54xy55a3wbr3m6rp7"))))
16721 (build-system asdf-build-system/sbcl)
16722 (inputs
16723 (list sbcl-documentation-utils sbcl-local-time sbcl-plump))
16724 (home-page "https://shinmera.com/docs/feeder/")
16725 (synopsis "RSS, Atom and general feed parsing and generating")
16726 (description
16727 "Feeder is a syndication feed library. It presents a general protocol
16728for representation of feed items, as well as a framework to translate these
16729objects from and to external formats. It also implements the RSS 2.0 and Atom
16730formats within this framework.")
16731 (license license:zlib))))
16732
16733(define-public cl-feeder
16734 (sbcl-package->cl-source-package sbcl-feeder))
16735
16736(define-public ecl-feeder
16737 (sbcl-package->ecl-package sbcl-feeder))
16738
16739(define-public clasp-feeder
16740 (sbcl-package->clasp-package sbcl-feeder))
16741
16742(define-public sbcl-ffa
16743 (let ((commit "b7012f51c4c37d1e759ff9cf78cea178504d8e07")
16744 (revision "1"))
16745 (package
16746 (name "sbcl-ffa")
16747 (version (git-version "0.0.0" revision commit))
16748 (source
16749 (origin
16750 (method git-fetch)
16751 (uri (git-reference
16752 (url "https://github.com/tpapp/ffa")
16753 (commit commit)))
16754 (file-name (git-file-name "cl-ffa" version))
16755 (sha256
16756 (base32 "0l7kqcjp3sn1129hpwq6zhjqc0ydx9gc53z7k13i38x3z1asap7a"))))
16757 (build-system asdf-build-system/sbcl)
16758 (inputs
16759 (list sbcl-cffi sbcl-cl-utilities sbcl-iterate sbcl-metabang-bind))
16760 (synopsis "Foreign friendly arrays for Common Lisp")
16761 (description
16762 "This package provides a macro that allows foreign functions to access
16763the contents of the array at a given pointer, using the best available method
16764given the Common Lisp implementation.")
16765 (home-page "https://cliki.net/ffa")
16766 (license license:llgpl))))
16767
16768(define-public cl-ffa
16769 (sbcl-package->cl-source-package sbcl-ffa))
16770
16771(define-public ecl-ffa
16772 (sbcl-package->ecl-package sbcl-ffa))
16773
16774(define-public sbcl-file-attributes
16775 (let ((commit "bbde396438f37d676de9775239115410bec4da2d"))
16776 (package
16777 (name "sbcl-file-attributes")
16778 (version (git-version "1.0.0" "2" commit))
16779 (source
16780 (origin
16781 (method git-fetch)
16782 (uri (git-reference
16783 (url "https://codeberg.org/shinmera/file-attributes/")
16784 (commit commit)))
16785 (file-name (git-file-name name version))
16786 (sha256
16787 (base32 "0n8q818ry2shggjfhp8gjby8v5mla9pg97c5g19pcglpnwim7a74"))))
16788 (build-system asdf-build-system/sbcl)
16789 (inputs
16790 (list sbcl-cffi sbcl-documentation-utils sbcl-trivial-features))
16791 (home-page "https://shinmera.com/docs/file-attributes/")
16792 (synopsis "Access to common file attributes in Common Lisp")
16793 (description
16794 "This is a small OS portability library to retrieve and set file
16795attributes not supported by the Common Lisp standard functions.")
16796 (license license:zlib))))
16797
16798(define-public ecl-file-attributes
16799 (sbcl-package->ecl-package sbcl-file-attributes))
16800
16801(define-public cl-file-attributes
16802 (sbcl-package->cl-source-package sbcl-file-attributes))
16803
16804(define-public sbcl-file-finder
16805 (let ((commit "ec392d775eee33dbdea0d6532d20952438991f99")
16806 (revision "0"))
16807 (package
16808 (name "sbcl-file-finder")
16809 (version (git-version "0.2.0" revision commit))
16810 (source
16811 (origin
16812 (method git-fetch)
16813 (uri (git-reference
16814 (url "https://github.com/lisp-maintainers/file-finder")
16815 (commit commit)))
16816 (file-name (git-file-name "cl-file-finder" version))
16817 (sha256
16818 (base32 "1mpasi7n0ysggx0inxdbzlwavh08m0jxvv220ammvcyn3xybbchj"))))
16819 (build-system asdf-build-system/sbcl)
16820 (inputs
16821 (list sbcl-alexandria
16822 sbcl-cl-str
16823 sbcl-file-attributes
16824 sbcl-local-time
16825 sbcl-named-readtables
16826 sbcl-serapeum))
16827 (synopsis "Enable rapid file search, inspection and manipulation")
16828 (description
16829 "This library provides modern file handling for Common Lisp, which
16830avoids many of the pitfalls of pathnames.")
16831 (home-page "https://github.com/lisp-maintainers/file-finder")
16832 (license license:gpl3+))))
16833
16834(define-public ecl-file-finder
16835 (sbcl-package->ecl-package sbcl-file-finder))
16836
16837(define-public cl-file-finder
16838 (sbcl-package->cl-source-package sbcl-file-finder))
16839
16840(define-public sbcl-file-notify
16841 (let ((commit "f12dc2f2aae5fee13355cd93a8cae0c4c412b76d")
16842 (revision "0"))
16843 (package
16844 (name "sbcl-file-notify")
16845 (version (git-version "1.0.0" revision commit))
16846 (source
16847 (origin
16848 (method git-fetch)
16849 (uri (git-reference
16850 (url "https://codeberg.org/shinmera/file-notify")
16851 (commit commit)))
16852 (file-name (git-file-name "cl-file-notify" version))
16853 (sha256
16854 (base32 "0788d98rqm1krl8nbfh8qshvyf6g336i9bqrdhkx06cfvbh0wcny"))))
16855 (build-system asdf-build-system/sbcl)
16856 (inputs
16857 (list sbcl-cffi
16858 sbcl-documentation-utils
16859 sbcl-trivial-features))
16860 (home-page "https://codeberg.org/shinmera/file-notify")
16861 (synopsis "Get notifications for file accesses and changes")
16862 (description
16863 "File-Notify is a Common Lisp library for getting notifications for file
16864accesses and changes.")
16865 (license license:zlib))))
16866
16867(define-public cl-file-notify
16868 (sbcl-package->cl-source-package sbcl-file-notify))
16869
16870(define-public ecl-file-notify
16871 (sbcl-package->ecl-package sbcl-file-notify))
16872
16873(define-public sbcl-file-select
16874 (let ((commit "ef25f6d7c78ed9e0b62119979af8c4b5b0f8c774")
16875 (revision "1"))
16876 (package
16877 (name "sbcl-file-select")
16878 (version (git-version "1.0.0" revision commit))
16879 (source
16880 (origin
16881 (method git-fetch)
16882 (uri (git-reference
16883 (url "https://codeberg.org/shinmera/file-select")
16884 (commit commit)))
16885 (file-name (git-file-name "file-select" version))
16886 (sha256
16887 (base32 "1qh32ymljw5c98zzbvjfq6jzwlzs4qxi8gh4gw8pixir6y1inxaa"))))
16888 (build-system asdf-build-system/sbcl)
16889 (inputs
16890 (list sbcl-cffi
16891 sbcl-documentation-utils
16892 sbcl-float-features))
16893 (home-page "https://shinmera.com/docs/file-select/")
16894 (synopsis "Invoke the native file selection dialogs to open or save files")
16895 (description
16896 "This library allows you to open native file dialogs to open and save
16897files. This is useful if you have an application that's primarily text based
16898and would like a more convenient file selection utility, or if you are working
16899with a UI toolkit that does not offer a way to access the native file dialogs
16900directly.")
16901 (license license:zlib))))
16902
16903(define-public cl-file-select
16904 (sbcl-package->cl-source-package sbcl-file-select))
16905
16906(define-public ecl-file-select
16907 (sbcl-package->ecl-package sbcl-file-select))
16908
16909(define-public sbcl-file-types
16910 (let ((commit "6f5676b2781f617b6009ae4ce001496ea43b6fac")
16911 (revision "0"))
16912 (package
16913 (name "sbcl-file-types")
16914 (version (git-version "0" revision commit))
16915 (source
16916 (origin
16917 (method git-fetch)
16918 (uri (git-reference
16919 (url "https://github.com/eugeneia/file-types")
16920 (commit commit)))
16921 (file-name (git-file-name name version))
16922 (sha256
16923 (base32 "09l67gzjwx7kx237grm709dsj9rkmmm8s3ya6irmcw8nh587inbs"))))
16924 (build-system asdf-build-system/sbcl)
16925 (home-page "https://github.com/eugeneia/file-types")
16926 (synopsis "Simple scheme to classify file types in a hierarchical
16927fashion")
16928 (description "Simple scheme to classify file types in a hierarchical
16929fashion.")
16930 (license license:agpl1))))
16931
16932(define-public ecl-file-types
16933 (sbcl-package->ecl-package sbcl-file-types))
16934
16935(define-public cl-file-types
16936 (sbcl-package->cl-source-package sbcl-file-types))
16937
16938(define-public sbcl-filesystem-utils
16939 (let ((commit "a07e8b61b89d4b46408fb9294d9b8130e8c8a02e")
16940 (revision "2"))
16941 (package
16942 (name "sbcl-filesystem-utils")
16943 (version (git-version "1.0.0" revision commit))
16944 (source
16945 (origin
16946 (method git-fetch)
16947 (uri (git-reference
16948 (url "https://codeberg.org/shinmera/filesystem-utils/")
16949 (commit commit)))
16950 (file-name (git-file-name "cl-filesystem-utils" version))
16951 (sha256
16952 (base32 "1zv2i2gndnbs7hz3bgkkq1qfx604wbndpc7qqlqvg23fssn9w59f"))))
16953 (build-system asdf-build-system/sbcl)
16954 (inputs
16955 (list sbcl-documentation-utils
16956 sbcl-pathname-utils
16957 sbcl-trivial-features))
16958 (home-page "https://shinmera.com/docs/filesystem-utils/")
16959 (synopsis "Collection of utilities for filesystem interaction")
16960 (description
16961 "This is an extension library to @code{pathname-utils}, to allow
16962dealing with common problems with filesystems, such as listing files, probing
16963file types, determining default directories, etc.")
16964 (license license:zlib))))
16965
16966(define-public cl-filesystem-utils
16967 (sbcl-package->cl-source-package sbcl-filesystem-utils))
16968
16969(define-public ecl-filesystem-utils
16970 (sbcl-package->ecl-package sbcl-filesystem-utils))
16971
16972(define-public sbcl-filtered-functions
16973 (let ((commit "130f69e7b9e1051bf569ef63364b09a3873f0ced"))
16974 (package
16975 (name "sbcl-filtered-functions")
16976 (version (git-version "0.2.0" "1" commit))
16977 (source
16978 (origin
16979 (method git-fetch)
16980 (uri (git-reference
16981 (url "https://github.com/pcostanza/filtered-functions")
16982 (commit commit)))
16983 (file-name (git-file-name "cl-filtered-functions" version))
16984 (sha256
16985 (base32 "0m13k8pl0gfll8ss83c0z3gax7zrrw2i4s26451jfbka1xr4fgy9"))))
16986 (build-system asdf-build-system/sbcl)
16987 (inputs
16988 (list sbcl-closer-mop))
16989 (home-page "https://github.com/pcostanza/filtered-functions")
16990 (synopsis "Extension of CLOS generic function invocation")
16991 (description
16992 "Filtered functions provide an extension of CLOS generic function
16993invocation that add a simple preprocessing step before the actual method
16994dispatch is performed and thus enable the use of arbitrary predicates for
16995selecting and applying methods. See
16996@url{http://www.p-cos.net/documents/filtered-dispatch.pdf} for a paper that
16997introduces and explains filtered functions in detail.")
16998 (license license:expat))))
16999
17000(define-public cl-filtered-functions
17001 (sbcl-package->cl-source-package sbcl-filtered-functions))
17002
17003(define-public ecl-filtered-functions
17004 (sbcl-package->ecl-package sbcl-filtered-functions))
17005
17006(define-public sbcl-find-port
17007 (let ((commit "811727f88d7f000623bf92fdb0e64678a7112a28")
17008 (revision "2"))
17009 (package
17010 (name "sbcl-find-port")
17011 (build-system asdf-build-system/sbcl)
17012 (version (git-version "0.1" revision commit))
17013 (home-page "https://github.com/eudoxia0/find-port")
17014 (source
17015 (origin
17016 (method git-fetch)
17017 (uri (git-reference
17018 (url home-page)
17019 (commit commit)))
17020 (file-name (git-file-name name version))
17021 (sha256
17022 (base32
17023 "1fw6q7d2bxxb7fqk548ylq8mx4sz95yc0q5h0rwd0mnqjrbwbari"))))
17024 (native-inputs
17025 (list sbcl-fiveam))
17026 (inputs
17027 (list sbcl-usocket))
17028 (synopsis "Find open ports programmatically in Common Lisp")
17029 (description "This is a small Common Lisp library that finds an open
17030port within a range.")
17031 (license license:expat))))
17032
17033(define-public cl-find-port
17034 (sbcl-package->cl-source-package sbcl-find-port))
17035
17036(define-public ecl-find-port
17037 (sbcl-package->ecl-package sbcl-find-port))
17038
17039(define-public sbcl-flamegraph
17040 (let ((commit "0b78cae83b1f5e71941c8804a6c1d945a11e4036")
17041 (revision "1"))
17042 (package
17043 (name "sbcl-flamegraph")
17044 (version (git-version "0.0.0" revision commit))
17045 (source
17046 (origin
17047 (method git-fetch)
17048 (uri (git-reference
17049 (url "https://github.com/40ants/cl-flamegraph")
17050 (commit commit)))
17051 (file-name (git-file-name "cl-flamegraph" version))
17052 (sha256
17053 (base32 "1aj7hhvav9j9c66ssy11ry3p6xqb912yafi91g6sin6pdx84c2lw"))))
17054 (build-system asdf-build-system/sbcl)
17055 (inputs
17056 (list sbcl-alexandria))
17057 (home-page "https://github.com/40ants/cl-flamegraph")
17058 (synopsis "Generate flamegraphs of Common Lisp code")
17059 (description
17060 "@code{cl-flamegraph} is a wrapper around SBCL's statistical profiler.
17061It saves stack traces of profiled code in a form suitable for processing by
17062the @command{flamegraph.pl} script, which is available in the Guix package
17063@code{flamegraph}.")
17064 (license license:bsd-3))))
17065
17066(define-public cl-flamegraph
17067 (sbcl-package->cl-source-package sbcl-flamegraph))
17068
17069(define-public sbcl-flare
17070 (let ((commit "4f9f17a4fc5b368c2a1988b9a20288695b8d8c48")
17071 (revision "1"))
17072 (package
17073 (name "sbcl-flare")
17074 (version (git-version "1.1.0" revision commit))
17075 (source
17076 (origin
17077 (method git-fetch)
17078 (uri (git-reference
17079 (url "https://codeberg.org/shinmera/flare")
17080 (commit commit)))
17081 (file-name (git-file-name "flare" version))
17082 (sha256
17083 (base32 "00nm3sjngbflj2gd5q0xs2m136w4kix6krww23nk64pkkyq2fs86"))))
17084 (build-system asdf-build-system/sbcl)
17085 (inputs
17086 (list sbcl-3d-vectors
17087 sbcl-array-utils
17088 sbcl-documentation-utils
17089 sbcl-for
17090 sbcl-lambda-fiddle
17091 sbcl-trivial-garbage))
17092 (home-page "https://shinmera.com/docs/flare/")
17093 (synopsis "Easy particle systems with fine grained control")
17094 (description
17095 "FLARE is a library designed to allow quick and precise particle effect
17096creations. It does not concern itself with displaying and only with the
17097management and movement of particles. As such, it can easily be integrated into
17098any existing or future application.")
17099 (license license:zlib))))
17100
17101(define-public cl-flare
17102 (sbcl-package->cl-source-package sbcl-flare))
17103
17104(define-public ecl-flare
17105 (sbcl-package->ecl-package sbcl-flare))
17106
17107(define-public sbcl-flexi-streams
17108 (let ((commit "4951d575b8f73270802a03cc5812b8310409caa9")
17109 (revision "1"))
17110 (package
17111 (name "sbcl-flexi-streams")
17112 (version (git-version "1.0.20" revision commit))
17113 (source
17114 (origin
17115 (method git-fetch)
17116 (uri (git-reference
17117 (url "https://github.com/edicl/flexi-streams")
17118 (commit commit)))
17119 (file-name (git-file-name "cl-flexi-streams" version))
17120 (sha256
17121 (base32 "1bk224ryfiwsmnmq2gdfv9gld85z2rvnlx7fxcl2k122vc344akh"))))
17122 (build-system asdf-build-system/sbcl)
17123 (arguments
17124 (list #:phases
17125 #~(modify-phases %standard-phases
17126 (add-after 'unpack 'make-git-checkout-writable
17127 (lambda _
17128 (for-each make-file-writable (find-files ".")))))))
17129 (inputs
17130 (list sbcl-trivial-gray-streams))
17131 (synopsis "Implementation of virtual bivalent streams for Common Lisp")
17132 (description "Flexi-streams is an implementation of \"virtual\" bivalent
17133streams that can be layered atop real binary or bivalent streams and that can
17134be used to read and write character data in various single- or multi-octet
17135encodings which can be changed on the fly. It also supplies in-memory binary
17136streams which are similar to string streams.")
17137 (home-page "http://weitz.de/flexi-streams/")
17138 (license license:bsd-3))))
17139
17140(define-public cl-flexi-streams
17141 (sbcl-package->cl-source-package sbcl-flexi-streams))
17142
17143(define-public ecl-flexi-streams
17144 (sbcl-package->ecl-package sbcl-flexi-streams))
17145
17146(define-public clasp-flexi-streams
17147 (package
17148 (inherit (sbcl-package->clasp-package sbcl-flexi-streams))
17149 (arguments
17150 ;; TODO: https://github.com/edicl/flexi-streams/issues/51
17151 '(#:tests? #f))))
17152
17153(define-public sbcl-flexichain
17154 ;; There are no releases.
17155 (let ((commit "9af644a6323f303a936a391b956babcbfe7b0c67")
17156 (revision "2"))
17157 (package
17158 (name "sbcl-flexichain")
17159 (version (git-version "1.5.1" revision commit))
17160 (source
17161 (origin
17162 (method git-fetch)
17163 (uri (git-reference
17164 (url "https://github.com/robert-strandh/Flexichain")
17165 (commit commit)))
17166 (file-name (git-file-name "cl-flexichain" version))
17167 (sha256
17168 (base32 "1ivkffnkc1iqmpl1p1rgyfbbgjmjcid4iszvdql1jjz324lq94g6"))))
17169 (build-system asdf-build-system/sbcl)
17170 (inputs
17171 (list sbcl-trivial-garbage))
17172 (home-page "https://github.com/robert-strandh/Flexichain.git")
17173 (synopsis "Dynamically add elements to or remove them from sequences")
17174 (description
17175 "This package provides an implementation of the flexichain protocol,
17176allowing client code to dynamically add elements to, and delete elements from
17177a sequence (or chain) of such elements.")
17178 (license license:lgpl2.1+))))
17179
17180(define-public ecl-flexichain
17181 (sbcl-package->ecl-package sbcl-flexichain))
17182
17183(define-public cl-flexichain
17184 (sbcl-package->cl-source-package sbcl-flexichain))
17185
17186(define-public sbcl-float-features
17187 (let ((commit "daecae28000ea0eac49065a86c7eed727fe450db")
17188 (revision "3"))
17189 (package
17190 (name "sbcl-float-features")
17191 (version (git-version "1.0.0" revision commit))
17192 (source
17193 (origin
17194 (method git-fetch)
17195 (uri (git-reference
17196 (url "https://codeberg.org/shinmera/float-features")
17197 (commit commit)))
17198 (file-name (git-file-name "float-features" version))
17199 (sha256
17200 (base32 "0749spr7b6scclj49jhpz9pzhzr8lka0krp0x71b0lnyx0x6a6f4"))))
17201 (build-system asdf-build-system/sbcl)
17202 (native-inputs (list sbcl-parachute))
17203 (inputs
17204 (list sbcl-documentation-utils
17205 sbcl-trivial-features))
17206 (synopsis "Common Lisp IEEE float portability library")
17207 (description
17208 "Portability library for IEEE float features that are not
17209covered by the Common Lisp standard.")
17210 (home-page "https://codeberg.org/shinmera/float-features")
17211 (license license:zlib))))
17212
17213(define-public cl-float-features
17214 (sbcl-package->cl-source-package sbcl-float-features))
17215
17216(define-public ecl-float-features
17217 (sbcl-package->ecl-package sbcl-float-features))
17218
17219(define-public clasp-float-features
17220 (sbcl-package->clasp-package sbcl-float-features))
17221
17222(define-public sbcl-flow
17223 (let ((commit "6d925af009cdfe033650d7048197a5e6ee937d15")
17224 (revision "1"))
17225 (package
17226 (name "sbcl-flow")
17227 (version (git-version "1.0.0" revision commit))
17228 (source
17229 (origin
17230 (method git-fetch)
17231 (uri (git-reference
17232 (url "https://codeberg.org/shinmera/flow")
17233 (commit commit)))
17234 (file-name (git-file-name "flow" version))
17235 (sha256
17236 (base32 "0ysw1kwiqlf8kzllhnz8v3q40dmvwf83fzq8bfkbmwy5hfjh3pxp"))))
17237 (build-system asdf-build-system/sbcl)
17238 ;; FIXME: (Sharlatan-20210527T203118+0100): FLOW-VISUALIZER requires
17239 ;; COMMONQT which is not packed yet and required tweaks with QT. Remove
17240 ;; this when it's ready.
17241 (inputs
17242 (list sbcl-closer-mop
17243 sbcl-documentation-utils))
17244 (home-page "https://shinmera.com/docs/flow/")
17245 (synopsis "Tools for the representation of graphs and flowcharts")
17246 (description
17247 "FLOW is a flowchart graph library. Unlike other graphing libraries,
17248this one focuses on nodes in a graph having distinct @code{ports} through which
17249connections to other nodes are formed. This helps in many concrete scenarios
17250where it is important to distinguish not only which nodes are connected, but
17251also how they are connected to each other.
17252
17253Particularly, a lot of data flow and exchange problems can be reduced to such
17254a @code{flowchart}. For example, an audio processing library may present its
17255pipeline as a flowchart of segments that communicate with each other through
17256audio sample buffers. Flow gives a convenient view onto this kind of problem,
17257and even allows the generic visualisation of graphs in this format.")
17258 (license license:zlib))))
17259
17260(define-public cl-flow
17261 (sbcl-package->cl-source-package sbcl-flow))
17262
17263(define-public ecl-flow
17264 (sbcl-package->ecl-package sbcl-flow))
17265
17266(define-public clasp-flow
17267 (sbcl-package->clasp-package sbcl-flow))
17268
17269(define-public sbcl-flute
17270 (let ((commit "90ebcd6e82f637f49b6de7d625ccc51ec4c92900")
17271 (revision "1"))
17272 (package
17273 (name "sbcl-flute")
17274 (version (git-version "0.2-dev" revision commit))
17275 (source
17276 (origin
17277 (method git-fetch)
17278 (uri (git-reference
17279 (url "https://github.com/ailisp/flute")
17280 (commit commit)))
17281 (file-name (git-file-name "cl-flute" version))
17282 (sha256
17283 (base32 "0q8jhp040cvpppyn820mm6a550yfxyr1lar298x13c42mm807f4f"))))
17284 (build-system asdf-build-system/sbcl)
17285 (inputs
17286 (list sbcl-assoc-utils sbcl-let-over-lambda))
17287 (native-inputs
17288 (list sbcl-fiveam))
17289 (home-page "https://github.com/ailisp/flute")
17290 (synopsis "HTML5 generation library in Common Lisp")
17291 (description
17292 "Flute is an easily composable HTML5 generation library in Common
17293Lisp.")
17294 (license license:expat))))
17295
17296(define-public cl-flute
17297 (sbcl-package->cl-source-package sbcl-flute))
17298
17299(define-public ecl-flute
17300 (sbcl-package->ecl-package sbcl-flute))
17301
17302(define-public sbcl-fmt
17303 (let ((commit "91a29ec31e317bd6bd67d693acebc1d50bf0ac5e")
17304 (revision "0"))
17305 (package
17306 (name "sbcl-fmt")
17307 (version (git-version "0.0.0" revision commit))
17308 (source
17309 (origin
17310 (method git-fetch)
17311 (uri (git-reference
17312 (url "https://github.com/mmontone/fmt")
17313 (commit commit)))
17314 (file-name (git-file-name name version))
17315 (sha256
17316 (base32 "078y5yig5fw0jcsjjabaq7dlyxsd10w5k80ywx6gbm0j88al3fzp"))))
17317 (build-system asdf-build-system/sbcl)
17318 (native-inputs (list sbcl-fiveam sbcl-local-time))
17319 (inputs (list sbcl-alexandria))
17320 (home-page "https://github.com/mmontone/fmt")
17321 (synopsis "Extensible text formatting facility for Common Lisp using
17322s-expressions")
17323 (description
17324 "@code{fmt} provides an alternative to the Common Lisp @code{format}
17325function by utilizing s-expressions for formatting directives instead
17326of control strings.")
17327 (license license:expat))))
17328
17329(define-public cl-fmt
17330 (sbcl-package->cl-source-package sbcl-fmt))
17331
17332;; TODO: Not reproducible.
17333;; (define-public ecl-fmt
17334;; (sbcl-package->ecl-package sbcl-fmt))
17335
17336(define-public sbcl-fn
17337 (let ((commit "8d8587d03a7b5e26b306fc90018e385d9e5acc2c")
17338 (revision "1"))
17339 (package
17340 (name "sbcl-fn")
17341 (version (git-version "0.0.0" revision commit))
17342 (source
17343 (origin
17344 (method git-fetch)
17345 (uri (git-reference
17346 (url "https://github.com/cbaggers/fn")
17347 (commit commit)))
17348 (file-name (git-file-name "fn" version))
17349 (sha256
17350 (base32 "0yyp9z6iwx476whz0n1rpjznjyqqhlylhzwpgg5xx92lxmskl752"))))
17351 (build-system asdf-build-system/sbcl)
17352 (inputs
17353 (list sbcl-named-readtables))
17354 (home-page "https://github.com/cbaggers/fn")
17355 (synopsis "Macros for lambda brevity")
17356 (description
17357 "This is a Common Lisp library providing lambda shorthand macros aiming
17358to be used in cases where the word @emph{lambda} and the arguments are longer
17359than the body of the lambda.")
17360 (license license:public-domain))))
17361
17362(define-public cl-fn
17363 (sbcl-package->cl-source-package sbcl-fn))
17364
17365(define-public ecl-fn
17366 (sbcl-package->ecl-package sbcl-fn))
17367
17368(define-public clasp-fn
17369 (sbcl-package->clasp-package sbcl-fn))
17370
17371(define-public sbcl-fof
17372 (let ((commit "522879e7da110ecf2e841998b197b34062c54b29")
17373 (revision "1"))
17374 (package
17375 (name "sbcl-fof")
17376 (version (git-version "0.2.0" revision commit))
17377 (source
17378 (origin
17379 (method git-fetch)
17380 (uri (git-reference
17381 (url "https://gitlab.com/ambrevar/fof")
17382 (commit commit)))
17383 (file-name (git-file-name "cl-fof" version))
17384 (sha256
17385 (base32 "0ipy51q2fw03xk9rqcyzbq2b9c32npc1gl3c53rdjywpak7zwwg6"))))
17386 (build-system asdf-build-system/sbcl)
17387 (arguments
17388 `(#:asd-systems '("fof" "fof/mf")
17389 #:phases
17390 (modify-phases %standard-phases
17391 (add-after 'unpack 'fix-paths
17392 (lambda* (#:key inputs #:allow-other-keys)
17393 (substitute* "ffprobe.lisp"
17394 (("\\(defvar \\*ffprobe-command\\* \"ffprobe\"\\)")
17395 (format #f "(defvar *ffprobe-command* \"~a/bin/ffprobe\")"
17396 (assoc-ref inputs "ffmpeg")))))))))
17397 (inputs
17398 (list sbcl-alexandria
17399 sbcl-cl-json
17400 sbcl-cl-str
17401 sbcl-hu.dwim.defclass-star
17402 sbcl-local-time
17403 sbcl-magicffi
17404 sbcl-named-readtables
17405 sbcl-osicat
17406 sbcl-serapeum
17407 sbcl-trivia
17408 sbcl-trivial-package-local-nicknames
17409 ;; Non-CL deps:
17410 ffmpeg))
17411 (home-page "https://gitlab.com/ambrevar/fof")
17412 (synopsis "File object finder library for Common Lisp")
17413 (description
17414 "This library enable rapid file search, inspection and manipulation
17415straight from the REPL.
17416It aims at replacing Unix tools such as @code{find} or @code{du}.
17417It also offers a replacement to the @code{pathname} Common Lisp API.
17418Slot writers which commit changes to disk, e.g. permissions, modification
17419time, etc.")
17420 (license license:gpl3+))))
17421
17422(define-public cl-fof
17423 (sbcl-package->cl-source-package sbcl-fof))
17424
17425(define-public ecl-fof
17426 (sbcl-package->ecl-package sbcl-fof))
17427
17428(define-public sbcl-font-discovery
17429 (let ((commit "5101ca79151055f3ec9839aae73b8af42b884528")
17430 (revision "1"))
17431 (package
17432 (name "sbcl-font-discovery")
17433 (version (git-version "1.0.0" revision commit))
17434 (source
17435 (origin
17436 (method git-fetch)
17437 (uri (git-reference
17438 (url "https://codeberg.org/shinmera/font-discovery")
17439 (commit commit)))
17440 (file-name (git-file-name "font-discovery" version))
17441 (sha256
17442 (base32 "1p9wkwc23rnif8vcjaj5ih1fmr5g57sidqjlz08qw6k0z4f6bia1"))))
17443 (build-system asdf-build-system/sbcl)
17444 (inputs
17445 (list sbcl-cffi sbcl-documentation-utils sbcl-trivial-indent))
17446 (home-page "https://shinmera.com/docs/font-discovery/")
17447 (synopsis "Find system font files matching a font spec")
17448 (description
17449 "This is a library to find system font files. It works on systems with
17450FontConfig on Linux, BSD. It does not have any foreign dependencies that
17451aren't already directly available on the system.")
17452 (license license:zlib))))
17453
17454(define-public cl-font-discovery
17455 (sbcl-package->cl-source-package sbcl-font-discovery))
17456
17457(define-public ecl-font-discovery
17458 (sbcl-package->ecl-package sbcl-font-discovery))
17459
17460(define-public sbcl-for
17461 (let ((commit "a39782991292e44ee3b5e2e25cddaa8115f6d363")
17462 (revision "1"))
17463 (package
17464 (name "sbcl-for")
17465 (version (git-version "1.2.0" revision commit))
17466 (source
17467 (origin
17468 (method git-fetch)
17469 (uri (git-reference
17470 (url "https://codeberg.org/shinmera/for")
17471 (commit commit)))
17472 (file-name (git-file-name "cl-for" version))
17473 (sha256
17474 (base32 "07jdwqkyb3qd65mng60cs723z7p0bv2769hhalz4c0mfzn8qrn99"))))
17475 (build-system asdf-build-system/sbcl)
17476 (inputs
17477 (list sbcl-documentation-utils sbcl-form-fiddle sbcl-lambda-fiddle))
17478 (home-page "https://shinmera.com/docs/for/")
17479 (synopsis "Extensible iteration macro library")
17480 (description
17481 "For is a library for an extensible iteration macro. It allows you to write
17482concise looping constructs similar to @code{loop} and @code{iterate}. Unlike
17483loop however it is extensible and sensible, and unlike iterate it does not
17484require code-walking and is easier to extend.")
17485 (license license:zlib))))
17486
17487(define-public cl-for
17488 (sbcl-package->cl-source-package sbcl-for))
17489
17490(define-public ecl-for
17491 (sbcl-package->ecl-package sbcl-for))
17492
17493(define-public clasp-for
17494 (sbcl-package->clasp-package sbcl-for))
17495
17496(define-public sbcl-forge
17497 (let ((commit "012324e251d91436f4a610e2fe2eb50674c3c3ce")
17498 (revision "1"))
17499 (package
17500 (name "sbcl-forge")
17501 (version (git-version "1.0.0" revision commit))
17502 (source
17503 (origin
17504 (method git-fetch)
17505 (uri (git-reference
17506 (url "https://codeberg.org/shinmera/forge/")
17507 (commit commit)))
17508 (sha256
17509 (base32 "006vi2ihrn28pzrwa8b7axmv98bdaxzx7lacnh9pbacbjg3b7hb0"))
17510 (file-name (git-file-name "forge" version))))
17511 (build-system asdf-build-system/sbcl)
17512 (arguments
17513 '(#:asd-systems '("forge-support"
17514 "forge-communication"
17515 "forge")))
17516 (inputs
17517 (list sbcl-alexandria
17518 sbcl-bordeaux-threads
17519 sbcl-cffi
17520 sbcl-cl-ppcre
17521 sbcl-closer-mop
17522 sbcl-documentation-utils
17523 sbcl-ironclad
17524 sbcl-pathname-utils
17525 sbcl-promise
17526 sbcl-usocket
17527 sbcl-verbose))
17528 (synopsis "General, modular build system")
17529 (description "Forge is a generic build system. Refer to documentation
17530for the specific kind of project you're building to get the full picture.")
17531 (home-page "https://github.com/shinmera/forge")
17532 (license license:zlib))))
17533
17534(define-public cl-forge
17535 (sbcl-package->cl-source-package sbcl-forge))
17536
17537(define-public sbcl-form-fiddle
17538 (let ((commit "e0c23599dbb8cff3e83e012f3d86d0764188ad18")
17539 (revision "0"))
17540 (package
17541 (name "sbcl-form-fiddle")
17542 (version (git-version "1.1.0" revision commit))
17543 (source
17544 (origin
17545 (method git-fetch)
17546 (uri
17547 (git-reference
17548 (url "https://codeberg.org/shinmera/form-fiddle")
17549 (commit commit)))
17550 (file-name (git-file-name name version))
17551 (sha256
17552 (base32
17553 "041iznc9mpfyrl0sv5893ys9pbb2pvbn9g3clarqi7gsfj483jln"))))
17554 (build-system asdf-build-system/sbcl)
17555 (inputs
17556 (list sbcl-documentation-utils))
17557 (synopsis "Utilities to destructure Common Lisp lambda forms")
17558 (description
17559 "Often times we need to destructure a form definition in a Common Lisp
17560macro. This library provides a set of simple utilities to help with that.")
17561 (home-page "https://shinmera.com/docs/form-fiddle/")
17562 (license license:zlib))))
17563
17564(define-public cl-form-fiddle
17565 (sbcl-package->cl-source-package sbcl-form-fiddle))
17566
17567(define-public ecl-form-fiddle
17568 (sbcl-package->ecl-package sbcl-form-fiddle))
17569
17570(define-public clasp-form-fiddle
17571 (sbcl-package->clasp-package sbcl-form-fiddle))
17572
17573(define-public sbcl-format-colors
17574 (let ((commit "fecb1d8c6e7a07ff9f10a7a4eb4c3bd629d4969f")
17575 (revision "0"))
17576 (package
17577 (name "sbcl-format-colors")
17578 (version (git-version "0.1" revision commit))
17579 (source
17580 (origin
17581 (method git-fetch)
17582 (uri (git-reference
17583 (url "https://github.com/vindarel/format-colors")
17584 (commit commit)))
17585 (sha256
17586 (base32 "084ydjhic2dq0gb7wfm6plnjq3l7485hb3yhxl03mm64a6sr3fxv"))
17587 (file-name (git-file-name "cl-format-colors" version))))
17588 (build-system asdf-build-system/sbcl)
17589 (inputs (list sbcl-cl-ansi-text))
17590 (synopsis "Custom format functions for colorful output")
17591 (description "This package provides simple format directives to
17592 print in colors.")
17593 (home-page "https://github.com/vindarel/format-colors")
17594 (license license:llgpl))))
17595
17596(define-public cl-format-colors
17597 (sbcl-package->cl-source-package sbcl-format-colors))
17598
17599(define-public ecl-format-colors
17600 (sbcl-package->ecl-package sbcl-format-colors))
17601
17602(define-public sbcl-formgrep
17603 (let ((commit "91238cdbdd0ad815ff5d574d032b4a502febd190")
17604 (revision "0"))
17605 (package
17606 (name "sbcl-formgrep")
17607 (version (git-version "0.0.0" revision commit))
17608 (source
17609 (origin
17610 (method git-fetch)
17611 (uri (git-reference
17612 (url "https://github.com/death/formgrep")
17613 (commit commit)))
17614 (file-name (git-file-name "cl-formgrep" version))
17615 (sha256
17616 (base32 "1rqzkmz6nddg5ywvs3v0k8cvxdwas38mfwgbr3rs4fdsbps90k9r"))))
17617 (build-system asdf-build-system/sbcl)
17618 (inputs
17619 (list sbcl-alexandria
17620 sbcl-babel
17621 sbcl-cl-fad
17622 sbcl-cl-ppcre
17623 sbcl-eclector))
17624 (home-page "https://github.com/death/formgrep")
17625 (synopsis "Find top-level Lisp forms matching an operator pattern")
17626 (description
17627 "This library provides the @code{FORMGREP} function and related
17628utilities which find top-level Lisp forms matching the regular expression
17629corresponding to an operator name, returning the matched forms and the names
17630of the files and the line numbers where they were found.")
17631 (license license:expat))))
17632
17633(define-public cl-formgrep
17634 (sbcl-package->cl-source-package sbcl-formgrep))
17635
17636(define-public ecl-formgrep
17637 (sbcl-package->ecl-package sbcl-formgrep))
17638
17639(define-public sbcl-fset
17640 (package
17641 (name "sbcl-fset")
17642 (version "2.4.6")
17643 (source
17644 (origin
17645 (method git-fetch)
17646 (uri (git-reference
17647 (url "https://github.com/slburson/fset")
17648 (commit (string-append "v" version))))
17649 (file-name (git-file-name "cl-fset" version))
17650 (sha256
17651 (base32 "0h7jsw9cpgqzkksw3wgh9nnwqwdjlp8wb0klfby2w10vxn23rhk2"))))
17652 (build-system asdf-build-system/sbcl)
17653 (inputs
17654 (list sbcl-alexandria
17655 sbcl-iterate
17656 sbcl-jzon
17657 sbcl-misc-extensions
17658 sbcl-mt19937
17659 sbcl-named-readtables))
17660 (arguments
17661 '(#:asd-systems '("fset" "fset/iterate" "fset/jzon")))
17662 (synopsis "Functional set-theoretic collections library")
17663 (description
17664 "FSet is a functional set-theoretic collections library for Common Lisp.
17665Functional means that all update operations return a new collection rather than
17666modifying an existing one in place. Set-theoretic means that collections may
17667be nested arbitrarily with no additional programmer effort; for instance, sets
17668may contain sets, maps may be keyed by sets, etc.")
17669 (home-page "https://common-lisp.net/project/fset/Site/index.html")
17670 (license license:bsd-2)))
17671
17672(define-public cl-fset
17673 (sbcl-package->cl-source-package sbcl-fset))
17674
17675(define-public clasp-fset
17676 (sbcl-package->clasp-package sbcl-fset))
17677
17678(define-public ecl-fset
17679 (package
17680 (inherit (sbcl-package->ecl-package sbcl-fset))
17681 (arguments
17682 (substitute-keyword-arguments arguments
17683 ;; Some fset/jzon test fails on ECL.
17684 ((#:tests? _ #f) #f)))))
17685
17686(define-public sbcl-function-cache
17687 (package
17688 (name "sbcl-function-cache")
17689 (version "1.0.3")
17690 (source
17691 (origin
17692 (method git-fetch)
17693 (uri (git-reference
17694 (url "https://github.com/AccelerationNet/function-cache")
17695 (commit "6a5ada401e57da2c8abf046f582029926e61fce8")))
17696 (file-name (git-file-name name version))
17697 (sha256
17698 (base32
17699 "000vmd3f5rx5hs9nvphfric0gkzaadns31c6mxaslpv0k7pkrmc6"))))
17700 (build-system asdf-build-system/sbcl)
17701 (synopsis "Function caching / memoization library for Common Lisp")
17702 (description
17703 "A common lisp library that provides extensible function result
17704caching based on arguments (an expanded form of memoization).")
17705 (home-page "https://github.com/AccelerationNet/function-cache")
17706 (license
17707 (license:non-copyleft
17708 "https://github.com/AccelerationNet/function-cache/blob/master/README.md"))
17709 (inputs
17710 (list sbcl-alexandria
17711 sbcl-cl-interpol
17712 sbcl-iterate
17713 sbcl-symbol-munger
17714 sbcl-closer-mop))
17715 (arguments
17716 `(#:tests? #f))))
17717
17718(define-public cl-function-cache
17719 (sbcl-package->cl-source-package sbcl-function-cache))
17720
17721(define-public ecl-function-cache
17722 (sbcl-package->ecl-package sbcl-function-cache))
17723
17724(define-public sbcl-funds
17725 (let ((commit "39d425818876b898c20780a678803df506df8424")
17726 (revision "2"))
17727 (package
17728 (name "sbcl-funds")
17729 (version (git-version "1" revision commit))
17730 (source
17731 (origin
17732 (method git-fetch)
17733 (uri (git-reference
17734 (url "https://github.com/charJe/funds")
17735 (commit commit)))
17736 (file-name (git-file-name name version))
17737 (sha256
17738 (base32 "13y1jhvnpzrs9daz6f3z67w6h2y21ggb10j3j4vnc5p3m8i7ps4p"))))
17739 (build-system asdf-build-system/sbcl)
17740 (synopsis "Purely functional data structure library in Common Lisp")
17741 (description
17742 "Funds provides portable, purely functional data structures in Common
17743Lisp. It includes tree based implementations for Array, Hash, Queue, Stack, and
17744Heap.")
17745 (home-page "https://common-lisp.net/project/funds/")
17746 (license license:asl2.0))))
17747
17748(define-public cl-funds
17749 (sbcl-package->cl-source-package sbcl-funds))
17750
17751(define-public ecl-funds
17752 (sbcl-package->ecl-package sbcl-funds))
17753
17754(define-public sbcl-fuzzy-dates
17755 (let ((commit "d6a2c229870a633594afc15a07fb16082960dfba")
17756 (revision "0"))
17757 (package
17758 (name "sbcl-fuzzy-dates")
17759 (version (git-version "1.0.0" revision commit))
17760 (source
17761 (origin
17762 (method git-fetch)
17763 (uri (git-reference
17764 (url "https://github.com/shinmera/fuzzy-dates")
17765 (commit commit)))
17766 (file-name (git-file-name "cl-fuzzy-dates" version))
17767 (sha256
17768 (base32 "0qaig90b91nrwgxs55c8zaah5iq72rgxw1clmjqw0iilfg5wgllr"))))
17769 (build-system asdf-build-system/sbcl)
17770 (native-inputs (list sbcl-parachute))
17771 (inputs (list sbcl-cl-ppcre
17772 sbcl-documentation-utils))
17773 (home-page "https://github.com/vindarel/fuzzy-dates")
17774 (synopsis "Fuzzily parse date and time strings")
17775 (description
17776 "Library to fuzzily parse time and date strings into a universal-time
17777timestamp.")
17778 (license license:zlib))))
17779
17780(define-public cl-fuzzy-dates
17781 (sbcl-package->cl-source-package sbcl-fuzzy-dates))
17782
17783(define-public ecl-fuzzy-dates
17784 (sbcl-package->ecl-package sbcl-fuzzy-dates))
17785
17786(define-public clasp-fuzzy-dates
17787 (sbcl-package->clasp-package sbcl-fuzzy-dates))
17788
17789(define-public sbcl-fuzzy-match
17790 (let ((commit "e46ca41ef4641461f7be006782e3cfdcf73ba98a")
17791 (revision "1"))
17792 (package
17793 (name "sbcl-fuzzy-match")
17794 (version (git-version "0.1" revision commit))
17795 (source
17796 (origin
17797 (method git-fetch)
17798 (uri (git-reference
17799 (url "https://github.com/vindarel/fuzzy-match")
17800 (commit commit)))
17801 (file-name (git-file-name "cl-fuzzy-match" version))
17802 (sha256
17803 (base32 "1lawndmzkl6f9sviy7ngn2s3xkc4akp8l505kvpslaz6qq0ayyqv"))))
17804 (build-system asdf-build-system/sbcl)
17805 (inputs (list sbcl-cl-str
17806 sbcl-mk-string-metrics))
17807 (home-page "https://github.com/vindarel/fuzzy-match")
17808 (synopsis "Common Lisp library for fuzzy matching")
17809 (description
17810 "From a string input and a list of candidates, return the most relevant
17811candidates first.")
17812 (license license:expat))))
17813
17814(define-public cl-fuzzy-match
17815 (sbcl-package->cl-source-package sbcl-fuzzy-match))
17816
17817(define-public ecl-fuzzy-match
17818 (sbcl-package->ecl-package sbcl-fuzzy-match))
17819
17820(define-public sbcl-fxml
17821 ;; No release.
17822 (let ((commit "a0e73bb48ef03adea94a55986cc27f522074c8e1"))
17823 (package
17824 (name "sbcl-fxml")
17825 (version (git-version "0.0.0" "1" commit))
17826 (source
17827 (origin
17828 (method git-fetch)
17829 (uri (git-reference
17830 (url "https://github.com/ruricolist/fxml/")
17831 (commit commit)))
17832 (file-name (git-file-name name version))
17833 (sha256
17834 (base32 "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm"))))
17835 (build-system asdf-build-system/sbcl)
17836 (inputs
17837 (list sbcl-babel
17838 sbcl-named-readtables
17839 sbcl-serapeum
17840 sbcl-quri
17841 sbcl-flexi-streams
17842 sbcl-split-sequence
17843 sbcl-alexandria
17844 sbcl-trivial-gray-streams))
17845 (native-inputs
17846 (list sbcl-fiveam sbcl-cxml sbcl-cxml-rng sbcl-xpath))
17847 (home-page "https://github.com/ruricolist/fxml")
17848 (synopsis "XML parser and serializer in Common Lisp")
17849 (description
17850 "FXML is a secure-by-default, error-recovering XML parser and serializer.
17851It is a fork of CXML.
17852
17853You should use FXML instead of CXML if:
17854@itemize
17855@item You are parsing potentially ill-formed XML.
17856@item You are parsing potentially malicious XML.
17857@item You need to use Klacks with namespaces.
17858@end itemize
17859
17860FXML’s API is very close to CXML's, and for the most part you can refer to the
17861CXML documentation for usage.")
17862 (license license:llgpl))))
17863
17864(define-public cl-fxml
17865 (sbcl-package->cl-source-package sbcl-fxml))
17866
17867(define-public sbcl-garbage-pools
17868 (let ((commit "9a7cb7f48b04197c0495df3b6d2e8395ad13f790")
17869 (revision "1"))
17870 (package
17871 (name "sbcl-garbage-pools")
17872 (version (git-version "0.1.2" revision commit))
17873 (source
17874 (origin
17875 (method git-fetch)
17876 (uri (git-reference
17877 (url "https://github.com/archimag/garbage-pools")
17878 (commit commit)))
17879 (file-name (git-file-name name version))
17880 (sha256
17881 (base32 "04jqwr6j138him6wc4nrwjzm4lvyj5j31xqab02nkf8h9hmsf5v1"))))
17882 (build-system asdf-build-system/sbcl)
17883 (home-page "https://github.com/archimag/garbage-pools")
17884 (synopsis "Resource management pools for Common Lisp")
17885 (description "GARBAGE-POOLS is Common Lisp re-implementation of the APR
17886Pools for resource management.")
17887 (license license:expat))))
17888
17889(define-public cl-garbage-pools
17890 (sbcl-package->cl-source-package sbcl-garbage-pools))
17891
17892(define-public ecl-garbage-pools
17893 (sbcl-package->ecl-package sbcl-garbage-pools))
17894
17895(define-public sbcl-geco
17896 (let ((commit "db13c9384491092975f46f6a837ccdc04681a93a")
17897 (revision "1"))
17898 (package
17899 (name "sbcl-geco")
17900 (version (git-version "2.1.2" revision commit))
17901 (source
17902 (origin
17903 (method git-fetch)
17904 (uri (git-reference
17905 (url "https://github.com/gpwwjr/GECO")
17906 (commit commit)))
17907 (file-name (git-file-name "cl-geco" version))
17908 (sha256
17909 (base32 "1ncaf9ab7jz59zmga0p97blsjjb1m6db0qih57wipfhqdb5ylz17"))))
17910 (build-system asdf-build-system/sbcl)
17911 (home-page "https://github.com/gpwwjr/GECO")
17912 (synopsis "Genetic algorithm toolkit for Common Lisp")
17913 (description
17914 "GECO (Genetic Evolution through Combination of Objects) is an
17915extensible, object-oriented framework for prototyping genetic algorithms in
17916Common Lisp.")
17917 (license license:lgpl2.0+))))
17918
17919(define-public cl-geco
17920 (sbcl-package->cl-source-package sbcl-geco))
17921
17922(define-public ecl-geco
17923 (sbcl-package->ecl-package sbcl-geco))
17924
17925(define-public sbcl-generic-cl
17926 (package
17927 (name "sbcl-generic-cl")
17928 (version "0.9")
17929 (source
17930 (origin
17931 (method git-fetch)
17932 (uri (git-reference
17933 (url "https://github.com/alex-gutev/generic-cl")
17934 (commit (string-append "v" version))))
17935 (file-name (git-file-name name version))
17936 (sha256
17937 (base32
17938 "1c40vqb49g0adfv17jxgk0ds1n6a2dph30cibq01sicmqdgrrbi8"))))
17939 (build-system asdf-build-system/sbcl)
17940 (arguments
17941 ;; Tests fail because SBCL head size is not high enough.
17942 ;; https://github.com/alex-gutev/generic-cl/issues/6
17943 `(#:tests? #f))
17944 (inputs
17945 (list sbcl-agutil
17946 sbcl-alexandria
17947 sbcl-anaphora
17948 sbcl-arrows
17949 sbcl-cl-form-types
17950 sbcl-custom-hash-table
17951 sbcl-static-dispatch
17952 sbcl-trivia))
17953 (native-inputs
17954 (list sbcl-prove))
17955 (home-page "https://alex-gutev.github.io/generic-cl/")
17956 (synopsis "Generic function interface to standard Common Lisp functions")
17957 (description "@code{generic-cl} provides a generic function wrapper over
17958various functions in the Common Lisp standard, such as equality predicates and
17959sequence operations. The goal of this wrapper is to provide a standard
17960interface to common operations, such as testing for the equality of two
17961objects, which is extensible to user-defined types.")
17962 (license license:expat)))
17963
17964(define-public cl-generic-cl
17965 (sbcl-package->cl-source-package sbcl-generic-cl))
17966
17967(define-public ecl-generic-cl
17968 (sbcl-package->ecl-package sbcl-generic-cl))
17969
17970(define-public sbcl-generic-comparability
17971 (let ((commit "53fc2846319a6eb46b36581e203e1f1542a8acff")
17972 (revision "1"))
17973 (package
17974 (name "sbcl-generic-comparability")
17975 (version (git-version "1.0.1" revision commit))
17976 (source
17977 (origin
17978 (method git-fetch)
17979 (uri (git-reference
17980 (url "https://github.com/pnathan/generic-comparability")
17981 (commit commit)))
17982 (file-name (git-file-name "generic-comparability" version))
17983 (sha256
17984 (base32 "01ma0cwirxarwwmdwflnh8kmysmr2smh5kyvzhb2074ljxg8yq2p"))))
17985 (build-system asdf-build-system/sbcl)
17986 (inputs
17987 (list sbcl-alexandria))
17988 (native-inputs
17989 (list sbcl-fiveam))
17990 (home-page "https://github.com/pnathan/generic-comparability")
17991 (synopsis "Implementation of cdr-8")
17992 (description
17993 "GENERIC-COMPARABILITY is an implementation of CDR-8 (Generic Equality
17994and Comparison for Common Lisp). CDR-8 provides an interface for the EQUALS
17995function, which is defined as a general equality predicate, as well as a set of
17996ordering (COMPARE) functions for comparison. The semantics are described in
17997the CDR-8 standard.")
17998 (license license:llgpl))))
17999
18000(define-public cl-generic-comparability
18001 (sbcl-package->cl-source-package sbcl-generic-comparability))
18002
18003(define-public ecl-generic-comparability
18004 (sbcl-package->ecl-package sbcl-generic-comparability))
18005
18006(define-public sbcl-geneva
18007 (let ((commit "126d330aec6c3b1cba212387888c738bf7196dec")
18008 (revision "0"))
18009 (package
18010 (name "sbcl-geneva")
18011 (version (git-version "0" revision commit))
18012 (source
18013 (origin
18014 (method git-fetch)
18015 (uri (git-reference
18016 (url "https://github.com/eugeneia/geneva")
18017 (commit commit)))
18018 (file-name (git-file-name name version))
18019 (sha256
18020 (base32 "1pw18xkbndqssx6iix8a8zcw8bgjh88jxxxrklkgkghk04bmqxw3"))))
18021 (build-system asdf-build-system/sbcl)
18022 (inputs
18023 (list sbcl-split-sequence
18024 sbcl-named-readtables))
18025 (home-page "https://github.com/eugeneia/geneva")
18026 (synopsis "Portable document preparation system")
18027 (description "Portable document preparation system.")
18028 (license license:agpl1))))
18029
18030(define-public ecl-geneva
18031 (sbcl-package->ecl-package sbcl-geneva))
18032
18033(define-public cl-geneva
18034 (sbcl-package->cl-source-package sbcl-geneva))
18035
18036(define-public sbcl-genhash
18037 (let ((commit "220ae1af8361dbd2005177f2ee11072b6a33934f")
18038 (revision "1"))
18039 (package
18040 (name "sbcl-genhash")
18041 (version (git-version "1.7" revision commit))
18042 (source
18043 (origin
18044 (method git-fetch)
18045 (uri (git-reference
18046 (url "https://github.com/pnathan/genhash")
18047 (commit commit)))
18048 (file-name (git-file-name "cl-genhash" version))
18049 (sha256
18050 (base32 "1jnk1fix1zydhy0kn3cvlp6dy0241x7v8ahq001nlr6v152z1cwk"))))
18051 (build-system asdf-build-system/sbcl)
18052 (home-page "https://github.com/pnathan/genhash")
18053 (synopsis "Generic hash tables for Common Lisp")
18054 (description
18055 "This an implementation of CDR 2: generic hash tables for Common Lisp")
18056 (license license:public-domain))))
18057
18058(define-public cl-genhash
18059 (sbcl-package->cl-source-package sbcl-genhash))
18060
18061(define-public ecl-genhash
18062 (sbcl-package->ecl-package sbcl-genhash))
18063
18064(define-public sbcl-germinal
18065 (let ((commit "5bfb371ea57dae8985c0e1c6f184f0338487d684")
18066 (revision "0"))
18067 (package
18068 (name "sbcl-germinal")
18069 (version (git-version "1.0.0" revision commit))
18070 (source
18071 (origin
18072 (method git-fetch)
18073 (uri (git-reference
18074 (url "https://git.carcosa.net/jmcbray/germinal")
18075 (commit commit)))
18076 (file-name (git-file-name "cl-germinal" version))
18077 (sha256
18078 (base32 "12jypa8m10825lp5yxfcm1fyk3r4ziwcri7ndxa0m5dz0y7hggck"))))
18079 (build-system asdf-build-system/sbcl)
18080 (inputs
18081 (list sbcl-alexandria
18082 sbcl-babel
18083 sbcl-bordeaux-threads
18084 sbcl-cl+ssl
18085 sbcl-cl-fad
18086 sbcl-cl-interpol
18087 sbcl-cl-ppcre
18088 sbcl-cl-str
18089 sbcl-local-time
18090 sbcl-osicat
18091 sbcl-ppath
18092 sbcl-quri
18093 sbcl-trivial-mimes
18094 sbcl-uax-15
18095 sbcl-usocket))
18096 (home-page "https://git.carcosa.net/jmcbray/germinal")
18097 (synopsis "Gemini protocol server")
18098 (description "Germinal is a server for the Gemini protocol, written in
18099Common Lisp.")
18100 (license license:agpl3))))
18101
18102(define-public cl-germinal
18103 (sbcl-package->cl-source-package sbcl-germinal))
18104
18105(define-public ecl-germinal
18106 (sbcl-package->ecl-package sbcl-germinal))
18107
18108(define-public sbcl-gettext
18109 (let ((commit "a432020cbad99fc22cbe6bb9aa8a83a35000d7aa")
18110 (revision "1"))
18111 (package
18112 (name "sbcl-gettext")
18113 (version (git-version "0.0.0" revision commit))
18114 (source
18115 (origin
18116 (method git-fetch)
18117 (uri (git-reference
18118 (url "https://github.com/rotatef/gettext")
18119 (commit commit)))
18120 (file-name (git-file-name "gettext" version))
18121 (sha256
18122 (base32 "1pzhamgni6k5hi6bbvlb3dm659pcllrrr3vhhn3rpjn238zxg5ar"))))
18123 (build-system asdf-build-system/sbcl)
18124 (native-inputs
18125 (list sbcl-stefil))
18126 (inputs
18127 (list sbcl-flexi-streams sbcl-split-sequence sbcl-cl-yacc))
18128 (home-page "https://github.com/rotatef/gettext")
18129 (synopsis "Common Lisp implementation of Gettext")
18130 (description
18131 "This package provides GNU @code{gettext} completely implemented in
18132Common Lisp without any C library bindings.")
18133 (license license:lgpl3+))))
18134
18135(define-public cl-gettext
18136 (sbcl-package->cl-source-package sbcl-gettext))
18137
18138(define-public ecl-gettext
18139 (sbcl-package->ecl-package sbcl-gettext))
18140
18141(define-public sbcl-glkit
18142 (let ((commit "0d8e7c5fed4231f2177afcf0f3ff66f196ed6a46"))
18143 (package
18144 (name "sbcl-glkit")
18145 (version (git-version "0.0" "1" commit))
18146 (source
18147 (origin
18148 (method git-fetch)
18149 (uri (git-reference
18150 (url "https://github.com/lispgames/glkit/")
18151 (commit commit)))
18152 (file-name (git-file-name "cl-glkit" version))
18153 (sha256
18154 (base32 "1x3y5jcr1f0v9sgn3y5b7b8fhgd6vv37nz73016gdwh511idi8jn"))))
18155 (build-system asdf-build-system/sbcl)
18156 (inputs
18157 (list sbcl-alexandria
18158 sbcl-cl-opengl
18159 sbcl-defpackage-plus
18160 sbcl-mathkit
18161 sbcl-sb-cga
18162 sbcl-sdl2
18163 sbcl-static-vectors))
18164 (home-page "https://github.com/lispgames/glkit/")
18165 (synopsis "OpenGL utilities for math, shaders, and more")
18166 (description
18167 "This is a utility kit for functionality related to OpenGL. It provides the following:
18168
18169@itemize
18170@item @code{kit.glm}: This re-exports @code{sb-cga} and @code{mathkit} for
18171convenience.
18172@item @code{kit.gl.shader}: This provides shader dictionary and compilation
18173functionality similar to what was originally found in @code{sdl2kit}.
18174@item @code{kit.gl.vao}: This provides an interface for Vertex Array Objects.
18175@end itemize\n")
18176 (license license:expat))))
18177
18178(define-public cl-glkit
18179 (sbcl-package->cl-source-package sbcl-glkit))
18180
18181(define-public ecl-glkit
18182 (sbcl-package->ecl-package sbcl-glkit))
18183
18184(define-public sbcl-global-vars
18185 (let ((commit "c749f32c9b606a1457daa47d59630708ac0c266e")
18186 (revision "0"))
18187 (package
18188 (name "sbcl-global-vars")
18189 (version (git-version "1.0.0" revision commit))
18190 (home-page "https://github.com/lmj/global-vars")
18191 (source
18192 (origin
18193 (method git-fetch)
18194 (uri (git-reference
18195 (url home-page)
18196 (commit commit)))
18197 (file-name (git-file-name name version))
18198 (sha256
18199 (base32
18200 "06m3xc8l3pgsapl8fvsi9wf6y46zs75cp9zn7zh6dc65v4s5wz3d"))))
18201 (build-system asdf-build-system/sbcl)
18202 (synopsis "Efficient global variables in Common Lisp")
18203 (description
18204 "In Common Lisp, a special variable that is never dynamically bound
18205typically serves as a stand-in for a global variable. The @code{global-vars}
18206library provides true global variables that are implemented by some compilers.
18207An attempt to rebind a global variable properly results in a compiler error.
18208That is, a global variable cannot be dynamically bound.
18209
18210Global variables therefore allow us to communicate an intended usage that
18211differs from special variables. Global variables are also more efficient than
18212special variables, especially in the presence of threads.")
18213 (license license:expat))))
18214
18215(define-public cl-global-vars
18216 (sbcl-package->cl-source-package sbcl-global-vars))
18217
18218(define-public ecl-global-vars
18219 (sbcl-package->ecl-package sbcl-global-vars))
18220
18221(define-public clasp-global-vars
18222 (sbcl-package->clasp-package sbcl-global-vars))
18223
18224(define-public sbcl-glop
18225 (let ((commit "45e722ab4a0cd2944d550bf790206b3326041e38")
18226 (revision "1"))
18227 (package
18228 (name "sbcl-glop")
18229 (version (git-version "0.1.0" revision commit))
18230 (source
18231 (origin
18232 (method git-fetch)
18233 (uri (git-reference
18234 (url "https://github.com/lispgames/glop")
18235 (commit commit)))
18236 (file-name (git-file-name "glop" version))
18237 (sha256
18238 (base32 "1nm35kvigflfjlmsa8zwdajc61f02fh4sq08jv0wnqylhx8yg2bv"))))
18239 (build-system asdf-build-system/sbcl)
18240 (arguments
18241 (list #:phases
18242 #~(modify-phases %standard-phases
18243 (add-after 'unpack 'patch-lib-paths
18244 (lambda* (#:key inputs #:allow-other-keys)
18245 (substitute* "src/x11/xcomposite.lisp"
18246 (("libXcomposite.so")
18247 (search-input-file inputs "/lib/libXcomposite.so")))
18248 (substitute* "src/x11/xlib.lisp"
18249 (("libX11")
18250 (string-drop-right
18251 (search-input-file inputs "/lib/libX11.so") 3)))
18252 (substitute* "src/utils.lisp"
18253 (("libX11")
18254 (string-drop-right
18255 (search-input-file inputs "/lib/libX11.so") 3)))
18256 (substitute* "src/utils.lisp"
18257 (("libGL.so")
18258 (search-input-file inputs "/lib/libGL.so.1")))
18259 (substitute* "src/x11/glx.lisp"
18260 (("libGL.so")
18261 (search-input-file inputs "/lib/libGL.so")))
18262 (substitute* "src/x11/display-ctrl.lisp"
18263 (("libXrandr")
18264 (string-drop-right
18265 (search-input-file inputs "/lib/libXrandr.so") 3))))))))
18266 (native-inputs
18267 (list sbcl-cl-opengl))
18268 (inputs
18269 (list libx11
18270 libxcomposite
18271 libxrandr
18272 mesa
18273 sbcl-cffi
18274 sbcl-split-sequence
18275 sbcl-trivial-garbage))
18276 (home-page "https://github.com/lispgames/glop")
18277 (synopsis "Direct FFI bindings for OpenGL window and context management")
18278 (description
18279 "This package provides Common Lisp bindings to create OpenGL window and
18280context manipulation code as well as system input handling. Direct FFI
18281bindings to system functions are used so no third party C lib is required
18282except system libraries.")
18283 (license license:expat))))
18284
18285(define-public cl-glop
18286 (sbcl-package->cl-source-package sbcl-glop))
18287
18288(define-public ecl-glop
18289 (sbcl-package->ecl-package sbcl-glop))
18290
18291(define-public sbcl-glsl-packing
18292 (let ((commit "03628159468a8e5b7f2a1d5e78b77053e136794a")
18293 (revision "1"))
18294 (package
18295 (name "sbcl-glsl-packing")
18296 (version (git-version "0.0.0" revision commit))
18297 (source
18298 (origin
18299 (method git-fetch)
18300 (uri (git-reference
18301 (url "https://github.com/3b/glsl-packing/")
18302 (commit commit)))
18303 (file-name (git-file-name "glsl-packing" version))
18304 (sha256
18305 (base32 "0k2f1771wd9kdrcasldy1r00k5bdgi9fd07in52zmjggc0i7dd80"))))
18306 (build-system asdf-build-system/sbcl)
18307 (inputs
18308 (list sbcl-alexandria))
18309 (home-page "https://github.com/3b/glsl-packing/")
18310 (synopsis "Common Lisp utilities to calculate OpenGL layouts")
18311 (description
18312 "This is a Common Lisp library to calculate std140 or std430 layouts for
18313a glsl UBO/SSBO.")
18314 (license license:expat))))
18315
18316(define-public cl-glsl-packing
18317 (sbcl-package->cl-source-package sbcl-glsl-packing))
18318
18319(define-public ecl-glsl-packing
18320 (sbcl-package->ecl-package sbcl-glsl-packing))
18321
18322(define-public clasp-glsl-packing
18323 (sbcl-package->clasp-package sbcl-glsl-packing))
18324
18325(define-public sbcl-glsl-spec
18326 (let ((commit "f04476f7da89355ae6856b33283c60ba95c6555d")
18327 (revision "1"))
18328 (package
18329 (name "sbcl-glsl-spec")
18330 (version (git-version "0.0.0" revision commit))
18331 (source
18332 (origin
18333 (method git-fetch)
18334 (uri (git-reference
18335 (url "https://github.com/cbaggers/glsl-spec")
18336 (commit commit)))
18337 (file-name (git-file-name "glsl-spec" version))
18338 (sha256
18339 (base32 "01ipspr22fgfj3w8wq2y81lzrjc4vpfiwnr3dqhjlpzzra46am8c"))))
18340 (build-system asdf-build-system/sbcl)
18341 (arguments
18342 `(#:asd-systems '("glsl-spec" "glsl-symbols" "glsl-docs")))
18343 (home-page "https://github.com/cbaggers/glsl-spec")
18344 (synopsis "Common Lisp GLSL specification as a datastructure")
18345 (description
18346 "This package contains the specification of all functions and variables
18347from GLSL as data.")
18348 (license license:unlicense))))
18349
18350(define-public cl-glsl-spec
18351 (sbcl-package->cl-source-package sbcl-glsl-spec))
18352
18353(define-public ecl-glsl-spec
18354 (sbcl-package->ecl-package sbcl-glsl-spec))
18355
18356(define-public clasp-glsl-spec
18357 (sbcl-package->clasp-package sbcl-glsl-spec))
18358
18359(define-public sbcl-glsl-toolkit
18360 (let ((commit "4c4889e75c635772c4df70b11d6f14e7a596da43")
18361 (revision "2"))
18362 (package
18363 (name "sbcl-glsl-toolkit")
18364 (version (git-version "1.0.0" revision commit))
18365 (source
18366 (origin
18367 (method git-fetch)
18368 (uri (git-reference
18369 (url "https://github.com/Shirakumo/glsl-toolkit")
18370 (commit commit)))
18371 (file-name (git-file-name "cl-glsl-toolkit" version))
18372 (sha256
18373 (base32 "0vrk8nqijqdi1rwf85rhd93yj7q8qkxnigxn3bw0cbrzvzrks9rl"))))
18374 (build-system asdf-build-system/sbcl)
18375 (inputs
18376 (list sbcl-cl-ppcre sbcl-documentation-utils sbcl-parse-float
18377 sbcl-trivial-indent))
18378 (home-page "https://shirakumo.github.io/glsl-toolkit/")
18379 (synopsis "Parser for OpenGL Shader Language source files")
18380 (description
18381 "This package provides Common Lisp system collecting tools written to
18382wrangle OpenGL Shader Language (GLSL) source files.")
18383 (license license:zlib))))
18384
18385(define-public cl-glsl-toolkit
18386 (sbcl-package->cl-source-package sbcl-glsl-toolkit))
18387
18388(define-public ecl-glsl-toolkit
18389 (sbcl-package->ecl-package sbcl-glsl-toolkit))
18390
18391(define-public sbcl-glyphs
18392 (let ((commit "1ff5714e8c1dca327bc604dfe3e3d1f4b7755373"))
18393 (package
18394 (name "sbcl-glyphs")
18395 (version (git-version "0.0.0" "1" commit))
18396 (source
18397 (origin
18398 (method git-fetch)
18399 (uri (git-reference
18400 (url "https://github.com/ahungry/glyphs/")
18401 (commit commit)))
18402 (file-name (git-file-name name version))
18403 (sha256
18404 (base32 "17kai1anbkk5dj5sbrsin2fc019cmcbglb900db60v38myj0y0wf"))))
18405 (build-system asdf-build-system/sbcl)
18406 (inputs
18407 (list sbcl-cl-ppcre sbcl-parenscript sbcl-named-readtables))
18408 (home-page "https://github.com/ahungry/glyphs/")
18409 (synopsis "Reduce Common Lisp verbosity")
18410 (description
18411 "This library is a little experiment in reducing verbosity in Common
18412Lisp, inspired by BODOL (@url{https://github.com/bodil/BODOL}).")
18413 (license license:gpl3))))
18414
18415(define-public cl-glyphs
18416 (sbcl-package->cl-source-package sbcl-glyphs))
18417
18418(define-public ecl-glyphs
18419 (sbcl-package->ecl-package sbcl-glyphs))
18420
18421(define-public sbcl-golden-utils
18422 (let ((commit "e43914ad2bdb0c8e1b1f10ef591aafc3c55b89e7")
18423 (revision "4"))
18424 (package
18425 (name "sbcl-golden-utils")
18426 (version (git-version "0.0.0" revision commit))
18427 (home-page "https://github.com/lisp-mirror/golden-utils")
18428 (source
18429 (origin
18430 (method git-fetch)
18431 (uri (git-reference
18432 (url home-page)
18433 (commit commit)))
18434 (file-name (git-file-name "cl-golden-utils" version))
18435 (sha256
18436 (base32 "09vq29wjr3x7h3fshwxg8h1psy4p73yl61cjljarpqjhsgz7lmbp"))))
18437 (build-system asdf-build-system/sbcl)
18438 (inputs
18439 (list sbcl-alexandria))
18440 (synopsis "Common Lisp utility library")
18441 (description
18442 "This is a Common Lisp library providing various utilities.")
18443 (license license:expat))))
18444
18445(define-public cl-golden-utils
18446 (sbcl-package->cl-source-package sbcl-golden-utils))
18447
18448(define-public ecl-golden-utils
18449 (sbcl-package->ecl-package sbcl-golden-utils))
18450
18451(define-public clasp-golden-utils
18452 (sbcl-package->clasp-package sbcl-golden-utils))
18453
18454(define-public sbcl-graph
18455 (let ((commit "78bf9ec930d8eae4f0861b5be76765fb1e45e24f")
18456 (revision "0"))
18457 (package
18458 (name "sbcl-graph")
18459 (version (git-version "0.0.0" revision commit))
18460 (source
18461 (origin
18462 (method git-fetch)
18463 (uri
18464 (git-reference
18465 (url "https://github.com/eschulte/graph")
18466 (commit commit)))
18467 (file-name (git-file-name name version))
18468 (sha256
18469 (base32
18470 "1qpij4xh8bqwc2myahpilcbh916v7vg0acz2fij14d3y0jm02h0g"))))
18471 (build-system asdf-build-system/sbcl)
18472 (native-inputs
18473 (list sbcl-stefil))
18474 (inputs
18475 (list sbcl-alexandria
18476 sbcl-cl-heap
18477 sbcl-cl-ppcre
18478 sbcl-curry-compose-reader-macros
18479 sbcl-metabang-bind
18480 sbcl-named-readtables
18481 sbcl-yason))
18482 (arguments
18483 '(#:asd-systems '("graph"
18484 "graph/dot"
18485 "graph/json")))
18486 (synopsis "Graph data structure and algorithms for Common Lisp")
18487 (description
18488 "The GRAPH Common Lisp library provides a data structures to represent
18489graphs, as well as some graph manipulation and analysis algorithms (shortest
18490path, maximum flow, minimum spanning tree, etc.).")
18491 (home-page "https://eschulte.github.io/graph/")
18492 (license license:gpl3+))))
18493
18494(define-public cl-graph
18495 (sbcl-package->cl-source-package sbcl-graph))
18496
18497(define-public ecl-graph
18498 (sbcl-package->ecl-package sbcl-graph))
18499
18500(define-public sbcl-green-threads
18501 (let ((commit "fff5ebecb441a37e5c511773716aafd84a3c5840")
18502 (revision "1"))
18503 (package
18504 (name "sbcl-green-threads")
18505 (version (git-version "0.3" revision commit))
18506 (source
18507 (origin
18508 (method git-fetch)
18509 (uri (git-reference
18510 (url "https://github.com/thezerobit/green-threads")
18511 (commit commit)))
18512 (file-name (git-file-name name version))
18513 (sha256
18514 (base32
18515 "1czw7nr0dwfps76h8hjvglk1wdh53yqbfbvv30whwbgqx33iippz"))))
18516 (build-system asdf-build-system/sbcl)
18517 (inputs
18518 (list sbcl-cl-async-future
18519 sbcl-cl-cont))
18520 (native-inputs
18521 (list sbcl-prove))
18522 (arguments
18523 `(;; TODO: Fix the tests. They fail with:
18524 ;; "The function BLACKBIRD::PROMISE-VALUES is undefined"
18525 #:tests? #f
18526 #:phases
18527 (modify-phases %standard-phases
18528 (add-after 'unpack 'fix-tests
18529 (lambda _
18530 (substitute* "green-threads-test.asd"
18531 (("cl-test-more")
18532 "prove"))
18533 #t)))))
18534 (synopsis "Cooperative multitasking library for Common Lisp")
18535 (description
18536 "This library allows for cooperative multitasking with help of cl-cont
18537for continuations. It tries to mimic the API of bordeaux-threads as much as
18538possible.")
18539 (home-page "https://github.com/thezerobit/green-threads")
18540 (license license:bsd-3))))
18541
18542(define-public cl-green-threads
18543 (sbcl-package->cl-source-package sbcl-green-threads))
18544
18545(define-public ecl-green-threads
18546 (sbcl-package->ecl-package sbcl-green-threads))
18547
18548(define-public sbcl-gsll
18549 (let ((commit "1a8ada22f9cf5ed7372d352b2317f4ccdb6ab308")
18550 (revision "1"))
18551 (package
18552 (name "sbcl-gsll")
18553 (version (git-version "0.0.0" revision commit))
18554 (source
18555 (origin
18556 (method git-fetch)
18557 (uri (git-reference
18558 (url "https://gitlab.common-lisp.net/antik/gsll.git")
18559 (commit commit)))
18560 (file-name (git-file-name name version))
18561 (sha256
18562 (base32
18563 "0z5nypfk26hxihb08p085644afawicrgb4xvadh3lmrn46qbjfn4"))))
18564 (build-system asdf-build-system/sbcl)
18565 (native-inputs
18566 (list sbcl-lisp-unit))
18567 (inputs
18568 (list sbcl-alexandria
18569 sbcl-antik-base
18570 sbcl-cffi
18571 gsl
18572 sbcl-metabang-bind
18573 sbcl-trivial-features
18574 sbcl-trivial-garbage))
18575 (arguments
18576 `(#:tests? #f
18577 #:phases
18578 (modify-phases %standard-phases
18579 (add-after 'unpack 'fix-cffi-paths
18580 (lambda* (#:key inputs #:allow-other-keys)
18581 (substitute* "gsll.asd"
18582 ((":depends-on \\(#:foreign-array")
18583 ":depends-on (#:foreign-array #:cffi-libffi"))
18584 (substitute* "init/init.lisp"
18585 (("libgslcblas.so" all)
18586 (string-append
18587 (assoc-ref inputs "gsl") "/lib/" all)))
18588 (substitute* "init/init.lisp"
18589 (("libgsl.so" all)
18590 (string-append
18591 (assoc-ref inputs "gsl") "/lib/" all))))))))
18592 (synopsis "GNU Scientific Library for Lisp")
18593 (description
18594 "The GNU Scientific Library for Lisp (GSLL) allows the use of the
18595GNU Scientific Library (GSL) from Common Lisp. This library provides a
18596full range of common mathematical operations useful to scientific and
18597engineering applications. The design of the GSLL interface is such
18598that access to most of the GSL library is possible in a Lisp-natural
18599way; the intent is that the user not be hampered by the restrictions
18600of the C language in which GSL has been written. GSLL thus provides
18601interactive use of GSL for getting quick answers, even for someone not
18602intending to program in Lisp.")
18603 (home-page "https://common-lisp.net/project/gsll/")
18604 (license license:gpl3))))
18605
18606(define-public cl-gsll
18607 (sbcl-package->cl-source-package sbcl-gsll))
18608
18609(define-public ecl-gsll
18610 (sbcl-package->ecl-package sbcl-gsll))
18611
18612(define-public sbcl-gtwiwtg
18613 (package
18614 (name "sbcl-gtwiwtg")
18615 (version "0.1.1")
18616 (source
18617 (origin
18618 (method git-fetch)
18619 (uri (git-reference
18620 (url "https://github.com/cbeo/gtwiwtg/")
18621 (commit version)))
18622 (file-name (git-file-name name version))
18623 (sha256
18624 (base32 "0lkraw0dwh4is4x5sp5rjrw6f93m0gr9849abrbi12s25ws7jbw4"))))
18625 (build-system asdf-build-system/sbcl)
18626 (native-inputs
18627 (list sbcl-osicat sbcl-prove))
18628 (home-page "https://github.com/cbeo/gtwiwtg/")
18629 (synopsis "Naive generators for Common Lisp")
18630 (description
18631 "The GTWIWTG library (Generators The Way I Want Them Generated --
18632technically not generators, but iterators) is meant to be small, explorable,
18633and understandable.")
18634 (license license:gpl3)))
18635
18636(define-public cl-gtwiwtg
18637 (sbcl-package->cl-source-package sbcl-gtwiwtg))
18638
18639(define-public ecl-gtwiwtg
18640 (sbcl-package->ecl-package sbcl-gtwiwtg))
18641
18642(define-public sbcl-gtype
18643 (let ((commit "2442e32485635525af278ebd8fa69a27d5b8cf18")
18644 (revision "2"))
18645 (package
18646 (name "sbcl-gtype")
18647 (version (git-version "0.1" revision commit))
18648 (source
18649 (origin
18650 (method git-fetch)
18651 (uri (git-reference
18652 (url "https://github.com/numcl/gtype")
18653 (commit commit)))
18654 (file-name (git-file-name name version))
18655 (sha256
18656 (base32 "0hbkfdw00v7bsa6zbric34p5w6hfwxycccg8wc2faq0cxhsvpv9h"))))
18657 (build-system asdf-build-system/sbcl)
18658 (synopsis "C++/Julia-like parametric types in Common Lisp")
18659 (description
18660 "Support library for numcl that provides Julia-like runtime parametric
18661type correctness in Common Lisp. It is based on CLtL2 extensions.")
18662 (home-page "https://github.com/numcl/gtype")
18663 (license license:lgpl3+)
18664 (inputs
18665 (list sbcl-trivialib-type-unify
18666 sbcl-trivial-cltl2
18667 sbcl-trivia
18668 sbcl-alexandria
18669 sbcl-iterate
18670 sbcl-type-r))
18671 (native-inputs
18672 (list sbcl-fiveam)))))
18673
18674(define-public cl-gtype
18675 (sbcl-package->cl-source-package sbcl-gtype))
18676
18677(define-public ecl-gtype
18678 (let ((pkg (sbcl-package->ecl-package sbcl-gtype)))
18679 (package
18680 (inherit pkg)
18681 (arguments
18682 (substitute-keyword-arguments arguments
18683 ;; The tests fail on ECL with a COMPILE-FILE-ERROR for t/package.lisp.
18684 ((#:tests? _ #f) #f))))))
18685
18686(define-public sbcl-harmony
18687 (let ((commit "0b57483cc0341936c201b620f82a8542c606991f")
18688 (revision "0"))
18689 (package
18690 (name "sbcl-harmony")
18691 (version (git-version "2.0.0" revision commit))
18692 (source
18693 (origin
18694 (method git-fetch)
18695 (uri (git-reference
18696 (url "https://github.com/Shirakumo/harmony")
18697 (commit commit)))
18698 (file-name (git-file-name "cl-harmony" version))
18699 (sha256
18700 (base32 "0pqmfi3yi3gi7b7dyayrb621hp60rn7hasq0cl0fis3vg0fp5dja"))))
18701 (build-system asdf-build-system/sbcl)
18702 (inputs
18703 (list sbcl-atomics
18704 sbcl-bordeaux-threads
18705 sbcl-cl-mixed
18706 sbcl-stealth-mixin
18707 sbcl-trivial-features))
18708 (home-page "https://shirakumo.github.io/harmony/")
18709 (synopsis "Common Lisp sound server and sound processing library")
18710 (description
18711 "HARMONY is a library that provides you with audio processing tools as
18712well as an audio server to play back music, sfx, and so forth. It is most
18713suited for use in a game engine, but may feasibly also be used for more
18714advanced things such as a DAW")
18715 (license license:zlib))))
18716
18717(define-public cl-harmony
18718 (sbcl-package->cl-source-package sbcl-harmony))
18719
18720(define-public ecl-harmony
18721 (sbcl-package->ecl-package sbcl-harmony))
18722
18723(define-public sbcl-hash-set
18724 (let ((commit "6feb20de457f14e24a83815be1097aa02cca5986")
18725 (revision "0"))
18726 (package
18727 (name "sbcl-hash-set")
18728 (version (git-version "0.0.0" revision commit))
18729 (source
18730 (origin
18731 (method git-fetch)
18732 (uri (git-reference
18733 (url "https://github.com/samebchase/hash-set")
18734 (commit commit)))
18735 (file-name (git-file-name "cl-hash-set" version))
18736 (sha256
18737 (base32 "0a966y9yfarhmki4wwzg371ziaygnp13yc6r13w9zz327fkhz8na"))))
18738 (build-system asdf-build-system/sbcl)
18739 (native-inputs (list sbcl-fiveam))
18740 (inputs (list sbcl-alexandria))
18741 (home-page "https://github.com/samebchase/hash-set/")
18742 (synopsis "Implementation of a hash-set")
18743 (description "This package provides an implementation of the
18744hash-set data structure. It has constant time lookup, insertion and
18745deletion.")
18746 (license license:unlicense))))
18747
18748(define-public cl-hash-set
18749 (sbcl-package->cl-source-package sbcl-hash-set))
18750
18751(define-public ecl-hash-set
18752 (sbcl-package->ecl-package sbcl-hash-set))
18753
18754(define-public sbcl-hdf5-cffi
18755 (let ((commit "5b5c88f191e470e4fe96b462334e3ce0806eed5c")
18756 (revision "1"))
18757 (package
18758 (name "sbcl-hdf5-cffi")
18759 (version (git-version "1.8.18" revision commit))
18760 (source
18761 (origin
18762 (method git-fetch)
18763 (uri (git-reference
18764 (url "https://github.com/hdfgroup/hdf5-cffi")
18765 (commit commit)))
18766 (file-name (git-file-name "cl-hdf5-cffi" version))
18767 (sha256
18768 (base32 "0vda3075423xz83qky998lpac5b04dwfv7bwgh9jq8cs5v0zrxjf"))))
18769 (build-system asdf-build-system/sbcl)
18770 (synopsis "Common Lisp bindings for the HDF5 library")
18771 (description
18772 "@code{hdf5-cffi} is a CFFI wrapper for the HDF5 library.")
18773 (home-page "https://github.com/hdfgroup/hdf5-cffi")
18774 (license (license:non-copyleft
18775 (string-append "https://github.com/HDFGroup/hdf5-cffi/raw/"
18776 commit
18777 "/LICENSE")))
18778 (inputs
18779 (list hdf5 sbcl-cffi))
18780 (native-inputs
18781 (list sbcl-fiveam))
18782 (arguments
18783 (list #:phases
18784 #~(modify-phases %standard-phases
18785 (add-after 'unpack 'fix-paths
18786 (lambda* (#:key inputs #:allow-other-keys)
18787 (substitute* "src/library.lisp"
18788 (("libhdf5.so")
18789 (search-input-file inputs "/lib/libhdf5.so")))))
18790 (add-after 'fix-paths 'fix-newer-hdf5-compatibility
18791 (lambda _
18792 (substitute* (list "src/h5-grovel.lisp"
18793 "src/h5a-grovel.lisp"
18794 "src/h5d-grovel.lisp"
18795 "src/h5f-grovel.lisp"
18796 "src/h5g-grovel.lisp"
18797 "src/h5i-grovel.lisp"
18798 "src/h5l-grovel.lisp"
18799 "src/h5o-grovel.lisp"
18800 "src/h5p-grovel.lisp"
18801 "src/h5pl-grovel.lisp"
18802 "src/h5r-grovel.lisp"
18803 "src/h5s-grovel.lisp"
18804 "src/h5t-grovel.lisp"
18805 "src/h5z-grovel.lisp")
18806 (("_H5private_H")
18807 "H5private_H")
18808 (("\\(\\(:H5I-REFERENCE \"H5I_REFERENCE\"\\)\\)")
18809 ""))))
18810 (add-after 'unpack 'fix-dependencies
18811 (lambda* (#:key inputs #:allow-other-keys)
18812 (substitute* "hdf5-cffi.asd"
18813 ((":depends-on \\(:cffi\\)")
18814 ":depends-on (:cffi :cffi-grovel)"))
18815 (substitute* "hdf5-cffi.test.asd"
18816 ((":depends-on \\(:cffi :hdf5-cffi")
18817 ":depends-on (:cffi :cffi-grovel :hdf5-cffi"))))))))))
18818
18819(define-public cl-hdf5-cffi
18820 (sbcl-package->cl-source-package sbcl-hdf5-cffi))
18821
18822(define-public ecl-hdf5-cffi
18823 (sbcl-package->ecl-package sbcl-hdf5-cffi))
18824
18825(define-public sbcl-helambdap
18826 (let ((commit "5bf65f57a36ee094cadb096caca6e90eb3ba46c4")
18827 (revision "0"))
18828 (package
18829 (name "sbcl-helambdap")
18830 (version (git-version "20220103" revision commit))
18831 (source
18832 (origin
18833 (method git-fetch)
18834 (uri (git-reference
18835 (url "https://git.code.sf.net/p/helambdap/code")
18836 (commit commit)))
18837 (file-name (git-file-name "cl-helambdap" version))
18838 (sha256
18839 (base32 "1kzapbf9l2bw8i9m9sxv0dfnkksrxq81d5hbn34pm25abk0i937j"))))
18840 (build-system asdf-build-system/sbcl)
18841 (inputs
18842 (list sbcl-cl-fad
18843 sbcl-clad
18844 sbcl-split-sequence
18845 sbcl-xhtmlambda))
18846 (synopsis "Common Lisp documentation system")
18847 (description "HELambdap is a Common Lisp documentation system which
18848strives to be simple to use, yet easily customizable.")
18849 (home-page "https://helambdap.sourceforge.net")
18850 (license license:expat))))
18851
18852(define-public cl-helambdap
18853 (sbcl-package->cl-source-package sbcl-helambdap))
18854
18855(define-public sbcl-history-tree
18856 (package
18857 (name "sbcl-history-tree")
18858 (version "0.1.2")
18859 (source
18860 (origin
18861 (method git-fetch)
18862 (uri (git-reference
18863 (url "https://github.com/atlas-engineer/history-tree")
18864 (commit version)))
18865 (file-name (git-file-name "cl-history-tree" version))
18866 (sha256
18867 (base32 "1n3q6aqh0wm24pksj8371j5iinxpzy2kcnz97kmpndm1yhv4x5f2"))))
18868 (build-system asdf-build-system/sbcl)
18869 (inputs
18870 (list
18871 sbcl-alexandria
18872 sbcl-custom-hash-table
18873 sbcl-local-time
18874 sbcl-nclasses
18875 sbcl-trivial-package-local-nicknames))
18876 (native-inputs (list sbcl-lisp-unit2))
18877 (home-page "https://github.com/atlas-engineer/history-tree")
18878 (synopsis "Store the history of a browser's visited paths")
18879 (description
18880 "This data structure can be used to store the history of visited paths or
18881URLs with a file or web browser, in a way that no “forward” element is ever
18882forgotten.
18883
18884The history tree is “global” in the sense that multiple owners (e.g. tabs) can
18885have overlapping histories. On top of that, an owner can spawn another one,
18886starting from one of its nodes (typically when you open a URL in a new tab).")
18887 (license license:bsd-3)))
18888
18889(define-public cl-history-tree
18890 (sbcl-package->cl-source-package sbcl-history-tree))
18891
18892(define-public ecl-history-tree
18893 (sbcl-package->ecl-package sbcl-history-tree))
18894
18895(define-public sbcl-html-encode
18896 (package
18897 (name "sbcl-html-encode")
18898 (version "1.2")
18899 (source
18900 (origin
18901 (method url-fetch)
18902 (uri (string-append
18903 "http://beta.quicklisp.org/archive/html-encode/2010-10-06/html-encode-"
18904 version ".tgz"))
18905 (sha256
18906 (base32
18907 "06mf8wn95yf5swhmzk4vp0xr4ylfl33dgfknkabbkd8n6jns8gcf"))))
18908 (build-system asdf-build-system/sbcl)
18909 (synopsis "Common Lisp library for encoding text in various web-savvy encodings")
18910 (description
18911 "A library for encoding text in various web-savvy encodings.")
18912 (home-page "https://quickdocs.org/html-encode/")
18913 (license license:expat)))
18914
18915(define-public cl-html-encode
18916 (sbcl-package->cl-source-package sbcl-html-encode))
18917
18918(define-public ecl-html-encode
18919 (sbcl-package->ecl-package sbcl-html-encode))
18920
18921(define-public clasp-html-encode
18922 (sbcl-package->clasp-package sbcl-html-encode))
18923
18924(define-public sbcl-html-entities
18925 (let ((commit "4af018048e891f41d77e7d680ed3aeb639e1eedb"))
18926 (package
18927 (name "sbcl-html-entities")
18928 (version (git-version "0.02" "1" commit))
18929 (source
18930 (origin
18931 (method git-fetch)
18932 (uri (git-reference
18933 (url "https://github.com/BnMcGn/html-entities/")
18934 (commit commit)))
18935 (file-name (git-file-name name version))
18936 (sha256
18937 (base32 "1b2yl6lf6vis17y4n5s505p7ica96bdafcl6vydy1hg50fy33nfr"))))
18938 (build-system asdf-build-system/sbcl)
18939 (inputs
18940 (list sbcl-cl-ppcre))
18941 (native-inputs
18942 (list sbcl-fiveam))
18943 (home-page "https://github.com/BnMcGn/html-entities/")
18944 (synopsis "Encode and decode entities in HTML with Common Lisp")
18945 (description "Html-entities is a Common Lisp library that lets you
18946encode and decode entities in HTML.")
18947 (license license:expat))))
18948
18949(define-public cl-html-entities
18950 (sbcl-package->cl-source-package sbcl-html-entities))
18951
18952(define-public ecl-html-entities
18953 (sbcl-package->ecl-package sbcl-html-entities))
18954
18955(define-public sbcl-html-template
18956 (package
18957 (name "sbcl-html-template")
18958 (version "0.9.2")
18959 (source
18960 (origin
18961 (method git-fetch)
18962 (uri (git-reference
18963 (url "https://github.com/edicl/html-template")
18964 (commit (string-append "v" version))))
18965 (file-name (git-file-name name version))
18966 (sha256
18967 (base32 "0wz3czvjsn4x971dsiia9f9nvvcmbkablcl75zsvxndkimc93wxb"))))
18968 (build-system asdf-build-system/sbcl)
18969 (home-page "https://edicl.github.io/html-template/")
18970 (synopsis "HTML templates from Common Lisp")
18971 (description
18972 "HTML-TEMPLATE is a Common Lisp library which can be used to fill
18973templates with arbitrary (string) values at runtime. The result does not have
18974to be HTML.
18975
18976It is loosely modeled after the Perl module @code{HTML::Template} and
18977partially compatible with a its syntax, though both libraries contain some
18978extensions that the other does not support.
18979
18980HTML-TEMPLATE translates templates into efficient closures which can be
18981re-used as often as needed. It uses a cache mechanism so you can update
18982templates while your program is running and have the changes take effect
18983immediately.")
18984 (license license:bsd-2)))
18985
18986(define-public cl-html-template
18987 (sbcl-package->cl-source-package sbcl-html-template))
18988
18989(define-public ecl-html-template
18990 (sbcl-package->ecl-package sbcl-html-template))
18991
18992(define-public clasp-html-template
18993 (sbcl-package->clasp-package sbcl-html-template))
18994
18995(define-public sbcl-http-body
18996 (let ((commit "3e4bedd6a9d9bc4e1dc0a45e5b55360ae30fd388")
18997 (revision "2"))
18998 (package
18999 (name "sbcl-http-body")
19000 (version (git-version "0.1.0" revision commit))
19001 (source
19002 (origin
19003 (method git-fetch)
19004 (uri (git-reference
19005 (url "https://github.com/fukamachi/http-body")
19006 (commit commit)))
19007 (file-name (git-file-name name version))
19008 (sha256
19009 (base32 "0kcg43l5674drzid9cj938q0ki5z25glx296rl239dm7yfmxlzz2"))))
19010 (build-system asdf-build-system/sbcl)
19011 (arguments
19012 '(#:asd-systems '("http-body-test" "http-body")))
19013 (native-inputs
19014 (list sbcl-assoc-utils sbcl-prove sbcl-trivial-utf-8))
19015 (inputs
19016 (list sbcl-babel
19017 sbcl-cl-ppcre
19018 sbcl-fast-http
19019 sbcl-flexi-streams
19020 sbcl-jonathan
19021 sbcl-trivial-gray-streams
19022 sbcl-cl-utilities
19023 sbcl-quri))
19024 (home-page "https://github.com/fukamachi/http-body")
19025 (synopsis "HTTP POST data parser")
19026 (description
19027 "HTTP-Body parses HTTP POST data and returns POST parameters. It
19028supports application/x-www-form-urlencoded, application/json, and
19029multipart/form-data.")
19030 (license license:bsd-2))))
19031
19032(define-public cl-http-body
19033 (sbcl-package->cl-source-package sbcl-http-body))
19034
19035(define-public ecl-http-body
19036 (sbcl-package->ecl-package sbcl-http-body))
19037
19038(define-public sbcl-hu.dwim.asdf
19039 (let ((commit "67cdf84390e530af4303cc4bc815fdf2a5e48f59"))
19040 (package
19041 (name "sbcl-hu.dwim.asdf")
19042 (version "20200724")
19043 (source
19044 (origin
19045 (method git-fetch)
19046 (uri (git-reference
19047 (url "https://github.com/hu-dwim/hu.dwim.asdf")
19048 (commit commit)))
19049 (file-name (git-file-name name version))
19050 (sha256
19051 (base32
19052 "0p81jalilkaqw832a12s35q0z6rrarxjasm1jy6h4fvyj9pf0zkx"))))
19053 (build-system asdf-build-system/sbcl)
19054 (home-page "https://hub.darcs.net/hu.dwim/hu.dwim.asdf")
19055 (synopsis "Extensions to ASDF")
19056 (description "Various ASDF extensions such as attached test and
19057documentation system, explicit development support, etc.")
19058 (license license:public-domain))))
19059
19060(define-public cl-hu.dwim.asdf
19061 (sbcl-package->cl-source-package sbcl-hu.dwim.asdf))
19062
19063(define-public ecl-hu.dwim.asdf
19064 (sbcl-package->ecl-package sbcl-hu.dwim.asdf))
19065
19066(define-public clasp-hu.dwim.asdf
19067 (sbcl-package->clasp-package sbcl-hu.dwim.asdf))
19068
19069(define-public sbcl-hu.dwim.common
19070 (package
19071 (name "sbcl-hu.dwim.common")
19072 (version "2015-07-09")
19073 (source
19074 (origin
19075 (method url-fetch)
19076 (uri (string-append
19077 "http://beta.quicklisp.org/archive/hu.dwim.common/"
19078 version "/hu.dwim.common-"
19079 (string-replace-substring version "-" "")
19080 "-darcs.tgz"))
19081 (sha256
19082 (base32 "12l1rr6w9m99w0b5gc6hv58ainjfhbc588kz6vwshn4gqsxyzbhp"))))
19083 (build-system asdf-build-system/sbcl)
19084 (native-inputs
19085 (list sbcl-hu.dwim.asdf))
19086 (inputs
19087 (list sbcl-alexandria
19088 sbcl-anaphora
19089 sbcl-closer-mop
19090 sbcl-hu.dwim.common-lisp
19091 sbcl-iterate
19092 sbcl-metabang-bind))
19093 (home-page "https://dwim.hu/")
19094 (synopsis "Common Lisp library shared by other hu.dwim systems")
19095 (description "This package contains a support library for other
19096hu.dwim systems.")
19097 (license license:public-domain)))
19098
19099(define-public cl-hu.dwim.common
19100 (sbcl-package->cl-source-package sbcl-hu.dwim.common))
19101
19102(define-public ecl-hu.dwim.common
19103 (sbcl-package->ecl-package sbcl-hu.dwim.common))
19104
19105(define-public sbcl-hu.dwim.common-lisp
19106 (let ((commit "90558195773383142a57a16687d5e7f4adea6418"))
19107 (package
19108 (name "sbcl-hu.dwim.common-lisp")
19109 (version "2021-01-27")
19110 (source
19111 (origin
19112 (method git-fetch)
19113 (uri (git-reference
19114 (url "https://github.com/hu-dwim/hu.dwim.common-lisp/")
19115 (commit commit)))
19116 (file-name (git-file-name name version))
19117 (sha256
19118 (base32 "06zkdw3scnaw0d4nmsgkv7pi7sw00dikdgfgsqmbqfbz2yrsdabk"))))
19119 (build-system asdf-build-system/sbcl)
19120 (native-inputs
19121 (list sbcl-hu.dwim.asdf))
19122 (home-page "http://dwim.hu/project/hu.dwim.common-lisp")
19123 (synopsis "Redefine some standard Common Lisp names")
19124 (description "This library is a redefinition of the standard Common Lisp
19125package that includes a number of renames and shadows.")
19126 (license license:public-domain))))
19127
19128(define-public cl-hu.dwim.common-lisp
19129 (sbcl-package->cl-source-package sbcl-hu.dwim.common-lisp))
19130
19131(define-public ecl-hu.dwim.common-lisp
19132 (sbcl-package->ecl-package sbcl-hu.dwim.common-lisp))
19133
19134(define-public sbcl-hu.dwim.defclass-star
19135 (let ((commit "3086878a485074f9b2913c58267a9b764cd632fd"))
19136 (package
19137 (name "sbcl-hu.dwim.defclass-star")
19138 ;; We used to set version from the date when it was a darcs repo, so we
19139 ;; keep the year so that package gets updated on previous installs.
19140 (version (git-version "2021" "2" commit))
19141 (source
19142 (origin
19143 (method git-fetch)
19144 (uri (git-reference
19145 (url "https://github.com/hu-dwim/hu.dwim.defclass-star")
19146 (commit commit)))
19147 (file-name (git-file-name name version))
19148 (sha256
19149 (base32 "19ipds9r71qymfdp4izg0l7zmvinp06adr8rdalhaq7v7mzpg83z"))))
19150 (build-system asdf-build-system/sbcl)
19151 (native-inputs
19152 (list ;; These 2 inputs are only needed tests which are disabled, see below.
19153 ;; ("hu.dwim.common" ,sbcl-hu.dwim.common)
19154 ;; Need cl- package for the :hu.dwim.stefil+hu.dwim.def+swank system.
19155 ;; ("hu.dwim.stefil" ,cl-hu.dwim.stefil)
19156 sbcl-hu.dwim.asdf))
19157 (arguments
19158 `(;; Tests require a circular dependency: hu.dwim.stefil -> hu.dwim.def
19159 ;; -> hu.dwim.util -> hu.dwim.defclass-star.
19160 #:tests? #f))
19161 (home-page "https://github.com/hu-dwim/hu.dwim.defclass-star")
19162 (synopsis "Simplify definitions with defclass* and friends in Common Lisp")
19163 (description "@code{defclass-star} provides defclass* and defcondition* to
19164simplify class and condition declarations. Features include:
19165
19166@itemize
19167@item Automatically export all or select slots at compile time.
19168@item Define the @code{:initarg} and @code{:accessor} automatically.
19169@item Specify a name transformer for both the @code{:initarg} and
19170@code{:accessor}, etc.
19171@item Specify the @code{:initform} as second slot value.
19172@end itemize
19173
19174See
19175@url{https://common-lisp.net/project/defclass-star/configuration.lisp.html}
19176for an example.")
19177 (license license:public-domain))))
19178
19179(define-public cl-hu.dwim.defclass-star
19180 (sbcl-package->cl-source-package sbcl-hu.dwim.defclass-star))
19181
19182(define-public ecl-hu.dwim.defclass-star
19183 (sbcl-package->ecl-package sbcl-hu.dwim.defclass-star))
19184
19185(define-public sbcl-hu.dwim.graphviz
19186 (let ((commit "31522ca8b9a04d535b7cec20ef24d8bf3b26d52b")
19187 (revision "1"))
19188 (package
19189 (name "sbcl-hu.dwim.graphviz")
19190 (version (git-version "0.0.0" revision commit))
19191 (source
19192 (origin
19193 (method git-fetch)
19194 (uri (git-reference
19195 (url "https://github.com/hu-dwim/hu.dwim.graphviz")
19196 (commit commit)))
19197 (file-name (git-file-name "cl-hu.dwim.graphviz" version))
19198 (sha256
19199 (base32 "0cz5g7d6817ajypp876k9m65sxxlf42x4bg04ya73aqci5s1vjwy"))))
19200 (build-system asdf-build-system/sbcl)
19201 (arguments
19202 (list #:phases
19203 #~(modify-phases %standard-phases
19204 (add-after 'unpack 'patch-graphviz-lib-path
19205 (lambda* (#:key inputs #:allow-other-keys)
19206 (substitute* "source/package.lisp"
19207 (("libgvc.so")
19208 (search-input-file inputs "/lib/libgvc.so"))))))))
19209 (native-inputs
19210 (list sbcl-hu.dwim.common sbcl-hu.dwim.stefil))
19211 (inputs
19212 (list graphviz sbcl-cffi sbcl-metabang-bind))
19213 (home-page "https://github.com/hu-dwim/hu.dwim.graphviz")
19214 (synopsis "Graphviz layouting using CFFI bindings")
19215 (description
19216 "This package provides CFFI bindings to the Graphviz library in Common
19217Lisp.")
19218 (license license:public-domain))))
19219
19220(define-public cl-hu.dwim.graphviz
19221 (sbcl-package->cl-source-package sbcl-hu.dwim.graphviz))
19222
19223(define-public ecl-hu.dwim.graphviz
19224 (sbcl-package->ecl-package sbcl-hu.dwim.graphviz))
19225
19226(define-public sbcl-hunchenissr
19227 (let ((commit "7df702f2e110999a2f31c7ebad81bfc39ac06670")
19228 (revision "1"))
19229 (package
19230 (name "sbcl-hunchenissr")
19231 (version (git-version "1" revision commit))
19232 (source
19233 (origin
19234 (method git-fetch)
19235 (uri (git-reference
19236 (url "https://github.com/interactive-ssr/hunchenissr")
19237 (commit commit)))
19238 (file-name (git-file-name "hunchenissr" version))
19239 (sha256
19240 (base32 "0826qrvk64pjspdklns29dv3zhzfhd6k42fq030xajv8a7hkcxda"))))
19241 (build-system asdf-build-system/sbcl)
19242 (inputs
19243 (list sbcl-cl-base64
19244 sbcl-cl-str
19245 sbcl-hunchentoot
19246 sbcl-issr-core
19247 sbcl-jonathan
19248 sbcl-plump
19249 sbcl-portal))
19250 (home-page "https://github.com/interactive-ssr/hunchenissr")
19251 (synopsis "Interactive Server Side Rendering backend for Hunchentoot")
19252 (description
19253 "Hunchenissr works together with issr.js for the development of
19254interactive (changing without page refreshes) websites making use of websocket
19255and Common Lisp server HTML generation instead of mountains of convoluted
19256Javascript.")
19257 (license license:llgpl))))
19258
19259(define-public cl-hunchenissr
19260 (sbcl-package->cl-source-package sbcl-hunchenissr))
19261
19262(define-public ecl-hunchenissr
19263 (sbcl-package->ecl-package sbcl-hunchenissr))
19264
19265(define-public sbcl-hunchenissr-routes
19266 (let ((commit "2e831975dc2a6c030f1b518747cf429be8484b31")
19267 (revision "1"))
19268 (package
19269 (name "sbcl-hunchenissr-routes")
19270 (version (git-version "0" revision commit))
19271 (source
19272 (origin
19273 (method git-fetch)
19274 (uri (git-reference
19275 (url "https://github.com/interactive-ssr/hunchenissr-routes")
19276 (commit commit)))
19277 (file-name (git-file-name "hunchenissr-routes" version))
19278 (sha256
19279 (base32 "1xyqacihxwk4vnffqlg93czmalscglp6sh3bwy3qwb7hdxv6yxz6"))))
19280 (build-system asdf-build-system/sbcl)
19281 (inputs
19282 (list sbcl-alexandria sbcl-cl-ppcre sbcl-cl-unification
19283 sbcl-hunchenissr))
19284 (home-page "https://github.com/interactive-ssr/hunchenissr-routes")
19285 (synopsis "Enable path variables when using Hunchenissr")
19286 (description
19287 "This library enables path variables in networking routes when using
19288Hunchenissr for Common Lisp. If a part of the path (between two slashes)
19289starts with a question mark (?), that symbol (without question mark) will be
19290bound to whatever value was in the same place in the URL (as a string).")
19291 (license license:llgpl))))
19292
19293(define-public cl-hunchenissr-routes
19294 (sbcl-package->cl-source-package sbcl-hunchenissr-routes))
19295
19296(define-public ecl-hunchenissr-routes
19297 (sbcl-package->ecl-package sbcl-hunchenissr-routes))
19298
19299(define-public sbcl-hunchensocket
19300 (let ((commit "faf2c08452f18763e541bc7f121760669ac0f41a")
19301 (revision "0"))
19302 (package
19303 (name "sbcl-hunchensocket")
19304 (version (git-version "1.0.0" revision commit))
19305 (source
19306 (origin
19307 (method git-fetch)
19308 (uri (git-reference
19309 (url "https://github.com/joaotavora/hunchensocket/")
19310 (commit commit)))
19311 (file-name (git-file-name name version))
19312 (sha256
19313 (base32 "1vhd009lwl62l1czmhsalblxmyz4x9v3nspjflpajwm1db5rnd7h"))))
19314 (build-system asdf-build-system/sbcl)
19315 (native-inputs (list sbcl-fiasco))
19316 (inputs
19317 (list
19318 sbcl-hunchentoot
19319 sbcl-alexandria
19320 sbcl-cl-base64
19321 sbcl-sha1
19322 sbcl-flexi-streams
19323 sbcl-chunga
19324 sbcl-trivial-utf-8
19325 sbcl-trivial-backtrace
19326 sbcl-cl-fad))
19327 (home-page "https://github.com/joaotavora/hunchensocket")
19328 (synopsis "RFC6455 compliant WebSockets for Common Lisp")
19329 (description
19330 "This library provides a WebSockets extension for the Huchentoot web server.")
19331 (license license:expat))))
19332
19333(define-public cl-hunchensocket
19334 (sbcl-package->cl-source-package sbcl-hunchensocket))
19335
19336(define-public ecl-hunchensocket
19337 (sbcl-package->ecl-package sbcl-hunchensocket))
19338
19339(define-public sbcl-hunchentoot
19340 (package
19341 (name "sbcl-hunchentoot")
19342 (version "1.3.1")
19343 (source
19344 (origin
19345 (method git-fetch)
19346 (uri (git-reference
19347 (url "https://github.com/edicl/hunchentoot")
19348 (commit (string-append "v" version))))
19349 (file-name (git-file-name "cl-hunchentoot" version))
19350 (sha256
19351 (base32 "0g4lh26l2vd10ilk1hrfmpj6hpjb986jp191ha2j6p2q1pil3kgc"))))
19352 (build-system asdf-build-system/sbcl)
19353 (native-inputs
19354 (list sbcl-cl-who sbcl-drakma))
19355 (inputs
19356 (list sbcl-chunga
19357 sbcl-cl-base64
19358 sbcl-cl-fad
19359 sbcl-cl-ppcre
19360 sbcl-flexi-streams
19361 sbcl-cl+ssl
19362 sbcl-md5
19363 sbcl-rfc2388
19364 sbcl-trivial-backtrace
19365 sbcl-usocket))
19366 (home-page "https://edicl.github.io/hunchentoot/")
19367 (synopsis "Web server written in Common Lisp")
19368 (description
19369 "Hunchentoot is a web server written in Common Lisp and at the same
19370time a toolkit for building dynamic websites. As a stand-alone web server,
19371Hunchentoot is capable of HTTP/1.1 chunking (both directions), persistent
19372connections (keep-alive), and SSL.")
19373 (license license:bsd-2)))
19374
19375(define-public cl-hunchentoot
19376 (sbcl-package->cl-source-package sbcl-hunchentoot))
19377
19378(define-public ecl-hunchentoot
19379 (package
19380 (inherit (sbcl-package->ecl-package sbcl-hunchentoot))
19381 (arguments
19382 ;; Tests fail on ECL with 'Socket error in "socket": EINVAL'.
19383 '(#:tests? #f))))
19384
19385(define-public sbcl-hunchentoot-errors
19386 (let ((commit "69eb3bcea59ed1ccf3dd1960e6d48fb21f1dadab")
19387 (revision "0"))
19388 (package
19389 (name "sbcl-hunchentoot-errors")
19390 (version (git-version "0.0.1" revision commit))
19391 (source
19392 (origin
19393 (method git-fetch)
19394 (uri (git-reference
19395 (url "https://github.com/mmontone/hunchentoot-errors")
19396 (commit commit)))
19397 (file-name (git-file-name "cl-hunchentoot-errors" version))
19398 (sha256
19399 (base32 "0fab7s8qhhs713cw014qqvzm5z61wmxm2fcbkarhg41cz3li9k1j"))))
19400 (build-system asdf-build-system/sbcl)
19401 (inputs
19402 (list sbcl-cl-mimeparse
19403 sbcl-hunchentoot
19404 sbcl-parse-number
19405 sbcl-string-case))
19406 (home-page "https://github.com/mmontone/hunchentoot-errors/")
19407 (synopsis "Hunchentoot error pages and logs with request and session information")
19408 (description
19409 "This package provides a functionality augmenting Hunchentoot error
19410pages and logs with request and session information.")
19411 (license license:expat))))
19412
19413(define-public cl-hunchentoot-errors
19414 (sbcl-package->cl-source-package sbcl-hunchentoot-errors))
19415
19416(define-public ecl-hunchentoot-errors
19417 (sbcl-package->ecl-package sbcl-hunchentoot-errors))
19418
19419(define-public sbcl-hypergeometrica
19420 (let ((commit "db723ceb343d89a1c8d7f9174cf3a76fa91522b5")
19421 (revision "0"))
19422 (package
19423 (name "sbcl-hypergeometrica")
19424 (version (git-version "0.0.0" revision commit))
19425 (source
19426 (origin
19427 (method git-fetch)
19428 (uri (git-reference
19429 (url "https://github.com/stylewarning/hypergeometrica")
19430 (commit commit)))
19431 (file-name (git-file-name "cl-hypergeometrica" version))
19432 (sha256
19433 (base32 "1dfd6w9djgfh7f4z79d8qsyggrwkjlqhs9rxpzpzv092nlwg3l35"))))
19434 (build-system asdf-build-system/sbcl)
19435 (native-inputs
19436 (list sbcl-fiasco))
19437 (inputs
19438 (list sbcl-alexandria
19439 sbcl-cffi
19440 sbcl-global-vars
19441 sbcl-lparallel
19442 sbcl-mmap
19443 sbcl-napa-fft3
19444 sbcl-trivial-garbage))
19445 (home-page "https://github.com/stylewarning/hypergeometrica")
19446 (synopsis "High-precision arithmetic")
19447 (description
19448 "Hypergeometrica is a Common Lisp library for performing high-precision
19449arithmetic, with a focus on performance. At the heart of it all are routines
19450for multiplication. Hypergeometrica aims to support:
19451
19452@itemize
19453@item In-core multiplication using various algorithms, from schoolbook to
19454floating-point FFTs.
19455@item In-core multiplication for large numbers using exact convolutions via
19456number-theoretic transforms, which is enabled by 64-bit modular arithmetic.
19457@item Out-of-core multiplication using derivatives of the original
19458Cooley–Tukey algorithm.
19459@end itemize
19460
19461On top of multiplication, one can build checkpointed algorithms for computing
19462various classical constants, like @math{\\pi}.")
19463 (license license:bsd-3))))
19464
19465(define-public cl-hypergeometrica
19466 (sbcl-package->cl-source-package sbcl-hypergeometrica))
19467
19468(define-public sbcl-idna
19469 (package
19470 (name "sbcl-idna")
19471 (build-system asdf-build-system/sbcl)
19472 (version "0.2.2")
19473 (home-page "https://github.com/antifuchs/idna")
19474 (source
19475 (origin
19476 (method git-fetch)
19477 (uri (git-reference
19478 (url home-page)
19479 (commit version)))
19480 (file-name (git-file-name name version))
19481 (sha256
19482 (base32
19483 "00nbr3mffxhlq14gg9d16pa6691s4qh35inyw76v906s77khm5a2"))))
19484 (inputs
19485 (list sbcl-split-sequence))
19486 (synopsis "IDNA string encoding and decoding routines for Common Lisp")
19487 (description "This Common Lisp library provides string encoding and
19488decoding routines for IDNA, the International Domain Names in Applications.")
19489 (license license:expat)))
19490
19491(define-public cl-idna
19492 (sbcl-package->cl-source-package sbcl-idna))
19493
19494(define-public ecl-idna
19495 (sbcl-package->ecl-package sbcl-idna))
19496
19497(define-public sbcl-ieee-floats
19498 (let ((commit "566b51a005e81ff618554b9b2f0b795d3b29398d")
19499 (revision "1"))
19500 (package
19501 (name "sbcl-ieee-floats")
19502 (build-system asdf-build-system/sbcl)
19503 (version (git-version "20170924" revision commit))
19504 (home-page "https://github.com/marijnh/ieee-floats/")
19505 (source
19506 (origin
19507 (method git-fetch)
19508 (uri (git-reference
19509 (url home-page)
19510 (commit commit)))
19511 (file-name (git-file-name name version))
19512 (sha256
19513 (base32
19514 "1xyj49j9x3lc84cv3dhbf9ja34ywjk1c46dklx425fxw9mkwm83m"))))
19515 (native-inputs
19516 (list sbcl-fiveam))
19517 (synopsis "IEEE 754 binary representation for floats in Common Lisp")
19518 (description "This is a Common Lisp library that converts
19519floating point values to IEEE 754 binary representation.")
19520 (license license:bsd-3))))
19521
19522(define-public cl-ieee-floats
19523 (sbcl-package->cl-source-package sbcl-ieee-floats))
19524
19525(define-public ecl-ieee-floats
19526 (sbcl-package->ecl-package sbcl-ieee-floats))
19527
19528(define-public sbcl-in-memory-streams
19529 (let ((commit "a0812140609d350e6d974711be6acd0566b360cc")
19530 (revision "1"))
19531 (package
19532 (name "sbcl-in-memory-streams")
19533 (version (git-version "2.0" revision commit))
19534 (source
19535 (origin
19536 (method git-fetch)
19537 (uri (git-reference
19538 (url "https://codeberg.org/glv/cl-in-memory-streams")
19539 (commit commit)))
19540 (file-name (git-file-name "cl-in-memory-streams" version))
19541 (sha256
19542 (base32 "1mgdwgf98k5wsxrlvqjjkg6f8ass6gbhcbg1y489v17pwqjhbgaz"))))
19543 (build-system asdf-build-system/sbcl)
19544 (native-inputs
19545 (list sbcl-fiveam))
19546 (inputs
19547 (list sbcl-bordeaux-threads sbcl-trivial-gray-streams))
19548 (synopsis "In-memory streams for any element type")
19549 (description
19550 "This Common Lisp library provides an implementation of in-memory input
19551streams, output streams and io streams for any type of elements.")
19552 (home-page "https://codeberg.org/glv/cl-in-memory-streams")
19553 (license license:gpl3+))))
19554
19555(define-public sbcl-in-nomine
19556 (let ((commit "24bb48d9397344ca9cc66180f828a4e805bfd9f2")
19557 (revision "0"))
19558 (package
19559 (name "sbcl-in-nomine")
19560 (version (git-version "0.0" revision commit))
19561 (source
19562 (origin
19563 (method git-fetch)
19564 (uri (git-reference
19565 (url "https://github.com/phoe/in-nomine")
19566 (commit commit)))
19567 (file-name (git-file-name "cl-nomine" version))
19568 (sha256
19569 (base32 "09gksd6vf1k1mqzh30m2jkb70j53hclidyvy5nqx5838amhxqns4"))))
19570 (build-system asdf-build-system/sbcl)
19571 (native-inputs
19572 (list sbcl-alexandria
19573 sbcl-closer-mop
19574 sbcl-fiveam
19575 sbcl-introspect-environment
19576 sbcl-lisp-namespace))
19577 (inputs
19578 (list sbcl-alexandria
19579 sbcl-trivial-arguments))
19580 (synopsis "Utility for creating, accessing, and managing custom namespaces
19581in Common Lisp")
19582 (description "Utility for creating, accessing, and managing custom
19583namespaces in Common Lisp. Originally started as a fork of LISP-NAMESPACE, it
19584became its own piece of software that is somewhat backwards compatible with
19585it.")
19586 (home-page "https://github.com/phoe/in-nomine")
19587 (license license:llgpl))))
19588
19589(define-public cl-in-nomine
19590 (sbcl-package->cl-source-package sbcl-in-nomine))
19591
19592(define-public ecl-in-nomine
19593 (sbcl-package->ecl-package sbcl-in-nomine))
19594
19595(define-public cl-in-memory-streams
19596 (sbcl-package->cl-source-package sbcl-in-memory-streams))
19597
19598(define-public ecl-in-memory-streams
19599 (sbcl-package->ecl-package sbcl-in-memory-streams))
19600
19601(define-public sbcl-incless
19602 (let ((commit "395accf484ffdff70f20b941f322e8329c585ca7")
19603 (revision "0"))
19604 (package
19605 (name "sbcl-incless")
19606 (version (git-version "0.0.1" revision commit))
19607 (source
19608 (origin
19609 (method git-fetch)
19610 (uri (git-reference
19611 (url "https://github.com/s-expressionists/Incless")
19612 (commit commit)))
19613 (file-name (git-file-name "cl-incless" commit))
19614 (sha256
19615 (base32 "14bkb5zx8xq6wv6dsqi041dwq9scvw3kdjlnkfs2ndazj0rb2a1k"))))
19616 (build-system asdf-build-system/sbcl)
19617 (inputs (list sbcl-alexandria))
19618 ;; See https://github.com/s-expressionists/Incless/issues/6
19619 (arguments '(#:asd-systems '("incless")))
19620 (home-page "https://github.com/s-expressionists/incless")
19621 (synopsis "Implements print-object methods for many standard classes")
19622 (description
19623 "@code{cl-incless} implements print-object methods for many standard
19624classes.")
19625 (license license:bsd-2))))
19626
19627(define-public cl-incless
19628 (sbcl-package->cl-source-package sbcl-incless))
19629
19630(define-public ecl-incless
19631 (sbcl-package->ecl-package sbcl-incless))
19632
19633(define-public clasp-incless
19634 (sbcl-package->clasp-package sbcl-incless))
19635
19636(define-public sbcl-inferior-shell
19637 (let ((commit "15c2d04a7398db965ea1c3ba2d49efa7c851f2c2")
19638 (revision "1"))
19639 (package
19640 (name "sbcl-inferior-shell")
19641 (version (git-version "2.0.5" revision commit))
19642 (source
19643 (origin
19644 (method git-fetch)
19645 (uri (git-reference
19646 (url "https://github.com/fare/inferior-shell")
19647 (commit commit)))
19648 (file-name (git-file-name "inferior-shell" version))
19649 (sha256
19650 (base32 "02qx37zzk5j4xmwh77k2qa2wvnzvaj6qml5dh2q7b6b1ljvgcj4m"))))
19651 (build-system asdf-build-system/sbcl)
19652 (native-inputs
19653 (list sbcl-hu.dwim.stefil))
19654 (inputs
19655 (list sbcl-alexandria sbcl-fare-mop sbcl-fare-quasiquote
19656 sbcl-fare-utils sbcl-trivia))
19657 (home-page "https://github.com/fare/inferior-shell")
19658 (synopsis "Spawn local or remote processes and shell pipes")
19659 (description
19660 "This package provides a Common Lisp system helping in scripting, it
19661uses @code{uiop:run-program} as a backend.")
19662 (license license:expat))))
19663
19664(define-public cl-inferior-shell
19665 (sbcl-package->cl-source-package sbcl-inferior-shell))
19666
19667(define-public ecl-inferior-shell
19668 (sbcl-package->ecl-package sbcl-inferior-shell))
19669
19670(define-public sbcl-infix-math
19671 (let ((commit "f5155ae9709e518061ace79887d78f8e79c61cac")
19672 (revision "0"))
19673 (package
19674 (name "sbcl-infix-math")
19675 (version (git-version "0.0.0" revision commit))
19676 (source
19677 (origin
19678 (method git-fetch)
19679 (uri (git-reference
19680 (url "https://github.com/ruricolist/infix-math")
19681 (commit commit)))
19682 (file-name (git-file-name "cl-infix-math" version))
19683 (sha256
19684 (base32 "1h6p254xl793wfq3qla5y95k6zimy477f8brblx6ran3rg3bydbg"))))
19685 (build-system asdf-build-system/sbcl)
19686 (inputs
19687 (list sbcl-alexandria sbcl-parse-number sbcl-serapeum sbcl-wu-decimal))
19688 (home-page "https://github.com/ruricolist/infix-math")
19689 (synopsis "Extensible infix syntax for math in Common Lisp")
19690 (description
19691 "Infix-Math is a library that provides a special-purpose syntax for
19692transcribing mathematical formulas into Lisp.")
19693 (license license:expat))))
19694
19695(define-public cl-infix-math
19696 (sbcl-package->cl-source-package sbcl-infix-math))
19697
19698(define-public ecl-infix-math
19699 (sbcl-package->ecl-package sbcl-infix-math))
19700
19701(define-public sbcl-inheriting-readers
19702 (package
19703 (name "sbcl-inheriting-readers")
19704 (version "1.0.1")
19705 (source
19706 (origin
19707 (method git-fetch)
19708 (uri (git-reference
19709 (url "https://github.com/Hexstream/inheriting-readers")
19710 (commit (string-append "v" version))))
19711 (file-name (git-file-name "cl-inheriting-readers" version))
19712 (sha256
19713 (base32 "0km3mq6vx1q9qv6j3r4sqqcsdbnb5jar66bl0mzzpaacfvzbx68p"))))
19714 (build-system asdf-build-system/sbcl)
19715 (native-inputs
19716 (list sbcl-parachute))
19717 (inputs
19718 (list sbcl-class-options
19719 sbcl-closer-mop
19720 sbcl-compatible-metaclasses))
19721 (home-page "https://www.hexstreamsoft.com/libraries/inheriting-readers/")
19722 (synopsis "Simple yet powerful value inheritance scheme")
19723 (description
19724 "This package provides a simple yet powerful value inheritance scheme.")
19725 (license license:unlicense)))
19726
19727(define-public cl-inheriting-readers
19728 (sbcl-package->cl-source-package sbcl-inheriting-readers))
19729
19730(define-public ecl-inheriting-readers
19731 (sbcl-package->ecl-package sbcl-inheriting-readers))
19732
19733(define-public sbcl-input-event-codes
19734 (package
19735 (name "sbcl-input-event-codes")
19736 (version "0.0.1")
19737 (source
19738 (origin
19739 (method git-fetch)
19740 (uri (git-reference
19741 (url "https://git.sr.ht/~shunter/input-event-codes")
19742 (commit (string-append "v" version))))
19743 (file-name (git-file-name "cl-input-event-codes" version))
19744 (sha256
19745 (base32 "0bygspj84jzyiy06z4q64z1nzsmvvrviqxw73wzqaq2wk2p56vs6"))))
19746 (build-system asdf-build-system/sbcl)
19747 (native-inputs
19748 (list pkg-config
19749 sbcl-parachute))
19750 (inputs
19751 (list sbcl-trivial-features))
19752 (home-page "https://git.sr.ht/~shunter/input-event-codes")
19753 (synopsis "Event codes for Common Lisp")
19754 (description
19755 "This library is a Common Lisp port of all the constants from the event
19756codes header file found on Linux and FreeBSD.")
19757 (license license:expat)))
19758
19759(define-public cl-input-event-codes
19760 (sbcl-package->cl-source-package sbcl-input-event-codes))
19761
19762(define-public ecl-input-event-codes
19763 (sbcl-package->ecl-package sbcl-input-event-codes))
19764
19765(define-public clasp-input-event-codes
19766 (sbcl-package->clasp-package sbcl-input-event-codes))
19767
19768(define-public sbcl-inquisitor
19769 (let ((commit "423fa9bdd4a68a6ae517b18406d81491409ccae8")
19770 (revision "0"))
19771 (package
19772 (name "sbcl-inquisitor")
19773 (version (git-version "0.5" revision commit))
19774 (source
19775 (origin
19776 (method git-fetch)
19777 (uri (git-reference
19778 (url "https://github.com/t-sin/inquisitor/")
19779 (commit commit)))
19780 (file-name (git-file-name name version))
19781 (sha256
19782 (base32 "08rkmqnwlq6v84wcz9yp31j5lxrsy33kv3dh7n3ccsg4kc54slzw"))))
19783 (build-system asdf-build-system/sbcl)
19784 (native-inputs (list sbcl-prove sbcl-babel))
19785 (inputs (list sbcl-flexi-streams sbcl-alexandria sbcl-anaphora))
19786 (home-page "https://github.com/t-sin/inquisitor")
19787 (synopsis
19788 "Encoding/end-of-line detection and external-format abstraction for Common Lisp")
19789 (description
19790 "Inquisitor is a cross-implementation library providing
19791encoding/end-of-line detection and external-format abstraction for Common Lisp.")
19792 (license license:expat))))
19793
19794(define-public cl-inquisitor
19795 (sbcl-package->cl-source-package sbcl-inquisitor))
19796
19797(define-public ecl-inquisitor
19798 (sbcl-package->ecl-package sbcl-inquisitor))
19799
19800(define-public sbcl-interface
19801 (let ((commit "6d8bd74214053debcbc0b174d65ea73c271c1563")
19802 (revision "0"))
19803 (package
19804 (name "sbcl-interface")
19805 (version (git-version "0.0.0" revision commit))
19806 (source
19807 (origin
19808 (method git-fetch)
19809 (uri (git-reference
19810 (url "https://github.com/stylewarning/interface")
19811 (commit commit)))
19812 (file-name (git-file-name "cl-interface" version))
19813 (sha256
19814 (base32 "0h1bckhyig2znl6nrd3agjzz7knrm2kyh2vfyk7j60kzki9rpzxy"))))
19815 (build-system asdf-build-system/sbcl)
19816 (inputs (list sbcl-alexandria sbcl-global-vars))
19817 (synopsis "System for defining interfaces")
19818 (description
19819 "This library contains an implementation of interfaces and
19820implementations. They're sometimes called protocols in other
19821languages. Broadly speaking, an @emph{interface} is some collection of
19822function @emph{prototypes} that a valid implementation must implement.")
19823 (home-page "https://github.com/stylewarning/interface")
19824 (license license:bsd-3))))
19825
19826(define-public cl-interface
19827 (sbcl-package->cl-source-package sbcl-interface))
19828
19829(define-public ecl-interface
19830 (sbcl-package->ecl-package sbcl-interface))
19831
19832(define-public sbcl-introspect-environment
19833 (let ((commit "8fb20a1a33d29637a22943243d1482a20c32d6ae")
19834 (revision "2"))
19835 (package
19836 (name "sbcl-introspect-environment")
19837 (build-system asdf-build-system/sbcl)
19838 (version (git-version "0.1" revision commit))
19839 (home-page "https://github.com/Bike/introspect-environment")
19840 (source
19841 (origin
19842 (method git-fetch)
19843 (uri (git-reference
19844 (url home-page)
19845 (commit commit)))
19846 (file-name (git-file-name "cl-introspect-environment" version))
19847 (sha256
19848 (base32 "1p48jnr1im47529w0ciyar4hfwbivqi57zgllkmfrav09ffigk9s"))))
19849 (native-inputs
19850 (list sbcl-fiveam))
19851 (synopsis "Common Lisp environment introspection portability layer")
19852 (description "This library is a small interface to portable but
19853nonstandard introspection of Common Lisp environments. It is intended to
19854allow a bit more compile-time introspection of environments in Common Lisp.
19855
19856Quite a bit of information is available at the time a macro or compiler-macro
19857runs; inlining info, type declarations, that sort of thing. This information
19858is all standard - any Common Lisp program can @code{(declare (integer x))} and
19859such.
19860
19861This info ought to be accessible through the standard @code{&environment}
19862parameters, but it is not. Several implementations keep the information for
19863their own purposes but do not make it available to user programs, because
19864there is no standard mechanism to do so.
19865
19866This library uses implementation-specific hooks to make information available
19867to users. This is currently supported on SBCL, CCL, and CMUCL. Other
19868implementations have implementations of the functions that do as much as they
19869can and/or provide reasonable defaults.")
19870 (license license:wtfpl2))))
19871
19872(define-public cl-introspect-environment
19873 (sbcl-package->cl-source-package sbcl-introspect-environment))
19874
19875(define-public ecl-introspect-environment
19876 (sbcl-package->ecl-package sbcl-introspect-environment))
19877
19878(define-public sbcl-iolib
19879 (let ((commit "010b7a6bdd2e918ebf2ec85edd3853179f01cb30")
19880 (revision "0"))
19881 (package
19882 (name "sbcl-iolib")
19883 (version (git-version "0.8.4" revision commit))
19884 (home-page "https://github.com/sionescu/iolib")
19885 (source
19886 (origin
19887 (method git-fetch)
19888 (uri (git-reference
19889 (url home-page)
19890 (commit commit)))
19891 (file-name (git-file-name "cl-iolib" version))
19892 (sha256
19893 (base32 "1qqy2yhprkmdn2vmi69akf818q3n99gv8cacv6456af0wjm5p1ga"))))
19894 (build-system asdf-build-system/sbcl)
19895 (native-inputs
19896 (list pkg-config sbcl-fiveam))
19897 (inputs
19898 (list libfixposix
19899 sbcl-alexandria
19900 sbcl-bordeaux-threads
19901 sbcl-cffi
19902 sbcl-idna
19903 sbcl-split-sequence
19904 sbcl-swap-bytes))
19905 (arguments
19906 '(#:asd-systems '("iolib"
19907 "iolib/os")
19908 #:phases
19909 (modify-phases %standard-phases
19910 (add-after 'unpack 'fix-paths
19911 (lambda* (#:key inputs #:allow-other-keys)
19912 (substitute* "src/syscalls/ffi-functions-unix.lisp"
19913 (("\\(:default \"libfixposix\"\\)")
19914 (string-append
19915 "(:default \""
19916 (assoc-ref inputs "libfixposix") "/lib/libfixposix\")")))
19917 ;; Socket tests need Internet access, disable them.
19918 (substitute* "iolib.asd"
19919 (("\\(:file \"sockets\" :depends-on \\(\"pkgdcl\" \"defsuites\"\\)\\)")
19920 "")))))))
19921 (synopsis "Common Lisp I/O library")
19922 (description "IOlib is to be a better and more modern I/O library than
19923the standard Common Lisp library. It contains a socket library, a DNS
19924resolver, an I/O multiplexer(which supports @code{select(2)}, @code{epoll(4)}
19925and @code{kqueue(2)}), a pathname library and file-system utilities.")
19926 (license license:expat))))
19927
19928(define-public cl-iolib
19929 (let ((parent (sbcl-package->cl-source-package sbcl-iolib)))
19930 (package
19931 (inherit parent)
19932 (propagated-inputs
19933 ;; Need header to compile.
19934 (modify-inputs propagated-inputs
19935 (prepend libfixposix))))))
19936
19937(define-public ecl-iolib
19938 (sbcl-package->ecl-package sbcl-iolib))
19939
19940(define-public sbcl-cl-iparse
19941 (let ((commit "d1cc4caf25ab4c05bc96e7a7306ee3803289f13f")
19942 (revision "0"))
19943 (package
19944 (name "sbcl-cl-iparse")
19945 (version (git-version "0.1.0" revision commit))
19946 (source
19947 (origin
19948 (method git-fetch)
19949 (uri (git-reference
19950 (url "https://github.com/atgreen/cl-iparse")
19951 (commit commit)))
19952 (file-name (git-file-name name version))
19953 (sha256
19954 (base32 "0y5x2bg7plx5famv7w0lkhvwl0ya8majzq4swilhl5w3a1mz3360"))))
19955 (inputs
19956 (list sbcl-alexandria
19957 sbcl-cl-ppcre
19958 sbcl-closer-mop
19959 sbcl-fset))
19960 (build-system asdf-build-system/sbcl)
19961 (arguments
19962 '(#:asd-systems '("iparse")))
19963 (home-page "https://github.com/atgreen/cl-iparse")
19964 (synopsis "Common Lisp port of Clojure's instaparse")
19965 (description
19966 "Common Lisp port of Clojure's instaparse parser library - GLL parsing
19967with EBNF/ABNF support.")
19968 (license license:epl1.0))))
19969
19970(define-public cl-iparse
19971 (sbcl-package->cl-source-package sbcl-cl-iparse))
19972
19973(define-public ecl-cl-iparse
19974 (sbcl-package->ecl-package sbcl-cl-iparse))
19975
19976(define-public clasp-cl-iparse
19977 (sbcl-package->clasp-package sbcl-cl-iparse))
19978
19979(define-public sbcl-ironclad
19980 (package
19981 (name "sbcl-ironclad")
19982 (version "0.61")
19983 (source
19984 (origin
19985 (method git-fetch)
19986 (uri (git-reference
19987 (url "https://github.com/sharplispers/ironclad/")
19988 (commit (string-append "v" version))))
19989 (sha256
19990 (base32 "1yszjy6a0q1jvdgd7fpmnvi9851s8ivp4plscw27lbnl7jlj1pmk"))
19991 (file-name (git-file-name "cl-ironclad" version))))
19992 (build-system asdf-build-system/sbcl)
19993 (native-inputs
19994 ;; Tests only.
19995 (list sbcl-rt))
19996 (inputs
19997 (list sbcl-bordeaux-threads sbcl-flexi-streams))
19998 (synopsis "Cryptographic toolkit written in Common Lisp")
19999 (description
20000 "Ironclad is a cryptography library written entirely in Common Lisp.
20001It includes support for several popular ciphers, digests, MACs and public key
20002cryptography algorithms. For several implementations that support Gray
20003streams, support is included for convenient stream wrappers.")
20004 (home-page "https://github.com/sharplispers/ironclad")
20005 (license license:bsd-3)))
20006
20007(define-public cl-ironclad
20008 (sbcl-package->cl-source-package sbcl-ironclad))
20009
20010(define-public ecl-ironclad
20011 (sbcl-package->ecl-package sbcl-ironclad))
20012
20013(define-public sbcl-issr-core
20014 (let ((commit "64e3b07a63a7ca3ad70ba42474f98ac4513580aa")
20015 (revision "1"))
20016 (package
20017 (name "sbcl-issr-core")
20018 (version (git-version "0.1" revision commit))
20019 (source
20020 (origin
20021 (method git-fetch)
20022 (uri (git-reference
20023 (url "https://github.com/interactive-ssr/core")
20024 (commit commit)))
20025 (file-name (git-file-name "issr-core" version))
20026 (sha256
20027 (base32 "1bajb09crzadkirdpd6jrpcc55irjd4sxzavygr25l85pafyhniw"))))
20028 (build-system asdf-build-system/sbcl)
20029 (inputs
20030 (list sbcl-cl-str sbcl-global-vars sbcl-plump sbcl-tailrec))
20031 (home-page
20032 "https://github.com/interactive-ssr/client/blob/master/main.org")
20033 (synopsis "The core functionality for ISSR server modules")
20034 (description
20035 "ISSR core provides functions and variables for ISSR server modules so
20036that different servers can behave similarly. The most important features are
20037Document Object Model differencing to generate instructions to update a DOM,
20038and DOM cleaning, to ensure that all remote DOMs are the same.")
20039 (license license:llgpl))))
20040
20041(define-public cl-issr-core
20042 (sbcl-package->cl-source-package sbcl-issr-core))
20043
20044(define-public ecl-issr-core
20045 (sbcl-package->ecl-package sbcl-issr-core))
20046
20047(define-public sbcl-iterate
20048 (package
20049 (name "sbcl-iterate")
20050 (version "1.5.3")
20051 (source
20052 (origin
20053 (method git-fetch)
20054 (uri (git-reference
20055 (url "https://gitlab.common-lisp.net/iterate/iterate.git")
20056 (commit version)))
20057 (file-name (git-file-name "cl-iterate" version))
20058 (sha256
20059 (base32 "0l6l8fpgcpwpmi00jwmamxbspbqa8fil6dv11bf9gaxxbw41f8c2"))))
20060 (build-system asdf-build-system/sbcl)
20061 (native-inputs
20062 (list sbcl-rt))
20063 (home-page "https://common-lisp.net/project/iterate/")
20064 (synopsis "Iteration construct for Common Lisp")
20065 (description "@code{iterate} is an iteration construct for Common Lisp.
20066It is similar to the @code{CL:LOOP} macro, with these distinguishing marks:
20067
20068@itemize
20069@item it is extensible,
20070@item it helps editors like Emacs indent iterate forms by having a more
20071 lisp-like syntax, and
20072@item it isn't part of the ANSI standard for Common Lisp.
20073@end itemize\n")
20074 (license license:expat)))
20075
20076(define-public cl-iterate
20077 (sbcl-package->cl-source-package sbcl-iterate))
20078
20079(define-public ecl-iterate
20080 (sbcl-package->ecl-package sbcl-iterate))
20081
20082(define-public clasp-iterate
20083 (package
20084 (inherit (sbcl-package->clasp-package sbcl-iterate))
20085 (arguments
20086 ;; Tests are broken on clasp.
20087 (list #:tests? #f))))
20088
20089(define-public sbcl-ixf
20090 (let ((commit "ed26f87e4127e4a9e3aac4ff1e60d1f39cca5183")
20091 (revision "1"))
20092 (package
20093 (name "sbcl-ixf")
20094 (version (git-version "0.1.0" revision commit))
20095 (source
20096 (origin
20097 (method git-fetch)
20098 (uri (git-reference
20099 (url "https://github.com/dimitri/cl-ixf")
20100 (commit commit)))
20101 (file-name (git-file-name "cl-ixf" version))
20102 (sha256
20103 (base32 "1wjdnf4vr9z7lcfc49kl43g6l2i23q9n81siy494k17d766cdvqa"))))
20104 (build-system asdf-build-system/sbcl)
20105 (inputs
20106 (list sbcl-alexandria
20107 sbcl-babel
20108 sbcl-cl-ppcre
20109 sbcl-ieee-floats
20110 sbcl-local-time
20111 sbcl-md5
20112 sbcl-split-sequence))
20113 (home-page "https://github.com/dimitri/cl-ixf")
20114 (synopsis "Parse IBM IXF file format")
20115 (description
20116 "This is a Common Lisp library to handle the IBM PC version of the IXF
20117(Integration Exchange Format) file format.")
20118 (license license:public-domain))))
20119
20120(define-public cl-ixf
20121 (sbcl-package->cl-source-package sbcl-ixf))
20122
20123(define-public ecl-ixf
20124 (sbcl-package->ecl-package sbcl-ixf))
20125
20126(define-public sbcl-jonathan
20127 (let ((commit "1f448b4f7ac8265e56e1c02b32ce383e65316300")
20128 (revision "1"))
20129 (package
20130 (name "sbcl-jonathan")
20131 (version (git-version "0.1.0" revision commit))
20132 (source
20133 (origin
20134 (method git-fetch)
20135 (uri (git-reference
20136 (url "https://github.com/Rudolph-Miller/jonathan")
20137 (commit commit)))
20138 (file-name (git-file-name name version))
20139 (sha256
20140 (base32 "14x4iwz3mbag5jzzzr4sb6ai0m9r4q4kyypbq32jmsk2dx1hi807"))))
20141 (build-system asdf-build-system/sbcl)
20142 (native-inputs
20143 (list sbcl-prove sbcl-legion))
20144 (inputs
20145 (list sbcl-cl-syntax sbcl-fast-io sbcl-proc-parse sbcl-cl-ppcre))
20146 (home-page "https://rudolph-miller.github.io/jonathan/overview.html")
20147 (synopsis "JSON encoder and decoder")
20148 (description
20149 "High performance JSON encoder and decoder. Currently support: SBCL,
20150CCL.")
20151 ;; Author specifies the MIT license
20152 (license license:expat))))
20153
20154(define-public cl-jonathan
20155 (sbcl-package->cl-source-package sbcl-jonathan))
20156
20157(define-public ecl-jonathan
20158 (sbcl-package->ecl-package sbcl-jonathan))
20159
20160(define-public sbcl-jose
20161 (let ((commit "5b9f42dd4144138e41d75ec67ca46e6e91728f2c")
20162 (revision "0"))
20163 (package
20164 (name "sbcl-jose")
20165 (build-system asdf-build-system/sbcl)
20166 (version (git-version "0.1.0" revision commit))
20167 (home-page "https://github.com/fukamachi/jose")
20168 (source
20169 (origin
20170 (method git-fetch)
20171 (uri (git-reference
20172 (url home-page)
20173 (commit commit)))
20174 (file-name (git-file-name "cl-jose" version))
20175 (sha256
20176 (base32 "1z7xjy4ihxa8ay5vznhnxkjflfx6xmfpgwxdakk9wmkw30p2yn4h"))))
20177 (native-inputs (list sbcl-pem sbcl-rove))
20178 (inputs
20179 (list sbcl-alexandria
20180 sbcl-assoc-utils
20181 sbcl-cl-base64
20182 sbcl-ironclad
20183 sbcl-jonathan
20184 sbcl-split-sequence
20185 sbcl-trivial-utf-8))
20186 (synopsis "JOSE implementation for Common Lisp")
20187 (description "A JSON Object Signing and Encryption (JOSE)
20188implementation for Common Lisp.")
20189 (license license:bsd-2))))
20190
20191(define-public cl-jose
20192 (sbcl-package->cl-source-package sbcl-jose))
20193
20194(define-public ecl-jose
20195 (sbcl-package->ecl-package sbcl-jose))
20196
20197(define-public sbcl-jpeg-turbo
20198 (let ((commit "f79c646cc266c107bdace53572a31664754c6e0c")
20199 (revision "1"))
20200 (package
20201 (name "sbcl-jpeg-turbo")
20202 (version (git-version "1.0" revision commit))
20203 (source
20204 (origin
20205 (method git-fetch)
20206 (uri (git-reference
20207 (url "https://github.com/shamazmazum/jpeg-turbo/")
20208 (commit commit)))
20209 (file-name (git-file-name "cl-jpeg-turbo" version))
20210 (sha256
20211 (base32 "1andd1ibbk3224idnpsnrn96flr5d1wm9ja3di57fs04wn577sag"))))
20212 (build-system asdf-build-system/sbcl)
20213 (arguments
20214 (list #:phases
20215 #~(modify-phases %standard-phases
20216 (add-after 'unpack 'fix-lib-paths
20217 (lambda* (#:key inputs #:allow-other-keys)
20218 (substitute* "src/jpeg-turbo.lisp"
20219 (("\"libturbojpeg\\.so\\.0\"")
20220 (string-append "\""
20221 (search-input-file inputs
20222 "/lib/libturbojpeg.so")
20223 "\""))))))))
20224 (native-inputs
20225 (list sbcl-fiveam))
20226 (inputs
20227 (list libjpeg-turbo sbcl-cffi))
20228 (synopsis "Common Lisp wrapper for libjpeg-turbo")
20229 (description
20230 "This is a Common Lisp wrapper for libjpeg-turbo library which provides
20231TurboJPEG API for compressing and decompressing JPEG images.")
20232 (home-page "https://github.com/shamazmazum/jpeg-turbo/")
20233 (license license:bsd-2))))
20234
20235(define-public cl-jpeg-turbo
20236 (sbcl-package->cl-source-package sbcl-jpeg-turbo))
20237
20238(define-public ecl-jpeg-turbo
20239 (sbcl-package->ecl-package sbcl-jpeg-turbo))
20240
20241(define-public sbcl-jpl-queues
20242 (package
20243 (name "sbcl-jpl-queues")
20244 (version "0.1")
20245 (source
20246 (origin
20247 (method url-fetch)
20248 (uri (string-append
20249 "http://www.thoughtcrime.us/software/jpl-queues/jpl-queues-"
20250 version
20251 ".tar.gz"))
20252 (sha256
20253 (base32
20254 "1wvvv7j117h9a42qaj1g4fh4mji28xqs7s60rn6d11gk9jl76h96"))))
20255 (build-system asdf-build-system/sbcl)
20256 (inputs
20257 (list sbcl-jpl-util
20258 sbcl-bordeaux-threads))
20259 (arguments
20260 ;; Tests seem to be broken.
20261 `(#:tests? #f))
20262 (synopsis "Common Lisp library implementing a few different kinds of queues")
20263 (description
20264 "A Common Lisp library implementing a few different kinds of queues:
20265
20266@itemize
20267@item Bounded and unbounded FIFO queues.
20268@item Lossy bounded FIFO queues that drop elements when full.
20269@item Unbounded random-order queues that use less memory than unbounded FIFO queues.
20270@end itemize
20271
20272Additionally, a synchronization wrapper is provided to make any queue
20273conforming to the @command{jpl-queues} API thread-safe for lightweight
20274multithreading applications. (See Calispel for a more sophisticated CL
20275multithreaded message-passing library with timeouts and alternation among
20276several blockable channels.)")
20277 (home-page "https://www.thoughtcrime.us/software/jpl-queues/")
20278 (license license:isc)))
20279
20280(define-public cl-jpl-queues
20281 (sbcl-package->cl-source-package sbcl-jpl-queues))
20282
20283(define-public ecl-jpl-queues
20284 (sbcl-package->ecl-package sbcl-jpl-queues))
20285
20286(define-public sbcl-jpl-util
20287 (let ((commit "0311ed374e19a49d43318064d729fe3abd9a3b62"))
20288 (package
20289 (name "sbcl-jpl-util")
20290 (version "20151005")
20291 (source
20292 (origin
20293 (method git-fetch)
20294 (uri (git-reference
20295 ;; Quicklisp uses this fork.
20296 (url "https://github.com/hawkir/cl-jpl-util")
20297 (commit commit)))
20298 (file-name
20299 (git-file-name "jpl-util" version))
20300 (sha256
20301 (base32
20302 "0nc0rk9n8grkg3045xsw34whmcmddn2sfrxki4268g7kpgz0d2yz"))))
20303 (build-system asdf-build-system/sbcl)
20304 (synopsis "Collection of Common Lisp utility functions and macros")
20305 (description
20306 "@command{cl-jpl-util} is a collection of Common Lisp utility functions
20307and macros, primarily for software projects written in CL by the author.")
20308 (home-page "https://www.thoughtcrime.us/software/cl-jpl-util/")
20309 (license license:isc))))
20310
20311(define-public cl-jpl-util
20312 (sbcl-package->cl-source-package sbcl-jpl-util))
20313
20314(define-public ecl-jpl-util
20315 (sbcl-package->ecl-package sbcl-jpl-util))
20316
20317(define-public clasp-jpl-util
20318 (sbcl-package->clasp-package sbcl-jpl-util))
20319
20320(define-public sbcl-json-mop
20321 (let ((commit "66705776dec7056fabba09646d726782baf019d9")
20322 (revision "0"))
20323 (package
20324 (name "sbcl-json-mop")
20325 (version (git-version "0.0.0" revision commit))
20326 (source
20327 (origin
20328 (method git-fetch)
20329 (uri (git-reference
20330 (url "https://github.com/gschjetne/json-mop")
20331 (commit commit)))
20332 (file-name (git-file-name name commit))
20333 (sha256
20334 (base32 "1q6mmq64hf4v448bnzfh8nxsxg5h18a9snh785r1fnvv1aij3fi1"))))
20335 (build-system asdf-build-system/sbcl)
20336 (arguments
20337 (list
20338 #:asd-systems ''("json-mop")))
20339 (native-inputs
20340 (list ))
20341 (inputs
20342 (list sbcl-closer-mop
20343 sbcl-yason
20344 sbcl-anaphora))
20345 (home-page "https://github.com/gschjetne/json-mop")
20346 (synopsis "Metaclass for bridging CLOS and JSON")
20347 (description "Small library aiming to cut down time spent moving data
20348between CLOS and JSON objects. It depends on YASON and it should be possible to
20349use it alongside straight calls to functions from YASON.")
20350 (license license:expat))))
20351
20352(define-public ecl-json-mop
20353 (sbcl-package->ecl-package sbcl-json-mop))
20354
20355(define-public cl-json-mop
20356 (sbcl-package->cl-source-package sbcl-json-mop))
20357
20358(define-public sbcl-json-streams
20359 (let ((commit "5da012e8133affbf75024e7500feb37394690752")
20360 (revision "1"))
20361 (package
20362 (name "sbcl-json-streams")
20363 (version (git-version "0.0.0" revision commit))
20364 (source
20365 (origin
20366 (method git-fetch)
20367 (uri (git-reference
20368 (url "https://github.com/rotatef/json-streams")
20369 (commit commit)))
20370 (file-name (git-file-name "json-streams" version))
20371 (sha256
20372 (base32 "0cia3721im04q73dfkd688d8splgpz03qa4h8s3r39kar4w3xll2"))))
20373 (build-system asdf-build-system/sbcl)
20374 (native-inputs
20375 (list sbcl-cl-quickcheck sbcl-flexi-streams))
20376 (home-page "https://github.com/rotatef/json-streams")
20377 (synopsis "Common Lisp library for reading and writing JSON")
20378 (description
20379 "This package provides a stream based JSON parser/writer, well suited as
20380building block for higher level libraries.")
20381 (license license:gpl3+))))
20382
20383(define-public cl-json-streams
20384 (sbcl-package->cl-source-package sbcl-json-streams))
20385
20386(define-public ecl-json-streams
20387 (sbcl-package->ecl-package sbcl-json-streams))
20388
20389(define-public clasp-json-streams
20390 (sbcl-package->clasp-package sbcl-json-streams))
20391
20392(define-public sbcl-jsonrpc
20393 (let ((commit "2af1e0fad429ee8c706b86c4a853248cdd1be933")
20394 (revision "2"))
20395 (package
20396 (name "sbcl-jsonrpc")
20397 (version (git-version "0.3.2" revision commit))
20398 (source
20399 (origin
20400 (method git-fetch)
20401 (uri (git-reference
20402 (url "https://github.com/cxxxr/jsonrpc")
20403 (commit commit)))
20404 (file-name (git-file-name "jsonrpc" version))
20405 (sha256
20406 (base32 "0kd550fsklsc4h0fj8jl6g4z5ldb8ba9dn68s7ykv3myaiwgsy1p"))))
20407 (build-system asdf-build-system/sbcl)
20408 (native-inputs (list sbcl-rove))
20409 (inputs (list sbcl-clack
20410 sbcl-http-body
20411 sbcl-lack
20412 sbcl-yason
20413 sbcl-bordeaux-threads
20414 sbcl-event-emitter
20415 sbcl-alexandria
20416 sbcl-dissect
20417 sbcl-trivial-timeout
20418 sbcl-chanl
20419 sbcl-vom
20420 sbcl-usocket
20421 sbcl-websocket-driver))
20422 (home-page "https://github.com/cxxxr/jsonrpc")
20423 (synopsis "JSON-RPC 2.0 server/client for Common Lisp")
20424 (description
20425 "This package provides a JSON-RPC 2.0 server/client for Common Lisp.")
20426 (license license:bsd-2))))
20427
20428(define-public cl-jsonrpc
20429 (sbcl-package->cl-source-package sbcl-jsonrpc))
20430
20431(define-public ecl-jsonrpc
20432 (sbcl-package->ecl-package sbcl-jsonrpc))
20433
20434(define-public sbcl-jsown
20435 (let ((commit "744c4407bef58dfa876d9da0b5c0205d869e7977"))
20436 (package
20437 (name "sbcl-jsown")
20438 (version (git-version "1.0.1" "1" commit))
20439 (source
20440 (origin
20441 (method git-fetch)
20442 (uri (git-reference
20443 (url "https://github.com/madnificent/jsown")
20444 (commit commit)))
20445 (file-name (git-file-name name commit))
20446 (sha256
20447 (base32 "0gadvmf1d9bq35s61z76psrsnzwwk12svi66jigf491hv48wigw7"))))
20448 (build-system asdf-build-system/sbcl)
20449 (home-page "https://github.com/madnificent/jsown")
20450 (synopsis "Fast JSON reader / writer library for Common Lisp")
20451 (description
20452 "@code{jsown} is a high performance Common Lisp JSON parser. Its aim
20453is to allow for the fast parsing of JSON objects in Common Lisp. Recently,
20454functions and macros have been added to ease the burden of writing and editing
20455@code{jsown} objects.
20456
20457@code{jsown} allows you to parse JSON objects quickly to a modifiable Lisp
20458list and write them back. If you only need partial retrieval of objects,
20459@code{jsown} allows you to select the keys which you would like to see parsed.
20460@code{jsown} also has a JSON writer and some helper methods to alter the JSON
20461objects themselves.")
20462 (license license:expat))))
20463
20464(define-public cl-jsown
20465 (sbcl-package->cl-source-package sbcl-jsown))
20466
20467(define-public ecl-jsown
20468 (sbcl-package->ecl-package sbcl-jsown))
20469
20470(define-public clasp-jsown
20471 (sbcl-package->clasp-package sbcl-jsown))
20472
20473(define-public sbcl-just-getopt-parser
20474 (package
20475 (name "sbcl-just-getopt-parser")
20476 (version "2021.11")
20477 (source
20478 (origin
20479 (method git-fetch)
20480 (uri (git-reference
20481 (url "https://github.com/tlikonen/cl-just-getopt-parser")
20482 (commit version)))
20483 (sha256
20484 (base32 "0ngh8b51ngh3bqacl40j6wwiinhwxswsy02d9k7qlzv9sbjxay4s"))
20485 (file-name (git-file-name "cl-just-getopt-parser" version))))
20486 (build-system asdf-build-system/sbcl)
20487 (synopsis "Getopt-like command-line parser for Common Lisp")
20488 (description
20489 "This package provides the @code{getopt} function to parse command-line
20490options. The options are organized in valid options, other arguments and
20491unknown arguments. Optional Lisp conditions for error situations are also
20492defined.")
20493 (home-page "https://github.com/tlikonen/cl-just-getopt-parser")
20494 (license license:cc0)))
20495
20496(define-public cl-just-getopt-parser
20497 (sbcl-package->cl-source-package sbcl-just-getopt-parser))
20498
20499(define-public ecl-just-getopt-parser
20500 (sbcl-package->ecl-package sbcl-just-getopt-parser))
20501
20502(define-public clasp-just-getopt-parser
20503 (sbcl-package->clasp-package sbcl-just-getopt-parser))
20504
20505(define-public sbcl-jzon
20506 (package
20507 (name "sbcl-jzon")
20508 (version "1.1.4")
20509 (source
20510 (origin
20511 (method git-fetch)
20512 (uri (git-reference
20513 (url "https://github.com/Zulu-Inuoe/jzon")
20514 (commit (string-append "v" version))))
20515 (file-name (git-file-name "cl-jzon" version))
20516 (sha256
20517 (base32 "0z7xpylyk8rakz449rxqpz4hazn91ap2dnf0689iigdvvl3yqz3g"))))
20518 (build-system asdf-build-system/sbcl)
20519 (arguments
20520 '(#:asd-systems '("com.inuoe.jzon")
20521 #:asd-test-systems '("com.inuoe.jzon-tests")
20522 #:phases
20523 (modify-phases %standard-phases
20524 (add-after 'unpack 'fix-test-asd
20525 (lambda _
20526 (substitute* "test/com.inuoe.jzon-tests.asd"
20527 ((":depends-on")
20528 (string-append
20529 ":perform (test-op (op c) (symbol-call :fiveam :run!"
20530 " (find-symbol \"JZON\" :com.inuoe.jzon-tests)))"
20531 "\n"
20532 " :depends-on"))))))))
20533 (native-inputs
20534 (list sbcl-alexandria
20535 sbcl-fiveam))
20536 (inputs
20537 (list sbcl-closer-mop
20538 sbcl-flexi-streams
20539 sbcl-float-features
20540 sbcl-trivial-gray-streams))
20541 (home-page "https://github.com/Zulu-Inuoe/jzon/")
20542 (synopsis "Correct and safe JSON parser")
20543 (description
20544 "@code{jzon} is a correct and safe JSON RFC 8259 parser for Common Lisp.")
20545 (license license:expat)))
20546
20547(define-public cl-jzon
20548 (sbcl-package->cl-source-package sbcl-jzon))
20549
20550(define-public ecl-jzon
20551 (sbcl-package->ecl-package sbcl-jzon))
20552
20553(define-public sbcl-kdlcl
20554 (let ((commit "dd4a48a3473c3c8fb34d4a37f87d6a1776c5875c")
20555 (revision "0"))
20556 (package
20557 (name "sbcl-kdlcl")
20558 (version (git-version "1.0" revision commit))
20559 (source
20560 (origin
20561 (method git-fetch)
20562 (uri (git-reference
20563 (url "https://github.com/chee/kdlcl")
20564 (commit commit)))
20565 (file-name (git-file-name "cl-kdlcl" version))
20566 (sha256
20567 (base32 "0bqqxkd6s420ld2hmhvbbvpzss0m2kimmxaqhz7j1ksmq86bvvmj"))))
20568 (build-system asdf-build-system/sbcl)
20569 (arguments `(#:asd-systems '("kdl")))
20570 (inputs (list sbcl-esrap sbcl-parse-number))
20571 (home-page "https://github.com/chee/kdlcl/")
20572 (synopsis "KDL reader/printer for Common Lisp")
20573 (description "This package provides a KDL reader/writer for
20574 Common Lisp.")
20575 (license license:expat-0))))
20576
20577(define-public cl-kdlcl
20578 (sbcl-package->cl-source-package sbcl-kdlcl))
20579
20580(define-public ecl-kdlcl
20581 (sbcl-package->ecl-package sbcl-kdlcl))
20582
20583(define-public sbcl-kebab
20584 (let ((commit "e7f77644c4e46131e7b8039d191d35fe6211f31b")
20585 (revision "1"))
20586 (package
20587 (name "sbcl-kebab")
20588 (version (git-version "0.1" revision commit))
20589 (home-page "https://github.com/pocket7878/kebab")
20590 (source
20591 (origin
20592 (method git-fetch)
20593 (uri (git-reference
20594 (url home-page)
20595 (commit commit)))
20596 (file-name (git-file-name name version))
20597 (sha256
20598 (base32 "0j5haabnvj0vz0rx9mwyfsb3qzpga9nickbjw8xs6vypkdzlqv1b"))))
20599 (build-system asdf-build-system/sbcl)
20600 (inputs
20601 (list sbcl-cl-ppcre
20602 sbcl-alexandria
20603 sbcl-cl-interpol
20604 sbcl-split-sequence))
20605 (native-inputs
20606 (list sbcl-prove))
20607 (arguments
20608 ;; Tests passes but the phase fails with
20609 ;; Component KEBAB-ASD::KEBAB-TEST not found, required by #<SYSTEM "kebab">.
20610 `(#:tests? #f))
20611 (synopsis "Common Lisp case converter")
20612 (description "This Common Lisp library converts strings, symbols and
20613keywords between any of the following typographical cases: PascalCase,
20614camelCase, snake_case, kebab-case (lisp-case).")
20615 (license license:llgpl))))
20616
20617(define-public cl-kebab
20618 (sbcl-package->cl-source-package sbcl-kebab))
20619
20620(define-public ecl-kebab
20621 (sbcl-package->ecl-package sbcl-kebab))
20622
20623(define-public sbcl-kmrcl
20624 (let ((version "1.111")
20625 (commit "4a27407aad9deb607ffb8847630cde3d041ea25a")
20626 (revision "1"))
20627 (package
20628 (name "sbcl-kmrcl")
20629 (version (git-version version revision commit))
20630 (source
20631 (origin
20632 (method git-fetch)
20633 (uri (git-reference
20634 (url "http://git.kpe.io/kmrcl.git/")
20635 (commit commit)))
20636 (file-name (git-file-name name version))
20637 (sha256
20638 (base32 "06gx04mah5nc8w78s0j8628divbf1s5w7af8w7pvzb2d5mgvrbd2"))
20639 (modules '((guix build utils)))
20640 (snippet
20641 ;; The useless bundled debian folder drags `make' into the closure.
20642 `(begin
20643 (delete-file-recursively "debian")
20644 #t))))
20645 (build-system asdf-build-system/sbcl)
20646 (inputs
20647 (list sbcl-rt))
20648 (home-page "http://files.kpe.io/kmrcl/")
20649 (synopsis "General utilities for Common Lisp programs")
20650 (description
20651 "KMRCL is a collection of utilities used by a number of Kevin
20652Rosenberg's Common Lisp packages.")
20653 (license license:llgpl))))
20654
20655(define-public cl-kmrcl
20656 (sbcl-package->cl-source-package sbcl-kmrcl))
20657
20658(define-public ecl-kmrcl
20659 (sbcl-package->ecl-package sbcl-kmrcl))
20660
20661(define-public clasp-kmrcl
20662 (sbcl-package->clasp-package sbcl-kmrcl))
20663
20664(define-public sbcl-kons-9
20665 (let ((commit "fe0b3228ca28c316457d35f9e7c67edc83b2a4cc")
20666 (revision "0"))
20667 (package
20668 (name "sbcl-kons-9")
20669 (version (git-version "0.0.0" revision commit))
20670 (source
20671 (origin
20672 (method git-fetch)
20673 (uri (git-reference
20674 (url "https://github.com/kaveh808/kons-9")
20675 (commit commit)))
20676 (file-name (git-file-name "cl-kons-9" version))
20677 (sha256
20678 (base32 "1kdwva4qj1s5vmbv6gbmpnk56ahaf8n2kvij5xjlfyk7nriy4bbi"))))
20679 (build-system asdf-build-system/sbcl)
20680 (arguments
20681 `(#:asd-systems '("kons-9")
20682 #:asd-test-systems '("kons-9/testsuite")))
20683 (native-inputs
20684 (list sbcl-alexandria sbcl-confidence))
20685 (inputs
20686 (list sbcl-closer-mop
20687 sbcl-cffi
20688 sbcl-cl-glfw3
20689 sbcl-cl-opengl
20690 sbcl-cl-vectors
20691 sbcl-clobber
20692 sbcl-origin
20693 sbcl-trivial-backtrace
20694 sbcl-trivial-main-thread
20695 sbcl-zpb-ttf))
20696 (home-page "https://github.com/kaveh808/kons-9")
20697 (synopsis "Common Lisp 3D graphics system")
20698 (description
20699 "This package provides KONS-9 which can be considered as a traditional user
20700interface driven 3D application for general artists, or as a REPL-based
20701development environment for technical artists and software developers. These two
20702approaches can be seamlessly combined into a flexible and powerful workflow,
20703where non-technical users can immediately benefit from software tools and
20704extensions developed by technical users.")
20705 (license (list license:expat
20706 ;; lib/JMC-font-libs/font-master
20707 ;; lib/JMC-font-libs/font-zpb-ttf-master
20708 license:lgpl2.1)))))
20709
20710(define-public cl-kons-9
20711 (sbcl-package->cl-source-package sbcl-kons-9))
20712
20713;; TODO: (Sharlatan-20221110T230620+0000): ECL is not supported yet.
20714;; https://github.com/kaveh808/kons-9/issues/176
20715;; (define-public ecl-kons-9
20716;; (sbcl-package->ecl-package sbcl-kons-9))
20717
20718(define-public sbcl-lack
20719 (let ((commit "35d3a8e03cab9204eec88c7dfe4d5366fc2ea922")
20720 (revision "1"))
20721 (package
20722 (name "sbcl-lack")
20723 (version (git-version "0.3.0" revision commit))
20724 (source
20725 (origin
20726 (method git-fetch)
20727 (uri (git-reference
20728 (url "https://github.com/fukamachi/lack")
20729 (commit commit)))
20730 (file-name (git-file-name "cl-lack" version))
20731 (sha256
20732 (base32 "1yrhhzn8ywdjxwpaxzlnsm2lslhy45r89brn8gh5n08mdyjlp4l2"))
20733 (patches (search-patches "sbcl-lack-fix-tests.patch"))))
20734 (build-system asdf-build-system/sbcl)
20735 (native-inputs
20736 (list sbcl-cl-cookie
20737 sbcl-dexador
20738 sbcl-hunchentoot
20739 sbcl-prove))
20740 (inputs
20741 (list sbcl-alexandria
20742 sbcl-anypool
20743 sbcl-bordeaux-threads
20744 sbcl-circular-streams
20745 sbcl-cl-base64
20746 sbcl-cl-isaac
20747 sbcl-cl-redis
20748 sbcl-dbi
20749 sbcl-http-body
20750 sbcl-ironclad
20751 sbcl-local-time
20752 sbcl-quri
20753 sbcl-trivial-mimes
20754 sbcl-trivial-rfc-1123))
20755 (arguments
20756 '(#:asd-systems '("lack"
20757 "lack-app-directory"
20758 "lack-app-file"
20759 "lack-component"
20760 "lack-middleware-accesslog"
20761 "lack-middleware-auth-basic"
20762 "lack-middleware-backtrace"
20763 "lack-middleware-csrf"
20764 "lack-middleware-dbpool"
20765 "lack-middleware-mount"
20766 "lack-middleware-session"
20767 "lack-middleware-static"
20768 "lack-request"
20769 "lack-response"
20770 "lack-session-store-dbi"
20771 "lack-session-store-redis"
20772 "lack-util"
20773 "lack-util-writer-stream")))
20774 (home-page "https://github.com/fukamachi/lack")
20775 (synopsis "Lack, the core of Clack")
20776 (description
20777 "Lack is a Common Lisp library which allows web applications to be
20778constructed of modular components. It was originally a part of Clack, however
20779it's going to be rewritten as an individual project since Clack v2 with
20780performance and simplicity in mind.")
20781 (license license:expat))))
20782
20783(define-public cl-lack
20784 (sbcl-package->cl-source-package sbcl-lack))
20785
20786(define-public ecl-lack
20787 (sbcl-package->ecl-package sbcl-lack))
20788
20789(define-public sbcl-lambda-fiddle
20790 (let ((commit "d16bba55acf6065b412f64ab8fdff679a4a32b1e") ;; no tagged branch
20791 (revision "1"))
20792 (package
20793 (name "sbcl-lambda-fiddle")
20794 (version (git-version "1.0.0" revision commit))
20795 (source
20796 (origin
20797 (method git-fetch)
20798 (uri (git-reference
20799 (url "https://codeberg.org/shinmera/lambda-fiddle")
20800 (commit commit)))
20801 (file-name (git-file-name name version))
20802 (sha256
20803 (base32 "1zarj1pqjqmk95kdx1axkgpwy2wq3canczk7f9z5hvaw5an6gand"))))
20804 (build-system asdf-build-system/sbcl)
20805 (home-page "https://codeberg.org/shinmera/lambda-fiddle")
20806 (synopsis "Collection of utilities to process lambda-lists")
20807 (description "This collection of utilities is useful in contexts where
20808you want a macro that uses lambda-lists in some fashion but need more precise
20809processing.")
20810 (license license:zlib))))
20811
20812(define-public cl-lambda-fiddle
20813 (sbcl-package->cl-source-package sbcl-lambda-fiddle))
20814
20815(define-public ecl-lambda-fiddle
20816 (sbcl-package->ecl-package sbcl-lambda-fiddle))
20817
20818(define-public clasp-lambda-fiddle
20819 (sbcl-package->clasp-package sbcl-lambda-fiddle))
20820
20821(define-public sbcl-language-codes
20822 (let ((commit "e7aa0e37cb97a3d37d6bc7316b479d01bff8f42e"))
20823 (package
20824 (name "sbcl-language-codes")
20825 (version (git-version "1.0.0" "1" commit))
20826 (source
20827 (origin
20828 (method git-fetch)
20829 (uri (git-reference
20830 (url "https://codeberg.org/shinmera/language-codes")
20831 (commit commit)))
20832 (file-name (git-file-name name commit))
20833 (sha256
20834 (base32 "0py176ibmsc01n5r0q1bs1ykqf5jwdbh8kx0j1a814l9y51241v0"))))
20835 (build-system asdf-build-system/sbcl)
20836 (inputs
20837 (list sbcl-documentation-utils))
20838 (home-page "https://shinmera.com/docs/language-codes/")
20839 (synopsis "Map ISO language codes to language names in Common Lisp")
20840 (description
20841 "This is a small library providing the ISO-639 language code to
20842language name mapping.")
20843 (license license:zlib))))
20844
20845(define-public cl-language-codes
20846 (sbcl-package->cl-source-package sbcl-language-codes))
20847
20848(define-public ecl-language-codes
20849 (sbcl-package->ecl-package sbcl-language-codes))
20850
20851(define-public clasp-language-codes
20852 (sbcl-package->clasp-package sbcl-language-codes))
20853
20854(define-public sbcl-langutils
20855 (let ((commit "38beec7a82eeb35b0bfb0824a41d13ed94fc648b")
20856 (revision "0"))
20857 (package
20858 (name "sbcl-langutils")
20859 (version (git-version "1.0" revision commit))
20860 (source
20861 (origin
20862 (method git-fetch)
20863 (uri (git-reference
20864 (url "https://github.com/eslick/cl-langutils")
20865 (commit commit)))
20866 (file-name (git-file-name "cl-langutils" version))
20867 (sha256
20868 (base32 "15y9x5wkg3fqndc04w2sc650fnwimxp4gjgpv9xvvdm9x4v433x6"))))
20869 (build-system asdf-build-system/sbcl)
20870 (inputs
20871 (list sbcl-stdutils
20872 sbcl-s-xml-rpc))
20873 (arguments
20874 (list #:tests? #f ; There are no tests.
20875 #:phases
20876 #~(modify-phases %standard-phases
20877 (add-after 'unpack 'fix-build
20878 (lambda _
20879 ;; Remove a declaration causing a type conflict with
20880 ;; recent versions of SBCL.
20881 (substitute* "src/my-meta.lisp"
20882 (("\\(type simple-base-string ,source-symbol\\)")
20883 "")))))))
20884 (home-page "https://langutils.common-lisp.dev/")
20885 (synopsis "Common Lisp natural language processing toolkit")
20886 (description
20887 "This package provides a hierarchy of major functions and auxiliary
20888functions related to the structured analysis and processing of open
20889text.")
20890 (license license:bsd-3))))
20891
20892(define-public cl-langutils
20893 (sbcl-package->cl-source-package sbcl-langutils))
20894
20895(define-public ecl-langutils
20896 (sbcl-package->ecl-package sbcl-langutils))
20897
20898(define-public sbcl-lass
20899 (let ((commit "1f2418dbf2d8d6f5892171057616b2ca9d6e5008")
20900 (revision "1"))
20901 (package
20902 (name "sbcl-lass")
20903 (version (git-version "0.6.0" revision commit))
20904 (source
20905 (origin
20906 (method git-fetch)
20907 (uri
20908 (git-reference
20909 (url "https://codeberg.org/shinmera/LASS")
20910 (commit commit)))
20911 (file-name (git-file-name "cl-lass" version))
20912 (sha256
20913 (base32 "1wax2kykc9ff0sk2linp9v8fcsm5ay6idpq365vivady9fh504r5"))))
20914 (build-system asdf-build-system/sbcl)
20915 (inputs
20916 (list sbcl-cl-base64 sbcl-trivial-indent sbcl-trivial-mimes))
20917 (synopsis "LASS (Lisp Augmented Style Sheets) compiles Lisp to CSS")
20918 (description
20919 "With lispy syntax, shortcuts, and improvements, LASS aims to help you
20920out in writing CSS quick and easy. LASS was largely inspired by SASS. LASS
20921supports two modes, one being directly in your lisp code, the other in pure
20922LASS files.")
20923 (home-page "https://shinmera.com/docs/LASS/")
20924 (license license:zlib))))
20925
20926(define-public cl-lass
20927 (sbcl-package->cl-source-package sbcl-lass))
20928
20929(define-public ecl-lass
20930 (sbcl-package->ecl-package sbcl-lass))
20931
20932(define-public sbcl-legion
20933 (let ((commit "599cca19f0e34246814621f7fe90322221c2e263")
20934 (revision "1"))
20935 (package
20936 (name "sbcl-legion")
20937 (version (git-version "0.1.1" revision commit))
20938 (source
20939 (origin
20940 (method git-fetch)
20941 (uri (git-reference
20942 (url "https://github.com/fukamachi/legion/")
20943 (commit commit)))
20944 (file-name (git-file-name "cl-legion" version))
20945 (sha256
20946 (base32 "0583pw0mf8bd4dj42w2xrlzcwfkl8q28n1bh8dpxxfg93crx4si6"))))
20947 (build-system asdf-build-system/sbcl)
20948 (native-inputs
20949 (list sbcl-prove sbcl-local-time))
20950 (inputs
20951 (list
20952 sbcl-bordeaux-threads
20953 sbcl-cl-speedy-queue
20954 sbcl-vom))
20955 (home-page "https://github.com/fukamachi/legion")
20956 (synopsis "Simple multithreading worker mechanism for Common Lisp")
20957 (description
20958 "This library provides a simple multithreading worker mechanism.")
20959 (license license:bsd-3))))
20960
20961(define-public cl-legion
20962 (sbcl-package->cl-source-package sbcl-legion))
20963
20964(define-public ecl-legion
20965 (package
20966 (inherit (sbcl-package->ecl-package sbcl-legion))
20967 (arguments
20968 ;; Tests get stuck forever
20969 (list #:tests? #f))))
20970
20971(define-public sbcl-legit
20972 (let ((commit "877147a3b4b17dff49a4ca21a30e067b7750aee8")
20973 (revision "4"))
20974 (package
20975 (name "sbcl-legit")
20976 (version (git-version "1.0.0" revision commit))
20977 (source
20978 (origin
20979 (method git-fetch)
20980 (uri (git-reference
20981 (url "https://codeberg.org/shinmera/legit")
20982 (commit commit)))
20983 (file-name (git-file-name "cl-legit" version))
20984 (sha256
20985 (base32 "06cvplibn21nm9l4k3j4rik549wrcbscjfrz00l0gmxh68qsqy31"))))
20986 (build-system asdf-build-system/sbcl)
20987 (arguments
20988 `(#:phases
20989 (modify-phases %standard-phases
20990 (add-after 'unpack 'patch-git-executable
20991 (lambda* (#:key inputs #:allow-other-keys)
20992 (substitute* "process.lisp"
20993 (("\"git")
20994 (string-append "\"" (search-input-file inputs
20995 "/bin/git")))))))))
20996 (inputs
20997 (list git
20998 sbcl-cl-ppcre
20999 sbcl-documentation-utils
21000 sbcl-lambda-fiddle
21001 sbcl-simple-inferiors))
21002 (home-page "https://codeberg.org/shinmera/legit")
21003 (synopsis "Interface to the git binary")
21004 (description
21005 "This is an interface to the @code{git} binary to make controlling it
21006from within Common Lisp much easier. It might not ever reach full coverage of
21007all features given git's immense size, but features will be added as they are
21008needed. The low-level command API is fully mapped however.")
21009 (license license:zlib))))
21010
21011(define-public cl-legit
21012 (sbcl-package->cl-source-package sbcl-legit))
21013
21014(define-public ecl-legit
21015 (sbcl-package->ecl-package sbcl-legit))
21016
21017(define-public sbcl-lem-extension-manager
21018 (let ((commit "cb19321345d6fd13dc3ca59d4d5b9a6b14cc00b1")
21019 (revision "0"))
21020 (package
21021 (name "sbcl-lem-extension-manager")
21022 (version (git-version "0.0.0" revision commit))
21023 (source
21024 (origin
21025 (method git-fetch)
21026 (uri (git-reference
21027 (url "https://github.com/lem-project/lem-extension-manager")
21028 (commit commit)))
21029 (sha256
21030 (base32 "1g210cfrbjbdb395wnzb5hax2isq0d5990jhzcxj7kp171dydynf"))
21031 (file-name (git-file-name "cl-lem-extension-manager" version))))
21032 (build-system asdf-build-system/sbcl)
21033 (inputs (list sbcl-alexandria))
21034 (synopsis "Configuration library for the Lem editor")
21035 (description
21036 "This package provides a configuration library that adds the ability for
21037Lem to manage packages within the user configuration directory.")
21038 (home-page "https://lem-project.github.io/")
21039 (license license:expat))))
21040
21041(define-public cl-lem-extension-manager
21042 (sbcl-package->cl-source-package sbcl-lem-extension-manager))
21043
21044(define-public ecl-lem-extension-manager
21045 (sbcl-package->ecl-package sbcl-lem-extension-manager))
21046
21047(define-public clasp-lem-extension-manager
21048 (sbcl-package->clasp-package sbcl-lem-extension-manager))
21049
21050(define-public sbcl-lem-mailbox
21051 (let ((commit "12d629541da440fadf771b0225a051ae65fa342a")
21052 (revision "0"))
21053 (package
21054 (name "sbcl-lem-mailbox")
21055 (version (git-version "0.0.0" revision commit))
21056 (source
21057 (origin
21058 (method git-fetch)
21059 (uri (git-reference
21060 (url "https://github.com/lem-project/lem-mailbox")
21061 (commit commit)))
21062 (sha256
21063 (base32 "1qh9yq9ks0paplmbx0vj4nynx86igkv9kli396plpg9vc14qdgl5"))
21064 (file-name (git-file-name "cl-lem-mailbox" version))))
21065 (build-system asdf-build-system/sbcl)
21066 (native-inputs (list sbcl-rove))
21067 (inputs
21068 (list sbcl-bordeaux-threads
21069 sbcl-bt-semaphore
21070 sbcl-queues))
21071 (synopsis "ANSI CL adaptation of the SBCL mailbox utility")
21072 (description
21073 "This package provides an ANSI CL adaptation of the SBCL mailbox utility.")
21074 (home-page "https://github.com/lem-project/lem-mailbox")
21075 (license license:expat))))
21076
21077(define-public cl-lem-mailbox
21078 (sbcl-package->cl-source-package sbcl-lem-mailbox))
21079
21080(define-public ecl-lem-mailbox
21081 (sbcl-package->ecl-package sbcl-lem-mailbox))
21082
21083(define-public sbcl-let-over-lambda
21084 (let ((commit "481b2e3ab4646186451dfdd2062113203287d520")
21085 (revision "1"))
21086 (package
21087 (name "sbcl-let-over-lambda")
21088 (version (git-version "1.0.1" revision commit))
21089 (source
21090 (origin
21091 (method git-fetch)
21092 (uri (git-reference
21093 (url "https://github.com/thephoeron/let-over-lambda")
21094 (commit commit)))
21095 (file-name (git-file-name "cl-let-over-lambda" version))
21096 (sha256
21097 (base32 "114p781lwi9lrbzg27dnkymz9m4cvm1k430j7qsykwd0b58d8qbk"))))
21098 (build-system asdf-build-system/sbcl)
21099 (arguments
21100 ;; All test cases pass, but tests successfully fail at the end:
21101 ;;
21102 ;; Summary:
21103 ;; All 1 file passed.
21104 ;; Unhandled ASDF/FIND-COMPONENT:MISSING-DEPENDENCY in thread
21105 ;; #<SB-THREAD:THREAD "main thread" RUNNING {1001860103}>:
21106 ;; Component LET-OVER-LAMBDA-ASD::LET-OVER-LAMBDA-TEST not found,
21107 ;; required by #<SYSTEM "let-over-lambda">
21108 `(#:tests? #f))
21109 (inputs
21110 (list sbcl-alexandria
21111 sbcl-cl-ppcre
21112 sbcl-named-readtables))
21113 (native-inputs
21114 (list sbcl-prove))
21115 (home-page "https://github.com/thephoeron/let-over-lambda")
21116 (synopsis "Macros from Let Over Lambda")
21117 (description
21118 "This package provides Doug Hoyte's \"Production\" version of macros
21119from the Let Over Lambda book, including community updates.")
21120 (license license:bsd-3))))
21121
21122(define-public cl-let-over-lambda
21123 (sbcl-package->cl-source-package sbcl-let-over-lambda))
21124
21125(define-public ecl-let-over-lambda
21126 (sbcl-package->ecl-package sbcl-let-over-lambda))
21127
21128(define-public sbcl-let-plus
21129 (let ((commit "455e657e077235829b197f7ccafd596fcda69e30")
21130 (revision "2"))
21131 (package
21132 (name "sbcl-let-plus")
21133 (version (git-version "0.0.0" revision commit))
21134 (source
21135 (origin
21136 (method git-fetch)
21137 (uri (git-reference
21138 (url "https://github.com/sharplispers/let-plus")
21139 (commit commit)))
21140 (sha256
21141 (base32 "00c0nq6l4zb692rzsc9aliqzj3avrssfyz4bhxzl7f1jsz3m29jb"))
21142 (file-name (git-file-name "cl-let-plus" version))))
21143 (build-system asdf-build-system/sbcl)
21144 (inputs
21145 (list sbcl-alexandria sbcl-anaphora))
21146 (native-inputs
21147 (list sbcl-lift))
21148 (synopsis "Destructuring extension of let*")
21149 (description
21150 "This library implements the let+ macro, which is a dectructuring
21151extension of let*. It features:
21152
21153@itemize
21154@item Clean, consistent syntax and small implementation (less than 300 LOC,
21155not counting tests)
21156@item Placeholder macros allow editor hints and syntax highlighting
21157@item @command{&ign} for ignored values (in forms where that makes sense)
21158@item Very easy to extend
21159@end itemize\n")
21160 (home-page "https://github.com/sharplispers/let-plus")
21161 (license license:boost1.0))))
21162
21163(define-public cl-let-plus
21164 (sbcl-package->cl-source-package sbcl-let-plus))
21165
21166(define-public ecl-let-plus
21167 (sbcl-package->ecl-package sbcl-let-plus))
21168
21169(define-public sbcl-lev
21170 (let ((commit "7d03c68dad44f1cc4ac2aeeab2d24eb525ad941a")
21171 (revision "1"))
21172 (package
21173 (name "sbcl-lev")
21174 (version (git-version "0.1.0" revision commit))
21175 (source
21176 (origin
21177 (method git-fetch)
21178 (uri (git-reference
21179 (url "https://github.com/fukamachi/lev")
21180 (commit commit)))
21181 (file-name (git-file-name "lev" version))
21182 (sha256
21183 (base32 "14lfnrvfyg2nnvlwck896p6vgarzc6g4kijmvhi2d8wra7gxzifh"))))
21184 (build-system asdf-build-system/sbcl)
21185 (arguments
21186 ;; NOTE: (Sharlatan-20210520T163300+0100): No tests in upstream
21187 `(#:tests? #f
21188 #:phases
21189 (modify-phases %standard-phases
21190 (add-after 'unpack 'patch-libev-lib-path
21191 (lambda* (#:key inputs #:allow-other-keys)
21192 (substitute* "src/lev.lisp"
21193 (("libev.so" _)
21194 (search-input-file inputs "/lib/libev.so"))))))))
21195 (inputs
21196 (list sbcl-cffi
21197 libev))
21198 (home-page "https://github.com/fukamachi/lev")
21199 (synopsis "Common Lisp bindings for libev")
21200 (description "This package provides Common Lisp bindings for libev.")
21201 (license license:bsd-2))))
21202
21203(define-public cl-lev
21204 (sbcl-package->cl-source-package sbcl-lev))
21205
21206(define-public ecl-lev
21207 (sbcl-package->ecl-package sbcl-lev))
21208
21209(define-public sbcl-linear-programming
21210 (package
21211 (name "sbcl-linear-programming")
21212 (version "2.3.0")
21213 (source
21214 (origin
21215 (method git-fetch)
21216 (uri (git-reference
21217 (url "https://github.com/neil-lindquist/linear-programming")
21218 (commit (string-append "v" version))))
21219 (file-name (git-file-name "cl-linear-programming" version))
21220 (sha256
21221 (base32 "1gygqq02qh73mpswwrsjvdsjv4hjiqspky1vf4wcyllybai0jxn1"))))
21222 (build-system asdf-build-system/sbcl)
21223 (native-inputs (list sbcl-fiveam))
21224 (inputs (list sbcl-alexandria sbcl-iterate))
21225 (arguments
21226 (list #:phases
21227 #~(modify-phases %standard-phases
21228 (add-after 'unpack 'fix-build
21229 (lambda _
21230 ;; Modify a type check causing a type conflict warning
21231 ;; with SBCL 2.5.2.
21232 (substitute* "src/simplex.lisp"
21233 (("\\(check-type tableau tableau\\)")
21234 "(unless (typep tableau 'tableau)
21235 (error 'type-error
21236 :datum tableau
21237 :expected-type 'tableau))")))))))
21238 (synopsis "Common Lisp linear programming")
21239 (description
21240 "This is a Common Lisp library for solving linear programming problems.")
21241 (home-page "https://neil-lindquist.github.io/linear-programming/")
21242 (license license:expat)))
21243
21244(define-public cl-linear-programming
21245 (sbcl-package->cl-source-package sbcl-linear-programming))
21246
21247(define-public ecl-linear-programming
21248 (sbcl-package->ecl-package sbcl-linear-programming))
21249
21250(define-public sbcl-linear-programming-glpk
21251 (package
21252 (name "sbcl-linear-programming-glpk")
21253 (version "1.0.0")
21254 (source
21255 (origin
21256 (method git-fetch)
21257 (uri (git-reference
21258 (url "https://github.com/neil-lindquist/linear-programming-glpk")
21259 (commit (string-append "v" version))))
21260 (file-name (git-file-name "cl-linear-programming-glpk" version))
21261 (sha256
21262 (base32 "1ci7i41z20vql3rj4cd2ss8r4baqsqcq5xkmq1yd7ls5w3qdh9h2"))))
21263 (build-system asdf-build-system/sbcl)
21264 (native-inputs (list sbcl-fiveam))
21265 (inputs (list glpk sbcl-cffi sbcl-linear-programming))
21266 (arguments
21267 (list #:phases
21268 #~(modify-phases %standard-phases
21269 (add-after 'unpack 'fix-paths
21270 (lambda* (#:key inputs #:allow-other-keys)
21271 (substitute* "src/ffi.lisp"
21272 (("libglpk.so")
21273 (search-input-file inputs "/lib/libglpk.so"))))))))
21274 (synopsis "GLPK backend for linear-programming library")
21275 (description
21276 "This is a backend for the linear-programming Common Lisp library using
21277the GNU Linear Programming Kit (GLPK) library.")
21278 (home-page "https://github.com/neil-lindquist/linear-programming-glpk")
21279 (license license:gpl3)))
21280
21281(define-public cl-linear-programming-glpk
21282 (sbcl-package->cl-source-package sbcl-linear-programming-glpk))
21283
21284(define-public ecl-linear-programming-glpk
21285 (sbcl-package->ecl-package sbcl-linear-programming-glpk))
21286
21287(define-public sbcl-linedit
21288 (let ((commit "0561c97dfca2f5854fcc66558a567a9875ddcb8f")
21289 (revision "1"))
21290 (package
21291 (name "sbcl-linedit")
21292 (version (git-version "0.17.6" revision commit))
21293 (source
21294 (origin
21295 (method git-fetch)
21296 (uri (git-reference
21297 (url "https://github.com/sharplispers/linedit")
21298 (commit commit)))
21299 (file-name (git-file-name "cl-linedit" version))
21300 (sha256
21301 (base32 "0hhh7xn6q12rviayfihg1ym6x6csa0pdjgb88ykqbrz2rs3pgpz5"))))
21302 (build-system asdf-build-system/sbcl)
21303 (inputs
21304 (list sbcl-alexandria sbcl-cffi sbcl-osicat sbcl-terminfo))
21305 (home-page "https://github.com/sharplispers/linedit")
21306 (synopsis "Readline-style line-editor for Common Lisp")
21307 (description
21308 "Linedit is a readline-style library written in Common Lisp that
21309provides customizable line-editing for Common Lisp programs.")
21310 (license license:expat))))
21311
21312(define-public cl-linedit
21313 (sbcl-package->cl-source-package sbcl-linedit))
21314
21315(define-public ecl-linedit
21316 (sbcl-package->ecl-package sbcl-linedit))
21317
21318(define-public sbcl-lisp-namespace
21319 (let ((commit "699fccb6727027343bb5fca69162a3113996edfc")
21320 (revision "2"))
21321 (package
21322 (name "sbcl-lisp-namespace")
21323 (build-system asdf-build-system/sbcl)
21324 (version (git-version "0.1" revision commit))
21325 (home-page "https://github.com/guicho271828/lisp-namespace")
21326 (source
21327 (origin
21328 (method git-fetch)
21329 (uri (git-reference
21330 (url home-page)
21331 (commit commit)))
21332 (file-name (git-file-name "cl-lisp-namespace" version))
21333 (sha256
21334 (base32 "1p5db9mab4whapy1pl38ajw5fkrrdw266n05mnhf4xx2fb9sbx6p"))))
21335 (inputs
21336 (list sbcl-alexandria))
21337 (native-inputs
21338 (list sbcl-fiveam))
21339 (synopsis "LISP-N, or extensible namespaces in Common Lisp")
21340 (description "Common Lisp already has major 2 namespaces, function
21341namespace and value namespace (or variable namespace), but there are actually
21342more — e.g., class namespace.
21343This library offers macros to deal with symbols from any namespace.")
21344 (license license:llgpl))))
21345
21346(define-public cl-lisp-namespace
21347 (sbcl-package->cl-source-package sbcl-lisp-namespace))
21348
21349(define-public ecl-lisp-namespace
21350 (sbcl-package->ecl-package sbcl-lisp-namespace))
21351
21352(define-public sbcl-lisp-pay
21353 (let ((commit "c4de776f0a284709931ff3674160ced3b41bd000")
21354 (revision "0"))
21355 (package
21356 (name "sbcl-lisp-pay")
21357 (version (git-version "0.0.5" revision commit))
21358 (source
21359 (origin
21360 (method git-fetch)
21361 (uri (git-reference
21362 (url "https://github.com/K1D77A/lisp-pay")
21363 (commit commit)))
21364 (file-name (git-file-name "cl-lisp-pay" version))
21365 (sha256
21366 (base32 "09r6qy4fipriqa0d6g9qm6dq992lr58vh24g5j0adm19i5fnjavh"))))
21367 (build-system asdf-build-system/sbcl)
21368 (inputs
21369 (list sbcl-alexandria
21370 sbcl-babel
21371 sbcl-cl-base64
21372 sbcl-cl-str
21373 sbcl-cl-tls
21374 sbcl-closer-mop
21375 sbcl-dexador
21376 sbcl-hu.dwim.defclass-star
21377 sbcl-hunchentoot
21378 sbcl-ironclad
21379 sbcl-jonathan
21380 sbcl-lack
21381 sbcl-ningle
21382 sbcl-shasht))
21383 (home-page "https://github.com/K1D77A/lisp-pay/")
21384 (synopsis "Wrappers over multiple Payment Processor APIs")
21385 (description "This library provides payment API wrappers over
21386BTCPay, Paypal, and Stripe.")
21387 (license license:expat))))
21388
21389(define-public cl-lisp-pay
21390 (sbcl-package->cl-source-package sbcl-lisp-pay))
21391
21392(define-public ecl-lisp-pay
21393 (sbcl-package->ecl-package sbcl-lisp-pay))
21394
21395(define-public sbcl-lisp-preprocessor
21396 (let ((commit "cbed5952f3d98c84448c52d12255df9580451383")
21397 (revision "0"))
21398 (package
21399 (name "sbcl-lisp-preprocessor")
21400 (version (git-version "0.0.0" revision commit))
21401 (source
21402 (origin
21403 (method git-fetch)
21404 (uri (git-reference
21405 (url "https://github.com/cxxxr/lisp-preprocessor/")
21406 (commit commit)))
21407 (file-name (git-file-name name version))
21408 (sha256
21409 (base32 "0v0qhawcvgbxk06nfwyvcqwmqvzn2svq80l2rb12myr0znschhpi"))))
21410 (build-system asdf-build-system/sbcl)
21411 (native-inputs (list sbcl-rove))
21412 (inputs
21413 (list
21414 sbcl-alexandria
21415 sbcl-trivial-gray-streams
21416 sbcl-split-sequence
21417 sbcl-trivia
21418 sbcl-cl-ppcre))
21419 (home-page "https://github.com/cxxxr/lisp-preprocessor")
21420 (synopsis "Common Lisp embedded template engine")
21421 (description "This package provides an embedded template engine for Common Lisp.")
21422 (license license:expat))))
21423
21424(define-public cl-lisp-preprocessor
21425 (sbcl-package->cl-source-package sbcl-lisp-preprocessor))
21426
21427(define-public ecl-lisp-preprocessor
21428 (sbcl-package->ecl-package sbcl-lisp-preprocessor))
21429
21430(define-public sbcl-lisp-stat
21431 (let ((commit "357a0d2b5f68a5ff925776235c2b7455e12b78ba")
21432 (revision "0"))
21433 (package
21434 (name "sbcl-lisp-stat")
21435 (version (git-version "1.2.0" revision commit))
21436 (source
21437 (origin
21438 (method git-fetch)
21439 (uri (git-reference
21440 (url "https://github.com/Lisp-Stat/lisp-stat")
21441 (commit commit)))
21442 (file-name (git-file-name "cl-lisp-stat" version))
21443 (sha256
21444 (base32 "0qwlxrbwj884mr67sf6aj0zwrndv33aiiid4bqrkji41kjhqfcz5"))))
21445 (build-system asdf-build-system/sbcl)
21446 ;; https://github.com/Lisp-Stat/lisp-stat/issues/22
21447 (arguments (list #:tests? #f))
21448 (native-inputs (list sbcl-parachute))
21449 (inputs
21450 (list sbcl-alexandria
21451 sbcl-alexandria-plus
21452 sbcl-array-operations
21453 sbcl-conduit-packages
21454 sbcl-data-frame
21455 sbcl-dexador
21456 sbcl-dfio
21457 sbcl-distributions
21458 sbcl-numerical-utilities
21459 sbcl-select
21460 sbcl-statistics))
21461 (home-page "https://lisp-stat.github.io/lisp-stat/")
21462 (synopsis "Statistical Computing in Common Lisp")
21463 (description "This package provides a statistical computing
21464environment for Common Lisp.")
21465 (license license:ms-pl))))
21466
21467(define-public cl-lisp-stat
21468 (sbcl-package->cl-source-package sbcl-lisp-stat))
21469
21470;; This depends on ecl-data-frame and ecl-dfio, which don't work yet.
21471;; (define-public ecl-lisp-stat
21472;; (sbcl-package->ecl-package sbcl-lisp-stat))
21473
21474(define-public sbcl-lispbuilder-sdl
21475 (let ((commit "9590d70044aa9054292357cf416571ba7b1e08fc")
21476 (revision "2"))
21477 (package
21478 (name "sbcl-lispbuilder-sdl")
21479 (version (git-version "0.9.8.2" revision commit))
21480 (source
21481 (origin
21482 (method git-fetch)
21483 (uri (git-reference
21484 (url "https://github.com/lispbuilder/lispbuilder")
21485 (commit commit)))
21486 (file-name (git-file-name "cl-lispbuilder-sdl" version))
21487 (sha256
21488 (base32 "018sapnhqb60v7144h34n1an8njz88j35z7kanvnc6fj9gm8vhj1"))))
21489 (build-system asdf-build-system/sbcl)
21490 (arguments
21491 `(#:phases
21492 (modify-phases %standard-phases
21493 (add-after 'unpack 'cd-sdl
21494 (lambda _
21495 (chdir "lispbuilder-sdl")))
21496 (add-after 'cd-sdl 'fix-paths
21497 (lambda* (#:key inputs #:allow-other-keys)
21498 (substitute* "cffi/library.lisp"
21499 (("libSDL-1.2.so" _)
21500 (search-input-file inputs "/lib/libSDL-1.2.so"))))))))
21501 (inputs
21502 (list sbcl-cffi
21503 sbcl-trivial-garbage
21504 sdl))
21505 (home-page "https://github.com/lispbuilder/lispbuilder/wiki/LispbuilderSDL")
21506 (synopsis "Common Lisp wrapper for SDL")
21507 (description
21508 "This library is an SDL wrapper as part of an umbrella project that
21509provides cross-platform packages for building large, interactive applications
21510in Common Lisp.")
21511 (license license:expat))))
21512
21513(define-public cl-lispbuilder-sdl
21514 (sbcl-package->cl-source-package sbcl-lispbuilder-sdl))
21515
21516(define-public sbcl-list-named-class
21517 (let ((commit "2955791a7469131bcab42d800883f27993ee1d62")
21518 (revision "0"))
21519 (package
21520 (name "sbcl-list-named-class")
21521 (version (git-version "0.1" revision commit))
21522 (source
21523 (origin
21524 (method git-fetch)
21525 (uri (git-reference
21526 (url "https://github.com/phoe/list-named-class")
21527 (commit commit)))
21528 (file-name (git-file-name "cl-list-named-class" version))
21529 (sha256
21530 (base32 "1bdi9q9wvfj66jji3n9hpjrj9271ial2awsb0xw80bmy6wqbg8kq"))))
21531 (build-system asdf-build-system/sbcl)
21532 (native-inputs
21533 (list sbcl-1am))
21534 (inputs
21535 (list sbcl-alexandria sbcl-closer-mop))
21536 (home-page "https://github.com/phoe/list-named-class/")
21537 (synopsis "Name classes after lists of symbols")
21538 (description
21539 "This package makes it possible to name classes by lists of symbols
21540instead of symbols.")
21541 (license license:expat))))
21542
21543(define-public cl-list-named-class
21544 (sbcl-package->cl-source-package sbcl-list-named-class))
21545
21546(define-public ecl-list-named-class
21547 (sbcl-package->ecl-package sbcl-list-named-class))
21548
21549(define-public clasp-list-named-class
21550 (sbcl-package->clasp-package sbcl-list-named-class))
21551
21552(define-public sbcl-listopia
21553 (package
21554 (name "sbcl-listopia")
21555 (version "0.12.0")
21556 (source (origin
21557 (method git-fetch)
21558 (uri (git-reference
21559 (url "https://github.com/Dimercel/listopia")
21560 (commit version)))
21561 (file-name (git-file-name name version))
21562 (sha256
21563 (base32
21564 "07xa2s2s60h9f40az3zdacybl5pk1x8bhvga9phsra0czbv44lx2"))))
21565 (build-system asdf-build-system/sbcl)
21566 (native-inputs
21567 (list sbcl-prove))
21568 (home-page "https://github.com/Dimercel/listopia")
21569 (synopsis "List manipulation library for Common Lisp")
21570 (description "This package is a list manipulation library for Common Lisp
21571inspired by Haskell package @code{Data.List}.")
21572 (license license:llgpl)))
21573
21574(define-public cl-listopia
21575 (sbcl-package->cl-source-package sbcl-listopia))
21576
21577(define-public ecl-listopia
21578 (sbcl-package->ecl-package sbcl-listopia))
21579
21580(define-public sbcl-literate-lisp
21581 (let ((commit "76d4d2c16ab08296d58e0ef3c41861b615e697c0")
21582 (revision "1"))
21583 (package
21584 (name "sbcl-literate-lisp")
21585 (version (git-version "0.6" revision commit))
21586 (source
21587 (origin
21588 (method git-fetch)
21589 (uri (git-reference
21590 (url "https://github.com/jingtaozf/literate-lisp")
21591 (commit commit)))
21592 (file-name (git-file-name "cl-literate-lisp" version))
21593 (sha256
21594 (base32 "0smxf0a62dnwcfxsbsdkx4n5nqx9dlxdz6c2vfivxpqld6d6ap02"))))
21595 (build-system asdf-build-system/sbcl)
21596 (inputs
21597 (list sbcl-cl-fad
21598 sbcl-cl-ppcre
21599 sbcl-iterate))
21600 (native-inputs
21601 (list sbcl-fiveam))
21602 (home-page "https://github.com/jingtaozf/literate-lisp")
21603 (synopsis "Load Common Lisp code blocks from Org-mode files")
21604 (description "This package extends the Common Lisp reader
21605syntax such that is accepts Org files as Lisp source code files.")
21606 (license license:expat))))
21607
21608(define-public cl-literate-lisp
21609 (sbcl-package->cl-source-package sbcl-literate-lisp))
21610
21611(define-public ecl-literate-lisp
21612 (sbcl-package->ecl-package sbcl-literate-lisp))
21613
21614(define-public sbcl-livesupport
21615 (let ((commit "71e6e412df9f3759ad8378fabb203913d82e228a")
21616 (revision "1"))
21617 (package
21618 (name "sbcl-livesupport")
21619 (version (git-version "0.0.0" revision commit))
21620 (source
21621 (origin
21622 (method git-fetch)
21623 (uri (git-reference
21624 (url "https://github.com/cbaggers/livesupport")
21625 (commit commit)))
21626 (file-name (git-file-name name version))
21627 (sha256
21628 (base32 "1rvnl0mncylbx63608pz5llss7y92j7z3ydambk9mcnjg2mjaapg"))))
21629 (build-system asdf-build-system/sbcl)
21630 (home-page "https://github.com/cbaggers/livesupport")
21631 (synopsis "Some helpers that make livecoding a little easier")
21632 (description "This package provides a macro commonly used in livecoding to
21633enable continuing when errors are raised. Simply wrap around a chunk of code
21634and it provides a restart called @code{continue} which ignores the error and
21635carrys on from the end of the body.")
21636 (license license:bsd-2))))
21637
21638(define-public cl-livesupport
21639 (sbcl-package->cl-source-package sbcl-livesupport))
21640
21641(define-public ecl-livesupport
21642 (sbcl-package->ecl-package sbcl-livesupport))
21643
21644(define-public sbcl-lla
21645 (let ((commit "4008d363a43647adc39579a48b549650a0742e61")
21646 (revision "2"))
21647 (package
21648 (name "sbcl-lla")
21649 (version (git-version "0.4.0" revision commit))
21650 (source
21651 (origin
21652 (method git-fetch)
21653 (uri (git-reference
21654 (url "https://github.com/Lisp-Stat/lla")
21655 (commit commit)))
21656 (file-name (git-file-name "cl-lla" version))
21657 (sha256
21658 (base32 "19j11z8m00ry2bfn3ahai155b6qz995qqg7ipzvjdr05sj4gfb58"))))
21659 (build-system asdf-build-system/sbcl)
21660 (native-inputs
21661 (list sbcl-clunit))
21662 (inputs
21663 (list openblas
21664 sbcl-anaphora
21665 sbcl-alexandria
21666 sbcl-cffi
21667 sbcl-let-plus
21668 sbcl-numerical-utilities
21669 sbcl-select))
21670 (arguments
21671 (list #:phases
21672 #~(modify-phases %standard-phases
21673 (add-after 'unpack 'fix-paths
21674 (lambda* (#:key inputs #:allow-other-keys)
21675 (substitute* "src/configuration.lisp"
21676 (("\"libblas.so.3gf\"")
21677 (string-append "\""
21678 (search-input-file inputs
21679 "/lib/libopenblas.so")
21680 "\""))
21681 (("\"liblapack.so.3gf\"")
21682 (string-append "\""
21683 (search-input-file inputs
21684 "/lib/libopenblas.so")
21685 "\""))))))))
21686 (home-page "https://lisp-stat.github.io/lla/")
21687 (synopsis "Linear algebra library for Common Lisp")
21688 (description
21689 "LLA is a high-level Common Lisp library built on BLAS and LAPACK, but
21690providing a much more abstract interface with the purpose of freeing the user
21691from low-level concerns and reducing the number of bugs in numerical code.")
21692 (license license:ms-pl))))
21693
21694(define-public cl-lla
21695 (sbcl-package->cl-source-package sbcl-lla))
21696
21697(define-public ecl-lla
21698 (sbcl-package->ecl-package sbcl-lla))
21699
21700(define-public sbcl-lmdb
21701 (let ((commit "f439b707939a52769dc9747838ff4a616fab14a3")
21702 (revision "0"))
21703 (package
21704 (name "sbcl-lmdb")
21705 (version (git-version "0.1" revision commit))
21706 (source
21707 (origin
21708 (method git-fetch)
21709 (uri (git-reference
21710 (url "https://github.com/antimer/lmdb")
21711 (commit commit)))
21712 (file-name (git-file-name "cl-lmdb" version))
21713 (sha256
21714 (base32 "0akvimmvd4kcx6gh1j1dzvcclhc0jc4hc9vkh3ldgzb8wyf4vl8q"))))
21715 (build-system asdf-build-system/sbcl)
21716 (arguments
21717 (list
21718 #:phases
21719 #~(modify-phases %standard-phases
21720 (add-after 'unpack 'fix-paths
21721 (lambda* (#:key inputs #:allow-other-keys)
21722 (substitute* "src/lmdb.lisp"
21723 (("\"liblmdb.so\"")
21724 (string-append
21725 "\"" (search-input-file inputs "/lib/liblmdb.so") "\""))))))))
21726 (inputs
21727 (list lmdb
21728 sbcl-alexandria
21729 sbcl-bordeaux-threads
21730 sbcl-cl-reexport
21731 sbcl-mgl-pax
21732 sbcl-osicat
21733 sbcl-trivial-features
21734 sbcl-trivial-garbage
21735 sbcl-trivial-utf-8))
21736 (native-inputs
21737 (list sbcl-try))
21738 (home-page "https://github.com/antimer/lmdb")
21739 (synopsis "LMDB bindings for Common Lisp")
21740 (description
21741 "LMDB, the Lightning Memory-mapped Database, is an ACID key-value
21742database with multiversion concurrency control. This package is a Common Lisp
21743wrapper around the C LMDB library. It covers most of C LMDB's functionality,
21744has a simplified API, much needed safety checks, and comprehensive
21745documentation.")
21746 (license license:expat))))
21747
21748(define-public cl-lmdb
21749 (sbcl-package->cl-source-package sbcl-lmdb))
21750
21751(define-public sbcl-local-time
21752 (let ((commit "40169fe26d9639f3d9560ec0255789bf00b30036")
21753 (revision "4"))
21754 (package
21755 (name "sbcl-local-time")
21756 (version (git-version "1.0.6" revision commit))
21757 (source
21758 (origin
21759 (method git-fetch)
21760 (uri (git-reference
21761 (url "https://github.com/dlowe-net/local-time")
21762 (commit commit)))
21763 (file-name (git-file-name "cl-local-time" version))
21764 (sha256
21765 (base32 "1dbp33zmkqzzshmf5k76pxqgli285wvy0p0dhcz816fdikpwn2jg"))))
21766 (build-system asdf-build-system/sbcl)
21767 (arguments
21768 `(#:phases
21769 (modify-phases %standard-phases
21770 ;; Delete the extension provided by sbcl-cl-postgres+local-time
21771 (add-after 'unpack 'delete-local-time
21772 (lambda _
21773 (delete-file "cl-postgres+local-time.asd")
21774 (delete-file "src/integration/cl-postgres.lisp"))))))
21775 (native-inputs
21776 (list sbcl-hu.dwim.stefil))
21777 (home-page "https://common-lisp.net/project/local-time/")
21778 (synopsis "Time manipulation library for Common Lisp")
21779 (description
21780 "The LOCAL-TIME library is a Common Lisp library for the manipulation of
21781dates and times. It is based almost entirely upon Erik Naggum's paper \"The
21782Long Painful History of Time\".")
21783 (license license:expat))))
21784
21785(define-public cl-local-time
21786 (sbcl-package->cl-source-package sbcl-local-time))
21787
21788(define-public ecl-local-time
21789 (sbcl-package->ecl-package sbcl-local-time))
21790
21791(define-public clasp-local-time
21792 (sbcl-package->clasp-package sbcl-local-time))
21793
21794(define-public sbcl-cl-postgres+local-time
21795 (package
21796 (inherit sbcl-local-time)
21797 (name "sbcl-cl-postgres+local-time")
21798 (inputs (list sbcl-local-time sbcl-postmodern))
21799 (arguments
21800 `(#:asd-systems '("cl-postgres+local-time")
21801 #:phases
21802 (modify-phases %standard-phases
21803 (add-after 'unpack 'delete-local-time
21804 (lambda _
21805 (delete-file "local-time.asd")
21806 (delete-file "src/package.lisp")
21807 (delete-file "src/local-time.lisp")
21808 (delete-file-recursively "doc")
21809 (delete-file-recursively "test")
21810 (delete-file-recursively "zoneinfo"))))))
21811 (synopsis "Integration between cl-postgres and local-time")
21812 (description
21813 "This package provides the LOCAL-TIME extensions for the cl-postgres
21814ASDF system of postmodern.")
21815 (license license:expat)))
21816
21817(define-public cl-postgres+local-time
21818 (sbcl-package->cl-source-package sbcl-cl-postgres+local-time))
21819
21820(define-public ecl-cl-postgres+local-time
21821 (sbcl-package->ecl-package sbcl-cl-postgres+local-time))
21822
21823(define-public sbcl-log4cl
21824 (let ((commit "fe3da517147d023029782ced7cd989ba24f1e62d")
21825 (revision "2"))
21826 (package
21827 (name "sbcl-log4cl")
21828 (version (git-version "1.1.4" revision commit))
21829 (source
21830 (origin
21831 (method git-fetch)
21832 (uri (git-reference
21833 (url "https://github.com/sharplispers/log4cl")
21834 (commit commit)))
21835 (file-name (git-file-name "cl-log4cl" version))
21836 (sha256
21837 (base32 "0n119sy35k9yl4n18az1sw9a7saa5jh3v44863b305by1p5xdy7k"))))
21838 (build-system asdf-build-system/sbcl)
21839 (native-inputs
21840 (list sbcl-stefil))
21841 (inputs
21842 (list sbcl-bordeaux-threads))
21843 (home-page "https://github.com/7max/log4cl")
21844 (synopsis "Common Lisp logging framework, modeled after Log4J")
21845 (description
21846 "This is a Common Lisp logging framework that can log at various levels
21847and mix text with expressions.")
21848 (license license:asl2.0))))
21849
21850(define-public cl-log4cl
21851 (sbcl-package->cl-source-package sbcl-log4cl))
21852
21853(define-public ecl-log4cl
21854 (sbcl-package->ecl-package sbcl-log4cl))
21855
21856(define-public sbcl-log4cl-extras
21857 (let ((commit "7df9566cfecf6ed418ea85c2aa2f886dfb6f12af")
21858 (revision "0"))
21859 (package
21860 (name "sbcl-log4cl-extras")
21861 (version (git-version "0.7.0" revision commit))
21862 (source
21863 (origin
21864 (method git-fetch)
21865 (uri (git-reference
21866 (url "https://github.com/40ants/log4cl-extras")
21867 (commit commit)))
21868 (file-name (git-file-name name version))
21869 (sha256
21870 (base32 "17p8y884163j0gab0idra297kivzdgagl2im0gkmdhgrh0dw3b53"))))
21871 (build-system asdf-build-system/sbcl)
21872 (arguments
21873 (list
21874 #:phases
21875 #~(modify-phases %standard-phases
21876 ;; The package is explicitly not included to avoid pulling in a
21877 ;; dependency, but the tests are included. We ignore the test to
21878 ;; truly ignore the module.
21879 (add-after 'unpack 'do-not-test-ignored-secrets-system
21880 (lambda _
21881 (substitute* "log4cl-extras-test.asd"
21882 (("\"log4cl-extras-test/secrets")
21883 "#+nil\"log4cl-extras-test/secrets")))))))
21884 (native-inputs
21885 (list sbcl-hamcrest
21886 sbcl-40ants-asdf-system))
21887 (inputs
21888 (list sbcl-with-output-to-stream
21889 sbcl-pythonic-string-reader
21890 sbcl-log4cl
21891 sbcl-cl-strings
21892 sbcl-jonathan
21893 sbcl-40ants-doc))
21894 (home-page "https://github.com/40ants/log4cl-extras")
21895 (synopsis "Addons to LOG4CL: JSON appender, context fields, cross-finger
21896appender, etc.")
21897 (description
21898 "This library extends LOG4CL system in a few ways:
21899
21900* It helps with configuration of multiple appenders and layouts.
21901* Has a facility to catch context fields and to log them.
21902* Has a macro to log unhandled errors.
21903* Adds a layout to write messages as JSON, which is useful for production as
21904makes easier to parse and process such logs.
21905* Uses the appenders which are not disabled in case of some error which again,
21906should be useful for production.")
21907 (license license:bsd-0))))
21908
21909(define-public ecl-log4cl-extras
21910 (sbcl-package->ecl-package sbcl-log4cl-extras))
21911
21912(define-public cl-log4cl-extras
21913 (sbcl-package->cl-source-package sbcl-log4cl-extras))
21914
21915(define-public sbcl-lorem-ipsum
21916 (let ((commit "04a1839a03b53c954e799b9cf570ac915b032ce8")
21917 (revision "0"))
21918 (package
21919 (name "sbcl-lorem-ipsum")
21920 (version (git-version "1.0" revision commit))
21921 (source
21922 (origin
21923 (method git-fetch)
21924 (uri (git-reference
21925 (url "https://github.com/phoe/lorem-ipsum")
21926 (commit commit)))
21927 (sha256
21928 (base32 "1530qq0bk3xr25m77q96pbi1idnxdkax8cwmvq4ch03rfjy34j7n"))
21929 (file-name (git-file-name "cl-lorem-ipsum" commit))))
21930 (build-system asdf-build-system/sbcl)
21931 (home-page "https://github.com/phoe/lorem-ipsum")
21932 (synopsis "Lorem ipsum generator in portable Common Lisp")
21933 (description
21934 "This package provides functions for generating lorem ipsum text.")
21935 (license license:expat))))
21936
21937(define-public cl-lorem-ipsum
21938 (sbcl-package->cl-source-package sbcl-lorem-ipsum))
21939
21940(define-public ecl-lorem-ipsum
21941 (sbcl-package->ecl-package sbcl-lorem-ipsum))
21942
21943(define-public clasp-lorem-ipsum
21944 (sbcl-package->clasp-package sbcl-lorem-ipsum))
21945
21946(define-public sbcl-lparallel
21947 (let ((commit "80fc2952a074776abd343d6b5d3ab157f0e1df7a")
21948 (revision "1"))
21949 (package
21950 (name "sbcl-lparallel")
21951 (version (git-version "2.8.4" revision commit))
21952 (source
21953 (origin
21954 (method git-fetch)
21955 (uri (git-reference
21956 (url "https://github.com/sharplispers/lparallel/")
21957 (commit commit)))
21958 (file-name (git-file-name "cl-lparallel" version))
21959 (sha256
21960 (base32 "0nv2dx8cl25g68icqhw95yr5mygm86lcjzmzijql51na1p60g6y9"))))
21961 (build-system asdf-build-system/sbcl)
21962 (inputs
21963 (list sbcl-alexandria
21964 sbcl-bordeaux-threads
21965 sbcl-trivial-garbage))
21966 (arguments
21967 `(#:phases
21968 (modify-phases %standard-phases
21969 (add-after 'unpack 'fix-dependency
21970 ;; lparallel loads a SBCL specific system in its asd file. This is
21971 ;; not carried over into the fasl which is generated. In order for
21972 ;; it to be carried over, it needs to be listed as a dependency.
21973 (lambda _
21974 (substitute* "lparallel.asd"
21975 ((":depends-on \\(:alexandria" all)
21976 (string-append all " #+sbcl :sb-cltl2"))))))))
21977 (home-page "https://lparallel.org/")
21978 (synopsis "Parallelism for Common Lisp")
21979 (description
21980 "@command{lparallel} is a library for parallel programming in Common
21981Lisp, featuring:
21982
21983@itemize
21984@item a simple model of task submission with receiving queue,
21985@item constructs for expressing fine-grained parallelism,
21986@item asynchronous condition handling across thread boundaries,
21987@item parallel versions of map, reduce, sort, remove, and many others,
21988@item promises, futures, and delayed evaluation constructs,
21989@item computation trees for parallelizing interconnected tasks,
21990@item bounded and unbounded FIFO queues,
21991@item high and low priority tasks,
21992@item task killing by category,
21993@item integrated timeouts.
21994@end itemize\n")
21995 (license license:expat))))
21996
21997(define-public cl-lparallel
21998 (sbcl-package->cl-source-package sbcl-lparallel))
21999
22000(define-public ecl-lparallel
22001 (sbcl-package->ecl-package sbcl-lparallel))
22002
22003(define-public sbcl-lquery
22004 (let ((revision "2")
22005 (commit "08c9cb6c2b169bf71d4444bc80e87e5b19f8499c"))
22006 (package
22007 (name "sbcl-lquery")
22008 (version (git-version "3.2.1" revision commit))
22009 (source
22010 (origin
22011 (method git-fetch)
22012 (uri
22013 (git-reference
22014 (url "https://codeberg.org/shinmera/lquery")
22015 (commit commit)))
22016 (sha256
22017 (base32 "11l03pwlvv76lxrmvjs3prkrjsgl70wz7vbl1n6rhg9kmyv91a74"))
22018 (file-name (git-file-name name version))))
22019 (native-inputs
22020 (list sbcl-fiveam))
22021 (inputs
22022 (list sbcl-array-utils sbcl-form-fiddle sbcl-plump sbcl-clss))
22023 (build-system asdf-build-system/sbcl)
22024 (synopsis "Library to allow jQuery-like HTML/DOM manipulation")
22025 (description "@code{lQuery} is a DOM manipulation library written in
22026Common Lisp, inspired by and based on the jQuery syntax and
22027functions. It uses Plump and CLSS as DOM and selector engines. The
22028main idea behind lQuery is to provide a simple interface for crawling
22029and modifying HTML sites, as well as to allow for an alternative
22030approach to templating.")
22031 (home-page "https://codeberg.org/shinmera/lquery")
22032 (license license:zlib))))
22033
22034(define-public cl-lquery
22035 (sbcl-package->cl-source-package sbcl-lquery))
22036
22037(define-public ecl-lquery
22038 (sbcl-package->ecl-package sbcl-lquery))
22039
22040(define-public sbcl-ltk
22041 (let ((commit "ff14a781d211c19c35e65a7ecaece67dda0b3ebb")
22042 (revision "0"))
22043 (package
22044 (name "sbcl-ltk")
22045 (version (git-version "0.992" revision commit))
22046 (source
22047 (origin
22048 (method git-fetch)
22049 (uri (git-reference
22050 (url "https://github.com/herth/ltk")
22051 (commit commit)))
22052 (file-name (git-file-name "cl-ltk" version))
22053 (sha256
22054 (base32 "0f1xgsj2j7bq21cq2pa9rw3ybxd9vyknisl6z307lxx7lvhm3xac"))))
22055 (build-system asdf-build-system/sbcl)
22056 (inputs
22057 (list imagemagick tk))
22058 (arguments
22059 `(#:asd-systems '("ltk"
22060 "ltk-mw"
22061 "ltk-remote")
22062 #:tests? #f
22063 #:phases
22064 (modify-phases %standard-phases
22065 (add-after 'unpack 'fix-paths
22066 (lambda* (#:key inputs #:allow-other-keys)
22067 (substitute* "ltk/ltk.lisp"
22068 (("#-freebsd \"wish\"")
22069 (string-append "#-freebsd \""
22070 (assoc-ref inputs "tk")
22071 "/bin/wish\""))
22072 (("do-execute \"convert\"")
22073 (string-append "do-execute \""
22074 (assoc-ref inputs "imagemagick")
22075 "/bin/convert\"")))
22076 #t))
22077 (add-after 'unpack 'fix-build
22078 (lambda _
22079 (substitute* "ltk/ltk-remote.lisp"
22080 (("\\(:export")
22081 "(:shadow #:raise) (:export"))
22082 #t)))))
22083 (synopsis "Common Lisp bindings for the Tk GUI toolkit")
22084 (description
22085 "LTK is a Common Lisp binding for the Tk graphics toolkit. It is
22086written in pure Common Lisp and does not require any Tk knowledge for its
22087usage.")
22088 (home-page "http://www.peter-herth.de/ltk/")
22089 (license license:llgpl))))
22090
22091(define-public cl-ltk
22092 (sbcl-package->cl-source-package sbcl-ltk))
22093
22094(define-public ecl-ltk
22095 (sbcl-package->ecl-package sbcl-ltk))
22096
22097(define-public sbcl-lunamech-matrix-api
22098 (let ((commit "aa54a820149584c237b03d500ad83397fe25dc92")
22099 (revision "0"))
22100 (package
22101 (name "sbcl-lunamech-matrix-api")
22102 (version (git-version "0.0.2" revision commit))
22103 (source
22104 (origin
22105 (method git-fetch)
22106 (uri (git-reference
22107 (url "https://github.com/K1D77A/lunamech-matrix-api")
22108 (commit commit)))
22109 (file-name (git-file-name "cl-lunamech-matrix-api" version))
22110 (sha256
22111 (base32 "0a664qq4m5gk4iv5ck63gmsl3218jhjsalawklj56wn2pw0cf8a0"))))
22112 (build-system asdf-build-system/sbcl)
22113 (inputs
22114 (list sbcl-cl-json
22115 sbcl-cl-str
22116 sbcl-closer-mop
22117 sbcl-dexador
22118 sbcl-do-urlencode
22119 sbcl-drakma
22120 sbcl-jonathan
22121 sbcl-plump
22122 sbcl-quri
22123 sbcl-reader
22124 sbcl-shasht))
22125 (home-page "https://github.com/K1D77A/lunamech-matrix-api/")
22126 (synopsis "Implementation of the Matrix API")
22127 (description "This package provides an implementation of the Matrix
22128API for Common Lisp.")
22129 (license license:expat))))
22130
22131(define-public cl-lunamech-matrix-api
22132 (sbcl-package->cl-source-package sbcl-lunamech-matrix-api))
22133
22134(define-public ecl-lunamech-matrix-api
22135 (sbcl-package->ecl-package sbcl-lunamech-matrix-api))
22136
22137(define-public sbcl-lw-compat
22138 ;; No release since 2013.
22139 (let ((commit "aabfe28c6c1a4949f9d7b3cb30319367c9fd1c0d"))
22140 (package
22141 (name "sbcl-lw-compat")
22142 (version (git-version "1.0.0" "1" commit))
22143 (source
22144 (origin
22145 (method git-fetch)
22146 (uri (git-reference
22147 (url "https://github.com/pcostanza/lw-compat/")
22148 (commit commit)))
22149 (file-name (git-file-name name version))
22150 (sha256
22151 (base32 "131rq5k2mlv9bfhmafiv6nfsivl4cxx13d9wr06v5jrqnckh4aav"))))
22152 (build-system asdf-build-system/sbcl)
22153 (home-page "https://github.com/pcostanza/lw-compat/")
22154 (synopsis "LispWorks utilities ported to other Common Lisp implementations")
22155 (description "This package contains a few utility functions from the
22156LispWorks library that are used in software such as ContextL.")
22157 (license license:expat))))
22158
22159(define-public cl-lw-compat
22160 (sbcl-package->cl-source-package sbcl-lw-compat))
22161
22162(define-public ecl-lw-compat
22163 (sbcl-package->ecl-package sbcl-lw-compat))
22164
22165(define-public clasp-lw-compat
22166 (sbcl-package->clasp-package sbcl-lw-compat))
22167
22168(define-public sbcl-lwcells
22169 (let ((commit "e7446ac146a31b630e74c9bce7dab34b50cc333d")
22170 (revision "0"))
22171 (package
22172 (name "sbcl-lwcells")
22173 (version (git-version "0.0.1" revision commit))
22174 (source
22175 (origin
22176 (method git-fetch)
22177 (uri (git-reference
22178 (url "https://github.com/kchanqvq/lwcells")
22179 (commit commit)))
22180 (file-name (git-file-name "lwcells" version))
22181 (sha256
22182 (base32 "1p8a5j52isp14w6pxy6c6fsrwwvnyb9r6yvd8bxh7sjh6mnvp3nc"))))
22183 (build-system asdf-build-system/sbcl)
22184 (inputs
22185 (list sbcl-alexandria
22186 sbcl-named-closure
22187 sbcl-damn-fast-priority-queue))
22188 (synopsis "Light-weight cells for dataflow programming")
22189 (description
22190 "A dataflow extension to Common Lisp that maintains a consistent state of
22191cells according to functions specifying their relation.")
22192 (home-page "https://github.com/kchanqvq/lwcells")
22193 (license license:gpl3+))))
22194
22195(define-public cl-lwcells
22196 (sbcl-package->cl-source-package sbcl-lwcells))
22197
22198(define-public ecl-lwcells
22199 (sbcl-package->ecl-package sbcl-lwcells))
22200
22201(define-public sbcl-lzlib
22202 (let ((commit "22767ca12d1c1bd59a7ae1f9c5ef7d2e937206bb")
22203 (revision "2"))
22204 (package
22205 (name "sbcl-lzlib")
22206 (version (git-version "2.0" revision commit))
22207 (source
22208 (origin
22209 (method git-fetch)
22210 (uri (git-reference
22211 (url "https://codeberg.org/glv/cl-lzlib")
22212 (commit commit)))
22213 (file-name (git-file-name "cl-lzlib" version))
22214 (sha256
22215 (base32 "1dxzlkay7aqcs65h2f7j7rl4sdjija60dshlahzyllfw174p9d3m"))))
22216 (build-system asdf-build-system/sbcl)
22217 (native-inputs
22218 (list sbcl-fiveam))
22219 (inputs
22220 (list lzlib
22221 sbcl-cffi
22222 sbcl-cl-octet-streams
22223 sbcl-lparallel))
22224 (arguments
22225 (list #:phases
22226 #~(modify-phases %standard-phases
22227 (add-after 'unpack 'fix-paths
22228 (lambda* (#:key inputs #:allow-other-keys)
22229 (substitute* "src/lzlib.lisp"
22230 (("liblz\\.so")
22231 (search-input-file inputs "/lib/liblz.so"))))))))
22232 (synopsis "Common Lisp library for lzip (de)compression")
22233 (description
22234 "This Common Lisp library provides functions for lzip (LZMA)
22235compression/decompression using bindings to the lzlib C library.")
22236 (home-page "https://codeberg.org/glv/cl-lzlib")
22237 (license license:gpl3+))))
22238
22239(define-public cl-lzlib
22240 (sbcl-package->cl-source-package sbcl-lzlib))
22241
22242(define-public ecl-lzlib
22243 (sbcl-package->ecl-package sbcl-lzlib))
22244
22245(define-public sbcl-machine-state
22246 (let ((commit "3d258eea63942e7d2fd7212f1ad8bbcf505634a2")
22247 (revision "2"))
22248 (package
22249 (name "sbcl-machine-state")
22250 (version (git-version "1.0.0" revision commit))
22251 (source
22252 (origin
22253 (method git-fetch)
22254 (uri (git-reference
22255 (url "https://codeberg.org/shinmera/machine-state")
22256 (commit commit)))
22257 (file-name (git-file-name "cl-machine-state" version))
22258 (sha256
22259 (base32 "1fjf2v8agx75qnna1n8fn54lvb01w1rk1vddi3p45a2xw1kwhzml"))))
22260 (build-system asdf-build-system/sbcl)
22261 (inputs
22262 (list sbcl-bordeaux-threads
22263 sbcl-cffi
22264 sbcl-cl-opengl
22265 sbcl-documentation-utils))
22266 (arguments
22267 '(#:tests? #f ; No tests.
22268 #:asd-systems '("machine-state" "machine-state/opengl")))
22269 (home-page "https://shinmera.com/docs/machine-state/")
22270 (synopsis "Retrieve machine state information about CPU time, memory usage and more")
22271 (description
22272 "This library implements various functions to access status information
22273about the machine, process, etc.")
22274 (license license:zlib))))
22275
22276(define-public cl-machine-state
22277 (sbcl-package->cl-source-package sbcl-machine-state))
22278
22279(define-public ecl-machine-state
22280 (sbcl-package->ecl-package sbcl-machine-state))
22281
22282(define-public sbcl-macro-html
22283 (let ((commit "c769b5db9da6dd61365a21fc61ba07ea0f5f1963")
22284 (revision "0"))
22285 (package
22286 (name "sbcl-macro-html")
22287 (version (git-version "1.2" revision commit))
22288 (source
22289 (origin
22290 (method git-fetch)
22291 (uri (git-reference
22292 (url "https://github.com/eugeneia/macro-html")
22293 (commit commit)))
22294 (file-name (git-file-name name version))
22295 (sha256
22296 (base32 "05gzgijz8r3dw3ilz7d5i0g0mbcyv9k8w2dgvw7n478njp1gfj4b"))))
22297 (build-system asdf-build-system/sbcl)
22298 (inputs
22299 (list sbcl-named-readtables))
22300 (home-page "https://github.com/eugeneia/macro-html")
22301 (synopsis "HTML generation library")
22302 (description "Aims to be fast, modular, cachable and concise. It does so
22303by defining each tag as a macro which expands to code printing the respective
22304HTML source. Also employs a DSL for element attributes.")
22305 (license license:agpl1))))
22306
22307(define-public ecl-macro-html
22308 (sbcl-package->ecl-package sbcl-macro-html))
22309
22310(define-public cl-macro-html
22311 (sbcl-package->cl-source-package sbcl-macro-html))
22312
22313(define-public sbcl-magic-ed
22314 (let ((commit "30bb27832d4e3e362578e7320934638f9889a8c4")
22315 (revision "1"))
22316 (package
22317 (name "sbcl-magic-ed")
22318 (version (git-version "0.2" revision commit))
22319 (source
22320 (origin
22321 (method git-fetch)
22322 (uri (git-reference
22323 (url "https://github.com/sanel/magic-ed")
22324 (commit commit)))
22325 (file-name (git-file-name "cl-magic-ed" version))
22326 (sha256
22327 (base32 "1j6il4lif0dy6hqiz6n91yl8dvii9pk1i9vz0faq5mnr42mr7i5f"))))
22328 (build-system asdf-build-system/sbcl)
22329 (home-page "https://github.com/sanel/magic-ed")
22330 (synopsis "Editing facility for Common Lisp REPL")
22331 (description
22332 "Magic (ed) is a tiny editing facility for Common Lisp, where you can
22333directly load, edit, manipulate and evaluate file or file content from REPL.
22334This package also can be a starting point for people who are not accustomed to
22335Emacs or SLIME and would like to continue using their default terminal/console
22336editor with Common Lisp.")
22337 (license license:expat))))
22338
22339(define-public cl-magic-ed
22340 (sbcl-package->cl-source-package sbcl-magic-ed))
22341
22342(define-public ecl-magic-ed
22343 (sbcl-package->ecl-package sbcl-magic-ed))
22344
22345(define-public sbcl-magic-square
22346 (package
22347 (name "sbcl-magic-square")
22348 (version "1.0")
22349 (source
22350 (origin
22351 (method git-fetch)
22352 (uri (git-reference
22353 (url "https://codeberg.org/glv/cl-magic-square")
22354 (commit (string-append "v" version))))
22355 (file-name (git-file-name "cl-magic-square" version))
22356 (sha256
22357 (base32 "1876l10gqdzjxf73h00gyn9j0li1d86pznkcczihpd0367drbpri"))))
22358 (build-system asdf-build-system/sbcl)
22359 (inputs
22360 (list sbcl-simple-matrix))
22361 (synopsis "Create magic squares in Common Lisp")
22362 (description "This package provides a Common Lisp library to create
22363magic squares of any size.")
22364 (home-page "https://codeberg.org/glv/cl-magic-square")
22365 (license license:gpl3+)))
22366
22367(define-public cl-magic-square
22368 (sbcl-package->cl-source-package sbcl-magic-square))
22369
22370(define-public ecl-magic-square
22371 (sbcl-package->ecl-package sbcl-magic-square))
22372
22373(define-public sbcl-magicffi
22374 (let ((commit "d88f2f280c31f639e4e05be75215d8a8dce6aef2"))
22375 (package
22376 (name "sbcl-magicffi")
22377 (version (git-version "0.0.0" "1" commit))
22378 (source
22379 (origin
22380 (method git-fetch)
22381 (uri (git-reference
22382 (url "https://github.com/dochang/magicffi/")
22383 (commit commit)))
22384 (file-name (git-file-name name version))
22385 (sha256
22386 (base32 "0p6ysa92fk34bhxpw7bycbfgw150fv11z9x8jr9xb4lh8cm2hvp6"))))
22387 (build-system asdf-build-system/sbcl)
22388 (native-inputs
22389 (list sbcl-alexandria))
22390 (inputs
22391 `(("cffi" ,sbcl-cffi)
22392 ("ppcre" ,sbcl-cl-ppcre)
22393 ("libmagic" ,file)))
22394 (arguments
22395 `(#:phases
22396 (modify-phases %standard-phases
22397 (add-after 'unpack 'fix-paths
22398 (lambda* (#:key inputs #:allow-other-keys)
22399 (let ((magic (assoc-ref inputs "libmagic")))
22400 (substitute* "grovel.lisp"
22401 (("/usr/include/magic.h")
22402 (string-append magic "/include/magic.h")))
22403 (substitute* "api.lisp"
22404 ((":default \"libmagic\"" all)
22405 (string-append ":default \"" magic "/lib/libmagic\"")))))))))
22406 (home-page "https://common-lisp.net/project/magicffi/")
22407 (synopsis "Common Lisp interface to libmagic based on CFFI")
22408 (description
22409 "MAGICFFI is a Common Lisp CFFI interface to libmagic(3), the file type
22410determination library using @emph{magic} numbers.")
22411 (license license:bsd-2))))
22412
22413(define-public ecl-magicffi
22414 (sbcl-package->ecl-package sbcl-magicffi))
22415
22416(define-public cl-magicffi
22417 (sbcl-package->cl-source-package sbcl-magicffi))
22418
22419(define-public sbcl-magicl
22420 (package
22421 (name "sbcl-magicl")
22422 (version "0.9.1")
22423 (source
22424 (origin
22425 (method git-fetch)
22426 (uri (git-reference
22427 (url "https://github.com/quil-lang/magicl")
22428 (commit (string-append "v" version))))
22429 (file-name (git-file-name "cl-magicl" version))
22430 (sha256
22431 (base32 "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v"))))
22432 (build-system asdf-build-system/sbcl)
22433 (native-inputs (list gfortran sbcl-fiasco))
22434 (inputs
22435 (list lapack
22436 sbcl-abstract-classes
22437 sbcl-alexandria
22438 sbcl-cffi
22439 sbcl-interface
22440 sbcl-policy-cond
22441 sbcl-static-vectors
22442 sbcl-trivial-garbage))
22443 (arguments
22444 (list
22445 #:asd-systems ''("magicl" "magicl/ext-expokit")
22446 #:phases
22447 #~(modify-phases %standard-phases
22448 (add-after 'unpack 'fix-paths
22449 (lambda* (#:key inputs #:allow-other-keys)
22450 (substitute* "src/extensions/blas/load-libs.lisp"
22451 (("libblas.so")
22452 (search-input-file inputs "/lib/libblas.so")))
22453 (substitute* "src/extensions/lapack/load-libs.lisp"
22454 (("liblapack.so")
22455 (search-input-file inputs "/lib/liblapack.so"))))))))
22456 (synopsis "Matrix Algebra proGrams In Common Lisp")
22457 (description
22458 "This package provides matrix algebra functions for Common Lisp.")
22459 (home-page "https://github.com/quil-lang/magicl")
22460 (license license:bsd-3)))
22461
22462(define-public cl-magicl
22463 (sbcl-package->cl-source-package sbcl-magicl))
22464
22465(define-public sbcl-maiden
22466 (let ((commit "164e8df1b513fcbf097315b51242d337c183a5ef")
22467 (revision "1"))
22468 (package
22469 (name "sbcl-maiden")
22470 (version (git-version "3.1.0" revision commit))
22471 (source
22472 (origin
22473 (method git-fetch)
22474 (uri (git-reference
22475 (url "https://github.com/Shirakumo/maiden/")
22476 (commit commit)))
22477 (sha256
22478 (base32 "1m16qi019cmfpfs6538hc4qsplpb8nl9ly1qlckgfxgjag0z3wdr"))
22479 (file-name (git-file-name "maiden" version))))
22480 (build-system asdf-build-system/sbcl)
22481 (arguments
22482 '(#:asd-systems '("maiden"
22483 "maiden-commands"
22484 "maiden-networking"
22485 "maiden-client-entities"
22486 "maiden-irc"
22487 "maiden-silly")))
22488 (inputs
22489 (list sbcl-alexandria
22490 sbcl-babel
22491 sbcl-bordeaux-threads
22492 sbcl-cl-base64
22493 sbcl-cl+ssl
22494 sbcl-closer-mop
22495 sbcl-deeds
22496 sbcl-documentation-utils
22497 sbcl-drakma
22498 sbcl-form-fiddle
22499 sbcl-jsown
22500 sbcl-lambda-fiddle
22501 sbcl-lquery
22502 sbcl-pathname-utils
22503 sbcl-trivial-garbage
22504 sbcl-trivial-indent
22505 sbcl-ubiquitous
22506 sbcl-usocket
22507 sbcl-uuid
22508 sbcl-verbose))
22509 (synopsis "Modern and extensible chat bot framework")
22510 (description "Maiden is a collection of systems to help you build
22511applications and libraries that interact with chat servers. It can help you
22512build a chat bot, or a general chat client. It also offers a variety of parts
22513that should make it much easier to write a client for a new chat protocol.")
22514 (home-page "http://shirakumo.github.io/maiden/")
22515 (license license:zlib))))
22516
22517(define-public maiden
22518 (sbcl-package->cl-source-package sbcl-maiden))
22519
22520(define-public sbcl-maidenhead
22521 (let ((commit "4b9c38e4845dda56ae7fb0355c5260c9ade0ac12")
22522 (revision "1"))
22523 (package
22524 (name "sbcl-maidenhead")
22525 (version (git-version "1.1" revision commit))
22526 (source
22527 (origin
22528 (method git-fetch)
22529 (uri (git-reference
22530 (url "https://codeberg.org/glv/maidenhead")
22531 (commit commit)))
22532 (file-name (git-file-name "cl-maidenhead" version))
22533 (sha256
22534 (base32 "10pcx2ngyj6lkfbg1b58lzcm02xl1a3smnad5lvvw30pbalwcq46"))))
22535 (build-system asdf-build-system/sbcl)
22536 (native-inputs
22537 (list sbcl-fiveam))
22538 (synopsis
22539 "Convert coordinates between latitude/longitude and Maidenhead")
22540 (description
22541 "This a Common Lisp library to convert geographic coordinates between
22542latitude/longitude and Maidenhead locator system.")
22543 (home-page "https://codeberg.org/glv/maidenhead")
22544 (license license:gpl3+))))
22545
22546(define-public cl-maidenhead
22547 (sbcl-package->cl-source-package sbcl-maidenhead))
22548
22549(define-public ecl-maidenhead
22550 (sbcl-package->ecl-package sbcl-maidenhead))
22551
22552(define-public sbcl-make-hash
22553 ;; no tagged branch
22554 (let ((revision "1")
22555 (commit "ae0909cd8e697520a1085fac6f54ac2b448ebd21"))
22556 (package
22557 (name "sbcl-make-hash")
22558 (version (git-version "1.0.2" revision commit))
22559 (source
22560 (origin
22561 (method git-fetch)
22562 (uri (git-reference
22563 (url "https://github.com/genovese/make-hash")
22564 (commit commit)))
22565 (file-name (git-file-name name version))
22566 (sha256
22567 (base32 "1qa4mcmb3pv44py0j129dd8hjx09c2akpnds53b69151mgwv5qz8"))))
22568 (build-system asdf-build-system/sbcl)
22569 (home-page "https://github.com/genovese/make-hash")
22570 (synopsis "Common Lisp package for flexible hash table creation")
22571 (description
22572 "This is a Common Lisp package for hash table creation with flexible,
22573extensible initializers.")
22574 (license license:bsd-3))))
22575
22576(define-public cl-make-hash
22577 (sbcl-package->cl-source-package sbcl-make-hash))
22578
22579(define-public ecl-make-hash
22580 (sbcl-package->ecl-package sbcl-make-hash))
22581
22582(define-public clasp-make-hash
22583 (sbcl-package->clasp-package sbcl-make-hash))
22584
22585(define-public sbcl-map-bind
22586 (let ((commit "532d55d93540c632e22b2cd264b5daa5f9d3d900")
22587 (revision "0"))
22588 (package
22589 (name "sbcl-map-bind")
22590 (version (git-version "1.0" revision commit))
22591 (source
22592 (origin
22593 (method git-fetch)
22594 (uri (git-reference
22595 (url "https://github.com/Hexstream/map-bind")
22596 (commit commit)))
22597 (file-name (git-file-name "cl-map-bind" version))
22598 (sha256
22599 (base32 "0hfy65xyqc4zqfncn11pp3hjjkdz7m91cynnv91s3lgcl3kffva0"))))
22600 (build-system asdf-build-system/sbcl)
22601 (native-inputs
22602 (list sbcl-parachute))
22603 (home-page "https://www.hexstreamsoft.com/libraries/map-bind/")
22604 (synopsis "Macro favouring positional references over naming")
22605 (description
22606 "@code{MAP-BIND} is a macro that allows visual grouping of variables with
22607their corresponding values in calls to mapping operators when using an
22608inline @code{LAMBDA}.")
22609 (license license:unlicense))))
22610
22611(define-public cl-map-bind
22612 (sbcl-package->cl-source-package sbcl-map-bind))
22613
22614(define-public ecl-cl-map-bind
22615 (sbcl-package->ecl-package sbcl-map-bind))
22616
22617(define-public sbcl-map-set
22618 (let ((commit "7b4b545b68b8")
22619 (revision "1"))
22620 (package
22621 (name "sbcl-map-set")
22622 (version (git-version "0.0.0" revision commit))
22623 (source
22624 (origin
22625 (method url-fetch)
22626 (uri (string-append
22627 "https://bitbucket.org/tarballs_are_good/map-set/get/"
22628 commit ".tar.gz"))
22629 (sha256
22630 (base32 "1sx5j5qdsy5fklspfammwb16kjrhkggdavm922a9q86jm5l0b239"))))
22631 (build-system asdf-build-system/sbcl)
22632 (home-page "https://bitbucket.org/tarballs_are_good/map-set")
22633 (synopsis "Set-like data structure")
22634 (description
22635 "Implementation of a set-like data structure with constant time
22636addition, removal, and random selection.")
22637 (license license:bsd-3))))
22638
22639(define-public cl-map-set
22640 (sbcl-package->cl-source-package sbcl-map-set))
22641
22642(define-public ecl-map-set
22643 (sbcl-package->ecl-package sbcl-map-set))
22644
22645(define-public clasp-map-set
22646 (sbcl-package->clasp-package sbcl-map-set))
22647
22648;;; The following package is renamed from "markup" to "markup-reader" in order
22649;;; not to conflict with the "cl-markup" package.
22650(define-public sbcl-markup-reader
22651 (let ((commit "d2d4d7b073554f47c24223a9304452966608702e")
22652 (revision "1"))
22653 (package
22654 (name "sbcl-markup-reader")
22655 (version (git-version "0.0.1" revision commit))
22656 (source
22657 (origin
22658 (method git-fetch)
22659 (uri (git-reference
22660 (url "https://github.com/moderninterpreters/markup")
22661 (commit commit)))
22662 (file-name (git-file-name "markup-reader" version))
22663 (sha256
22664 (base32 "0i3v938j8zpzkd6p9j8gadp5zndjcdxhswj1qgsp592v6497rpzj"))))
22665 (build-system asdf-build-system/sbcl)
22666 (arguments
22667 '(#:asd-systems '("markup")))
22668 (native-inputs
22669 (list sbcl-fiveam))
22670 (inputs
22671 (list sbcl-alexandria
22672 sbcl-cl-str
22673 sbcl-named-readtables
22674 sbcl-trivial-gray-streams))
22675 (home-page "https://github.com/moderninterpreters/markup")
22676 (synopsis "Reader-macro to read HTML tags inside of Common Lisp code")
22677 (description
22678 "Markup allows the use of HTML syntax with in Common Lisp code.
22679This has the advantage of being able to copy HTML snippets and have them
22680instantly be functional, less double quotes than a s-expression approach,
22681and designers will be able to understand the embedded HTML.")
22682 (license license:asl2.0))))
22683
22684(define-public cl-markup-reader
22685 (sbcl-package->cl-source-package sbcl-markup-reader))
22686
22687(define-public ecl-markup-reader
22688 (sbcl-package->ecl-package sbcl-markup-reader))
22689
22690(define-public sbcl-marray
22691 (let ((commit "0352f316b6830f0b119088ba9be836e4726bd7d8")
22692 (revision "0"))
22693 (package
22694 (name "sbcl-marray")
22695 (version (git-version "0.0.0" revision commit))
22696 (source
22697 (origin
22698 (method git-fetch)
22699 (uri (git-reference
22700 (url "https://github.com/death/marray")
22701 (commit commit)))
22702 (file-name (git-file-name "cl-marray" version))
22703 (sha256
22704 (base32 "0l4kvzpiw14vqhlsaflp3c7y51vznjjgbdi0q3axqk1wxvzy1zlx"))))
22705 (build-system asdf-build-system/sbcl)
22706 (arguments
22707 '(#:phases
22708 (modify-phases %standard-phases
22709 (add-after 'unpack 'fix-dependencies
22710 (lambda _
22711 (substitute* "marray.asd"
22712 ((":components")
22713 ":depends-on (#+sbcl \"sb-posix\")\n :components")))))))
22714 (home-page "https://github.com/death/marray")
22715 (synopsis "Memory-mapped files as Common Lisp arrays")
22716 (description
22717 "MARRAY is a library which provides access to memory-mapped files
22718through Common Lisp arrays.")
22719 (license license:expat))))
22720
22721(define-public cl-marray
22722 (sbcl-package->cl-source-package sbcl-marray))
22723
22724;; ECL support not implemented yet.
22725;; (define-public ecl-marray
22726;; (sbcl-package->ecl-package sbcl-marray))
22727
22728(define-public sbcl-marshal
22729 (let ((commit "eff1b15f2b0af2f26f71ad6a4dd5c4beab9299ec")
22730 (revision "1"))
22731 (package
22732 (name "sbcl-marshal")
22733 (version (git-version "1.3.0" revision commit))
22734 (source
22735 (origin
22736 (method git-fetch)
22737 (uri (git-reference
22738 (url "https://github.com/wlbr/cl-marshal")
22739 (commit commit)))
22740 (file-name (git-file-name name version))
22741 (sha256
22742 (base32 "08qs6fhk38xpkkjkpcj92mxx0lgy4ygrbbzrmnivdx281syr0gwh"))))
22743 (build-system asdf-build-system/sbcl)
22744 (home-page "https://github.com/wlbr/cl-marshal")
22745 (synopsis "Simple (de)serialization of Lisp datastructures")
22746 (description
22747 "Simple and fast marshalling of Lisp datastructures. Convert any object
22748into a string representation, put it on a stream an revive it from there.
22749Only minimal changes required to make your CLOS objects serializable.")
22750 (license license:expat))))
22751
22752(define-public cl-marshal
22753 (sbcl-package->cl-source-package sbcl-marshal))
22754
22755(define-public ecl-marshal
22756 (sbcl-package->ecl-package sbcl-marshal))
22757
22758(define-public clasp-marshal
22759 (sbcl-package->clasp-package sbcl-marshal))
22760
22761(define-public sbcl-mathkit
22762 (let ((commit "fd884f94b36ef5e9bc19459ad0b3cda6303d2a2a"))
22763 (package
22764 (name "sbcl-mathkit")
22765 (version (git-version "0.0" "1" commit))
22766 (source
22767 (origin
22768 (method git-fetch)
22769 (uri (git-reference
22770 (url "https://github.com/lispgames/mathkit/")
22771 (commit commit)))
22772 (file-name (git-file-name "cl-mathkit" version))
22773 (sha256
22774 (base32 "174y6ndmf52h8sml87qjfl48llmynvdizzk2h0mr85zbaysx73i3"))))
22775 (build-system asdf-build-system/sbcl)
22776 (inputs
22777 (list sbcl-alexandria
22778 sbcl-sb-cga))
22779 (home-page "https://github.com/lispgames/mathkit/")
22780 (synopsis "Pure math functions useful for games, 3D, and GL in general")
22781 (description
22782 "This is a purely math-related utility kit, providing functions which
22783can be useful for games, 3D, and GL in general.")
22784 (license license:expat))))
22785
22786(define-public cl-mathkit
22787 (sbcl-package->cl-source-package sbcl-mathkit))
22788
22789(define-public ecl-mathkit
22790 (sbcl-package->ecl-package sbcl-mathkit))
22791
22792(define-public sbcl-maxpc
22793 (let ((commit "e5e58d053039517d30fd59ab2d128256b87790d5")
22794 (revision "1"))
22795 (package
22796 (name "sbcl-maxpc")
22797 (version (git-version "0.0.0" revision commit))
22798 (source
22799 (origin
22800 (method git-fetch)
22801 (uri (git-reference
22802 (url "https://github.com/eugeneia/maxpc")
22803 (commit commit)))
22804 (file-name (git-file-name name version))
22805 (sha256
22806 (base32 "15wrjbr2js6j67c1dd4p2qxj49q9iqv1lhb7cwdcwpn79crr39gf"))))
22807 (build-system asdf-build-system/sbcl)
22808 (arguments
22809 ;; FIXME: A test fails with:
22810 ;; The assertion
22811 ;; (EQUAL (MULTIPLE-VALUE-LIST (MAXPC:GET-INPUT-POSITION))
22812 ;; '(7 2 2))
22813 ;; failed with
22814 ;; (MULTIPLE-VALUE-LIST (MAXPC:GET-INPUT-POSITION)) = (7).
22815 (list #:tests? #f))
22816 (home-page "https://mr.gy/software/maxpc/api.html")
22817 (synopsis
22818 "Library for writing parsers and lexers based on combinatory parsing")
22819 (description
22820 "@emph{Max’s Parser Combinators} is a simple and pragmatic library for
22821writing parsers and lexers based on combinatory parsing. MaxPC is capable of
22822parsing deterministic, context-free languages, provides powerful tools for
22823parse tree transformation and error handling, and can operate on
22824@dfn{sequences} and @dfn{streams}. It supports unlimited backtracking, but
22825does not implement @url{http://pdos.csail.mit.edu/~baford/packrat/thesis/,
22826Packrat Parsing}. Instead, MaxPC achieves good performance through its
22827optimized primitives, and explicit separation of matching and capturing input.
22828In practice, MaxPC parsers perform better on typical computer languages—when
22829compared to Packrat parsers—at the expense of not producing linear-time
22830parsers.")
22831 (license license:agpl3))))
22832
22833(define-public cl-maxpc
22834 (sbcl-package->cl-source-package sbcl-maxpc))
22835
22836(define-public ecl-maxpc
22837 (sbcl-package->ecl-package sbcl-maxpc))
22838
22839(define-public sbcl-mcclim
22840 (package
22841 (name "sbcl-mcclim")
22842 (version "1.0.0")
22843 (source
22844 (origin
22845 (method git-fetch)
22846 (uri (git-reference
22847 (url "https://codeberg.org/McCLIM/McCLIM")
22848 (commit (string-append version "-koliada"))))
22849 (file-name (git-file-name "cl-mcclim" version))
22850 (sha256
22851 (base32 "1rh321ikganff515jnm51jk71dwyij970jvic1jrh0cami7s9ifz"))))
22852 (build-system asdf-build-system/sbcl)
22853 (native-inputs
22854 (list sbcl-fiveam pkg-config))
22855 (inputs
22856 (list fontconfig
22857 freetype
22858 harfbuzz
22859 sbcl-alexandria
22860 sbcl-babel
22861 sbcl-bordeaux-threads
22862 sbcl-cffi
22863 sbcl-cl-base64
22864 sbcl-cl-dejavu
22865 sbcl-cl-freetype2
22866 sbcl-cl-pdf
22867 sbcl-cl-unicode
22868 sbcl-cl-vectors
22869 sbcl-cl-who
22870 sbcl-closer-mop
22871 sbcl-cluffer
22872 sbcl-clx
22873 sbcl-flexi-streams
22874 sbcl-flexichain
22875 sbcl-log4cl
22876 sbcl-lorem-ipsum
22877 sbcl-opticl
22878 sbcl-slime-swank
22879 sbcl-spatial-trees
22880 sbcl-trivial-features
22881 sbcl-trivial-garbage
22882 sbcl-trivial-gray-streams
22883 sbcl-zpb-ttf))
22884 (arguments
22885 '(#:asd-systems '("mcclim"
22886 "clim-examples"
22887 ;; clim-debugger is required by cleavir.
22888 "clim-debugger")
22889 #:phases
22890 (modify-phases %standard-phases
22891 (add-after 'unpack 'fix-paths
22892 (lambda* (#:key inputs #:allow-other-keys)
22893 (substitute* "Extensions/fontconfig/src/functions.lisp"
22894 (("libfontconfig\\.so")
22895 (search-input-file inputs "/lib/libfontconfig.so")))
22896 (substitute* "Extensions/harfbuzz/src/functions.lisp"
22897 (("libharfbuzz\\.so")
22898 (search-input-file inputs "/lib/libharfbuzz.so"))))))))
22899 (home-page "https://mcclim.common-lisp.dev/")
22900 (synopsis "Common Lisp GUI toolkit")
22901 (description
22902 "McCLIM is an implementation of the @emph{Common Lisp Interface Manager
22903specification}, a toolkit for writing GUIs in Common Lisp.")
22904 (license license:lgpl2.1+)))
22905
22906(define-public cl-mcclim
22907 (sbcl-package->cl-source-package sbcl-mcclim))
22908
22909(define-public sbcl-md5
22910 (package
22911 (name "sbcl-md5")
22912 (version "2.0.5")
22913 (source
22914 (origin
22915 (method git-fetch)
22916 (uri (git-reference
22917 (url "https://github.com/pmai/md5")
22918 (commit (string-append "release-" version))))
22919 (file-name (git-file-name "md5" version))
22920 (sha256
22921 (base32 "1g20np6rhn3y08z8mlmlk721mw2207s52v2pwp4smm3lz25sx3q5"))))
22922 (build-system asdf-build-system/sbcl)
22923 (home-page "https://github.com/pmai/md5")
22924 (synopsis
22925 "Common Lisp implementation of the MD5 Message-Digest Algorithm (RFC 1321)")
22926 (description
22927 "This package implements The MD5 Message-Digest Algorithm, as defined in
22928RFC 1321 by R. Rivest, published April 1992.")
22929 (license license:public-domain)))
22930
22931(define-public cl-md5
22932 (sbcl-package->cl-source-package sbcl-md5))
22933
22934(define-public ecl-md5
22935 (package
22936 (inherit (sbcl-package->ecl-package sbcl-md5))
22937 (inputs
22938 (list ecl-flexi-streams))))
22939
22940(define-public sbcl-messagebox
22941 (let ((commit "0bdec8ee00619a7a516b89628811793908d1e926")
22942 (revision "2"))
22943 (package
22944 (name "sbcl-messagebox")
22945 (version (git-version "1.0.0" revision commit))
22946 (source
22947 (origin
22948 (method git-fetch)
22949 (uri (git-reference
22950 (url "https://codeberg.org/shinmera/messagebox")
22951 (commit commit)))
22952 (file-name (git-file-name "messagebox" version))
22953 (sha256
22954 (base32 "0i8j8sxggsqlglyyinjcgpris02s2vwc7rsmgn10slp03nqfhdc0"))))
22955 (build-system asdf-build-system/sbcl)
22956 (arguments
22957 `(#:phases
22958 (modify-phases %standard-phases
22959 (add-after 'unpack 'patch-zenity-path
22960 (lambda* (#:key inputs #:allow-other-keys)
22961 (substitute* "zenity.lisp"
22962 (("\"zenity\"")
22963 (string-append "\"" (assoc-ref inputs "zenity")
22964 "/bin/zenity\""))))))))
22965 (inputs
22966 (list sbcl-documentation-utils
22967 sbcl-trivial-features
22968 zenity))
22969 (home-page "https://shinmera.com/docs/messagebox/")
22970 (synopsis "Display a native GUI message box")
22971 (description
22972 "This is a small library to display a native GUI message box. This can be
22973useful to show error messages and other informational pieces should the
22974application fail and be unable to do so using its standard UI.")
22975 (license license:zlib))))
22976
22977(define-public cl-messagebox
22978 (sbcl-package->cl-source-package sbcl-messagebox))
22979
22980(define-public ecl-messagebox
22981 (sbcl-package->ecl-package sbcl-messagebox))
22982
22983(define-public sbcl-meta
22984 (let ((commit "74faea662139fbbfb9c99341aaed989f5b0e9da3")
22985 (revision "0"))
22986 (package
22987 (name "sbcl-meta")
22988 (version (git-version "1.0.0" revision commit))
22989 (source
22990 (origin
22991 (method git-fetch)
22992 (uri (git-reference
22993 (url "https://gitlab.common-lisp.net/frideau/meta")
22994 (commit commit)))
22995 (file-name (git-file-name "cl-meta" version))
22996 (sha256
22997 (base32 "08s53zj3mcx82kszp1bg2vsb4kydvkc70kj4hpq9h1l5a1wh44cy"))))
22998 (build-system asdf-build-system/sbcl)
22999 (inputs
23000 (list sbcl-named-readtables))
23001 (home-page "https://gitlab.common-lisp.net/frideau/meta")
23002 (synopsis "Recursive-descent parser DSL for Common Lisp")
23003 (description
23004 "This package provides a recursive-descent parser DSL for Common Lisp.
23005It's intended as a simpler alternative to parser generators.")
23006 (license license:bsd-2))))
23007
23008(define-public cl-meta
23009 (sbcl-package->cl-source-package sbcl-meta))
23010
23011(define-public ecl-meta
23012 (sbcl-package->ecl-package sbcl-meta))
23013
23014(define-public sbcl-metabang-bind
23015 (let ((commit "08196426cb099db0623e6cae2aeca566e0b788b2")
23016 (revision "2"))
23017 (package
23018 (name "sbcl-metabang-bind")
23019 (version (git-version "0.8.0" revision commit))
23020 (source
23021 (origin
23022 (method git-fetch)
23023 (uri (git-reference
23024 (url "https://github.com/hraban/metabang-bind")
23025 (commit commit)))
23026 (file-name (git-file-name name version))
23027 (sha256
23028 (base32
23029 "14g7k3zhm8cd6bssc5mm5h6iq1dv5lfhiq33aimcmj5a6vbiq47d"))))
23030 (build-system asdf-build-system/sbcl)
23031 (native-inputs
23032 (list sbcl-lift))
23033 (synopsis "Macro that generalizes @code{multiple-value-bind} etc.")
23034 (description
23035 "Bind extends the idea of of let and destructing to provide a uniform
23036syntax for all your accessor needs. It combines @code{let},
23037@code{destructuring-bind}, @code{with-slots}, @code{with-accessors}, structure
23038editing, property or association-lists, and @code{multiple-value-bind} and a
23039whole lot more into a single form.")
23040 (home-page "https://common-lisp.net/project/metabang-bind/")
23041 ;; MIT License
23042 (license license:expat))))
23043
23044(define-public cl-metabang-bind
23045 (sbcl-package->cl-source-package sbcl-metabang-bind))
23046
23047(define-public ecl-metabang-bind
23048 (sbcl-package->ecl-package sbcl-metabang-bind))
23049
23050(define-public sbcl-metacopy
23051 (let ((commit "df7856f2a43fa91124fe780ef22f792040bc130c")
23052 (revision "2"))
23053 (package
23054 (name "sbcl-metacopy")
23055 (version (git-version "0.2.0" revision commit))
23056 (source
23057 (origin
23058 (method git-fetch)
23059 (uri (git-reference
23060 ;; Upstream changed the maintainer.
23061 ;; legacy https://github.com/gwkkwg/metacopy
23062 (url "https://github.com/hraban/metacopy")
23063 (commit commit)))
23064 (file-name (git-file-name "cl-metacopy" version))
23065 (sha256
23066 (base32 "0l5ryg8pvqz9sn9s8bsvd0plvcnm7crsx86iqk5wxblkialaizip"))))
23067 (build-system asdf-build-system/sbcl)
23068 (native-inputs
23069 (list sbcl-asdf-system-connections sbcl-lift))
23070 (inputs
23071 (list sbcl-contextl sbcl-moptilities))
23072 (home-page "https://github.com/hraban/metacopy")
23073 (synopsis "Flexible Common Lisp shallow/deep copy mechanism")
23074 (description
23075 "This package provides a flexible shallow/deep copy mechanism for
23076Common Lisp.")
23077 (license license:expat))))
23078
23079(define-public cl-metacopy
23080 (sbcl-package->cl-source-package sbcl-metacopy))
23081
23082(define-public ecl-metacopy
23083 (sbcl-package->ecl-package sbcl-metacopy))
23084
23085(define-public sbcl-metatilities-base
23086 (let ((commit "ef04337759972fd622c9b27b53149f3d594a841f")
23087 (revision "2"))
23088 (package
23089 (name "sbcl-metatilities-base")
23090 (version (git-version "0.6.6" revision commit))
23091 (source
23092 (origin
23093 (method git-fetch)
23094 (uri (git-reference
23095 (url "https://github.com/hraban/metatilities-base")
23096 (commit commit)))
23097 (file-name (git-file-name name version))
23098 (sha256
23099 (base32
23100 "069rk5ncwvjnnzvvky6xiriynl72yzvjpnzl6jw9jf3b8na14zrk"))))
23101 (build-system asdf-build-system/sbcl)
23102 (native-inputs
23103 (list sbcl-lift))
23104 (synopsis "Core of the metatilities Common Lisp library")
23105 (description
23106 "Metatilities-base is the core of the metatilities Common Lisp library
23107which implements a set of utilities.")
23108 (home-page "https://common-lisp.net/project/metatilities-base/")
23109 (license license:expat))))
23110
23111(define-public cl-metatilities-base
23112 (sbcl-package->cl-source-package sbcl-metatilities-base))
23113
23114(define-public ecl-metatilities-base
23115 (sbcl-package->ecl-package sbcl-metatilities-base))
23116
23117(define-public sbcl-metering
23118 (let ((commit "62dbaa5e8d29d2f213b881d740114941c2c3d1be")
23119 (revision "0"))
23120 (package
23121 (name "sbcl-metering")
23122 (version (git-version "3.2" revision commit))
23123 (source
23124 (origin
23125 (method git-fetch)
23126 (uri (git-reference
23127 (url "https://gitlab.common-lisp.net/dkochmanski/metering")
23128 (commit commit)))
23129 (file-name (git-file-name "cl-metering" version))
23130 (sha256
23131 (base32 "0jx3ypk8m815yp7208xkcxkvila847mvna25a2p22ihnj0ms9rn1"))))
23132 (build-system asdf-build-system/sbcl)
23133 (native-inputs (list sbcl-fiveam))
23134 (synopsis "Common Lisp code profiling tool")
23135 (description
23136 "The Metering System is a portable Common Lisp code profiling tool.
23137It gathers timing and consing statistics for specified functions while
23138a program is running.")
23139 (home-page "https://gitlab.common-lisp.net/dkochmanski/metering")
23140 (license license:public-domain))))
23141
23142(define-public cl-metering
23143 (sbcl-package->cl-source-package sbcl-metering))
23144
23145(define-public ecl-metering
23146 (sbcl-package->ecl-package sbcl-metering))
23147
23148(define-public sbcl-mgl-gpr
23149 (let ((commit "cb6ce51e2f87bf1d589f3703c13eea6e25780afe")
23150 (revision "1"))
23151 (package
23152 (name "sbcl-mgl-gpr")
23153 (version (git-version "0.0.1" revision commit))
23154 (source
23155 (origin
23156 (method git-fetch)
23157 (uri (git-reference
23158 (url "https://github.com/melisgl/mgl-gpr")
23159 (commit commit)))
23160 (file-name (git-file-name "cl-mgl-gpr" version))
23161 (sha256
23162 (base32 "0w51dqixh277k6sl8bqvvp1400y6kd1l5h3d9q2f40l9bpxy8gjx"))))
23163 (build-system asdf-build-system/sbcl)
23164 (inputs
23165 (list sbcl-cl-random sbcl-mgl-pax))
23166 (home-page "https://melisgl.github.io/mgl-gpr/")
23167 (synopsis "Common Lisp library of evolutionary algorithms")
23168 (description
23169 "@code{MGL-GPR} is a library of evolutionary algorithms such as
23170Genetic Programming (evolving typed expressions from a set of operators and
23171constants) and Differential Evolution.")
23172 (license license:expat))))
23173
23174(define-public cl-mgl-gpr
23175 (sbcl-package->cl-source-package sbcl-mgl-gpr))
23176
23177(define-public ecl-mgl-gpr
23178 (sbcl-package->ecl-package sbcl-mgl-gpr))
23179
23180(define-public sbcl-mgl-pax
23181 (let ((commit "6782eb041c152721972420dfafa192692d16b7ce")
23182 (revision "1"))
23183 (package
23184 (name "sbcl-mgl-pax")
23185 (version (git-version "0.3.0" revision commit))
23186 (source
23187 (origin
23188 (method git-fetch)
23189 (uri (git-reference
23190 (url "https://github.com/melisgl/mgl-pax")
23191 (commit commit)))
23192 (sha256
23193 (base32 "0fjbzc2fn17m80lfsc8121sa0bk7fg42fqlwhm01sk1fj4s48pma"))
23194 (file-name (git-file-name "cl-mgl-pax" version))))
23195 (build-system asdf-build-system/sbcl)
23196 ;; (native-inputs
23197 ;; (list sbcl-try))
23198 (inputs
23199 (list sbcl-3bmd
23200 sbcl-alexandria
23201 sbcl-colorize
23202 sbcl-md5
23203 sbcl-named-readtables
23204 sbcl-pythonic-string-reader
23205 sbcl-slime-swank
23206 sbcl-trivial-utf-8))
23207 (arguments
23208 `(#:asd-systems '("mgl-pax"
23209 "mgl-pax/navigate"
23210 "mgl-pax/document"
23211 "mgl-pax/transcribe")
23212 ;; Tests disabled because of a circular dependency
23213 ;; try -> mgl-pax -> try
23214 #:tests? #f))
23215 (synopsis "Exploratory programming environment and documentation generator")
23216 (description
23217 "PAX provides an extremely poor man's Explorable Programming
23218environment. Narrative primarily lives in so called sections that mix markdown
23219docstrings with references to functions, variables, etc, all of which should
23220probably have their own docstrings.
23221
23222The primary focus is on making code easily explorable by using SLIME's
23223@command{M-.} (@command{slime-edit-definition}). See how to enable some
23224fanciness in Emacs Integration. Generating documentation from sections and all
23225the referenced items in Markdown or HTML format is also implemented.
23226
23227With the simplistic tools provided, one may accomplish similar effects as with
23228Literate Programming, but documentation is generated from code, not vice versa
23229and there is no support for chunking yet. Code is first, code must look
23230pretty, documentation is code.")
23231 (home-page "https://melisgl.github.io/mgl-pax/")
23232 (license license:expat))))
23233
23234(define-public cl-mgl-pax
23235 (sbcl-package->cl-source-package sbcl-mgl-pax))
23236
23237(define-public ecl-mgl-pax
23238 (sbcl-package->ecl-package sbcl-mgl-pax))
23239
23240(define-public sbcl-mgrs
23241 (let ((commit "c06f268f9ccb00dfc94c8a07771ce1ca82df26a2")
23242 (revision "1"))
23243 (package
23244 (name "sbcl-mgrs")
23245 (version (git-version "1.0" revision commit))
23246 (source
23247 (origin
23248 (method git-fetch)
23249 (uri (git-reference
23250 (url "https://codeberg.org/glv/mgrs")
23251 (commit commit)))
23252 (file-name (git-file-name "cl-mgrs" version))
23253 (sha256
23254 (base32 "1n4kd734qjj7mrcg0q28hml3npam1rm067iwljwc87zshnxh5gmn"))))
23255 (build-system asdf-build-system/sbcl)
23256 (native-inputs
23257 (list sbcl-fiveam))
23258 (inputs
23259 (list sbcl-utm-ups))
23260 (synopsis
23261 "Convert coordinates between latitude/longitude and MGRS")
23262 (description
23263 "This a Common Lisp library to convert geographic coordinates between
23264latitude/longitude and MGRS.")
23265 (home-page "https://codeberg.org/glv/mgrs")
23266 (license license:gpl3+))))
23267
23268(define-public cl-mgrs
23269 (sbcl-package->cl-source-package sbcl-mgrs))
23270
23271(define-public ecl-mgrs
23272 (sbcl-package->ecl-package sbcl-mgrs))
23273
23274(define-public sbcl-misc-extensions
23275 (package
23276 (name "sbcl-misc-extensions")
23277 (version "4.2.4")
23278 (source
23279 (origin
23280 (method git-fetch)
23281 (uri (git-reference
23282 (url "https://gitlab.common-lisp.net/misc-extensions/misc-extensions.git")
23283 (commit (string-append "v" version))))
23284 (file-name (git-file-name "cl-misc-extensions" version))
23285 (sha256
23286 (base32 "1h4m2cyjfbrgmqaa4xhs2xdv36wsdxqwi4srvzp2jrf4m1kjgbym"))))
23287 (build-system asdf-build-system/sbcl)
23288 (synopsis "Collection of small macros and extensions for Common Lisp")
23289 (description
23290 "This project is intended as a catchall for small, general-purpose
23291extensions to Common Lisp. It contains:
23292
23293@itemize
23294@item @code{new-let}, a macro that combines and generalizes @code{let},
23295@code{let*} and @code{multiple-value-bind},
23296@item @code{gmap}, an iteration macro that generalizes @code{map}.
23297@end itemize\n")
23298 (home-page "https://common-lisp.net/project/misc-extensions/")
23299 (license license:public-domain)))
23300
23301(define-public cl-misc-extensions
23302 (sbcl-package->cl-source-package sbcl-misc-extensions))
23303
23304(define-public ecl-misc-extensions
23305 (sbcl-package->ecl-package sbcl-misc-extensions))
23306
23307(define-public clasp-misc-extensions
23308 (sbcl-package->clasp-package sbcl-misc-extensions))
23309
23310(define-public sbcl-mito
23311 (let ((commit "10c22b64047053b079beb5168d21222abe4d4b1d")
23312 (revision "4"))
23313 (package
23314 (name "sbcl-mito")
23315 (version (git-version "0.2.0" revision commit))
23316 (home-page "https://github.com/fukamachi/mito")
23317 (source
23318 (origin
23319 (method git-fetch)
23320 (uri (git-reference
23321 (url home-page)
23322 (commit commit)))
23323 (file-name (git-file-name "mito" version))
23324 (sha256
23325 (base32 "0yx1hf22k3wgl0b274i25i6cnshijzy7wppi6clgmhi2y5svgddr"))))
23326 (build-system asdf-build-system/sbcl)
23327 (native-inputs
23328 (list sbcl-prove))
23329 (inputs
23330 (list sbcl-alexandria
23331 sbcl-chipz
23332 sbcl-cl-package-locks
23333 sbcl-cl-ppcre
23334 sbcl-cl-reexport
23335 sbcl-closer-mop
23336 sbcl-dbi
23337 sbcl-dissect
23338 sbcl-esrap
23339 sbcl-local-time
23340 sbcl-sxql
23341 sbcl-trivia
23342 sbcl-uuid))
23343 (arguments
23344 '(#:phases
23345 (modify-phases %standard-phases
23346 (add-after 'unpack 'remove-non-functional-tests
23347 (lambda _
23348 (substitute* "mito-test.asd"
23349 (("\\(:test-file \"db/mysql\"\\)") "")
23350 (("\\(:test-file \"db/postgres\"\\)") "")
23351 (("\\(:test-file \"dao\"\\)") "")
23352 ;; TODO: migration/sqlite3 should work, re-enable once
23353 ;; upstream has fixed it:
23354 ;; https://github.com/fukamachi/mito/issues/70
23355 (("\\(:test-file \"migration/sqlite3\"\\)") "")
23356 (("\\(:test-file \"migration/mysql\"\\)") "")
23357 (("\\(:test-file \"migration/postgres\"\\)") "")
23358 (("\\(:test-file \"postgres-types\"\\)") "")
23359 (("\\(:test-file \"mixin\"\\)") ""))
23360 #t)))
23361 #:asd-systems '("mito-test" "mito")))
23362 (synopsis "ORM for Common Lisp with migrations and relationships support")
23363 (description "Mito is yet another object relational mapper, and it aims
23364to be a successor of Integral.
23365
23366@itemize
23367@item Support MySQL, PostgreSQL and SQLite3.
23368@item Add id (serial/uuid primary key), created_at and updated_at by default
23369like Ruby's ActiveRecord.
23370@item Migrations.
23371@item Database schema versioning.
23372@end itemize\n")
23373 (license license:llgpl))))
23374
23375(define-public cl-mito
23376 (sbcl-package->cl-source-package sbcl-mito))
23377
23378(define-public ecl-mito
23379 (let ((pkg (sbcl-package->ecl-package sbcl-mito)))
23380 (package
23381 (inherit pkg)
23382 (arguments
23383 ;; FIXME: Tests never end.
23384 '(#:tests? #f)))))
23385
23386(define-public sbcl-mito-auth
23387 (let ((commit "262f0f1c132195daa8840e69ece2780111383d05")
23388 (revision "0"))
23389 (package
23390 (name "sbcl-mito-auth")
23391 (version (git-version "0.1" revision commit))
23392 (source
23393 (origin
23394 (method git-fetch)
23395 (uri (git-reference
23396 (url "https://github.com/fukamachi/mito-auth/")
23397 (commit commit)))
23398 (file-name (git-file-name name version))
23399 (sha256
23400 (base32 "03k4wgyyvyx7f6nznfyl1mrms9z39pkwn4wnpwj8jfsg3zcny0k3"))))
23401 (build-system asdf-build-system/sbcl)
23402 (inputs (list sbcl-mito sbcl-ironclad sbcl-babel))
23403 (home-page "https://github.com/fukamachi/mito-auth/")
23404 (synopsis "Mito mixin class for user authorization")
23405 (description
23406 "@code{mito-auth} provides a @code{mito} mixin class for user
23407authorization.")
23408 (license license:llgpl))))
23409
23410(define-public cl-mito-auth
23411 (sbcl-package->cl-source-package sbcl-mito-auth))
23412
23413(define-public ecl-mito-auth
23414 (sbcl-package->ecl-package sbcl-mito-auth))
23415
23416(define-public sbcl-mk-string-metrics
23417 (package
23418 (name "sbcl-mk-string-metrics")
23419 (version "0.1.2")
23420 (home-page "https://github.com/cbaggers/mk-string-metrics/")
23421 (source (origin
23422 (method git-fetch)
23423 (uri (git-reference
23424 (url home-page)
23425 (commit version)))
23426 (sha256
23427 (base32 "0bg0bv2mfd4k0g3x72x563hvmrx18xavaffr6xk5rh4if5j7kcf6"))
23428 (file-name (git-file-name name version))))
23429 (build-system asdf-build-system/sbcl)
23430 (synopsis "Calculate various string metrics efficiently in Common Lisp")
23431 (description "This library implements efficient algorithms that calculate
23432various string metrics in Common Lisp:
23433
23434@itemize
23435@item Damerau-Levenshtein distance
23436@item Hamming distance
23437@item Jaccard similarity coefficient
23438@item Jaro distance
23439@item Jaro-Winkler distance
23440@item Levenshtein distance
23441@item Normalized Damerau-Levenshtein distance
23442@item Normalized Levenshtein distance
23443@item Overlap coefficient
23444@end itemize\n")
23445 (license license:x11)))
23446
23447(define-public cl-mk-string-metrics
23448 (sbcl-package->cl-source-package sbcl-mk-string-metrics))
23449
23450(define-public ecl-mk-string-metrics
23451 (sbcl-package->ecl-package sbcl-mk-string-metrics))
23452
23453(define-public sbcl-mmap
23454 (let ((commit "ba2e98c67e25f0fb8ff838238561120a23903ce7")
23455 (revision "0"))
23456 (package
23457 (name "sbcl-mmap")
23458 (version (git-version "1.0.0" revision commit))
23459 (source
23460 (origin
23461 (method git-fetch)
23462 (uri (git-reference
23463 (url "https://codeberg.org/shinmera/mmap")
23464 (commit commit)))
23465 (file-name (git-file-name name version))
23466 (sha256
23467 (base32 "0qd0xp20i1pcfn12kkapv9pirb6hd4ns7kz4zf1mmjwykpsln96q"))))
23468 (build-system asdf-build-system/sbcl)
23469 (native-inputs
23470 (list sbcl-alexandria sbcl-cffi sbcl-parachute
23471 sbcl-trivial-features))
23472 (inputs
23473 (list sbcl-cffi sbcl-documentation-utils))
23474 (home-page "https://shinmera.com/docs/mmap/")
23475 (synopsis "File memory mapping for Common Lisp")
23476 (description
23477 "This is a utility library providing access to the @emph{mmap} family of
23478functions in a portable way. It allows you to directly map a file into the
23479address space of your process without having to manually read it into memory
23480sequentially. Typically this is much more efficient for files that are larger
23481than a few Kb.")
23482 (license license:zlib))))
23483
23484(define-public cl-mmap
23485 (sbcl-package->cl-source-package sbcl-mmap))
23486
23487(define-public ecl-mmap
23488 (sbcl-package->ecl-package sbcl-mmap))
23489
23490(define-public sbcl-modf
23491 (let ((commit "dea93fe62c6bf7f66f32f52ac0c555aedbf7abad")
23492 (revision "0"))
23493 (package
23494 (name "sbcl-modf")
23495 (version (git-version "0" revision commit))
23496 (source
23497 (origin
23498 (method git-fetch)
23499 (uri (git-reference
23500 (url "https://github.com/smithzvk/modf")
23501 (commit commit)))
23502 (file-name (git-file-name "cl-modf" version))
23503 (sha256
23504 (base32
23505 "1aap7ldy7lv942khp026pgndgdzfkkqa9xcq1ykinrmflrgdazay"))))
23506 (build-system asdf-build-system/sbcl)
23507 (inputs
23508 (list sbcl-alexandria
23509 sbcl-closer-mop
23510 sbcl-iterate))
23511 (native-inputs
23512 (list sbcl-stefil))
23513 (home-page "https://github.com/smithzvk/modf")
23514 (synopsis "SETF like macro for functional programming in Common Lisp")
23515 (description "This library simplifies functional programming in Common
23516Lisp by making it easier to make new data structures with specified changes in
23517place.")
23518 (license license:bsd-3))))
23519
23520(define-public cl-modf
23521 (sbcl-package->cl-source-package sbcl-modf))
23522
23523(define-public ecl-modf
23524 (sbcl-package->ecl-package sbcl-modf))
23525
23526(define-public sbcl-modularize
23527 (let ((commit "86c5d9a11fbd2df9f0f03ac10b5d71837c8934ba")
23528 (revision "1"))
23529 (package
23530 (name "sbcl-modularize")
23531 (version (git-version "1.0.0" revision commit))
23532 (source
23533 (origin
23534 (method git-fetch)
23535 (uri (git-reference
23536 (url "https://codeberg.org/shinmera/modularize")
23537 (commit commit)))
23538 (file-name (git-file-name name version))
23539 (sha256
23540 (base32 "1zys29rfkb649rkgl3snxhajk8d5yf7ryxkrwy020kwdh7zdsg7d"))))
23541 (build-system asdf-build-system/sbcl)
23542 (inputs
23543 (list sbcl-documentation-utils
23544 sbcl-trivial-package-local-nicknames))
23545 (home-page "https://shinmera.com/docs/modularize/")
23546 (synopsis "Common Lisp modularization framework")
23547 (description
23548 "@code{MODULARIZE} is an attempt at providing a common interface to
23549segregate major application components. This is achieved by adding special
23550treatment to packages. Each module is a package that is specially registered,
23551which allows it to interact and co-exist with other modules in better ways. For
23552instance, by adding module definition options you can introduce mechanisms to
23553tie modules together in functionality, hook into each other and so on.")
23554 (license license:zlib))))
23555
23556(define-public ecl-modularize
23557 (sbcl-package->ecl-package sbcl-modularize))
23558
23559(define-public cl-modularize
23560 (sbcl-package->cl-source-package sbcl-modularize))
23561
23562(define-public sbcl-modularize-hooks
23563 (let ((commit "e0348ed3ffd59a9ec31ca4ab28289e748bfbf96a")
23564 (revision "1"))
23565 (package
23566 (name "sbcl-modularize-hooks")
23567 (version (git-version "1.0.2" revision commit))
23568 (source
23569 (origin
23570 (method git-fetch)
23571 (uri (git-reference
23572 (url "https://codeberg.org/shinmera/modularize-hooks")
23573 (commit commit)))
23574 (file-name (git-file-name "modularize-hooks" version))
23575 (sha256
23576 (base32 "12kjvin8hxidwkzfb7inqv5b6g5qzcssnj9wc497v2ixc56fqdz7"))))
23577 (build-system asdf-build-system/sbcl)
23578 (inputs
23579 (list sbcl-closer-mop sbcl-lambda-fiddle sbcl-modularize
23580 sbcl-trivial-arguments))
23581 (home-page "https://shinmera.com/docs/modularize-hooks/")
23582 (synopsis "Generic hooks and triggers extension for Modularize")
23583 (description
23584 "This is a simple extension to @code{MODULARIZE} that allows modules to
23585define and trigger hooks, which other modules can hook on to.")
23586 (license license:zlib))))
23587
23588(define-public ecl-modularize-hooks
23589 (sbcl-package->ecl-package sbcl-modularize-hooks))
23590
23591(define-public cl-modularize-hooks
23592 (sbcl-package->cl-source-package sbcl-modularize-hooks))
23593
23594(define-public sbcl-modularize-interfaces
23595 (let ((commit "96353657afb8c7aeba7ef5b51eb04c5ed3bcb6ef")
23596 (revision "1"))
23597 (package
23598 (name "sbcl-modularize-interfaces")
23599 (version (git-version "0.9.3" revision commit))
23600 (source
23601 (origin
23602 (method git-fetch)
23603 (uri (git-reference
23604 (url "https://codeberg.org/shinmera/modularize-interfaces")
23605 (commit commit)))
23606 (file-name (git-file-name "modularize-interfaces" version))
23607 (sha256
23608 (base32 "0bjf4wy39cwf75m7vh0r7mmcchs09yz2lrbyap98hnq8blq70fhc"))))
23609 (build-system asdf-build-system/sbcl)
23610 (inputs
23611 (list sbcl-lambda-fiddle sbcl-modularize sbcl-trivial-arguments
23612 sbcl-trivial-indent))
23613 (home-page "https://shinmera.com/docs/modularize-interfaces/")
23614 (synopsis "Programmatical interfaces extension for Modularize")
23615 (description
23616 "This is an extension to @code{MODULARIZE} that allows your application
23617to define interfaces in-code that serve both as a primary documentation and as
23618compliance control.")
23619 (license license:zlib))))
23620
23621(define-public ecl-modularize-interfaces
23622 (sbcl-package->ecl-package sbcl-modularize-interfaces))
23623
23624(define-public cl-modularize-interfaces
23625 (sbcl-package->cl-source-package sbcl-modularize-interfaces))
23626
23627(define-public sbcl-moira
23628 (let ((commit "448d8e77b95f5de7b41d2897a2167c4b1fb85a76")
23629 (revision "1"))
23630 (package
23631 (name "sbcl-moira")
23632 (version (git-version "0.0.0" revision commit))
23633 (source
23634 (origin
23635 (method git-fetch)
23636 (uri (git-reference
23637 (url "https://github.com/ruricolist/moira")
23638 (commit commit)))
23639 (file-name (git-file-name "cl-moira" version))
23640 (sha256
23641 (base32 "01wxjg122flla4pgys57hya3fwrkyjkpp26j5ypl5885zz1ip5b7"))))
23642 (build-system asdf-build-system/sbcl)
23643 (inputs
23644 (list sbcl-alexandria
23645 sbcl-bordeaux-threads
23646 sbcl-osicat
23647 sbcl-serapeum
23648 sbcl-trivial-features
23649 sbcl-trivial-garbage))
23650 (home-page "https://github.com/ruricolist/moira")
23651 (synopsis "Monitor and restart background threads")
23652 (description
23653 "Moira is a library for monitoring and, if necessary, restarting
23654long-running threads. In principle, it is like an in-Lisp process supervisor.")
23655 (license license:expat))))
23656
23657(define-public cl-moira
23658 (sbcl-package->cl-source-package sbcl-moira))
23659
23660(define-public ecl-moira
23661 (sbcl-package->ecl-package sbcl-moira))
23662
23663(define-public sbcl-more-conditions
23664 (let ((commit "b4859fb119b3b88719c3c4d5f6d7a620052fefc2")
23665 (revision "1"))
23666 (package
23667 (name "sbcl-more-conditions")
23668 (version (git-version "0.4.5" revision commit))
23669 (source
23670 (origin
23671 (method git-fetch)
23672 (uri (git-reference
23673 (url "https://github.com/scymtym/more-conditions")
23674 (commit commit)))
23675 (file-name (git-file-name "cl-more-conditions" version))
23676 (sha256
23677 (base32 "1n0xbz0yiqn9dxf0ycm57wqvsr4gh2q4hs5fskjbv87c47d7l7zr"))))
23678 (build-system asdf-build-system/sbcl)
23679 (native-inputs
23680 (list sbcl-fiveam sbcl-let-plus))
23681 (inputs
23682 (list sbcl-alexandria sbcl-closer-mop))
23683 (synopsis "General condition classes and signalling helpers")
23684 (description
23685 "This package provides some condition classes, functions and macros
23686which may be useful when building slightly complex systems.")
23687 (home-page "https://github.com/scymtym/more-conditions")
23688 (license license:llgpl))))
23689
23690(define-public cl-more-conditions
23691 (sbcl-package->cl-source-package sbcl-more-conditions))
23692
23693(define-public ecl-more-conditions
23694 (sbcl-package->ecl-package sbcl-more-conditions))
23695
23696(define-public sbcl-montezuma
23697 (let ((commit "ee2129eece7065760de4ebbaeffaadcb27644738")
23698 (revision "1"))
23699 (package
23700 (name "sbcl-montezuma")
23701 (version (git-version "0.1.3" revision commit))
23702 (source
23703 (origin
23704 (method git-fetch)
23705 (uri (git-reference
23706 (url "https://github.com/sharplispers/montezuma")
23707 (commit commit)))
23708 (file-name (git-file-name "cl-montezuma" version))
23709 (sha256
23710 (base32 "0svmvsbsirydk3c1spzfvj8qmkzcs9i69anpfvk1843i62wb7x2c"))))
23711 (build-system asdf-build-system/sbcl)
23712 (arguments
23713 `(#:phases
23714 (modify-phases %standard-phases
23715 ;; The _darcs directory contains a second copy of
23716 ;; montezuma-indexfiles.asd. Remove the directory to
23717 ;; prevent build failure caused by .asd files that have
23718 ;; the same filename.
23719 (add-after 'unpack 'remove-darcs-directory
23720 (lambda _
23721 (delete-file-recursively
23722 "contrib/montezuma-indexfiles/_darcs")))
23723 ;; Tests fail with: :FORCE and :FORCE-NOT arguments not
23724 ;; allowed in a nested call to ASDF/OPERATE:OPERATE unless
23725 ;; identically to toplevel.
23726 (add-after 'unpack 'fix-tests
23727 (lambda _
23728 (substitute* "montezuma.asd"
23729 ((":force t") "")))))))
23730 (inputs
23731 (list sbcl-babel
23732 sbcl-cl-fad
23733 sbcl-cl-ppcre))
23734 (native-inputs
23735 (list sbcl-trivial-timeout))
23736 (home-page "https://github.com/sharplispers/montezuma")
23737 (synopsis "Full-text indexing and search for Common Lisp")
23738 (description
23739 "Montezuma is a text search engine library for Lisp based on the Ferret
23740library for Ruby, which is itself based on the Lucene library for Java.")
23741 (license (list license:expat ; montezuma
23742 license:gpl3+))))) ; contrib/montezuma-indexfiles
23743
23744(define-public cl-montezuma
23745 (sbcl-package->cl-source-package sbcl-montezuma))
23746
23747(define-public ecl-montezuma
23748 (let ((pkg (sbcl-package->ecl-package sbcl-montezuma)))
23749 (package
23750 (inherit pkg)
23751 (arguments
23752 (substitute-keyword-arguments arguments
23753 ;; Tests fail with "Pathname without a physical namestring" error
23754 ;; on ECL.
23755 ((#:tests? _ #f) #f))))))
23756
23757(define-public sbcl-moptilities
23758 (let ((commit "a436f16b357c96b82397ec018ea469574c10dd41"))
23759 (package
23760 (name "sbcl-moptilities")
23761 (version (git-version "0.3.13" "1" commit))
23762 (home-page "https://github.com/gwkkwg/moptilities/")
23763 (source
23764 (origin
23765 (method git-fetch)
23766 (uri (git-reference
23767 (url home-page)
23768 (commit commit)))
23769 (file-name (git-file-name name version))
23770 (sha256
23771 (base32 "1q12bqjbj47lx98yim1kfnnhgfhkl80102fkgp9pdqxg0fp6g5fc"))))
23772 (build-system asdf-build-system/sbcl)
23773 (inputs
23774 (list sbcl-closer-mop))
23775 (native-inputs
23776 (list sbcl-lift))
23777 (arguments
23778 `(#:phases
23779 (modify-phases %standard-phases
23780 (add-after 'unpack 'fix-tests
23781 (lambda _
23782 (substitute* "lift-standard.config"
23783 ((":relative-to lift-test")
23784 ":relative-to moptilities-test"))
23785 #t))
23786 (add-after 'check 'remove-test-results
23787 ;; Otherwise the drag the SBCL package into the closure of the CL
23788 ;; package.
23789 (lambda* (#:key outputs #:allow-other-keys)
23790 (let* ((out (assoc-ref outputs "out"))
23791 (source-path (string-append out "/share/common-lisp/"
23792 (%lisp-type) "/moptilities/")))
23793 (delete-file-recursively
23794 (string-append source-path "/test-results")))
23795 #t)))))
23796 (synopsis "Compatibility layer for Common Lisp MOP implementation differences")
23797 (description
23798 "MOP utilities provide a common interface between Lisps and make the
23799MOP easier to use.")
23800 (license license:expat))))
23801
23802(define-public cl-moptilities
23803 (sbcl-package->cl-source-package sbcl-moptilities))
23804
23805(define-public ecl-moptilities
23806 (let ((pkg (sbcl-package->ecl-package sbcl-moptilities)))
23807 (package
23808 (inherit pkg)
23809 (arguments
23810 ;; Tests fail with "The function LIFT::GET-BACKTRACE-AS-STRING is
23811 ;; undefined" on ECL.
23812 '(#:tests? #f)))))
23813
23814(define-public sbcl-mssql
23815 (let ((commit "045602a19a32254108f2b75871049293f49731eb")
23816 (revision "1"))
23817 (package
23818 (name "sbcl-mssql")
23819 (version (git-version "0.0.3" revision commit))
23820 (source
23821 (origin
23822 (method git-fetch)
23823 (uri (git-reference
23824 (url "https://github.com/archimag/cl-mssql")
23825 (commit commit)))
23826 (file-name (git-file-name "cl-mssql" version))
23827 (sha256
23828 (base32 "09i50adppgc1ybm3ka9vbindhwa2x29f9n3n0jkrryymdhb8zknm"))))
23829 (build-system asdf-build-system/sbcl)
23830 (inputs
23831 (list sbcl-cffi
23832 freetds
23833 sbcl-garbage-pools
23834 sbcl-iterate
23835 sbcl-parse-number))
23836 (arguments
23837 `(#:phases
23838 (modify-phases %standard-phases
23839 (add-after 'unpack 'fix-paths
23840 (lambda* (#:key inputs #:allow-other-keys)
23841 (substitute* "src/mssql.lisp"
23842 (("libsybdb" all)
23843 (string-append (assoc-ref inputs "freetds") "/lib/" all)))
23844 #t)))))
23845 (home-page "https://github.com/archimag/cl-mssql")
23846 (synopsis "Common Lisp library to interact with MS SQL Server databases")
23847 (description
23848 "@code{cl-mssql} provides an interface to connect to Microsoft SQL
23849server. It uses the @code{libsybdb} foreign library provided by the FreeTDS
23850project.")
23851 (license license:llgpl))))
23852
23853(define-public cl-mssql
23854 (sbcl-package->cl-source-package sbcl-mssql))
23855
23856(define-public ecl-mssql
23857 (sbcl-package->ecl-package sbcl-mssql))
23858
23859(define-public sbcl-mt19937
23860 (package
23861 (name "sbcl-mt19937")
23862 (version "1.1")
23863 (source
23864 (origin
23865 (method url-fetch)
23866 (uri (string-append "https://common-lisp.net/project/asdf-packaging/"
23867 "mt19937-latest.tar.gz"))
23868 (sha256
23869 (base32
23870 "1iw636b0iw5ygkv02y8i41lh7xj0acglv0hg5agryn0zzi2nf1xv"))))
23871 (build-system asdf-build-system/sbcl)
23872 (synopsis "Mersenne Twister pseudo-random number generator")
23873 (description
23874 "MT19937 is a portable Mersenne Twister pseudo-random number generator
23875for Common Lisp.")
23876 (home-page "https://www.cliki.net/mt19937")
23877 (license license:public-domain)))
23878
23879(define-public cl-mt19937
23880 (sbcl-package->cl-source-package sbcl-mt19937))
23881
23882(define-public ecl-mt19937
23883 (sbcl-package->ecl-package sbcl-mt19937))
23884
23885(define-public clasp-mt19937
23886 (sbcl-package->clasp-package sbcl-mt19937))
23887
23888(define-public sbcl-multilang-documentation
23889 (let ((commit "59e798a07e949e8957a20927f52aca425d84e4a0"))
23890 (package
23891 (name "sbcl-multilang-documentation")
23892 (version (git-version "1.0.0" "1" commit))
23893 (source
23894 (origin
23895 (method git-fetch)
23896 (uri (git-reference
23897 (url "https://codeberg.org/shinmera/multilang-documentation")
23898 (commit commit)))
23899 (file-name (git-file-name name commit))
23900 (sha256
23901 (base32 "13y5jskx8n2b7kimpfarr8v777w3b7zj5swg1b99nj3hk0843ixw"))))
23902 (build-system asdf-build-system/sbcl)
23903 (inputs
23904 (list sbcl-documentation-utils sbcl-language-codes
23905 sbcl-system-locale))
23906 (home-page "https://shinmera.com/docs/multilang-documentation/")
23907 (synopsis "Add multiple languages support to Common Lisp documentation")
23908 (description
23909 "This library provides a drop-in replacement function for
23910cl:documentation that supports multiple docstrings per-language, allowing you
23911to write documentation that can be internationalised.")
23912 (license license:zlib))))
23913
23914(define-public cl-multilang-documentation
23915 (sbcl-package->cl-source-package sbcl-multilang-documentation))
23916
23917(define-public ecl-multilang-documentation
23918 (sbcl-package->ecl-package sbcl-multilang-documentation))
23919
23920(define-public sbcl-music-spelling
23921 (let ((commit "a2d492af440ad30a21042140cf8ffce4b73fbd42")
23922 (revision "0"))
23923 (package
23924 (name "sbcl-music-spelling")
23925 (version (git-version "0.1" revision commit))
23926 (source
23927 (origin
23928 (method git-fetch)
23929 (uri (git-reference
23930 (url "https://github.com/ntrocado/music-spelling")
23931 (commit commit)))
23932 (file-name (git-file-name "cl-music-spelling" version))
23933 (sha256
23934 (base32 "0fgahb0jjr4sp2739d55gylmx8alsghnx3spyaqfqci4cxfrys52"))))
23935 (build-system asdf-build-system/sbcl)
23936 (inputs (list sbcl-alexandria))
23937 (home-page "https://github.com/ntrocado/music-spelling/")
23938 (synopsis "Automatically spell musical pitches and rhythms")
23939 (description "This package implements an algorithm for the spelling
23940of enharmonics and dealing with ties and dots in rhythm notation.")
23941 (license license:asl2.0))))
23942
23943(define-public cl-music-spelling
23944 (sbcl-package->cl-source-package sbcl-music-spelling))
23945
23946(define-public ecl-music-spelling
23947 (sbcl-package->ecl-package sbcl-music-spelling))
23948
23949(define-public clasp-music-spelling
23950 (sbcl-package->clasp-package sbcl-music-spelling))
23951
23952(define-public sbcl-mw-equiv
23953 (let ((commit "3ae871458685b1ef7cd6a996ee22c8c5e738a03d")
23954 (revision "1"))
23955 (package
23956 (name "sbcl-mw-equiv")
23957 (version (git-version "0.1.2" revision commit))
23958 (home-page "https://github.com/sharplispers/mw-equiv/")
23959 (source
23960 (origin
23961 (method git-fetch)
23962 (uri (git-reference
23963 (url "https://github.com/sharplispers/mw-equiv/")
23964 (commit commit)))
23965 (file-name (git-file-name "cl-mw-equiv" version))
23966 (sha256
23967 (base32 "1fl90wp0jp7l90mps53fq0kzb28f10qfr739527h03xwqccyylad"))))
23968 (build-system asdf-build-system/sbcl)
23969 (synopsis "Extensible object equivalence protocol for Common Lisp")
23970 (description "Common Lisp comes with quite some functions to compare
23971objects for equality, yet none is applicable in every situation and in general
23972this is hard, as equality of objects depends on the semantics of operations on
23973them. As consequence, users find themselves regularly in a situation where
23974they have to roll their own specialized equality test.
23975
23976This module provides one of many possible equivalence relations between
23977standard Common Lisp objects. However, it can be extended for new objects
23978through a simple CLOS protocol. The rules when two objects are considered
23979equivalent distinguish between @emph{mutating} and @emph{frozen objects}. A
23980frozen object is promised not to be mutated in the future in a way that
23981operations on it can notice the difference.
23982
23983We have chosen to compare mutating objects only for identity (pointer
23984equality), to avoid various problems. Equivalence for frozen objects on the
23985other hand is established by recursing on the objects' constituent parts and
23986checking their equivalence. Hence, two objects are equivalent under the
23987@code{OBJECT=} relation, if they are either identical, or if they are frozen
23988and structurally equivalent, i.e. their constituents are point-wise
23989equivalent.
23990
23991Since many objects are potentially mutable, but are not necessarily mutated
23992from a certain point in their life time on, it is possible to promise to the
23993equivalence relation that they remain frozen for the rest of their life time,
23994thus enabling coarser equivalence than the often too fine-grained pointer
23995equality.")
23996 (license license:bsd-2))))
23997
23998(define-public cl-mw-equiv
23999 (sbcl-package->cl-source-package sbcl-mw-equiv))
24000
24001(define-public ecl-mw-equiv
24002 (sbcl-package->ecl-package sbcl-mw-equiv))
24003
24004(define-public clasp-mw-equiv
24005 (sbcl-package->clasp-package sbcl-mw-equiv))
24006
24007(define-public sbcl-myway
24008 (let ((commit "286230082a11f879c18b93f17ca571c5f676bfb7")
24009 (revision "1"))
24010 (package
24011 (name "sbcl-myway")
24012 (version (git-version "0.1.0" revision commit))
24013 (source
24014 (origin
24015 (method git-fetch)
24016 (uri (git-reference
24017 (url "https://github.com/fukamachi/myway")
24018 (commit commit)))
24019 (file-name (git-file-name "myway" version))
24020 (sha256
24021 (base32 "0briia9bk3lbr0frnx39d1qg6i38dm4j6z9w3yga3d40k6df4a90"))))
24022 (build-system asdf-build-system/sbcl)
24023 (arguments
24024 '(#:asd-systems '("myway-test" "myway")))
24025 (native-inputs
24026 (list sbcl-prove))
24027 (inputs
24028 (list sbcl-cl-ppcre sbcl-quri sbcl-map-set))
24029 (home-page "https://github.com/fukamachi/myway")
24030 (synopsis "Sinatra-compatible URL routing library for Common Lisp")
24031 (description "My Way is a Sinatra-compatible URL routing library.")
24032 (license license:llgpl))))
24033
24034(define-public cl-myway
24035 (sbcl-package->cl-source-package sbcl-myway))
24036
24037(define-public ecl-myway
24038 (sbcl-package->ecl-package sbcl-myway))
24039
24040(define-public sbcl-nactivitypub
24041 (package
24042 (name "sbcl-nactivitypub")
24043 (version "0.0.5")
24044 (source (origin
24045 (method git-fetch)
24046 (uri (git-reference
24047 (url "https://github.com/atlas-engineer/nactivitypub")
24048 (commit version)))
24049 (file-name (git-file-name "cl-nactivitypub" version))
24050 (sha256
24051 (base32
24052 "0m2vwi11zp0bpvr0hglq1svdxlp3cc70yvix30yksfzp6kk3amyn"))))
24053 (build-system asdf-build-system/sbcl)
24054 (inputs (list sbcl-cl-str
24055 sbcl-dexador
24056 sbcl-local-time
24057 sbcl-lparallel
24058 sbcl-njson
24059 sbcl-quri
24060 sbcl-serapeum))
24061 (home-page "https://github.com/atlas-engineer/nactivitypub")
24062 (synopsis
24063 "Common Lisp implementation of ActivityPub and ActivityStreams standards")
24064 (description
24065 "This package provides a Common Lisp implementation of ActivityPub and
24066ActivityStreams standards for social networking.
24067
24068Features:
24069@itemize
24070
24071@item Parsing and un-parsing ActivityStreams JSON-LD objects to/from CLOS
24072objects with convenient accessors on those.
24073
24074@item Sending and fetching ActivityStreams objects to/from the
24075ActivityStreams-enabled HTTP(S) URLs.
24076
24077@item Semantic info extraction with methods like @code{name*}, @code{url*},
24078@code{author*}, and @code{published*}.
24079
24080@item No reliance on JSON parser. @code{njson} is used for parser-independent
24081JSON handling. Load the parser backend you prefer!
24082
24083@end itemize")
24084 (license license:bsd-3)))
24085
24086(define-public cl-nactivitypub
24087 (sbcl-package->cl-source-package sbcl-nactivitypub))
24088
24089(define-public ecl-nactivitypub
24090 (sbcl-package->ecl-package sbcl-nactivitypub))
24091
24092(define-public sbcl-named-closure
24093 (let ((commit "d57305582137a24d6c8f8375fba496c653bb5699")
24094 (revision "0"))
24095 (package
24096 (name "sbcl-named-closure")
24097 (version (git-version "0.0.1" revision commit))
24098 (source
24099 (origin
24100 (method git-fetch)
24101 (uri (git-reference
24102 (url "https://github.com/kchanqvq/named-closure")
24103 (commit commit)))
24104 (file-name (git-file-name "named-closure" version))
24105 (sha256
24106 (base32 "17lpslk7amh9pghjpjdnd1aj50r1kdc4iyai2h2xas7wampg5xf5"))))
24107 (build-system asdf-build-system/sbcl)
24108 (inputs
24109 (list sbcl-alexandria
24110 sbcl-serapeum
24111 sbcl-iterate
24112 sbcl-trivial-cltl2))
24113 (synopsis "Introspectable, readably-printable and redefinable closures")
24114 (description
24115 "A CLOS class that defines callable objects whose behavior is similar to
24116closures but adds conveniences such as introspectability.")
24117 (home-page "https://github.com/kchanqvq/named-closure")
24118 (license license:expat))))
24119
24120(define-public cl-named-closure
24121 (sbcl-package->cl-source-package sbcl-named-closure))
24122
24123(define-public ecl-named-closure
24124 (sbcl-package->ecl-package sbcl-named-closure))
24125
24126(define-public sbcl-named-readtables
24127 (let ((commit "aa6dab55abff3cca26b976d9a105c2006ca0c3b6")
24128 (revision "5"))
24129 (package
24130 (name "sbcl-named-readtables")
24131 (version (git-version "0.9" revision commit))
24132 (source
24133 (origin
24134 (method git-fetch)
24135 (uri (git-reference
24136 (url "https://github.com/melisgl/named-readtables")
24137 (commit commit)))
24138 (sha256
24139 (base32 "0d9fp11ghpkjzc6ja89xm2lnh8xxxyb4w0z9k7ww1shnqvdy3jba"))
24140 (file-name (git-file-name "cl-named-readtables" version))))
24141 (build-system asdf-build-system/sbcl)
24142 ;; (native-inputs (list sbcl-try))
24143 ;; Tests disabled because of a circular dependency issue:
24144 ;; try -> named-readtables -> mgl-pax -> try
24145 (arguments
24146 '(#:tests? #f
24147 #:phases
24148 (modify-phases %standard-phases
24149 ;; We disable the documentations embedded in the core library to
24150 ;; avoid adding additional dependencies.
24151 (add-after 'unpack 'remove-doc
24152 (lambda _
24153 (substitute* "named-readtables.asd"
24154 (("\\:depends-on \\(\"mgl-pax-bootstrap\"\\)") "")
24155 (("\\(:file \"doc\"\\)") ""))
24156 #t)))))
24157 (home-page "https://github.com/melisgl/named-readtables/")
24158 (synopsis "Library that creates a namespace for named readtables")
24159 (description
24160 "Named readtables is a library that creates a namespace for named
24161readtables, which is akin to package namespacing in Common Lisp.")
24162 (license license:bsd-3))))
24163
24164(define-public cl-named-readtables
24165 (sbcl-package->cl-source-package sbcl-named-readtables))
24166
24167(define-public ecl-named-readtables
24168 (sbcl-package->ecl-package sbcl-named-readtables))
24169
24170(define-public clasp-named-readtables
24171 (sbcl-package->clasp-package sbcl-named-readtables))
24172
24173(define-public sbcl-napa-fft3
24174 (let ((commit "f2d9614c7167da327c9ceebefb04ff6eae2d2236")
24175 (revision "0"))
24176 (package
24177 (name "sbcl-napa-fft3")
24178 (version (git-version "0.0.1" revision commit))
24179 (source
24180 (origin
24181 (method git-fetch)
24182 (uri (git-reference
24183 (url "https://github.com/pkhuong/Napa-FFT3")
24184 (commit commit)))
24185 (file-name (git-file-name name version))
24186 (sha256
24187 (base32 "1hxjf599xgwm28gbryy7q96j9ys6hfszmv0qxpr5698hxnhknscp"))))
24188 (build-system asdf-build-system/sbcl)
24189 (home-page "https://github.com/pkhuong/Napa-FFT3")
24190 (synopsis "Fast Fourier Transform routines in Common Lisp")
24191 (description
24192 "Napa-FFT3 provides Discrete Fourier Transform (DFT) routines, but also
24193buildings blocks to express common operations that involve DFTs: filtering,
24194convolutions, etc.")
24195 (license license:bsd-3))))
24196
24197(define-public cl-napa-fft3
24198 (sbcl-package->cl-source-package sbcl-napa-fft3))
24199
24200(define-public sbcl-nasdf
24201 (let ((commit "ab7a018f3a67a999c72710644b10b4545130c139"))
24202 (package
24203 (name "sbcl-nasdf")
24204 (version "0.1.8")
24205 (source
24206 (origin
24207 (method git-fetch)
24208 (uri (git-reference
24209 (url "https://github.com/atlas-engineer/ntemplate")
24210 (commit commit)))
24211 (file-name (git-file-name "cl-ntemplate" version))
24212 (sha256
24213 (base32 "15j7kqxvn0blr0i2xgk0il0ia91p28clfqxdh00vlp423v9a2wbx"))))
24214 (build-system asdf-build-system/sbcl)
24215 (arguments
24216 `(#:phases
24217 (modify-phases %standard-phases
24218 (add-after 'unpack 'cd-sdl
24219 (lambda _
24220 (chdir "nasdf"))))))
24221 (home-page "https://github.com/atlas-engineer/ntemplate")
24222 (synopsis "ASDF helpers for system setup, testing and installation")
24223 (description
24224 "NASDF is an ASDF extension providing utilities to ease system setup,
24225testing and installation.
24226
24227@itemize
24228@item Simple way to fetch Git submodules and “do the right thing” for
24229setup. This may effectively supersede Quicklisp. A benefit of using Git
24230submodules over the default Quicklisp distribution is improved
24231reproducibility.
24232@item Test helpers, like distinction between offline and online tests, or
24233continuous integration options, and warning reports.
24234@item Installation helpers, for instance to install libraries, icons and
24235desktop files to the right directories.
24236@end itemize\n")
24237 (license license:bsd-3))))
24238
24239(define-public cl-nasdf
24240 (sbcl-package->cl-source-package sbcl-nasdf))
24241
24242(define-public ecl-nasdf
24243 (sbcl-package->ecl-package sbcl-nasdf))
24244
24245(define-public sbcl-nclasses
24246 (package
24247 (name "sbcl-nclasses")
24248 (version "0.6.1")
24249 (source
24250 (origin
24251 (method git-fetch)
24252 (uri (git-reference
24253 (url "https://github.com/atlas-engineer/nclasses")
24254 (commit version)))
24255 (file-name (git-file-name "cl-nclasses" version))
24256 (sha256
24257 (base32
24258 "00is7fg1jsj9r3jawphbk5gh8kmiixl7g60xg1ic2q2cpilfd1by"))))
24259 (build-system asdf-build-system/sbcl)
24260 (inputs
24261 (list sbcl-moptilities))
24262 (native-inputs
24263 (list sbcl-lisp-unit2))
24264 (home-page "https://github.com/atlas-engineer/nclasses")
24265 (synopsis "Simplify class, condition, and generic function definitions")
24266 (description
24267 "NClasses provides helper macros to help write classes, conditions,
24268generic functions, and CLOS code in general with less boilerplate.
24269
24270It's a fork of @code{hu.dwim.defclass-star}. It includes some bug fixes and
24271extra features like type inference.")
24272 (license license:public-domain)))
24273
24274(define-public cl-nclasses
24275 (sbcl-package->cl-source-package sbcl-nclasses))
24276
24277(define-public ecl-nclasses
24278 (sbcl-package->ecl-package sbcl-nclasses))
24279
24280(define-public sbcl-ndebug
24281 (package
24282 (name "sbcl-ndebug")
24283 (version "0.2.0")
24284 (source
24285 (origin
24286 (method git-fetch)
24287 (uri (git-reference
24288 (url "https://github.com/atlas-engineer/ndebug")
24289 (commit version)))
24290 (file-name (git-file-name "cl-ndebug" version))
24291 (sha256
24292 (base32 "1sndg4qclkdr53xkxrfjskx8gcqx0bn4r0vslzfx1kgznl4hbf1d"))))
24293 (build-system asdf-build-system/sbcl)
24294 (inputs
24295 (list sbcl-dissect
24296 sbcl-trivial-custom-debugger
24297 sbcl-bordeaux-threads
24298 sbcl-trivial-gray-streams))
24299 (native-inputs
24300 (list sbcl-lisp-unit2))
24301 (home-page "https://github.com/atlas-engineer/ndebug/")
24302 (synopsis "Toolkit to build UI-aware Common Lisp debugger hooks")
24303 (description
24304 "NDebug provides a small set of utilities to make graphical (or, rather
24305non-REPL-resident) Common Lisp applications easier to integrate with the
24306standard Lisp debugger (@code{*debugger-hook*}, namely) and
24307implementation-specific debugger hooks (via @code{trivial-custom-debugger}),
24308especially in a multi-threaded context.")
24309 (license license:bsd-3)))
24310
24311(define-public cl-ndebug
24312 (sbcl-package->cl-source-package sbcl-ndebug))
24313
24314(define-public ecl-ndebug
24315 (sbcl-package->ecl-package sbcl-ndebug))
24316
24317(define-public sbcl-net.didierverna.asdf-flv
24318 (package
24319 (name "sbcl-net.didierverna.asdf-flv")
24320 (version "2.2")
24321 (source
24322 (origin
24323 (method git-fetch)
24324 (uri (git-reference
24325 (url "https://github.com/didierverna/asdf-flv")
24326 (commit (string-append "version-" version))))
24327 (file-name (git-file-name "asdf-flv" version))
24328 (sha256
24329 (base32 "10hfwi6jz10kvd6g82nj31qqihk1mxh95prlpmchhycirjq16ji8"))))
24330 (build-system asdf-build-system/sbcl)
24331 (synopsis "Common Lisp ASDF extension to provide support for file-local variables")
24332 (description "ASDF-FLV provides support for file-local variables through
24333ASDF. A file-local variable behaves like @code{*PACKAGE*} and
24334@code{*READTABLE*} with respect to @code{LOAD} and @code{COMPILE-FILE}: a new
24335dynamic binding is created before processing the file, so that any
24336modification to the variable becomes essentially file-local.
24337
24338In order to make one or several variables file-local, use the macros
24339@code{SET-FILE-LOCAL-VARIABLE(S)}.")
24340 (home-page "https://www.lrde.epita.fr/~didier/software/lisp/misc.php#asdf-flv")
24341 (license (license:non-copyleft
24342 "https://www.gnu.org/prep/maintain/html_node/License-Notices-for-Other-Files.html"
24343 "GNU All-Permissive License"))))
24344
24345(define-public cl-net.didierverna.asdf-flv
24346 (sbcl-package->cl-source-package sbcl-net.didierverna.asdf-flv))
24347
24348(define-public ecl-net.didierverna.asdf-flv
24349 (sbcl-package->ecl-package sbcl-net.didierverna.asdf-flv))
24350
24351(define-public clasp-net.didierverna.asdf-flv
24352 (sbcl-package->clasp-package sbcl-net.didierverna.asdf-flv))
24353
24354(define-public sbcl-nfiles
24355 (package
24356 (name "sbcl-nfiles")
24357 (version "1.1.4")
24358 (source
24359 (origin
24360 (method git-fetch)
24361 (uri (git-reference
24362 (url "https://github.com/atlas-engineer/nfiles")
24363 (commit version)))
24364 (file-name (git-file-name "cl-nfiles" version))
24365 (sha256
24366 (base32
24367 "1a8zsphbbl9r4sdm95kgm4ljd9b148c9fnwlq7f930fh9826kf72"))))
24368 (build-system asdf-build-system/sbcl)
24369 (inputs
24370 (list gnupg
24371 sbcl-alexandria
24372 sbcl-nclasses
24373 sbcl-quri
24374 sbcl-serapeum
24375 sbcl-trivial-garbage
24376 sbcl-trivial-package-local-nicknames
24377 sbcl-trivial-types))
24378 (native-inputs
24379 (list sbcl-lisp-unit2))
24380 (arguments
24381 `(#:phases
24382 (modify-phases %standard-phases
24383 (add-after 'unpack 'fix-paths
24384 (lambda* (#:key inputs #:allow-other-keys)
24385 (substitute* "gpg.lisp"
24386 (("\"gpg\"")
24387 (string-append "\"" (assoc-ref inputs "gnupg") "/bin/gpg\""))))))))
24388 (home-page "https://github.com/atlas-engineer/nfiles")
24389 (synopsis "Manage file persistence and loading in Common Lisp")
24390 (description
24391 "NFiles is a Common Lisp library to help manage file persistence and
24392loading, in particular user-centric files like configuration files. It boasts
24393the following features:
24394
24395@itemize
24396@item Dynamic and customizable path expansion.
24397
24398@item Extensible serialization and deserialization.
24399
24400@item Cached reads and writes. When a file object expands to the same path as
24401another one, a read or write on it won’t do anything in case there was no
24402change since last write.
24403
24404@item (Experimental!) On-the-fly PGP encryption.
24405
24406@item Profile support.
24407
24408@item On read error, existing files are backed up.
24409
24410@item On write error, no file is written to disk, the existing file is preserved.
24411@end itemize\n")
24412 (license license:bsd-3)))
24413
24414(define-public cl-nfiles
24415 (package
24416 (inherit (sbcl-package->cl-source-package sbcl-nfiles))
24417 (inputs
24418 (cons (list "iolib" cl-iolib)
24419 (package-inputs sbcl-nfiles)))))
24420
24421(define-public ecl-nfiles
24422 (let ((pkg (sbcl-package->ecl-package sbcl-nfiles)))
24423 (package
24424 (inherit pkg)
24425 (inputs
24426 (cons (list "iolib" ecl-iolib)
24427 (package-inputs pkg))))))
24428
24429(define-public sbcl-nhooks
24430 (package
24431 (name "sbcl-nhooks")
24432 (version "1.2.2")
24433 (source
24434 (origin
24435 (method git-fetch)
24436 (uri (git-reference
24437 (url "https://github.com/atlas-engineer/nhooks")
24438 (commit version)))
24439 (file-name (git-file-name "cl-nhooks" version))
24440 (sha256
24441 (base32
24442 "1m9dfp7wjm8k16x45qnw258ca8gnic3k2ik79sdn5gxcx6qxy3g8"))))
24443 (build-system asdf-build-system/sbcl)
24444 (inputs
24445 (list sbcl-serapeum))
24446 (native-inputs
24447 (list sbcl-lisp-unit2))
24448 (home-page "https://github.com/atlas-engineer/nhooks")
24449 (synopsis "Hook facility for Common Lisp")
24450 (description "This package holds an enhanced implementation of
24451hooks (extension points). It works similarly to Emacs hooks with crucial
24452improvements:
24453
24454@itemize
24455
24456@item If the compiler allows it (such as SBCL), type-checking is performed at
24457compile-time and at run-time when adding handlers to a hook.
24458
24459@item On failure, multiple restarts are offered, such as disabling the
24460offending handler or simply continuing to the next function.
24461
24462@item The hook handler execution order and combination can be customized.
24463
24464@item Anonymous functions (lambdas) can be added to hooks as handler objects.
24465When inspecting hooks, readable names are thus exposed instead of lambda
24466blackboxes. Handlers are compared through their names (through the mandatory
24467name slot). A hook can not contain multiple handlers with the same name.
24468
24469@item A special provision is taken for “setters”, handlers that are meant to
24470set a given place to a given values. Such handler objects can be compared and
24471identified uniquely.
24472
24473@end itemize\n")
24474 (license license:expat)))
24475
24476(define-public cl-nhooks
24477 (sbcl-package->cl-source-package sbcl-nhooks))
24478
24479(define-public ecl-nhooks
24480 (sbcl-package->ecl-package sbcl-nhooks))
24481
24482(define-public sbcl-nibbles
24483 ;; No tagged release since 2018.
24484 (let ((commit "a46a67736e07b548cdd7485cb36834f7942313f1")
24485 (revision "3"))
24486 (package
24487 (name "sbcl-nibbles")
24488 (version (git-version "0.14" revision commit))
24489 (source
24490 (origin
24491 (method git-fetch)
24492 (uri (git-reference
24493 (url "https://github.com/sharplispers/nibbles/")
24494 (commit commit)))
24495 (file-name (git-file-name "cl-nibbles" version))
24496 (sha256
24497 (base32 "12qjich11hp31dhbvbsixyjbddmr6faaajigrivgbxy9kw6d279j"))))
24498 (build-system asdf-build-system/sbcl)
24499 (native-inputs
24500 ;; Tests only.
24501 (list sbcl-rt))
24502 (synopsis
24503 "Common Lisp library for accessing octet-addressed blocks of data")
24504 (description
24505 "When dealing with network protocols and file formats, it's common to
24506have to read or write 16-, 32-, or 64-bit datatypes in signed or unsigned
24507flavors. Common Lisp sort of supports this by specifying :element-type for
24508streams, but that facility is underspecified and there's nothing similar for
24509read/write from octet vectors. What most people wind up doing is rolling their
24510own small facility for their particular needs and calling it a day.
24511
24512This library attempts to be comprehensive and centralize such
24513facilities. Functions to read 16-, 32-, and 64-bit quantities from octet
24514vectors in signed or unsigned flavors are provided; these functions are also
24515SETFable. Since it's sometimes desirable to read/write directly from streams,
24516functions for doing so are also provided. On some implementations,
24517reading/writing IEEE singles/doubles (i.e. single-float and double-float) will
24518also be supported.")
24519 (home-page "https://github.com/sharplispers/nibbles")
24520 (license license:bsd-3))))
24521
24522(define-public cl-nibbles
24523 (sbcl-package->cl-source-package sbcl-nibbles))
24524
24525(define-public ecl-nibbles
24526 (sbcl-package->ecl-package sbcl-nibbles))
24527
24528(define-public clasp-nibbles
24529 (sbcl-package->clasp-package sbcl-nibbles))
24530
24531(define-public sbcl-ningle
24532 (let ((commit "2e85675bbb668d6ef341514fc9f22391a0f506b1")
24533 (revision "2"))
24534 (package
24535 (name "sbcl-ningle")
24536 (version (git-version "0.3.0" revision commit))
24537 (source
24538 (origin
24539 (method git-fetch)
24540 (uri (git-reference
24541 (url "https://github.com/fukamachi/ningle")
24542 (commit commit)))
24543 (file-name (git-file-name "cl-ningle" version))
24544 (sha256
24545 (base32 "0s9nn8ml1j4839rycvdjcbsynkqnhxw1zmrgpjz48smscwdf1f8p"))))
24546 (build-system asdf-build-system/sbcl)
24547 (arguments
24548 '(#:tests? #f)) ; TODO: pull in clack-test
24549 (native-inputs
24550 (list sbcl-prove))
24551 (inputs
24552 (list sbcl-cl-syntax sbcl-myway sbcl-lack sbcl-alexandria
24553 sbcl-babel))
24554 (home-page "https://8arrow.org/ningle/")
24555 (synopsis "Super micro framework for Common Lisp")
24556 (description
24557 "Ningle is a lightweight web application framework for Common Lisp.")
24558 (license license:llgpl))))
24559
24560(define-public cl-ningle
24561 (sbcl-package->cl-source-package sbcl-ningle))
24562
24563(define-public ecl-ningle
24564 (sbcl-package->ecl-package sbcl-ningle))
24565
24566(define-public sbcl-njson
24567 (package
24568 (name "sbcl-njson")
24569 (version "1.2.2")
24570 (source (origin
24571 (method git-fetch)
24572 (uri (git-reference
24573 (url "https://github.com/atlas-engineer/njson")
24574 (commit version)))
24575 (file-name (git-file-name "cl-njson" version))
24576 (sha256
24577 (base32
24578 "05v5bk3l47mds4ihxs8jlqm19gqq7hb4q0161bgg99w9847l63lk"))))
24579 (build-system asdf-build-system/sbcl)
24580 (inputs (list sbcl-cl-json sbcl-jzon))
24581 (native-inputs (list sbcl-lisp-unit2))
24582 (arguments
24583 '(#:asd-systems '("njson" "njson/cl-json" "njson/jzon")))
24584 (home-page "https://github.com/atlas-engineer/njson")
24585 (synopsis "JSON handling framework for Common Lisp")
24586 (description
24587 "NJSON aims to make it convenient for one to decode, encode,
24588and process JSON data, in the minimum keystrokes/minutes possible.
24589
24590NJSON is parser-independent, with existing Common Lisp JSON parsers being
24591loadable as additional system. @code{jzon} is included by default, though.
24592Conveniences that NJSON provides are:
24593
24594@itemize
24595@item @code{encode} and @code{decode} as single entry points for JSON reading
24596and writing, be it from streams/string/files, or from those.
24597
24598@item @code{jget}, @code{jcopy}, @code{jkeys}, and their aliases to
24599manipulate the decoded objects' properties without the need to worry
24600about the low-level details of how these values are decoded.
24601
24602@item @code{jif}, @code{jwhen}, @code{jor}, @code{jand}, and other macros
24603mimicking Lisp ones, while using truth values of JSON-decoded data.
24604
24605@item @code{jbind} and @code{jmatch} macros to destructure and
24606validate parsed JSON.
24607
24608@item @code{njson/aliases} package to nickname to @code{j} for all the
24609forms conveniently accessible as @code{j:get}, @code{j:copy},
24610@code{j:if} etc.
24611
24612@end itemize\n")
24613 (license license:bsd-3)))
24614
24615(define-public cl-njson
24616 (sbcl-package->cl-source-package sbcl-njson))
24617
24618(define-public ecl-njson
24619 (sbcl-package->ecl-package sbcl-njson))
24620
24621(define-public sbcl-nkeymaps
24622 (package
24623 (name "sbcl-nkeymaps")
24624 (version "1.1.1")
24625 (source
24626 (origin
24627 (method git-fetch)
24628 (uri (git-reference
24629 (url "https://github.com/atlas-engineer/nkeymaps")
24630 (commit version)))
24631 (file-name (git-file-name "cl-nkeymaps" version))
24632 (sha256
24633 (base32 "179hrnkn3pkwkp4ap6ax0zgp7xcr9cq7icff42r79gh43ri3kpzy"))))
24634 (build-system asdf-build-system/sbcl)
24635 (inputs
24636 (list sbcl-alexandria
24637 sbcl-fset
24638 sbcl-cl-str
24639 sbcl-trivial-package-local-nicknames))
24640 (native-inputs
24641 (list sbcl-lisp-unit2))
24642 (home-page "https://github.com/atlas-engineer/nkeymaps")
24643 (synopsis "Keymap facility for Common Lisp")
24644 (description
24645 "This is a keymap facility for Common Lisp inspired by Emacsy
24646(keymap.scm) which is inspired by Emacs.
24647@itemize
24648
24649@item Support prefix keys to other keymaps. For instance, if you prefix
24650my-mode-map with C-c, then all bindings for my-mode will be accessible after
24651pressing C-c.
24652
24653@item List all bindings matching a given prefix. (Also known as which-key in
24654Emacs.)
24655
24656@item List the bindings associated to a command.
24657
24658@item Support multiple inheritance.
24659
24660@item Support keycode.
24661
24662@item Validate keyspec at compile time.
24663
24664@item define-key can set multiple bindings in a single call.
24665
24666@item Support multiple scheme to make it easy to switch between, say,
24667Emacs-style and VI-style bindings. This orthogonality to keymaps composes
24668better than having multiple keymaps: changing scheme applies to the entire
24669program, which is easier than looping through all keymaps to change them.
24670
24671@item Translate keyspecs as a fallback. For instance if shift-a is not bound,
24672check A.
24673
24674@item Behaviour can be customized with global parameters such as
24675*print-shortcut*.
24676
24677@item The compose function can merge multiple keymaps together.
24678
24679@item Support multiple arguments when that makes sense (e.g. multiple keymaps
24680for lookup-key).
24681
24682@item Key remapping à-la Emacs.
24683
24684@item Typed keymaps, i.e. keymaps where bound values can only be of a given
24685type. This is convenient to catch typos, for instance when binding 'FOO
24686instead of #'FOO.
24687@end itemize")
24688 (license license:bsd-3)))
24689
24690(define-public cl-nkeymaps
24691 (sbcl-package->cl-source-package sbcl-nkeymaps))
24692
24693(define-public ecl-nkeymaps
24694 (sbcl-package->ecl-package sbcl-nkeymaps))
24695
24696(define-public sbcl-nodgui
24697 (package
24698 (name "sbcl-nodgui")
24699 (version "0.7.6.0")
24700 (source
24701 (origin
24702 (method git-fetch)
24703 (uri (git-reference
24704 (url "https://codeberg.org/cage/nodgui.git")
24705 (commit (string-append "v" version))))
24706 (file-name (git-file-name "cl-nodgui" version))
24707 (sha256
24708 (base32 "0c2f7g6swd9fkzjnmlkm22cds4v2y67g09w7s66ak3zcxaxppdbj"))))
24709 (build-system asdf-build-system/sbcl)
24710 (native-inputs
24711 (list sbcl-clunit2))
24712 (inputs
24713 (list sbcl-alexandria
24714 sbcl-bordeaux-threads
24715 sbcl-cl-colors2
24716 sbcl-cl-ppcre-unicode
24717 sbcl-cl-unicode
24718 sbcl-esrap
24719 sbcl-flexi-streams
24720 sbcl-jpeg-turbo
24721 sbcl-named-readtables
24722 sbcl-cl-opengl
24723 sbcl-parse-number
24724 sbcl-pngload
24725 sbcl-sdl2
24726 sbcl-sdl2-ttf
24727 sbcl-static-vectors
24728 sbcl-trivial-garbage
24729 sbcl-zpng
24730 tk
24731 tklib
24732 tcllib))
24733 (arguments
24734 (list
24735 #:phases
24736 #~(modify-phases %standard-phases
24737 (add-after 'unpack 'fix-paths
24738 (lambda* (#:key inputs #:allow-other-keys)
24739 (substitute* "src/wish-communication.lisp"
24740 (("\\(guess-wish-interpreter-path\\)")
24741 (string-append "\""
24742 (search-input-file inputs "/bin/wish")
24743 "\""))))))))
24744 (synopsis "Common Lisp bindings for the Tk GUI toolkit")
24745 (description
24746 "Nodgui (@emph{No Drama GUI}) is a Common Lisp binding for the Tk GUI
24747toolkit. It also provides a few additional widgets more than the standard Tk
24748ones.")
24749 (home-page "https://www.autistici.org/interzona/nodgui.html")
24750 (license license:llgpl)))
24751
24752(define-public cl-nodgui
24753 (sbcl-package->cl-source-package sbcl-nodgui))
24754
24755(define-public sbcl-nontrivial-gray-streams
24756 (let ((commit "7ed842fe98f6ebafd472a5768e28d0c35f82114e")
24757 (revision "0"))
24758 (package
24759 (name "sbcl-nontrivial-gray-streams")
24760 (version (git-version "1.0.0" revision commit))
24761 (source
24762 (origin
24763 (method git-fetch)
24764 (uri (git-reference
24765 (url "https://github.com/yitzchak/nontrivial-gray-streams")
24766 (commit commit)))
24767 (file-name (git-file-name "cl-nontrivial-gray-streams" commit))
24768 (sha256
24769 (base32 "1x5b2fw3kr1227vr4hab08cls5f7rzz7kf31xinvafbl5hpd2ynf"))))
24770 (build-system asdf-build-system/sbcl)
24771 (native-inputs
24772 (list sbcl-alexandria
24773 sbcl-parachute))
24774 (home-page "https://github.com/yitzchak/nontrivial-gray-streams")
24775 (synopsis "Compatibility layer for Gray streams, including extensions")
24776 (description
24777 "@code{nontrivial-gray-streams} is a compatibility system for Gray
24778streams, which is an extension to Common Lisp that makes it possible to
24779implement Common Lisp streams using generic functions.")
24780 (license license:expat))))
24781
24782(define-public cl-nontrivial-gray-streams
24783 (sbcl-package->cl-source-package sbcl-nontrivial-gray-streams))
24784
24785(define-public ecl-nontrivial-gray-streams
24786 (sbcl-package->ecl-package sbcl-nontrivial-gray-streams))
24787
24788(define-public clasp-nontrivial-gray-streams
24789 (sbcl-package->clasp-package sbcl-nontrivial-gray-streams))
24790
24791(define-public sbcl-nsymbols
24792 (package
24793 (name "sbcl-nsymbols")
24794 (version "0.3.2")
24795 (source
24796 (origin
24797 (method git-fetch)
24798 (uri (git-reference
24799 (url "https://github.com/atlas-engineer/nsymbols")
24800 (commit version)))
24801 (file-name (git-file-name "cl-nsymbols" version))
24802 (sha256
24803 (base32 "1awh793s4fwhddllfcjz4sbkxwinh5w54s3glxh7rv00c7skdjd6"))))
24804 (build-system asdf-build-system/sbcl)
24805 (native-inputs (list sbcl-lisp-unit2))
24806 (inputs (list cl-closer-mop))
24807 (arguments
24808 '(#:asd-systems '("nsymbols" "nsymbols/star")))
24809 (synopsis
24810 "Functions to search, filter, and group symbols in chosen packages")
24811 (home-page "https://github.com/atlas-engineer/nsymbols")
24812 (description "Nsymbols extends the regular package API of ANSI CL with more
24813operations, allowing one to list:
24814
24815@itemize
24816@item @code{package-symbols}.
24817@item @code{package-variables}.
24818@item @code{package-functions}.
24819@item @code{package-generic-functions}.
24820@item @code{package-macros}.
24821@item @code{package-classes}.
24822@item @code{package-structures}.
24823@item And other symbol types, given @code{define-symbol-type} for those.
24824@end itemize
24825
24826Nsymbols can also find symbols by their name/matching symbol with
24827@code{resolve-symbol}. All these operations are aware of symbol
24828visibility in the given packages, due to a @code{symbol-visibility}
24829function.
24830
24831An additional @code{nsymbols/star} system has a set of functions
24832mirroring the regular Nsymbols ones, but using @code{closer-mop} to
24833provide better results and returning structured data instead of
24834symbols.")
24835 (license license:bsd-3)))
24836
24837(define-public cl-nsymbols
24838 (sbcl-package->cl-source-package sbcl-nsymbols))
24839
24840(define-public ecl-nsymbols
24841 (sbcl-package->ecl-package sbcl-nsymbols))
24842
24843(define-public sbcl-numcl
24844 (let ((commit "a28f612d072e5f93137584de5155a42243b3bd6b")
24845 (revision "3"))
24846 (package
24847 (name "sbcl-numcl")
24848 (version (git-version "0.2.0" revision commit))
24849 (source
24850 (origin
24851 (method git-fetch)
24852 (uri (git-reference
24853 (url "https://github.com/numcl/numcl")
24854 (commit commit)))
24855 (file-name (git-file-name "numcl" version))
24856 (sha256
24857 (base32 "15m4spbgayawnw5jjz04zfp0jnk9g6hgq5fmr648hzjzj50j1d78"))))
24858 (build-system asdf-build-system/sbcl)
24859 (arguments
24860 `(;; Tests often fail because they require a dynamic-space-size much
24861 ;; bigger than the default one. Disable them for now.
24862 #:tests? #f))
24863 (native-inputs
24864 (list sbcl-fiveam))
24865 (inputs
24866 (list sbcl-alexandria
24867 sbcl-cl-randist
24868 sbcl-constantfold
24869 sbcl-float-features
24870 sbcl-function-cache
24871 sbcl-gtype
24872 sbcl-iterate
24873 sbcl-lisp-namespace
24874 sbcl-specialized-function
24875 sbcl-trivia
24876 sbcl-type-r))
24877 (home-page "https://numcl.github.io/numcl/")
24878 (synopsis "Numpy clone in Common Lisp")
24879 (description
24880 "This package is a Python Numpy clone implemented in pure Common Lisp.")
24881 (license license:lgpl3+))))
24882
24883(define-public cl-numcl
24884 (sbcl-package->cl-source-package sbcl-numcl))
24885
24886(define-public ecl-numcl
24887 (sbcl-package->ecl-package sbcl-numcl))
24888
24889(define-public sbcl-numerical-utilities
24890 (let ((commit "44f45ba952b35675640630e40cf90df6f8279746")
24891 (revision "0"))
24892 (package
24893 (name "sbcl-numerical-utilities")
24894 (version (git-version "1.2.0" revision commit))
24895 (source
24896 (origin
24897 (method git-fetch)
24898 (uri (git-reference
24899 (url "https://github.com/Lisp-Stat/numerical-utilities")
24900 (commit commit)))
24901 (file-name (git-file-name "cl-numerical-utilities" version))
24902 (sha256
24903 (base32 "1dwz8zxhqzi31qp863zj1cn1lgljny14snycb9nk871qs121kmsd"))))
24904 (build-system asdf-build-system/sbcl)
24905 (arguments
24906 '(#:asd-systems '("num-utils" "num-utils/tests")))
24907 (inputs
24908 (list sbcl-alexandria
24909 sbcl-alexandria-plus
24910 sbcl-anaphora
24911 sbcl-array-operations
24912 sbcl-let-plus
24913 sbcl-select))
24914 (native-inputs
24915 (list sbcl-fiveam))
24916 (home-page "https://lisp-stat.github.io/numerical-utilities")
24917 (synopsis "Utilities for numerical programming")
24918 (description
24919 "@code{cl-numerical-utilities} is a collection of packages useful in
24920numerical applications, each big enough to be its own package, but too small
24921to split out into a separate ASDF system.")
24922 (license license:ms-pl))))
24923
24924(define-public cl-numerical-utilities
24925 (sbcl-package->cl-source-package sbcl-numerical-utilities))
24926
24927(define-public ecl-numerical-utilities
24928 (sbcl-package->ecl-package sbcl-numerical-utilities))
24929
24930(define-public sbcl-numpy-file-format
24931 (let ((commit "e440c7bbc0d86b9abf73acb0fa665b77b82a6c98")
24932 (revision "2"))
24933 (package
24934 (name "sbcl-numpy-file-format")
24935 (version (git-version "0.0.0" revision commit))
24936 (source
24937 (origin
24938 (method git-fetch)
24939 (uri (git-reference
24940 (url "https://github.com/marcoheisig/numpy-file-format")
24941 (commit commit)))
24942 (file-name (git-file-name "cl-numpy-file-format" version))
24943 (sha256
24944 (base32 "1n0nixc44z1cymm20wif0l2100ydv0h69l6i6xz5bmwcb2zc4gqr"))))
24945 (build-system asdf-build-system/sbcl)
24946 (inputs
24947 (list sbcl-ieee-floats sbcl-trivial-features))
24948 (home-page "https://github.com/marcoheisig/numpy-file-format")
24949 (synopsis "Read and write NumPy .npy and .npz files")
24950 (description
24951 "The NUMPY-FILE-FORMAT library is a Common Lisp library for reading and
24952writing NumPy @file{.npy} and @file{.npz} files.")
24953 (license license:expat))))
24954
24955(define-public cl-numpy-file-format
24956 (sbcl-package->cl-source-package sbcl-numpy-file-format))
24957
24958(define-public ecl-numpy-file-format
24959 (sbcl-package->ecl-package sbcl-numpy-file-format))
24960
24961(define-public sbcl-object-class
24962 (package
24963 (name "sbcl-object-class")
24964 (version "1.0")
24965 (source
24966 (origin
24967 (method git-fetch)
24968 (uri (git-reference
24969 (url "https://github.com/Hexstream/object-class")
24970 (commit (string-append "v" version))))
24971 (file-name (git-file-name "cl-object-class" version))
24972 (sha256
24973 (base32 "0qagmd2mxbr8b60l0y3jccj0maxjchds96p935pd3q805ry50683"))))
24974 (build-system asdf-build-system/sbcl)
24975 (native-inputs
24976 (list sbcl-parachute))
24977 (inputs
24978 (list sbcl-closer-mop
24979 sbcl-compatible-metaclasses
24980 sbcl-enhanced-find-class))
24981 (home-page "https://www.hexstreamsoft.com/libraries/object-class/")
24982 (synopsis "Cluster special subclasses of the standard-object")
24983 (description
24984 "This package ensures that special subclasses of standard-object cluster
24985right in front of standard-object in the class precedence list.")
24986 (license license:unlicense)))
24987
24988(define-public cl-object-class
24989 (sbcl-package->cl-source-package sbcl-object-class))
24990
24991(define-public ecl-object-class
24992 (sbcl-package->ecl-package sbcl-object-class))
24993
24994(define-public sbcl-olc
24995 (let ((commit "0269ed747477d967f7d9331964906b6a0f18a9c4")
24996 (revision "1"))
24997 (package
24998 (name "sbcl-olc")
24999 (version (git-version "1.0" revision commit))
25000 (source
25001 (origin
25002 (method git-fetch)
25003 (uri (git-reference
25004 (url "https://codeberg.org/glv/olc")
25005 (commit commit)))
25006 (file-name (git-file-name "cl-olc" version))
25007 (sha256
25008 (base32 "02r6w9kfa6v4a12y2azmyjkxbn54r1y18c6a024vq4y6zp20fqnz"))))
25009 (build-system asdf-build-system/sbcl)
25010 (native-inputs
25011 (list sbcl-fiveam))
25012 (synopsis
25013 "Convert coordinates between latitude/longitude and Open Location Code")
25014 (description
25015 "This a Common Lisp library to convert geographic coordinates between
25016latitude/longitude and Open Location Code.")
25017 (home-page "https://codeberg.org/glv/olc")
25018 (license license:gpl3+))))
25019
25020(define-public cl-olc
25021 (sbcl-package->cl-source-package sbcl-olc))
25022
25023(define-public ecl-olc
25024 (sbcl-package->ecl-package sbcl-olc))
25025
25026(define-public sbcl-one-more-re-nightmare
25027 (let ((commit "5b0b02e59f90964baf5737abd13300fa82f27667")
25028 (revision "1"))
25029 (package
25030 (name "sbcl-one-more-re-nightmare")
25031 (version (git-version "0.0.0" revision commit))
25032 (source
25033 (origin
25034 (method git-fetch)
25035 (uri (git-reference
25036 (url "https://github.com/telekons/one-more-re-nightmare")
25037 (commit commit)))
25038 (file-name (git-file-name "cl-one-more-re-nightmare" version))
25039 (sha256
25040 (base32 "0mwgjgnp8dsf2zn0290px5q89z93zs0v4dhvs3rcir4mpiw8rbsn"))))
25041 (build-system asdf-build-system/sbcl)
25042 (arguments
25043 '(#:asd-test-systems '("one-more-re-nightmare-tests")
25044 #:phases
25045 (modify-phases %standard-phases
25046 (add-after 'unpack 'fix-tests
25047 (lambda _
25048 (substitute* "Tests/one-more-re-nightmare-tests.asd"
25049 ((":depends-on")
25050 (string-append
25051 ":perform (test-op (o c) (symbol-call :one-more-re-nightmare-tests '#:run-tests))"
25052 "\n :depends-on"))))))))
25053 (native-inputs
25054 (list sbcl-lparallel sbcl-parachute))
25055 (inputs
25056 (list sbcl-alexandria
25057 sbcl-babel
25058 sbcl-bordeaux-threads
25059 sbcl-dynamic-mixins
25060 sbcl-esrap
25061 sbcl-stealth-mixin
25062 sbcl-trivia
25063 sbcl-trivial-indent))
25064 (home-page "https://github.com/telekons/one-more-re-nightmare")
25065 (synopsis "Regular expression compiler in Common Lisp")
25066 (description "@code{one-more-re-nightmare} is a regular expression engine
25067that uses the technique presented in Regular-expression derivatives
25068re-examined (Owens, Reppy and Turon, 2009;
25069@url{doi:10.1017/S0956796808007090}) to interpret and compile regular
25070expressions.")
25071 (license license:bsd-2))))
25072
25073(define-public cl-one-more-re-nightmare
25074 (sbcl-package->cl-source-package sbcl-one-more-re-nightmare))
25075
25076(define-public ecl-one-more-re-nightmare
25077 (sbcl-package->ecl-package sbcl-one-more-re-nightmare))
25078
25079(define-public sbcl-open-with
25080 (let ((commit "f0682e42ac48311d1a5bb9eb7ca646baacd88a80")
25081 (revision "0"))
25082 (package
25083 (name "sbcl-open-with")
25084 (version (git-version "1.0.0" revision commit))
25085 (source
25086 (origin
25087 (method git-fetch)
25088 (uri (git-reference
25089 (url "https://codeberg.org/shinmera/open-with")
25090 (commit commit)))
25091 (file-name (git-file-name "cl-open-with" version))
25092 (sha256
25093 (base32 "0j0qv1389wbr84y3mis4qd2zz9qybnq4frvc01pamidsbryxss0r"))))
25094 (build-system asdf-build-system/sbcl)
25095 (arguments
25096 (list
25097 #:phases
25098 #~(modify-phases %standard-phases
25099 (add-after 'unpack 'fix-paths
25100 (lambda* (#:key inputs #:allow-other-keys)
25101 (substitute* "toolkit.lisp"
25102 (("xdg-open")
25103 (search-input-file inputs "/bin/xdg-open"))))))))
25104 (inputs
25105 (list sbcl-documentation-utils
25106 sbcl-trivial-features
25107 xdg-utils))
25108 (synopsis "Open a file in a suitable external program")
25109 (description
25110 "This package provides a small utility library to open a thing (usually
25111a file or URL) in an appropriate handler (usually an external file manager or
25112browser).")
25113 (home-page "https://shinmera.com/docs/open-with/")
25114 (license license:zlib))))
25115
25116(define-public cl-open-with
25117 (sbcl-package->cl-source-package sbcl-open-with))
25118
25119(define-public ecl-open-with
25120 (sbcl-package->ecl-package sbcl-open-with))
25121
25122(define-public clasp-open-with
25123 (sbcl-package->clasp-package sbcl-open-with))
25124
25125(define-public sbcl-openapi-generator
25126 (let ((commit "7c3842a6ed36ba2796dcd35fd1d65d488eecf749")
25127 (revision "0"))
25128 (package
25129 (name "sbcl-openapi-generator")
25130 (version (git-version "0.0.2" revision commit))
25131 (source
25132 (origin
25133 (method git-fetch)
25134 (uri (git-reference
25135 (url "https://codeberg.org/kilianmh/openapi-generator.git")
25136 (commit commit)))
25137 (file-name (git-file-name name commit))
25138 (sha256
25139 (base32 "0cv0p4lv6kb7kv8fnnbrhrdqk2n79pl6ddlh0jz0a0n44f96vm0h"))))
25140 (build-system asdf-build-system/sbcl)
25141 (arguments
25142 (list
25143 #:asd-systems ''("openapi-generator")
25144 #:phases
25145 #~(modify-phases %standard-phases
25146 ;; This file makes a remote call at compile time
25147 (add-after 'unpack 'ignore-collections
25148 (lambda _
25149 (substitute* "openapi-generator.asd"
25150 (("\\(:file \"collection") "#+nil(:file \"collection")))))))
25151 (native-inputs
25152 (list sbcl-fiveam))
25153 (inputs
25154 (list sbcl-cl-str
25155 sbcl-cl-hash-util
25156 sbcl-cl-semver
25157 sbcl-pathname-utils
25158 sbcl-json-mop
25159 sbcl-yason
25160 sbcl-jzon
25161 sbcl-cl-project
25162 sbcl-listopia
25163 sbcl-alexandria
25164 sbcl-serapeum
25165 sbcl-quri
25166 sbcl-dexador
25167 sbcl-cl-json-pointer
25168 sbcl-moptilities
25169 sbcl-parse-float
25170 sbcl-cl-yaml))
25171 (home-page "https://gitlab.com/lockie/trivial-adjust-simple-array")
25172 (synopsis "OpenAPI client system generator")
25173 (description "OpenAPI client system generator.")
25174 (license license:agpl3+))))
25175
25176(define-public ecl-openapi-generator
25177 (sbcl-package->ecl-package sbcl-openapi-generator))
25178
25179(define-public cl-openapi-generator
25180 (sbcl-package->cl-source-package sbcl-openapi-generator))
25181
25182(define-public sbcl-opticl
25183 (let ((commit "f6fc4dc5fa61ae3f2527b77e4bda99001ba37dcb")
25184 (revision "1"))
25185 (package
25186 (name "sbcl-opticl")
25187 (version (git-version "0.0.0" revision commit))
25188 (source
25189 (origin
25190 (method git-fetch)
25191 (uri (git-reference
25192 (url "https://github.com/slyrus/opticl")
25193 (commit commit)))
25194 (file-name (git-file-name "cl-opticl" version))
25195 (sha256
25196 (base32 "1jx9n78d4lf53iz24yid34l92zrpqxfihv6049ixcy0xigf7j4ac"))))
25197 (build-system asdf-build-system/sbcl)
25198 (native-inputs
25199 (list sbcl-fiveam))
25200 (inputs
25201 (list sbcl-alexandria
25202 sbcl-cl-jpeg
25203 sbcl-cl-tga
25204 sbcl-opticl-core
25205 sbcl-png-read
25206 sbcl-pngload
25207 sbcl-retrospectiff
25208 sbcl-skippy
25209 sbcl-zpng))
25210 (home-page "https://github.com/slyrus/opticl")
25211 (synopsis "Image processing library for Common Lisp")
25212 (description
25213 "Opticl is a Common Lisp library for representing, processing, loading,
25214and saving 2-dimensional pixel-based images.")
25215 (license license:bsd-2))))
25216
25217(define-public cl-opticl
25218 (sbcl-package->cl-source-package sbcl-opticl))
25219
25220(define-public ecl-opticl
25221 (sbcl-package->ecl-package sbcl-opticl))
25222
25223(define-public sbcl-opticl-core
25224 (let ((commit "b7cd13d26df6b824b216fbc360dc27bfadf04999")
25225 (revision "0"))
25226 (package
25227 (name "sbcl-opticl-core")
25228 (version (git-version "0.0.0" revision commit))
25229 (source
25230 (origin
25231 (method git-fetch)
25232 (uri (git-reference
25233 (url "https://github.com/slyrus/opticl-core")
25234 (commit commit)))
25235 (file-name (git-file-name name version))
25236 (sha256
25237 (base32 "0458bllabcdjghfrqx6aki49c9qmvfmkk8jl75cfpi7q0i12kh95"))))
25238 (build-system asdf-build-system/sbcl)
25239 (inputs
25240 (list sbcl-alexandria))
25241 (home-page "https://github.com/slyrus/opticl-core")
25242 (synopsis "Core classes and pixel access macros for Opticl")
25243 (description
25244 "This Common Lisp library contains the core classes and pixel access
25245macros for the Opticl image processing library.")
25246 (license license:bsd-2))))
25247
25248(define-public cl-opticl-core
25249 (sbcl-package->cl-source-package sbcl-opticl-core))
25250
25251(define-public ecl-opticl-core
25252 (sbcl-package->ecl-package sbcl-opticl-core))
25253
25254(define-public sbcl-optima
25255 (let ((commit "373b245b928c1a5cce91a6cb5bfe5dd77eb36195")
25256 (revision "1"))
25257 (package
25258 (name "sbcl-optima")
25259 (build-system asdf-build-system/sbcl)
25260 (version (git-version "1.0" revision commit))
25261 (home-page "https://github.com/m2ym/optima")
25262 (source
25263 (origin
25264 (method git-fetch)
25265 (uri (git-reference
25266 (url home-page)
25267 (commit commit)))
25268 (file-name (git-file-name name version))
25269 (sha256
25270 (base32
25271 "1yw4ymq7ms89342kkvb3aqxgv0w38m9kd8ikdqxxzyybnkjhndal"))))
25272 (inputs
25273 (list sbcl-alexandria
25274 sbcl-closer-mop))
25275 (native-inputs
25276 (list sbcl-eos))
25277 (arguments
25278 ;; XXX: Circular dependencies: tests depend on optima.ppcre which depends on optima.
25279 `(#:tests? #f))
25280 (synopsis "Optimized pattern matching library for Common Lisp")
25281 (description "Optima is a fast pattern matching library which uses
25282optimizing techniques widely used in the functional programming world.")
25283 (license license:expat))))
25284
25285(define-public cl-optima
25286 (sbcl-package->cl-source-package sbcl-optima))
25287
25288(define-public ecl-optima
25289 (sbcl-package->ecl-package sbcl-optima))
25290
25291(define-public clasp-optima
25292 (sbcl-package->clasp-package sbcl-optima))
25293
25294(define-public sbcl-org-sampler
25295 (let ((commit "ee135a417750e5b1d810bb9574eb85223cb3038a")
25296 (revision "1"))
25297 (package
25298 (name "sbcl-org-sampler")
25299 (version (git-version "0.2.1" revision commit))
25300 (source
25301 (origin
25302 (method git-fetch)
25303 (uri (git-reference
25304 (url "https://github.com/jphmrst/cl-org-sampler")
25305 (commit commit)))
25306 (file-name (git-file-name "cl-org-sampler" version))
25307 (sha256
25308 (base32 "1dg029in14928qfxvfshyxmdwhzskzhxx3na0zy98ybx69b21qla"))))
25309 (build-system asdf-build-system/sbcl)
25310 (inputs
25311 (list sbcl-iterate))
25312 (home-page "https://github.com/jphmrst/cl-org-sampler")
25313 (synopsis "Extracting Common Lisp docstrings as Emacs Org-mode documents")
25314 (description
25315 "ORG-SAMPLER allows using Lisp docstrings and reflection to make org-mode
25316text for inclusion into a larger document.")
25317 (license license:llgpl))))
25318
25319(define-public cl-org-sampler
25320 (sbcl-package->cl-source-package sbcl-org-sampler))
25321
25322(define-public ecl-org-sampler
25323 (sbcl-package->ecl-package sbcl-org-sampler))
25324
25325(define-public clasp-org-sampler
25326 (sbcl-package->clasp-package sbcl-org-sampler))
25327
25328(define-public sbcl-origin
25329 (let ((commit "d646134302456408d6d43580bb05299f1695ab8e")
25330 (revision "1"))
25331 (package
25332 (name "sbcl-origin")
25333 (version (git-version "2.0.0" revision commit))
25334 (source
25335 (origin
25336 (method git-fetch)
25337 (uri (git-reference
25338 (url "https://git.mfiano.net/mfiano/origin")
25339 (commit commit)))
25340 (file-name (git-file-name "origin" version))
25341 (sha256
25342 (base32 "1n9aszaif3yh8prs5r8v51fbj4r5jd1a048mivd5yij3hplkm82b"))))
25343 (build-system asdf-build-system/sbcl)
25344 (native-inputs
25345 (list sbcl-parachute))
25346 (inputs
25347 (list sbcl-golden-utils sbcl-specialization-store))
25348 (home-page "https://git.mfiano.net/mfiano/origin")
25349 (synopsis "Common Lisp graphics math library")
25350 (description
25351 "This is a native Common Lisp graphics math library with an emphasis on
25352performance and correctness.")
25353 (license license:expat))))
25354
25355(define-public ecl-origin
25356 (sbcl-package->ecl-package sbcl-origin))
25357
25358(define-public cl-origin
25359 (sbcl-package->cl-source-package sbcl-origin))
25360
25361(define-public sbcl-osc
25362 (let ((commit "f647738ccc22925ed740a8ca9132fda76a05baeb")
25363 (revision "0"))
25364 (package
25365 (name "sbcl-osc")
25366 (version (git-version "0.9" revision commit))
25367 (source
25368 (origin
25369 (method git-fetch)
25370 (uri (git-reference
25371 (url "https://github.com/zzkt/osc")
25372 (commit commit)))
25373 (file-name (git-file-name "cl-osc" version))
25374 (sha256
25375 (base32 "1x4cavspaxcr604g0hwak1ncy4m9cqq03ji4v56g2h1443n7h48a"))))
25376 (build-system asdf-build-system/sbcl)
25377 (native-inputs (list sbcl-fiveam))
25378 (inputs (list sbcl-ieee-floats))
25379 (synopsis "Implementation of the Open Sound Control protocol")
25380 (description "This is a lisp implementation of the Open Sound Control
25381protocol (or more accurately “data transport specification” or
25382“encoding”). The code should be close to ANSI standard common lisp and
25383provides self contained code for encoding and decoding of OSC data, messages,
25384and bundles.")
25385 (home-page "https://github.com/zzkt/osc/")
25386 (license license:gpl3+))))
25387
25388(define-public cl-osc
25389 (sbcl-package->cl-source-package sbcl-osc))
25390
25391(define-public ecl-osc
25392 (sbcl-package->ecl-package sbcl-osc))
25393
25394(define-public sbcl-osicat
25395 (let ((commit "982327905b8980ff3173344ca87282e046565732")
25396 (revision "4"))
25397 (package
25398 (name "sbcl-osicat")
25399 (version (git-version "0.7.0" revision commit))
25400 (home-page "https://www.common-lisp.net/project/osicat/")
25401 (source
25402 (origin
25403 (method git-fetch)
25404 (uri (git-reference
25405 (url "https://github.com/osicat/osicat")
25406 (commit commit)))
25407 (file-name (git-file-name "cl-osicat" version))
25408 (sha256
25409 (base32 "10q1dfkhrvp5ia860q10y4wdm11fmxf7xv8zl4viz2np9xzf5v22"))
25410 (snippet
25411 '(begin
25412 ;; The useless release.sh drags `bash' into the closure.
25413 (delete-file "scripts/release.sh")
25414 #t))))
25415 (build-system asdf-build-system/sbcl)
25416 (inputs
25417 (list sbcl-alexandria sbcl-cffi sbcl-trivial-features))
25418 (native-inputs
25419 (list sbcl-rt))
25420 (synopsis "Operating system interface for Common Lisp")
25421 (description
25422 "Osicat is a lightweight operating system interface for Common Lisp on
25423Unix-platforms. It is not a POSIX-style API, but rather a simple lispy
25424accompaniment to the standard ANSI facilities.")
25425 (license license:expat))))
25426
25427(define-public cl-osicat
25428 (sbcl-package->cl-source-package sbcl-osicat))
25429
25430(define-public ecl-osicat
25431 (sbcl-package->ecl-package sbcl-osicat))
25432
25433(define-public sbcl-ospm
25434 (package
25435 (name "sbcl-ospm")
25436 (version "0.0.2")
25437 (source
25438 (origin
25439 (method git-fetch)
25440 (uri (git-reference
25441 (url "https://github.com/atlas-engineer/ospm")
25442 (commit version)))
25443 (file-name (git-file-name "cl-ospm" version))
25444 (sha256
25445 (base32 "1z2wz2xg7rn7p1lladdhj789iz2f3wfjgpi2hjr08vkf1pkp15xf"))))
25446 (build-system asdf-build-system/sbcl)
25447 (inputs
25448 (list sbcl-alexandria
25449 sbcl-calispel
25450 sbcl-hu.dwim.defclass-star
25451 sbcl-local-time
25452 sbcl-moptilities
25453 sbcl-named-readtables
25454 sbcl-serapeum
25455 sbcl-trivia))
25456 (native-inputs
25457 ;; FIXME: Tests have execution errors because of Guix being run in a container.
25458 (list sbcl-lisp-unit2 guix))
25459 (home-page "https://github.com/atlas-engineer/ospm")
25460 (synopsis "System package manager in Common Lisp")
25461 (description
25462 "This library is a universal interface to the operating system package manager.
25463It has extensive support for Guix, among others:
25464
25465@itemize
25466@item package listing and searching;
25467@item package installation and uninstallation;
25468@item package file listing;
25469@item profile listing;
25470@item manifest listing and installation;
25471@item generation listing, switching and deletion.
25472@end itemize\n")
25473 (license license:bsd-3)))
25474
25475(define-public cl-ospm
25476 (let ((pkg (sbcl-package->cl-source-package sbcl-ospm)))
25477 (package
25478 (inherit pkg)
25479 (inputs
25480 (cons (list "osicat" cl-osicat)
25481 (package-inputs pkg))))))
25482
25483(define-public sbcl-overlord
25484 ;; No release.
25485 (let ((commit "0b5bbbb640122587571e63327a29d248bb67fad3")
25486 (revision "2"))
25487 (package
25488 (name "sbcl-overlord")
25489 (version (git-version "0.0.0" revision commit))
25490 (source
25491 (origin
25492 (method git-fetch)
25493 (uri (git-reference
25494 (url "https://github.com/ruricolist/overlord/")
25495 (commit commit)))
25496 (file-name (git-file-name "cl-overlord" version))
25497 (sha256
25498 (base32 "030vbpjwsgxj9z8lhjhlmb4i68nkp7knqzsgvw6hhpxg2vl0dbbs"))))
25499 (build-system asdf-build-system/sbcl)
25500 (inputs
25501 (list sbcl-babel
25502 sbcl-bit-smasher
25503 sbcl-bordeaux-threads
25504 sbcl-cl-strftime
25505 sbcl-cmd
25506 sbcl-drakma
25507 sbcl-exit-hooks
25508 sbcl-fset
25509 sbcl-local-time
25510 sbcl-lparallel
25511 sbcl-md5
25512 sbcl-cl-murmurhash
25513 sbcl-named-readtables
25514 sbcl-cl-ppcre
25515 sbcl-serapeum
25516 sbcl-trivia
25517 sbcl-trivial-file-size))
25518 (propagated-inputs
25519 (list sbcl-quickproject))
25520 (native-inputs
25521 (list sbcl-fiveam))
25522 (arguments
25523 `(#:phases
25524 (modify-phases %standard-phases
25525 (add-after 'unpack 'include-overlord/net
25526 (lambda _
25527 (substitute* "all.lisp"
25528 (("\\(:import-from :overlord/kernel :nproc\\)")
25529 (string-append
25530 "(:import-from :overlord/kernel :nproc)"
25531 "\n"
25532 "(:import-from :overlord/net)")))
25533 #t)))))
25534 (home-page "https://github.com/ruricolist/overlord")
25535 (synopsis "Build system in Common Lisp")
25536 (description
25537 "Overlord is a build system in Common Lisp. It is a real build system,
25538with all the modern features: rules with multiple outputs, parallel builds,
25539immunity to clock issues, and dynamic dependencies.
25540
25541But Overlord is more than another build system. Overlord is a uniform
25542approach to dependencies inside or outside of a Lisp image. Overlord is to
25543Make what Lisp macros are to C macros.
25544
25545Overlord is designed to be used from the Lisp REPL. A command line interface
25546is available in a separate repository. See
25547@url{https://github.com/ruricolist/overlord-cli}.")
25548 (license license:expat))))
25549
25550(define-public cl-overlord
25551 (sbcl-package->cl-source-package sbcl-overlord))
25552
25553;; FIXME: Broken on ECL? https://github.com/ruricolist/overlord/issues/25
25554;; (define-public ecl-overlord
25555;; (sbcl-package->ecl-package sbcl-overlord))
25556
25557(define-public sbcl-parenscript
25558 ;; Source archives are overwritten on every release, we use the Git repo instead.
25559 (let ((commit "7a1ac46353cecd144fc91915ba9f122aafcf4766"))
25560 (package
25561 (name "sbcl-parenscript")
25562 (version (git-version "2.7.1" "1" commit))
25563 (source
25564 (origin
25565 (method git-fetch)
25566 (uri (git-reference
25567 (url "https://gitlab.common-lisp.net/parenscript/parenscript")
25568 (commit commit)))
25569 (file-name (git-file-name "parenscript" version))
25570 (sha256
25571 (base32
25572 "0c22lqarrpbq82dg1sb3y6mp6w2faczp34ymzhnmff88yfq1xzsf"))))
25573 (build-system asdf-build-system/sbcl)
25574 (inputs
25575 (list sbcl-cl-ppcre sbcl-anaphora sbcl-named-readtables))
25576 (home-page "https://common-lisp.net/project/parenscript/")
25577 (synopsis "Translator from a subset of Common Lisp to JavaScript")
25578 (description
25579 "Parenscript is a translator from an extended subset of Common Lisp to
25580JavaScript. Parenscript code can run almost identically on both the
25581browser (as JavaScript) and server (as Common Lisp).
25582
25583Parenscript code is treated the same way as Common Lisp code, making the full
25584power of Lisp macros available for JavaScript. This provides a web
25585development environment that is unmatched in its ability to reduce code
25586duplication and provide advanced meta-programming facilities to web
25587developers.
25588
25589At the same time, Parenscript is different from almost all other \"language
25590X\" to JavaScript translators in that it imposes almost no overhead:
25591
25592@itemize
25593@item No run-time dependencies: Any piece of Parenscript code is runnable
25594as-is. There are no JavaScript files to include.
25595@item Native types: Parenscript works entirely with native JavaScript data
25596types. There are no new types introduced, and object prototypes are not
25597touched.
25598@item Native calling convention: Any JavaScript code can be called without the
25599need for bindings. Likewise, Parenscript can be used to make efficient,
25600self-contained JavaScript libraries.
25601@item Readable code: Parenscript generates concise, formatted, idiomatic
25602JavaScript code. Identifier names are preserved. This enables seamless
25603debugging in tools like Firebug.
25604@item Efficiency: Parenscript introduces minimal overhead for advanced Common
25605Lisp features. The generated code is almost as fast as hand-written
25606JavaScript.
25607@end itemize\n")
25608 (license license:bsd-3))))
25609
25610(define-public cl-parenscript
25611 (sbcl-package->cl-source-package sbcl-parenscript))
25612
25613(define-public ecl-parenscript
25614 (sbcl-package->ecl-package sbcl-parenscript))
25615
25616(define-public sbcl-parse
25617 (let ((commit "2351ee78acac065fcf10b8713d3f404e2e910786")
25618 (revision "1"))
25619 (package
25620 (name "sbcl-parse")
25621 (version (git-version "1.0" revision commit))
25622 (source
25623 (origin
25624 (method git-fetch)
25625 (uri (git-reference
25626 (url "https://github.com/massung/parse")
25627 (commit commit)))
25628 (file-name (git-file-name "parse" version))
25629 (sha256
25630 (base32 "0l18yabyh7jizm5lgvra0jxi8s1cfwghidi6ix1pyixjkdbjlmvy"))))
25631 (build-system asdf-build-system/sbcl)
25632 (home-page "https://github.com/massung/parse")
25633 (synopsis "Monadic parsing for Common Lisp")
25634 (description
25635 "PARSE is a simple token parsing library for Common Lisp.")
25636 (license license:asl2.0))))
25637
25638(define-public cl-parse
25639 (sbcl-package->cl-source-package sbcl-parse))
25640
25641(define-public ecl-parse
25642 (sbcl-package->ecl-package sbcl-parse))
25643
25644(define-public sbcl-parse-declarations
25645 (let ((commit "549aebbfb9403a7fe948654126b9c814f443f4f2")
25646 (revision "1"))
25647 (package
25648 (name "sbcl-parse-declarations")
25649 (version (git-version "1.0.0" revision commit))
25650 (source
25651 (origin
25652 (method git-fetch)
25653 (uri (git-reference
25654 (url (string-append
25655 "https://gitlab.common-lisp.net/parse-declarations/"
25656 "parse-declarations.git"))
25657 (commit commit)))
25658 (file-name (git-file-name name version))
25659 (sha256
25660 (base32 "03g5qks4c59nmxa48pbslxkfh77h8hn8566jddp6m9pl15dzzpxd"))))
25661 (build-system asdf-build-system/sbcl)
25662 (arguments
25663 `(#:asd-systems '("parse-declarations-1.0")))
25664 (home-page "https://common-lisp.net/project/parse-declarations/")
25665 (synopsis "Parse, filter, and build declarations")
25666 (description
25667 "Parse-Declarations is a Common Lisp library to help writing
25668macros which establish bindings. To be semantically correct, such
25669macros must take user declarations into account, as these may affect
25670the bindings they establish. Yet the ANSI standard of Common Lisp does
25671not provide any operators to work with declarations in a convenient,
25672high-level way. This library provides such operators.")
25673 ;; MIT License
25674 (license license:expat))))
25675
25676(define-public cl-parse-declarations
25677 (sbcl-package->cl-source-package sbcl-parse-declarations))
25678
25679(define-public ecl-parse-declarations
25680 (sbcl-package->ecl-package sbcl-parse-declarations))
25681
25682(define-public clasp-parse-declarations
25683 (sbcl-package->clasp-package sbcl-parse-declarations))
25684
25685(define-public sbcl-parse-float
25686 (let ((commit "3074765101e41222b6b624a66aaf1e6416379f9c")
25687 (revision "2"))
25688 (package
25689 (name "sbcl-parse-float")
25690 (version (git-version "0.0.0" revision commit))
25691 (source
25692 (origin
25693 (method git-fetch)
25694 (uri (git-reference
25695 (url "https://github.com/soemraws/parse-float")
25696 (commit commit)))
25697 (sha256
25698 (base32 "0jd2spawc3v8vzqf8ky4cngl45jm65fhkrdf20mf6dcbn3mzpkmr"))
25699 (file-name (git-file-name "proc-parse" version))))
25700 (build-system asdf-build-system/sbcl)
25701 (arguments
25702 ;; FIXME: https://github.com/soemraws/parse-float/issues/12
25703 `(#:asd-systems '("parse-float" "parse-float-tests")))
25704 (native-inputs
25705 (list sbcl-lisp-unit))
25706 (inputs
25707 (list sbcl-alexandria))
25708 (home-page "https://github.com/soemraws/parse-float")
25709 (synopsis "Parse a floating point value from a string in Common Lisp")
25710 (description
25711 "This package exports the following function to parse floating-point
25712values from a string in Common Lisp.")
25713 (license license:public-domain))))
25714
25715(define-public cl-parse-float
25716 (sbcl-package->cl-source-package sbcl-parse-float))
25717
25718(define-public ecl-parse-float
25719 (sbcl-package->ecl-package sbcl-parse-float))
25720
25721(define-public clasp-parse-float
25722 (sbcl-package->clasp-package sbcl-parse-float))
25723
25724(define-public sbcl-parse-js
25725 (let ((commit "fbadc6029bec7039602abfc06c73bb52970998f6")
25726 (revision "1"))
25727 (package
25728 (name "sbcl-parse-js")
25729 (version (git-version "0.0.0" revision commit))
25730 (source
25731 (origin
25732 (method git-fetch)
25733 (uri (git-reference
25734 (url "http://marijn.haverbeke.nl/git/parse-js")
25735 (commit commit)))
25736 (file-name (git-file-name "cl-parse-js" version))
25737 (sha256
25738 (base32
25739 "1wddrnr5kiya5s3gp4cdq6crbfy9fqcz7fr44p81502sj3bvdv39"))))
25740 (build-system asdf-build-system/sbcl)
25741 (home-page "https://marijnhaverbeke.nl/parse-js/")
25742 (synopsis "Parse JavaScript")
25743 (description "Parse-js is a Common Lisp package for parsing
25744JavaScript (ECMAScript 3). It has basic support for ECMAScript 5.")
25745 (license license:zlib))))
25746
25747(define-public cl-parse-js
25748 (sbcl-package->cl-source-package sbcl-parse-js))
25749
25750(define-public ecl-parse-js
25751 (sbcl-package->ecl-package sbcl-parse-js))
25752
25753(define-public clasp-parse-js
25754 (sbcl-package->clasp-package sbcl-parse-js))
25755
25756(define-public sbcl-parse-number
25757 (package
25758 (name "sbcl-parse-number")
25759 (version "1.8")
25760 (source
25761 (origin
25762 (method git-fetch)
25763 (uri (git-reference
25764 (url "https://github.com/sharplispers/parse-number/")
25765 (commit (string-append "v" version))))
25766 (file-name (git-file-name name version))
25767 (sha256
25768 (base32
25769 "1yh54v02i9b55bmkfkz59qd14irw8llasp48drbilkbz1az1qg2p"))))
25770 (build-system asdf-build-system/sbcl)
25771 (home-page "https://www.cliki.net/PARSE-NUMBER")
25772 (synopsis "Parse numbers")
25773 (description "@code{parse-number} is a library of functions for parsing
25774strings into one of the standard Common Lisp number types without using the
25775reader. @code{parse-number} accepts an arbitrary string and attempts to parse
25776the string into one of the standard Common Lisp number types, if possible, or
25777else @code{parse-number} signals an error of type @code{invalid-number}.")
25778 (license license:bsd-3)))
25779
25780(define-public cl-parse-number
25781 (sbcl-package->cl-source-package sbcl-parse-number))
25782
25783(define-public ecl-parse-number
25784 (sbcl-package->ecl-package sbcl-parse-number))
25785
25786(define-public clasp-parse-number
25787 (sbcl-package->clasp-package sbcl-parse-number))
25788
25789(define-public sbcl-parseq
25790 (package
25791 (name "sbcl-parseq")
25792 (version "0.5.1")
25793 (source
25794 (origin
25795 (method git-fetch)
25796 (uri (git-reference
25797 (url "https://github.com/mrossini-ethz/parseq")
25798 (commit (string-append "v" version))))
25799 (file-name (git-file-name "cl-parseq" version))
25800 (sha256
25801 (base32 "0b4lnhwqdlaqccanyssdj2v0am2ygw6qr4543b49kz2rwirykw0w"))))
25802 (build-system asdf-build-system/sbcl)
25803 (home-page "https://github.com/mrossini-ethz/parseq")
25804 (synopsis "Parsing expression grammars for sequences")
25805 (description
25806 "Parseq (pronounced parsec) is a parsing library for common lisp. It can
25807be used for parsing lisp's sequences types: strings, vectors (e.g. binary
25808data) and lists. Furthermore, parseq is able to parse nested structures such
25809as trees (e.g. lists of lists, lists of vectors, vectors of strings).
25810
25811Parseq uses parsing expression grammars (PEG) that can be defined through a
25812simple interface. Extensions to the standard parsing expressions are
25813available. Parsing expressions can be parameterised and made context
25814aware. Additionally, the definition of each parsing expression allows the
25815arbitrary transformation of the parsing tree.
25816
25817The library is inspired by Esrap and uses a very similar interface. No code
25818is shared between the two projects, however. The features of Esrap are are
25819mostly included in parseq and complemented with additional, orthogonal
25820features. Any resemblance to esrap-liquid is merely coincidental.")
25821 (license license:gpl2)))
25822
25823(define-public cl-parseq
25824 (sbcl-package->cl-source-package sbcl-parseq))
25825
25826(define-public ecl-parseq
25827 (sbcl-package->ecl-package sbcl-parseq))
25828
25829(define-public clasp-parseq
25830 (sbcl-package->clasp-package sbcl-parseq))
25831
25832(define-public sbcl-parser-combinators
25833 (let ((commit "9c7569a4f6af5e60c0d3a51d9c15c16d1714c845")
25834 (revision "1"))
25835 (package
25836 (name "sbcl-parser-combinators")
25837 (version (git-version "0.0.0" revision commit))
25838 (source
25839 (origin
25840 (method git-fetch)
25841 (uri (git-reference
25842 (url "https://github.com/Ramarren/cl-parser-combinators")
25843 (commit commit)))
25844 (file-name (git-file-name "parser-combinators" version))
25845 (sha256
25846 (base32 "1k49vha5xm2cklayzpqwg73n4v93xwsbs5in6342pkkiimnidhs8"))))
25847 (build-system asdf-build-system/sbcl)
25848 (arguments
25849 ;; FIXME: (Sharlatan-20210523T184237+0100): Tests require `femlisp', which
25850 ;; is quite chunky not packaged system yet, enable them when it's packed.
25851 `(#:tests? #f))
25852 ;; (native-inputs
25853 ;; `(("hu.dwim.stefil" ,sbcl-hu.dwim.stefil)
25854 ;; ("infix" ,sbcl-femlisp)))
25855 (inputs
25856 (list sbcl-alexandria
25857 sbcl-cl-containers
25858 sbcl-cl-ppcre
25859 sbcl-iterate))
25860 (home-page "https://github.com/Ramarren/cl-parser-combinators")
25861 (synopsis "Parser combinators in Common Lisp")
25862 (description
25863 "PARSER-COMBINATORS is a library implementing monadic parser
25864combinators in Common Lisp, similar in concept to Haskell Parsec system.")
25865 (license license:bsd-3))))
25866
25867(define-public cl-parser-combinators
25868 (sbcl-package->cl-source-package sbcl-parser-combinators))
25869
25870(define-public ecl-parser-combinators
25871 (sbcl-package->ecl-package sbcl-parser-combinators))
25872
25873(define-public sbcl-path-parse
25874 (let ((commit "86183f3752374435f8933394b4c5d8e75a37a113")
25875 (revision "1"))
25876 (package
25877 (name "sbcl-path-parse")
25878 (version (git-version "0.1" revision commit))
25879 (source
25880 (origin
25881 (method git-fetch)
25882 (uri (git-reference
25883 (url "https://github.com/eudoxia0/path-parse")
25884 (commit commit)))
25885 (file-name (git-file-name "cl-path-parse" version))
25886 (sha256
25887 (base32 "10mxm6q62cfpv3hw2w8k968ba8a1xglqdkwlkqs4l4nby3b11aaq"))))
25888 (build-system asdf-build-system/sbcl)
25889 (inputs
25890 (list sbcl-split-sequence))
25891 (native-inputs
25892 (list sbcl-fiveam))
25893 (home-page "https://github.com/eudoxia0/path-parse")
25894 (synopsis "Parse the PATH environment variable in Common Lisp")
25895 (description
25896 "This package provides a function to parse the @code{PATH} environment
25897variable portably in Common Lisp.")
25898 (license license:expat))))
25899
25900(define-public cl-path-parse
25901 (sbcl-package->cl-source-package sbcl-path-parse))
25902
25903(define-public ecl-path-parse
25904 (sbcl-package->ecl-package sbcl-path-parse))
25905
25906(define-public sbcl-pathname-utils
25907 (let ((commit "c0aa51ab78cb21581700d44deeed88a4743b6f13")
25908 (revision "5"))
25909 (package
25910 (name "sbcl-pathname-utils")
25911 (version (git-version "1.1.0" revision commit))
25912 (source
25913 (origin
25914 (method git-fetch)
25915 (uri (git-reference
25916 (url "https://codeberg.org/shinmera/pathname-utils")
25917 (commit commit)))
25918 (file-name (git-file-name "cl-pathname-utils" version))
25919 (sha256
25920 (base32 "11hic5gspnkjfggdh4zzx9i1ha4vf7rjr2cyqmz1144sprl2nva6"))))
25921 (build-system asdf-build-system/sbcl)
25922 (native-inputs
25923 (list sbcl-parachute))
25924 (inputs
25925 (list sbcl-trivial-features))
25926 (home-page "https://shinmera.com/docs/pathname-utils/")
25927 (synopsis "Collection of utilities to help with pathname operations")
25928 (description
25929 "This package provides a Common Lisp system with a collection of common
25930tests and operations to help handling pathnames. It does not actually deal in
25931handling the accessing of files on the underlying system however.")
25932 (license license:zlib))))
25933
25934(define-public cl-pathname-utils
25935 (sbcl-package->cl-source-package sbcl-pathname-utils))
25936
25937(define-public clasp-pathname-utils
25938 (package
25939 (inherit (sbcl-package->clasp-package sbcl-pathname-utils))
25940 (arguments
25941 (list #:tests? #f)))) ;see ECL variant
25942
25943(define-public ecl-pathname-utils
25944 (package
25945 (inherit (sbcl-package->ecl-package sbcl-pathname-utils))
25946 (arguments
25947 `(;; FIXME: It might be an issue in implementation of UIOP for ECL:
25948 ;;
25949 ;; Condition of type: TYPE-ERROR
25950 ;; :HOME is not of type SEQUENCE.
25951 ;; Available restarts:
25952 ;; 1. (RESTART-TOPLEVEL) Go back to Top-Level REPL.
25953 ;; Broken at SI:BYTECODES. [Evaluation of: (MAKE-PATHNAME :DIRECTORY
25954 ;; '(:ABSOLUTE :HOME))] In: #<process TOP-LEVEL 0x7faa2f991f80>.
25955 ;;
25956 #:tests? #f))))
25957
25958(define-public sbcl-pem
25959 (let ((commit "1ffb17efaa786574928b5cf5089695d37e4ec550")
25960 (revision "0"))
25961 (package
25962 (name "sbcl-pem")
25963 (build-system asdf-build-system/sbcl)
25964 (version (git-version "0.1.0" revision commit))
25965 (home-page "https://github.com/fukamachi/pem")
25966 (source
25967 (origin
25968 (method git-fetch)
25969 (uri (git-reference
25970 (url home-page)
25971 (commit commit)))
25972 (file-name (git-file-name "cl-pem" version))
25973 (sha256
25974 (base32 "1mi34anznbz12wzng4lma8vcskb20ph5ap6lpsbg0h3pc40kxrzv"))))
25975 (native-inputs (list sbcl-rove))
25976 (inputs
25977 (list sbcl-asn1
25978 sbcl-cl-ppcre
25979 sbcl-trivia
25980 sbcl-ironclad
25981 sbcl-cl-base64))
25982 (synopsis "PEM parser for Common Lisp")
25983 (description "This package provides a PEM (Privacy-Enhanced Mail)
25984parser for Common Lisp.")
25985 (license license:bsd-2))))
25986
25987(define-public cl-pem
25988 (sbcl-package->cl-source-package sbcl-pem))
25989
25990(define-public ecl-pem
25991 (sbcl-package->ecl-package sbcl-pem))
25992
25993(define-public sbcl-percent-encoding
25994 (let ((commit "c1224e22bc8048fbd3ebbc9329715a0c1b673170")
25995 (revision "1"))
25996 (package
25997 (name "sbcl-percent-encoding")
25998 (version (git-version "0.1" revision commit))
25999 (source
26000 (origin
26001 (method git-fetch)
26002 (uri (git-reference
26003 (url "https://github.com/llibra/percent-encoding")
26004 (commit commit)))
26005 (file-name (git-file-name "percent-encoding" version))
26006 (sha256
26007 (base32 "0q1lh3sa6mkjr5gcdkgimkpc29rgf9cjhv90f61h8ridj28grq0h"))))
26008 (build-system asdf-build-system/sbcl)
26009 (native-inputs
26010 (list sbcl-fiveam))
26011 (inputs
26012 (list sbcl-anaphora sbcl-babel))
26013 (synopsis "RFC 3986 percent-encoding library")
26014 (description
26015 "This is a Common Lisp library providing RFC 3986 percent-encoding.")
26016 (home-page "https://github.com/llibra/percent-encoding")
26017 (license license:expat))))
26018
26019(define-public ecl-percent-encoding
26020 (sbcl-package->ecl-package sbcl-percent-encoding))
26021
26022(define-public cl-percent-encoding
26023 (sbcl-package->cl-source-package sbcl-percent-encoding))
26024
26025(define-public sbcl-periodic-table
26026 (package
26027 (name "sbcl-periodic-table")
26028 (version "1.0")
26029 (source
26030 (origin
26031 (method url-fetch)
26032 (uri (string-append
26033 "https://common-lisp.net/project/chemboy/periodic-table-"
26034 version ".tar.gz"))
26035 (sha256
26036 (base32 "1ircvqm3q93ma4rxbxprb1i9rcax10ld6xmdzdhfnigr27sh5jvg"))))
26037 (build-system asdf-build-system/sbcl)
26038 (home-page "https://common-lisp.net/project/chemboy/")
26039 (synopsis "Periodic table for Common Lisp")
26040 (description
26041 "This package defines a Common Lisp package, @code{:elements}, with an
26042@code{ELEMENT} structure and a number of functions to search the periodic
26043table.")
26044 (license license:llgpl)))
26045
26046(define-public cl-periodic-table
26047 (sbcl-package->cl-source-package sbcl-periodic-table))
26048
26049(define-public ecl-periodic-table
26050 (sbcl-package->ecl-package sbcl-periodic-table))
26051
26052(define-public clasp-periodic-table
26053 (sbcl-package->clasp-package sbcl-periodic-table))
26054
26055(define-public sbcl-periods
26056 (let ((commit "1494b8f6887c3ce33d0bf094fd7ec7b77d38c998")
26057 (revision "3"))
26058 (package
26059 (name "sbcl-periods")
26060 (version (git-version "0.0.2" revision commit))
26061 (source
26062 (origin
26063 (method git-fetch)
26064 (uri (git-reference
26065 (url "https://github.com/jwiegley/periods")
26066 (commit commit)))
26067 (file-name (git-file-name "cl-periods" version))
26068 (sha256
26069 (base32 "1m958891rl3sin6h6pgfjdh6ay1s7kfxbxpqvlnzk9rqid0hcs15"))))
26070 (build-system asdf-build-system/sbcl)
26071 (inputs
26072 (list sbcl-local-time
26073 sbcl-series))
26074 (arguments
26075 '(#:asd-systems '("periods"
26076 "periods-series")))
26077 (synopsis "Common Lisp library for manipulating date/time objects")
26078 (description
26079 "Periods is a Common Lisp library providing a set of utilities for
26080manipulating times, distances between times, and both contiguous and
26081discontiguous ranges of time.")
26082 (home-page "https://github.com/jwiegley/periods")
26083 (license license:bsd-3))))
26084
26085(define-public cl-periods
26086 (sbcl-package->cl-source-package sbcl-periods))
26087
26088(define-public ecl-periods
26089 (sbcl-package->ecl-package sbcl-periods))
26090
26091(define-public sbcl-phos
26092 (let ((commit "eb81eaf306fe94d19e0c695d18537220ae6c27d1")
26093 (revision "2"))
26094 (package
26095 (name "sbcl-phos")
26096 (version (git-version "0.0.1" revision commit))
26097 (source
26098 (origin
26099 (method git-fetch)
26100 (uri (git-reference
26101 (url "https://github.com/omar-polo/phos")
26102 (commit commit)))
26103 (file-name (git-file-name "phos" version))
26104 (sha256
26105 (base32
26106 "0407vdy5q0h0r1p14wln8hgcn3gikgwazm7sbjcw4i5i3xnwsbl5"))))
26107 (build-system asdf-build-system/sbcl)
26108 (inputs
26109 (list sbcl-quri
26110 sbcl-cl-ppcre
26111 sbcl-trivia
26112 sbcl-usocket
26113 sbcl-cl+ssl
26114 ;; For the experimental GUI:
26115 sbcl-nodgui))
26116 (native-inputs
26117 (list sbcl-clunit2))
26118 (home-page "https://github.com/omar-polo/phos")
26119 (synopsis "Gemini client library and experimental GUI")
26120 (description "This package contains a Gemini client library for Common
26121Lisp. A subsystem offers an experimental GUI Gemini client.")
26122 (license (list license:agpl3 license:isc)))))
26123
26124(define-public cl-phos
26125 (sbcl-package->cl-source-package sbcl-phos))
26126
26127(define-public sbcl-physical-quantities
26128 (package
26129 (name "sbcl-physical-quantities")
26130 (version "0.2.1")
26131 (source
26132 (origin
26133 (method git-fetch)
26134 (uri (git-reference
26135 (url "https://github.com/mrossini-ethz/physical-quantities")
26136 (commit (string-append "v" version))))
26137 (file-name (git-file-name "cl-physical-quantities" version))
26138 (sha256
26139 (base32 "0mb2s94s6fhw5vfa89naalw7ld11sdsszlqpz0c65dvpfyfmmdmh"))))
26140 (build-system asdf-build-system/sbcl)
26141 (inputs
26142 (list sbcl-parseq))
26143 (home-page "https://github.com/mrossini-ethz/physical-quantities")
26144 (synopsis "Numeric type with optional unit and/or uncertainty for physics")
26145 (description
26146 "This lisp library handles physical quantities which consist of
26147
26148@itemize
26149@item value / magnitude
26150@item uncertainty / error
26151@item unit
26152@end itemize
26153
26154where the type of the value can be any subtype of real. For the uncertainty,
26155both absolute and relative values are possible. Combinations of lisp symbols
26156or strings are used to describe units. User defined units including
26157abbreviations and prefixes are supported. Error propagation and unit checking
26158is performed for all defined operations.")
26159 (license license:gpl2)))
26160
26161(define-public cl-physical-quantities
26162 (sbcl-package->cl-source-package sbcl-physical-quantities))
26163
26164(define-public ecl-physical-quantities
26165 (sbcl-package->ecl-package sbcl-physical-quantities))
26166
26167(define-public sbcl-pileup
26168 (let ((commit "f269473a570a8e55881082545ee63cfe5c7d3e72")
26169 (revision "1"))
26170 (package
26171 (name "sbcl-pileup")
26172 (version (git-version "1.0.1" revision commit))
26173 (source
26174 (origin
26175 (method git-fetch)
26176 (uri (git-reference
26177 (url "https://github.com/nikodemus/pileup")
26178 (commit commit)))
26179 (file-name (git-file-name "cl-pileup" version))
26180 (sha256
26181 (base32 "01gvshpxil0ggjgfmgcymbgmpsfaxy6aggm0bywkn40rck3038vb"))))
26182 (build-system asdf-build-system/sbcl)
26183 (inputs
26184 (list sbcl-alexandria sbcl-bordeaux-threads))
26185 (native-inputs
26186 (list sbcl-hu.dwim.stefil))
26187 (home-page "https://github.com/nikodemus/pileup")
26188 (synopsis "Simple thread-safe binary heap implementation for Common Lisp")
26189 (description
26190 "@code{Pileup} is a portable, performant, and thread-safe binary heap
26191for Common Lisp.")
26192 (license license:expat))))
26193
26194(define-public cl-pileup
26195 (sbcl-package->cl-source-package sbcl-pileup))
26196
26197(define-public ecl-pileup
26198 (sbcl-package->ecl-package sbcl-pileup))
26199
26200(define-public sbcl-piping
26201 (let ((commit "c7a4163c00dea7e72bf6ad33d6abac0d5826a656")
26202 (revision "1"))
26203 (package
26204 (name "sbcl-piping")
26205 (version (git-version "2.0.0" revision commit))
26206 (source
26207 (origin
26208 (method git-fetch)
26209 (uri (git-reference
26210 (url "https://codeberg.org/shinmera/piping/")
26211 (commit commit)))
26212 (file-name (git-file-name "piping" version))
26213 (sha256
26214 (base32 "0in84qnfkynm36d4n4d6v87vprpi27xrydnga462wfhplji6klv5"))))
26215 (build-system asdf-build-system/sbcl)
26216 (home-page "https://shinmera.com/docs/piping/")
26217 (synopsis "Library to enable simple message pipelines")
26218 (description
26219 "This is a Common Lisp library to enable simple message pipelines.")
26220 (license license:zlib))))
26221
26222(define-public cl-piping
26223 (sbcl-package->cl-source-package sbcl-piping))
26224
26225(define-public ecl-piping
26226 (sbcl-package->ecl-package sbcl-piping))
26227
26228(define-public clasp-piping
26229 (sbcl-package->clasp-package sbcl-piping))
26230
26231(define-public sbcl-plump
26232 (let ((commit "251fbe02e9bcdb5940d881788b880d51f7f35303")
26233 (revision "4"))
26234 (package
26235 (name "sbcl-plump")
26236 (version (git-version "2.0.0" revision commit))
26237 (source
26238 (origin
26239 (method git-fetch)
26240 (uri
26241 (git-reference
26242 (url "https://codeberg.org/shinmera/plump")
26243 (commit commit)))
26244 (file-name (git-file-name "cl-plump" version))
26245 (sha256
26246 (base32 "0w2n5wskgqvazb721amfd7smydnj3mxsyzg03xk2k1vaizzxdzvk"))))
26247 (build-system asdf-build-system/sbcl)
26248 (inputs
26249 (list sbcl-array-utils sbcl-documentation-utils))
26250 (synopsis "Lenient XML / XHTML / HTML parser for Common Lisp")
26251 (description
26252 "Plump is a parser for HTML/XML-like documents, focusing on being
26253lenient towards invalid markup. It can handle things like invalid attributes,
26254bad closing tag order, unencoded entities, inexistent tag types, self-closing
26255tags and so on. It parses documents to a class representation and offers a
26256small set of DOM functions to manipulate it. It can be extended to parse to
26257your own classes.")
26258 (home-page "https://codeberg.org/shinmera/plump")
26259 (license license:zlib))))
26260
26261(define-public cl-plump
26262 (sbcl-package->cl-source-package sbcl-plump))
26263
26264(define-public ecl-plump
26265 (sbcl-package->ecl-package sbcl-plump))
26266
26267(define-public clasp-plump
26268 (sbcl-package->clasp-package sbcl-plump))
26269
26270(define-public sbcl-plump-sexp
26271 (let ((commit "a40f66dbc7bf9d5957b1f85b184ce6798519ab96")
26272 (revision "1"))
26273 (package
26274 (name "sbcl-plump-sexp")
26275 (version (git-version "0.1.0" revision commit))
26276 (source
26277 (origin
26278 (method git-fetch)
26279 (uri
26280 (git-reference
26281 (url "https://codeberg.org/shinmera/plump-sexp")
26282 (commit commit)))
26283 (file-name (git-file-name "cl-plump-sexp" version))
26284 (sha256
26285 (base32
26286 "0iyz4xn7sk6pxx9avc2ajcy9268zdfr3xyvi16hgpajwcbqi5sjq"))))
26287 (build-system asdf-build-system/sbcl)
26288 (inputs
26289 (list sbcl-plump))
26290 (synopsis "Convert S-expressions into a Plump DOM and back")
26291 (description
26292 "The Plump-SEXP library is a backend for Plump which can convert
26293between S-expressions and the Plump DOM.")
26294 (home-page "https://codeberg.org/shinmera/plump-sexp")
26295 (license license:zlib))))
26296
26297(define-public cl-plump-sexp
26298 (sbcl-package->cl-source-package sbcl-plump-sexp))
26299
26300(define-public ecl-plump-sexp
26301 (sbcl-package->ecl-package sbcl-plump-sexp))
26302
26303(define-public clasp-plump-sexp
26304 (sbcl-package->clasp-package sbcl-plump-sexp))
26305
26306(define-public sbcl-png
26307 (let ((commit "11b965fe378fd0561abe3616b18ff03af5179648")
26308 (revision "1"))
26309 (package
26310 (name "sbcl-png")
26311 (version (git-version "0.6" revision commit))
26312 (source
26313 (origin
26314 (method git-fetch)
26315 (uri (git-reference
26316 (url "https://github.com/ljosa/cl-png")
26317 (commit commit)))
26318 (file-name (git-file-name "cl-png" version))
26319 (sha256
26320 (base32 "173hqwpd0rwqf95mfx1h9l9c3i8bb0gvnpspzmmz3g5x3440czy4"))
26321 ;; Patch to fix compiling with SBCL >= 2.1.6.
26322 (patches (search-patches "sbcl-png-fix-sbcl-compatibility.patch"))))
26323 (build-system asdf-build-system/sbcl)
26324 (arguments
26325 `(#:phases
26326 (modify-phases %standard-phases
26327 (add-after 'unpack 'fix-lib-paths
26328 (lambda* (#:key inputs #:allow-other-keys)
26329 (substitute* "libpng.lisp"
26330 (("\"libpng\"")
26331 (string-append "\""
26332 (assoc-ref inputs "libpng")
26333 "/lib/libpng\""))))))))
26334 (inputs
26335 (list sbcl-cffi
26336 libpng))
26337 (home-page "https://github.com/ljosa/cl-png")
26338 (synopsis "Read and write PNG file format")
26339 (description
26340 "This package provides a @code{PNG} Common Lisp system to operate with
26341Portable Network Graphics file format.")
26342 (license license:lgpl2.1))))
26343
26344(define-public ecl-png
26345 (sbcl-package->ecl-package sbcl-png))
26346
26347(define-public cl-png
26348 (sbcl-package->cl-source-package sbcl-png))
26349
26350(define-public sbcl-png-read
26351 (let ((commit "ec29f38a689972b9f1373f13bbbcd6b05deada88")
26352 (revision "1"))
26353 (package
26354 (name "sbcl-png-read")
26355 (version (git-version "0.3.1" revision commit))
26356 (source
26357 (origin
26358 (method git-fetch)
26359 (uri (git-reference
26360 (url "https://github.com/Ramarren/png-read")
26361 (commit commit)))
26362 (file-name (git-file-name name version))
26363 (sha256
26364 (base32 "0vyczbcwskrygrf1hgrsnk0jil8skmvf1kiaalw5jps4fjrfdkw0"))))
26365 (build-system asdf-build-system/sbcl)
26366 (inputs
26367 (list sbcl-babel sbcl-chipz sbcl-iterate))
26368 (synopsis "PNG decoder for Common Lisp")
26369 (description "This is a Common Lisp library for reading PNG images.")
26370 (home-page "https://github.com/Ramarren/png-read")
26371 (license license:bsd-3))))
26372
26373(define-public cl-png-read
26374 (sbcl-package->cl-source-package sbcl-png-read))
26375
26376(define-public ecl-png-read
26377 (sbcl-package->ecl-package sbcl-png-read))
26378
26379(define-public sbcl-pngload
26380 (let ((commit "91f1d703c65bb6a94d6fee06ddbbbbbc5778b71f")
26381 (revision "2"))
26382 (package
26383 (name "sbcl-pngload")
26384 (version (git-version "2.0.0" revision commit))
26385 (source
26386 (origin
26387 (method git-fetch)
26388 (uri (git-reference
26389 (url "https://git.mfiano.net/mfiano/pngload.git")
26390 (commit commit)))
26391 (file-name (git-file-name "pngload" version))
26392 (sha256
26393 (base32 "0s94fdbrbqj12qvgyn2g4lfwvz7qhhzbclrpz5ni7adwxgrmvxl1"))))
26394 (build-system asdf-build-system/sbcl)
26395 (inputs
26396 (list sbcl-3bz
26397 sbcl-alexandria
26398 sbcl-cffi
26399 sbcl-mmap
26400 sbcl-parse-float
26401 sbcl-static-vectors
26402 sbcl-swap-bytes
26403 sbcl-zpb-exif))
26404 (arguments
26405 ;; Test suite disabled because of a dependency cycle.
26406 ;; pngload tests depend on opticl which depends on pngload.
26407 '(#:tests? #f))
26408 (home-page "https://git.mfiano.net/mfiano/pngload.git")
26409 (synopsis "PNG image decoder for Common Lisp")
26410 (description
26411 "This is a Common Lisp library to load images in the PNG image format,
26412both from files on disk, or streams in memory.")
26413 (license license:expat))))
26414
26415(define-public cl-pngload
26416 (sbcl-package->cl-source-package sbcl-pngload))
26417
26418(define-public ecl-pngload
26419 (sbcl-package->ecl-package sbcl-pngload))
26420
26421(define-public sbcl-policy-cond
26422 (let ((commit "eedb625520175bfdf44d385ff3b21039b7f75706")
26423 (revision "0"))
26424 (package
26425 (name "sbcl-policy-cond")
26426 (version (git-version "0.0.0" revision commit))
26427 (source
26428 (origin
26429 (method git-fetch)
26430 (uri (git-reference
26431 (url "https://github.com/stylewarning/policy-cond")
26432 (commit commit)))
26433 (file-name (git-file-name "cl-policy-cond" version))
26434 (sha256
26435 (base32 "0xj2a6lcg7i7g4038sc4f641din6m8vdiha8c5afz9fik80bshxk"))))
26436 (build-system asdf-build-system/sbcl)
26437 (home-page "https://github.com/stylewarning/policy-cond")
26438 (synopsis "Insert code based on compiler policy")
26439 (description "POLICY-COND provides tools to insert and execute code
26440based on a compiler's OPTIMIZE policy. It also contains a contract-like notion
26441of expectations, which allow dynamic checking or inclusion of various things
26442that should happen depending on compiler policy.")
26443 (license license:bsd-3))))
26444
26445(define-public cl-policy-cond
26446 (sbcl-package->cl-source-package sbcl-policy-cond))
26447
26448(define-public ecl-policy-cond
26449 (sbcl-package->ecl-package sbcl-policy-cond))
26450
26451(define-public sbcl-polymorphic-functions
26452 (package
26453 (name "sbcl-polymorphic-functions")
26454 (version "0.5.2")
26455 (source
26456 (origin
26457 (method git-fetch)
26458 (uri (git-reference
26459 (url "https://github.com/digikar99/polymorphic-functions/")
26460 (commit (string-append "v" version))))
26461 (file-name (git-file-name "cl-polymorphic-functions" version))
26462 (sha256
26463 (base32 "1bawhbj5rh1q6qrcjnx48n78841mgri5n63pmicxxyhif2il0zq3"))))
26464 (build-system asdf-build-system/sbcl)
26465 (inputs
26466 (list sbcl-alexandria
26467 sbcl-cl-form-types
26468 sbcl-closer-mop
26469 sbcl-compiler-macro-notes
26470 sbcl-ctype
26471 sbcl-fiveam
26472 sbcl-introspect-environment
26473 sbcl-slime-swank))
26474 (arguments
26475 ;; Tests fail: https://github.com/digikar99/polymorphic-functions/issues/8
26476 (list #:tests? #f
26477 #:phases
26478 #~(modify-phases %standard-phases
26479 (add-after 'unpack 'fix-build
26480 (lambda _
26481 ;; SBCL 2.4.10 doesn't allow user code to
26482 ;; rebind *IN-COMPILATION-UNIT*.
26483 (substitute* "src/nonlite/dispatch.lisp"
26484 (("#\\+sbcl \\(sb-c::\\*in-compilation-unit\\* nil\\)")
26485 "")))))))
26486 (home-page "https://github.com/digikar99/polymorphic-functions/")
26487 (synopsis "Function type to dispatch on types instead of classes")
26488 (description
26489 "This library provides all of
26490
26491@itemize
26492@item ad hoc polymorphism and
26493@item subtype polymorphism
26494@item parametric polymorphism (in a very limited sense)
26495@end itemize
26496
26497to dispatch on the basis of types rather than classes.")
26498 (license license:expat)))
26499
26500(define-public cl-polymorphic-functions
26501 (sbcl-package->cl-source-package sbcl-polymorphic-functions))
26502
26503(define-public sbcl-portable-condition-system
26504 (let ((commit "1307ec146d227a9d8ea42312c1ba2a5206a9eb3c")
26505 (revision "0"))
26506 (package
26507 (name "sbcl-portable-condition-system")
26508 (version (git-version "1.1.0" revision commit))
26509 (source
26510 (origin
26511 (method git-fetch)
26512 (uri (git-reference
26513 (url "https://github.com/phoe/portable-condition-system")
26514 (commit commit)))
26515 (file-name (git-file-name name version))
26516 (sha256
26517 (base32 "099lb9f4bavj95wik99wla5rf6fk1gdw9pvn0cqlaf0wf20csd3h"))))
26518 (build-system asdf-build-system/sbcl)
26519 (arguments
26520 '(#:asd-systems '("portable-condition-system")))
26521 (native-inputs
26522 (list sbcl-1am))
26523 (inputs
26524 (list sbcl-alexandria
26525 sbcl-split-sequence))
26526 (home-page "https://github.com/phoe/portable-condition-system")
26527 (synopsis "Portable condition system for Common Lisp")
26528 (description
26529 "This package provides an example implementation of the Common Lisp
26530condition system and library, based on the original condition system
26531implementation by Kent M. Pitman.")
26532 (license license:cc0))))
26533
26534(define-public cl-portable-condition-system
26535 (sbcl-package->cl-source-package sbcl-portable-condition-system))
26536
26537(define-public ecl-portable-condition-system
26538 (sbcl-package->ecl-package sbcl-portable-condition-system))
26539
26540(define-public sbcl-portable-threads
26541 (let ((commit "aa26bf38338a6b068bf8bfb3375d8d8c3b0a28df"))
26542 (package
26543 (name "sbcl-portable-threads")
26544 (version (git-version "2.3" "2" commit))
26545 (source
26546 (origin
26547 (method git-fetch)
26548 (uri (git-reference
26549 (url "https://github.com/binghe/portable-threads/")
26550 (commit commit)))
26551 (file-name (git-file-name "portable-threads" version))
26552 (sha256
26553 (base32 "058ksi07vfdmhrf5mdlc833s82m1rcqfja2266520m3r8bzs8bvs"))))
26554 (build-system asdf-build-system/sbcl)
26555 (arguments
26556 `(;; Tests seem broken.
26557 #:tests? #f))
26558 (home-page "https://github.com/binghe/portable-threads")
26559 (synopsis "Portable threads API for Common Lisp")
26560 (description
26561 "Portable Threads (and Scheduled and Periodic Functions) API for Common
26562Lisp (from GBBopen project).")
26563 (license license:asl2.0))))
26564
26565(define-public cl-portable-threads
26566 (sbcl-package->cl-source-package sbcl-portable-threads))
26567
26568(define-public ecl-portable-threads
26569 (sbcl-package->ecl-package sbcl-portable-threads))
26570
26571(define-public sbcl-portal
26572 (let ((commit "416589fa04cb239971422a1272acba236c8333be")
26573 (revision "2"))
26574 (package
26575 (name "sbcl-portal")
26576 (version (git-version "1.2" revision commit))
26577 (source
26578 (origin
26579 (method git-fetch)
26580 (uri (git-reference
26581 (url "https://github.com/charJe/portal")
26582 (commit commit)))
26583 (file-name (git-file-name "portal" version))
26584 (sha256
26585 (base32 "1012jc068qdd8df6mmbn8vmmqlniqm5j2jbyrraw3yz8c13c8280"))))
26586 (build-system asdf-build-system/sbcl)
26587 (inputs
26588 (list sbcl-alexandria
26589 sbcl-arrows
26590 sbcl-cl-base64
26591 sbcl-cl-str
26592 sbcl-flexi-streams
26593 sbcl-global-vars
26594 sbcl-ironclad
26595 sbcl-parse-float
26596 sbcl-usocket))
26597 (home-page "https://github.com/charJe/portal")
26598 (synopsis "Portable Websocket Server for Common Lisp")
26599 (description
26600 "This is a websocket server for Common Lisp using usockets to be
26601portable between implementations and operating systems. It has a programming
26602interface that allows for multiple websocket apps per server using Common Lisp
26603keywords for different websocket events. It has useful restarts and
26604customizable errors.")
26605 (license license:llgpl))))
26606
26607(define-public cl-portal
26608 (sbcl-package->cl-source-package sbcl-portal))
26609
26610(define-public ecl-portal
26611 (sbcl-package->ecl-package sbcl-portal))
26612
26613(define-public sbcl-positional-lambda
26614 (let ((commit "a43a7bb4ef6faa277e6a7440ec9839711c4b9d28")
26615 (revision "0"))
26616 (package
26617 (name "sbcl-positional-lambda")
26618 (version (git-version "2.0" revision commit))
26619 (source
26620 (origin
26621 (method git-fetch)
26622 (uri (git-reference
26623 (url "https://github.com/Hexstream/positional-lambda")
26624 (commit commit)))
26625 (file-name (git-file-name "cl-positional-lambda" version))
26626 (sha256
26627 (base32 "1l27mw5ciqz7rnjq1lwslgk220i8iqcr39rs8b7hxkp1yqmah5zq"))))
26628 (build-system asdf-build-system/sbcl)
26629 (native-inputs
26630 (list sbcl-parachute))
26631 (inputs
26632 (list sbcl-map-bind))
26633 (home-page "https://www.hexstreamsoft.com/libraries/positional-lambda/")
26634 (synopsis "Macro favouring positional references over naming")
26635 (description
26636 "This package provides a concise, intuitive and flexible macro for
26637trivial lambdas that eschews explicit naming of parameter variables in favor
26638of positional references, with support for a used or ignored &rest parameter
26639and automatic declaration of ignored parameters when logical @code{gaps}
26640are left in the positional references. Further convenience features
26641are provided.")
26642 (license license:unlicense))))
26643
26644(define-public cl-positional-lambda
26645 (sbcl-package->cl-source-package sbcl-positional-lambda))
26646
26647(define-public ecl-cl-positional-lambda
26648 (sbcl-package->ecl-package sbcl-positional-lambda))
26649
26650(define-public sbcl-posix-shm
26651 (package
26652 (name "sbcl-posix-shm")
26653 (version "0.0.7")
26654 (source
26655 (origin
26656 (method git-fetch)
26657 (uri (git-reference
26658 (url "https://git.sr.ht/~shunter/posix-shm")
26659 (commit (string-append "v" version))))
26660 (file-name (git-file-name "cl-posix-shm" version))
26661 (sha256
26662 (base32 "1lk8sach64zgj81988q3z8i153gi3dkda3fkb11cxgsmymawddk9"))))
26663 (build-system asdf-build-system/sbcl)
26664 (arguments
26665 (list
26666 #:phases
26667 #~(modify-phases %standard-phases
26668 (add-after 'unpack 'fix-paths
26669 (lambda* (#:key inputs #:allow-other-keys)
26670 (substitute* "ffi/ffi.lisp"
26671 (("libc.so.6")
26672 (search-input-file inputs "/lib/libc.so.6"))
26673 (("librt.so.1")
26674 (search-input-file inputs "/lib/librt.so.1"))))))))
26675 (native-inputs
26676 (list sbcl-osicat
26677 sbcl-parachute))
26678 (inputs
26679 (list sbcl-alexandria
26680 sbcl-cffi
26681 sbcl-trivial-features))
26682 (home-page "https://git.sr.ht/~shunter/posix-shm")
26683 (synopsis "Common Lisp bindings and wrapper for POSIX shared memory API")
26684 (description
26685 "This library provides two strata to access the POSIX shm API:
26686
26687@itemize
26688@item the package @code{posix-shm/ffi}, a collection of slim bindings to the
26689POSIX API
26690
26691@item the package @code{posix-shm}, a lispy wrapper around the FFI that
26692integrates more closely to the features of Common Lisp, and provides a handful
26693of utilities and macros
26694@end itemize
26695
26696Features include:
26697
26698@itemize
26699@item open, close, create, resize, change ownership of, change permissions of,
26700and memory map to shared memory objects
26701@item @code{open-shm} appears more like @code{open} from the standard library
26702@item @code{open-shm*}, for creating anonymous shm objects
26703@item @code{with-open-shm}, @code{with-mmap} and similar @code{with-} macros
26704for safely accessing resources with dynamic extent
26705@end itemize")
26706 (license license:bsd-3)))
26707
26708(define-public cl-posix-shm
26709 (sbcl-package->cl-source-package sbcl-posix-shm))
26710
26711;; XXX: An error occurred during initialization: Attempt to redefine
26712;; function FTRUNCATE in locked package.
26713;; (define-public ecl-posix-shm
26714;; (sbcl-package->ecl-package sbcl-posix-shm))
26715
26716(define-public sbcl-postmodern
26717 (package
26718 (name "sbcl-postmodern")
26719 (version "1.33.12")
26720 (source
26721 (origin
26722 (method git-fetch)
26723 (uri (git-reference
26724 (url "https://github.com/marijnh/Postmodern")
26725 (commit (string-append "v" version))))
26726 (file-name (git-file-name "cl-postmodern" version))
26727 (sha256
26728 (base32 "14js3pz0jbvf11liqbrxhndb98vasib4bzkv7im87mysxzk8glqz"))))
26729 (build-system asdf-build-system/sbcl)
26730 (native-inputs
26731 (list sbcl-fiveam sbcl-trivial-octet-streams))
26732 (inputs
26733 (list sbcl-alexandria
26734 sbcl-bordeaux-threads
26735 sbcl-cl-base64
26736 sbcl-cl-unicode
26737 sbcl-closer-mop
26738 sbcl-global-vars
26739 sbcl-ironclad
26740 sbcl-local-time
26741 sbcl-md5
26742 sbcl-split-sequence
26743 sbcl-uax-15
26744 sbcl-usocket))
26745 (arguments
26746 ;; TODO: (Sharlatan-20210114T171037+0000) tests still failing but on other
26747 ;; step, some functionality in `local-time' prevents passing tests.
26748 ;; Error:
26749 ;;
26750 ;; Can't create directory
26751 ;; /gnu/store
26752 ;; /4f47agf1kyiz057ppy6x5p98i7mcbfsv-sbcl-local-time-1.0.6-2.a177eb9
26753 ;; /lib/common-lisp/sbcl/local-time/src/integration/
26754 ;;
26755 ;; NOTE: (Sharlatan-20210124T191940+0000): When set env HOME to /tmp above
26756 ;; issue is resolved but it required live test database to connect to now.
26757 ;; Keep tests switched off.
26758 `(#:tests? #f
26759 #:asd-systems '("cl-postgres"
26760 "s-sql"
26761 "postmodern"
26762 "simple-date"
26763 "simple-date/postgres-glue")))
26764 (synopsis "Common Lisp library for interacting with PostgreSQL")
26765 (description
26766 "@code{postmodern} is a Common Lisp library for interacting with
26767PostgreSQL databases. It provides the following features:
26768
26769@itemize
26770@item Efficient communication with the database server without need for
26771foreign libraries.
26772@item Support for UTF-8 on Unicode-aware Lisp implementations.
26773@item A syntax for mixing SQL and Lisp code.
26774@item Convenient support for prepared statements and stored procedures.
26775@item A metaclass for simple database-access objects.
26776@end itemize\n
26777
26778This package produces 4 systems: postmodern, cl-postgres, s-sql, simple-date
26779
26780@code{SIMPLE-DATE} is a very basic implementation of date and time objects, used
26781to support storing and retrieving time-related SQL types. It is not loaded by
26782default and you can use local-time (which has support for timezones) instead.
26783
26784@code{S-SQL} is used to compile s-expressions to strings of SQL code, escaping
26785any Lisp values inside, and doing as much as possible of the work at compile
26786time.
26787
26788@code{CL-POSTGRES} is the low-level library used for interfacing with a PostgreSQL
26789server over a socket.
26790
26791@code{POSTMODERN} itself is a wrapper around these packages and provides higher
26792level functions, a very simple data access object that can be mapped directly to
26793database tables and some convenient utilities. It then tries to put all these
26794things together into a convenient programming interface")
26795 (home-page "https://marijnhaverbeke.nl/postmodern/")
26796 (license license:zlib)))
26797
26798(define-public cl-postmodern
26799 (sbcl-package->cl-source-package sbcl-postmodern))
26800
26801(define-public ecl-postmodern
26802 (sbcl-package->ecl-package sbcl-postmodern))
26803
26804(define-public sbcl-pp-toml
26805 (let ((commit "54f7d08c939d18b24363342c98c19b6812d7afb9")
26806 (revision "0"))
26807 (package
26808 (name "sbcl-pp-toml")
26809 (version (git-version "1.0.1" revision commit))
26810 (source
26811 (origin
26812 (method git-fetch)
26813 (uri (git-reference
26814 (url "https://github.com/pnathan/pp-toml")
26815 (commit commit)))
26816 (file-name (git-file-name "cl-pp-toml" version))
26817 (sha256
26818 (base32 "136d7jzz7l2ck9wwld0ac46jmpm94lvja6m50sy73s232slka2hg"))))
26819 (build-system asdf-build-system/sbcl)
26820 (native-inputs
26821 (list sbcl-fiveam))
26822 (inputs
26823 (list sbcl-alexandria
26824 sbcl-cl-ppcre
26825 sbcl-esrap
26826 sbcl-generic-comparability
26827 sbcl-local-time
26828 sbcl-parse-number
26829 sbcl-split-sequence))
26830 (home-page "https://github.com/pnathan/pp-toml")
26831 (synopsis "TOML parser for Common Lisp")
26832 (description
26833 "PP-TOML is a Common Lisp library for parsing strings in the TOML
26834configuration file format. It implements only the 0.1.0 specification of
26835TOML.")
26836 (license license:llgpl))))
26837
26838(define-public cl-pp-toml
26839 (sbcl-package->cl-source-package sbcl-pp-toml))
26840
26841(define-public ecl-pp-toml
26842 (sbcl-package->ecl-package sbcl-pp-toml))
26843
26844(define-public sbcl-ppath
26845 (let ((commit "eb1a8173b4d1d691ea9a7699412123462f58c3ce"))
26846 (package
26847 (name "sbcl-ppath")
26848 (version (git-version "0.1" "1" commit))
26849 (source
26850 (origin
26851 (method git-fetch)
26852 (uri (git-reference
26853 (url "https://github.com/fourier/ppath/")
26854 (commit commit)))
26855 (file-name (git-file-name name commit))
26856 (sha256
26857 (base32 "1c46q9lmzqv14z80d3fwdawgn3pn4922x31fyqvsvbcjm4hd16fb"))))
26858 (build-system asdf-build-system/sbcl)
26859 (inputs
26860 (list sbcl-alexandria
26861 sbcl-cffi
26862 sbcl-osicat
26863 sbcl-cl-ppcre
26864 sbcl-split-sequence
26865 sbcl-trivial-features))
26866 (native-inputs
26867 (list sbcl-cl-fad sbcl-prove))
26868 (home-page "https://github.com/fourier/ppath")
26869 (synopsis "Common Lisp's implementation of the Python's os.path module")
26870 (description
26871 "This library is a path strings manipulation library inspired by
26872Python's @code{os.path}. All functionality from @code{os.path} is supported on
26873major operation systems.
26874
26875The philosophy behind is to use simple strings and \"dumb\" string
26876manipulation functions to handle paths and filenames. Where possible the
26877corresponding OS system functions are called.")
26878 (license license:bsd-2))))
26879
26880(define-public ecl-ppath
26881 (sbcl-package->ecl-package sbcl-ppath))
26882
26883(define-public cl-ppath
26884 (sbcl-package->cl-source-package sbcl-ppath))
26885
26886(define-public sbcl-print-licenses
26887 (let ((commit "3949663318fb736f4ee660e3aa810875187d531c")
26888 (revision "0"))
26889 (package
26890 (name "sbcl-print-licenses")
26891 (build-system asdf-build-system/sbcl)
26892 (version (git-version "0.1.0" revision commit))
26893 (source
26894 (origin
26895 (method git-fetch)
26896 (uri (git-reference
26897 (url "https://github.com/vindarel/print-licenses")
26898 (commit commit)))
26899 (file-name (git-file-name "cl-print-licenses" version))
26900 (sha256
26901 (base32 "14i6r6mf16dlj1g4xk0alg2912y3wy0qbfpyvvgsgxkkar63cmi5"))))
26902 (inputs (list sbcl-alexandria sbcl-iterate))
26903 (home-page "https://github.com/vindarel/print-licenses/")
26904 (synopsis "Print licenses used by a Common Lisp project")
26905 (description
26906 "This library can be used to print the licenses used by a Common Lisp
26907project and its dependencies.")
26908 (license license:expat))))
26909
26910(define-public ecl-print-licenses
26911 (sbcl-package->ecl-package sbcl-print-licenses))
26912
26913(define-public clasp-print-licenses
26914 (sbcl-package->clasp-package sbcl-print-licenses))
26915
26916(define-public cl-print-licenses
26917 (sbcl-package->cl-source-package sbcl-print-licenses))
26918
26919(define-public sbcl-printv
26920 (let ((commit "e717a7fe076dae861a96117b2f9af29db8d2294d")
26921 (revision "2"))
26922 (package
26923 (name "sbcl-printv")
26924 (version (git-version "0.1.0" revision commit))
26925 (source
26926 (origin
26927 (method git-fetch)
26928 (uri (git-reference
26929 (url "https://github.com/danlentz/printv")
26930 (commit commit)))
26931 (file-name (git-file-name "cl-printv" version))
26932 (sha256
26933 (base32 "07agyzkwp3w2r4d2anrmr8h00yngpr5dq9mjd3m4kzhn1jcmilfb"))))
26934 (build-system asdf-build-system/sbcl)
26935 (inputs
26936 (list figlet))
26937 (arguments
26938 `(#:phases
26939 (modify-phases %standard-phases
26940 (add-after 'unpack 'patch-figlet-executable
26941 (lambda* (#:key inputs #:allow-other-keys)
26942 (substitute* "printv.lisp"
26943 (("\"figlet")
26944 (string-append "\"" (search-input-file inputs
26945 "/bin/figlet")))))))))
26946 (home-page "https://github.com/danlentz/printv")
26947 (synopsis "Common Lisp tracing and debug-logging macro")
26948 (description
26949 "@code{PRINTV} is a \"batteries-included\" tracing and debug-logging
26950macro for Common Lisp.")
26951 (license license:asl2.0))))
26952
26953(define-public ecl-printv
26954 (sbcl-package->ecl-package sbcl-printv))
26955
26956(define-public cl-printv
26957 (sbcl-package->cl-source-package sbcl-printv))
26958
26959(define-public sbcl-priority-queue
26960 (let ((commit "011b8d52ef7ba7f8e6bc26608eedef222b38aaa8")
26961 (revision "0"))
26962 (package
26963 (name "sbcl-priority-queue")
26964 (version (git-version "0.1" revision commit))
26965 (source
26966 (origin
26967 (method git-fetch)
26968 (uri (git-reference
26969 (url "https://github.com/dsorokin/priority-queue")
26970 (commit commit)))
26971 (file-name (git-file-name "cl-priority-queue" version))
26972 (sha256
26973 (base32 "0y5a1fid8xzzl58hfdj64n8mrzq0kr06a0lnmdjpgi0czc3x0jcy"))))
26974 (build-system asdf-build-system/sbcl)
26975 (synopsis "Priority queue for Common Lisp")
26976 (description "This package provides a priority queue implemented with
26977an array-based heap.")
26978 (home-page "https://github.com/dsorokin/priority-queue")
26979 (license license:expat))))
26980
26981(define-public cl-priority-queue
26982 (sbcl-package->cl-source-package sbcl-priority-queue))
26983
26984(define-public ecl-priority-queue
26985 (sbcl-package->ecl-package sbcl-priority-queue))
26986
26987(define-public clasp-priority-queue
26988 (sbcl-package->clasp-package sbcl-priority-queue))
26989
26990(define-public sbcl-proc-parse
26991 (let ((commit "ac3636834d561bdc2686c956dbd82494537285fd"))
26992 (package
26993 (name "sbcl-proc-parse")
26994 (version (git-version "0.0.0" "1" commit))
26995 (source
26996 (origin
26997 (method git-fetch)
26998 (uri (git-reference
26999 (url "https://github.com/fukamachi/proc-parse")
27000 (commit commit)))
27001 (sha256
27002 (base32
27003 "06rnl0h4cx6xv2wj3jczmmcxqn2703inmmvg1s4npbghmijsybfh"))
27004 (file-name (git-file-name "proc-parse" version))))
27005 (build-system asdf-build-system/sbcl)
27006 (inputs
27007 (list sbcl-alexandria
27008 sbcl-babel))
27009 (native-inputs
27010 (list sbcl-prove))
27011 (arguments
27012 '(#:asd-systems '("proc-parse-test"
27013 "proc-parse")))
27014 (synopsis "Procedural vector parser")
27015 (description
27016 "This is a string/octets parser library for Common Lisp with speed and
27017readability in mind. Unlike other libraries, the code is not a
27018pattern-matching-like, but a char-by-char procedural parser.")
27019 (home-page "https://github.com/fukamachi/proc-parse")
27020 (license license:bsd-2))))
27021
27022(define-public cl-proc-parse
27023 (sbcl-package->cl-source-package sbcl-proc-parse))
27024
27025(define-public ecl-proc-parse
27026 (sbcl-package->ecl-package sbcl-proc-parse))
27027
27028(define-public sbcl-progressons
27029 (let ((commit "69a8092e43876d66943aef709ab641818d52f2da")
27030 (revision "0"))
27031 (package
27032 (name "sbcl-progressons")
27033 (version (git-version "0.1" revision commit))
27034 (source
27035 (origin
27036 (method git-fetch)
27037 (uri (git-reference
27038 (url "https://github.com/vindarel/progressons")
27039 (commit commit)))
27040 (file-name (git-file-name "cl-progressons" version))
27041 (sha256
27042 (base32 "1i93khd0l1aphzh6qb4yy9cpi2nmqac08b90yx95p4zymap03nly"))))
27043 (build-system asdf-build-system/sbcl)
27044 (inputs
27045 (list sbcl-cl-ansi-text
27046 sbcl-cl-str))
27047 (synopsis "Display a progress bar on one line")
27048 (description
27049 "This library can be used to display a progress bar on one line.")
27050 (home-page "https://github.com/vindarel/progressons")
27051 (license license:expat))))
27052
27053(define-public cl-progressons
27054 (sbcl-package->cl-source-package sbcl-progressons))
27055
27056(define-public ecl-progressons
27057 (sbcl-package->ecl-package sbcl-progressons))
27058
27059(define-public sbcl-prometheus
27060 (package
27061 (name "sbcl-prometheus")
27062 (version "0.4.1")
27063 (source
27064 (origin
27065 (method git-fetch)
27066 (uri (git-reference
27067 (url "https://github.com/deadtrickster/prometheus.cl")
27068 (commit "7352b92296996ff383503e19bdd3bcea30409a15")))
27069 (file-name (git-file-name name version))
27070 (sha256
27071 (base32
27072 "0fzczls2kfgdx18pja4lqxjrz72i583185d8nq0pb3s331hhzh0z"))))
27073 (build-system asdf-build-system/sbcl)
27074 (inputs
27075 (list sbcl-alexandria
27076 sbcl-bordeaux-threads
27077 sbcl-cffi
27078 sbcl-cl-fad
27079 sbcl-cl-ppcre
27080 sbcl-drakma
27081 sbcl-hunchentoot
27082 sbcl-local-time
27083 sbcl-quantile-estimator
27084 sbcl-salza2
27085 sbcl-split-sequence
27086 sbcl-trivial-utf-8))
27087 (arguments
27088 '(#:asd-systems '("prometheus"
27089 "prometheus.collectors.sbcl"
27090 "prometheus.collectors.process"
27091 "prometheus.formats.text"
27092 "prometheus.exposers.hunchentoot"
27093 "prometheus.pushgateway")))
27094 (home-page "https://github.com/deadtrickster/prometheus.cl")
27095 (synopsis "Prometheus.io Common Lisp client")
27096 (description "Prometheus.io Common Lisp client.")
27097 (license license:expat)))
27098
27099(define-public cl-prometheus
27100 (sbcl-package->cl-source-package sbcl-prometheus))
27101
27102(define-public sbcl-promise
27103 (let ((commit "801db8f853da7935ae2e487fd7f8763acbc5ad2a")
27104 (revision "0"))
27105 (package
27106 (name "sbcl-promise")
27107 (version (git-version "1.0.0" revision commit))
27108 (source
27109 (origin
27110 (method git-fetch)
27111 (uri (git-reference
27112 (url "https://codeberg.org/shinmera/promise")
27113 (commit commit)))
27114 (file-name (git-file-name "cl-promise" version))
27115 (sha256
27116 (base32 "07cvz6vb5y1d9vndcwq7q1cp54aqvyqzv6wk8vmymbz3lawq2wsn"))))
27117 (build-system asdf-build-system/sbcl)
27118 (native-inputs
27119 (list sbcl-parachute))
27120 (inputs
27121 (list sbcl-documentation-utils))
27122 (home-page "https://shinmera.com/docs/promise/")
27123 (synopsis "Promise mechanism for asynchronous operations")
27124 (description
27125 "This library implements a basic promise datastructure, which is useful
27126for dealing with asynchronous behaviours. Importantly, this library does not
27127use any other libraries or frameworks, and instead leaves the execution and
27128state transition of promise objects in your control, making it easy to
27129integrate.")
27130 (license license:zlib))))
27131
27132(define-public cl-promise
27133 (sbcl-package->cl-source-package sbcl-promise))
27134
27135(define-public ecl-promise
27136 (sbcl-package->ecl-package sbcl-promise))
27137
27138(define-public clasp-promise
27139 (sbcl-package->clasp-package sbcl-promise))
27140
27141(define-public sbcl-prompter
27142 (let ((commit "7890ed5d02e70aba01ceb964c6ee4f40776e7dc0")
27143 (revision "0"))
27144 (package
27145 (name "sbcl-prompter")
27146 (version (git-version "0.1.1" revision commit))
27147 (source
27148 (origin
27149 (method git-fetch)
27150 (uri (git-reference
27151 (url "https://github.com/atlas-engineer/prompter")
27152 (commit commit)))
27153 (file-name (git-file-name "cl-prompter" version))
27154 (sha256
27155 (base32
27156 "0r15a6cagyp5x8aqx92ln2anni737h73bdshkvpzrac04ajss4md"))))
27157 (build-system asdf-build-system/sbcl)
27158 (inputs
27159 (list
27160 sbcl-alexandria
27161 sbcl-calispel
27162 sbcl-cl-containers
27163 sbcl-cl-str
27164 sbcl-closer-mop
27165 sbcl-lparallel
27166 sbcl-moptilities
27167 sbcl-nclasses
27168 sbcl-serapeum
27169 sbcl-trivial-package-local-nicknames))
27170 (native-inputs
27171 (list sbcl-lisp-unit2))
27172 (home-page "https://github.com/atlas-engineer/prompter")
27173 (synopsis "Live-narrowing, fuzzy-matching, extensible prompt framework")
27174 (description
27175 "This prompter library is heavily inspired by Emacs' minibuffer and
27176Helm (@url{https://emacs-helm.github.io/helm/}). It only deals with the
27177backend side of things, it does not handle any display. Features include
27178asynchronous suggestion computation, multiple sources, actions and resumable
27179prompters.")
27180 (license license:bsd-3))))
27181
27182(define-public cl-prompter
27183 (sbcl-package->cl-source-package sbcl-prompter))
27184
27185(define-public ecl-prompter
27186 (sbcl-package->ecl-package sbcl-prompter))
27187
27188(define-public sbcl-punycode
27189 (let ((commit "ac958bbd2fdf41a3e8ba506d04b87e4a0c250701")
27190 (revision "0"))
27191 (package
27192 (name "sbcl-punycode")
27193 (version (git-version "0.1.2" revision commit))
27194 (source
27195 (origin
27196 (method git-fetch)
27197 (uri (git-reference
27198 (url "https://codeberg.org/shinmera/punycode")
27199 (commit commit)))
27200 (file-name (git-file-name "cl-punycode" version))
27201 (sha256
27202 (base32 "1hb3rv64dhp1mdw10llci1fl2xfg9am7469qay0w2yvyd9h5kbng"))))
27203 (build-system asdf-build-system/sbcl)
27204 (native-inputs (list sbcl-parachute))
27205 (synopsis
27206 "Common Lisp implementation of encoding and decoding of Punycode strings")
27207 (description "This implements encoding and decoding of Punycode strings,
27208specified in RFC 3492 and used for unicode characters in domain names.")
27209 (home-page "https://codeberg.org/shinmera/punycode")
27210 (license license:zlib))))
27211
27212(define-public cl-punycode
27213 (sbcl-package->cl-source-package sbcl-punycode))
27214
27215(define-public ecl-punycode
27216 (sbcl-package->ecl-package sbcl-punycode))
27217
27218(define-public clasp-punycode
27219 (sbcl-package->clasp-package sbcl-punycode))
27220
27221(define-public sbcl-purgatory
27222 (let ((commit "3afd8f6bb4093ffb2f39ffdedf11278b3617fff9")
27223 (revision "1"))
27224 (package
27225 (name "sbcl-purgatory")
27226 (version (git-version "0.1.2" revision commit))
27227 (source
27228 (origin
27229 (method git-fetch)
27230 (uri (git-reference
27231 (url "https://notabug.org/cage/purgatory")
27232 (commit commit)))
27233 (file-name (git-file-name "cl-purgatory" version))
27234 (sha256
27235 (base32 "0iy2jdgrwqrq9cph7bwf79d8l4zdsgcd9sfcn0lclzai2v0yizp9"))))
27236 (build-system asdf-build-system/sbcl)
27237 (inputs
27238 (list sbcl-alexandria
27239 sbcl-babel
27240 sbcl-bordeaux-threads
27241 sbcl-cl-ppcre-unicode
27242 sbcl-usocket))
27243 (synopsis "Common Lisp implementation of the 9p protocol")
27244 (description "This is a Common Lisp library that implements
27245the 9p network filesystem protocol.")
27246 (home-page "https://notabug.org/cage/purgatory/")
27247 (license license:llgpl))))
27248
27249(define-public cl-purgatory
27250 (sbcl-package->cl-source-package sbcl-purgatory))
27251
27252(define-public ecl-purgatory
27253 (sbcl-package->ecl-package sbcl-purgatory))
27254
27255(define-public sbcl-puri
27256 (let ((commit "4bbab89d9ccbb26346899d1f496c97604fec567b")
27257 (revision "2"))
27258 (package
27259 (name "sbcl-puri")
27260 (version (git-version "1.5.7" revision commit))
27261 (source
27262 (origin
27263 (method git-fetch)
27264 (uri (git-reference
27265 (url "http://git.kpe.io/puri.git")
27266 (commit commit)))
27267 (file-name (git-file-name "puri" version))
27268 (sha256
27269 (base32 "0gq2rsr0aihs0z20v4zqvmdl4szq53b52rh97pvnmwrlbn4mapmd"))
27270 (modules '((guix build utils)))
27271 (snippet
27272 ;; The useless bundled debian folder drags `make' into the closure.
27273 `(begin
27274 (delete-file-recursively "debian")
27275 #t))))
27276 (build-system asdf-build-system/sbcl)
27277 (native-inputs
27278 (list sbcl-ptester))
27279 (home-page "http://puri.kpe.io/")
27280 (synopsis "Portable URI Library")
27281 (description
27282 "This is a portable Universal Resource Identifier library for Common
27283Lisp programs. It parses URI according to the RFC 2396 specification.")
27284 (license license:llgpl))))
27285
27286(define-public cl-puri
27287 (sbcl-package->cl-source-package sbcl-puri))
27288
27289(define-public ecl-puri
27290 (sbcl-package->ecl-package sbcl-puri))
27291
27292(define-public clasp-puri
27293 (sbcl-package->clasp-package sbcl-puri))
27294
27295(define-public sbcl-py-configparser
27296 ;; NOTE: (Sharlatan <2021-01-05 Tue> <19:52:19 UTC+0000>) Project updated last
27297 ;; time 8y ago, it looks like abandoned. VCS of the project:
27298 ;; https://svn.common-lisp.net/py-configparser/trunk
27299 (package
27300 (name "sbcl-py-configparser")
27301 (version "1.0.3")
27302 (source
27303 (origin
27304 (method url-fetch)
27305 (uri (string-append
27306 "https://common-lisp.net/project/py-configparser/releases/"
27307 "py-configparser-" version ".tar.gz"))
27308 (sha256
27309 (base32 "0i4rqz5cv7d7c2w81x5lwy05s6fbi3zikf4k5kpi3bkx3cabwdxj"))))
27310 (build-system asdf-build-system/sbcl)
27311 (inputs
27312 (list sbcl-parse-number))
27313 (home-page "https://common-lisp.net/project/py-configparser/")
27314 (synopsis "ConfigParser Python module functionality for Common Lisp")
27315 (description "The py-configparser package implements the ConfigParser
27316Python module functionality in Common Lisp. In short, it implements reading
27317and writing of .INI-file style configuration files with sections containing
27318key/value pairs of configuration options. In line with the functionalities in
27319the python module, does this package implement basic interpolation of option
27320values in other options.")
27321 (license license:expat)))
27322
27323(define-public cl-py-configparser
27324 (sbcl-package->cl-source-package sbcl-py-configparser))
27325
27326(define-public ecl-py-configparser
27327 (sbcl-package->ecl-package sbcl-py-configparser))
27328
27329(define-public clasp-py-configparser
27330 (sbcl-package->clasp-package sbcl-py-configparser))
27331
27332(define-public sbcl-pythonic-string-reader
27333 (let ((commit "47a70ba1e32362e03dad6ef8e6f36180b560f86a"))
27334 (package
27335 (name "sbcl-pythonic-string-reader")
27336 (version (git-version "0.0.0" "1" commit))
27337 (source
27338 (origin
27339 (method git-fetch)
27340 (uri (git-reference
27341 (url "https://github.com/smithzvk/pythonic-string-reader/")
27342 (commit commit)))
27343 (sha256
27344 (base32 "1b5iryqw8xsh36swckmz8rrngmc39k92si33fgy5pml3n9l5rq3j"))
27345 (file-name (git-file-name "pythonic-string-reader" version))))
27346 (build-system asdf-build-system/sbcl)
27347 (inputs
27348 (list sbcl-named-readtables))
27349 (home-page "https://github.com/smithzvk/pythonic-string-reader")
27350 (synopsis "Read table modification inspired by Python's three quote strings")
27351 (description "This piece of code sets up some reader macros that make it
27352simpler to input string literals which contain backslashes and double quotes
27353This is very useful for writing complicated docstrings and, as it turns out,
27354writing code that contains string literals that contain code themselves.")
27355 (license license:bsd-3))))
27356
27357(define-public cl-pythonic-string-reader
27358 (sbcl-package->cl-source-package sbcl-pythonic-string-reader))
27359
27360(define-public ecl-pythonic-string-reader
27361 (sbcl-package->ecl-package sbcl-pythonic-string-reader))
27362
27363(define-public clasp-pythonic-string-reader
27364 (sbcl-package->clasp-package sbcl-pythonic-string-reader))
27365
27366(define-public sbcl-pzmq
27367 (let ((commit "6f7b2ca02c23ea53510a9b0e0f181d5364ce9d32")
27368 (revision "2"))
27369 (package
27370 (name "sbcl-pzmq")
27371 (version (git-version "0.0.0" revision commit))
27372 (source
27373 (origin
27374 (method git-fetch)
27375 (uri (git-reference
27376 (url "https://github.com/orivej/pzmq")
27377 (commit commit)))
27378 (file-name (git-file-name name version))
27379 (sha256
27380 (base32 "19mdhxhzzghlmff1fic4chg5iz0psglkim09z6dgpijm26biny05"))))
27381 (build-system asdf-build-system/sbcl)
27382 (native-inputs
27383 (list sbcl-bordeaux-threads
27384 sbcl-fiveam
27385 sbcl-let-plus))
27386 (inputs
27387 (list sbcl-cffi
27388 zeromq))
27389 (arguments
27390 `(#:phases (modify-phases %standard-phases
27391 (add-after 'unpack 'fix-paths
27392 (lambda* (#:key inputs #:allow-other-keys)
27393 (substitute* "c-api.lisp"
27394 (("\"libzmq")
27395 (string-append "\""
27396 (assoc-ref inputs "zeromq")
27397 "/lib/libzmq")))
27398 #t)))))
27399 (synopsis "Common Lisp bindings for the ZeroMQ library")
27400 (description "This Common Lisp library provides bindings for the ZeroMQ
27401lightweight messaging kernel.")
27402 (home-page "https://github.com/orivej/pzmq")
27403 (license license:unlicense))))
27404
27405(define-public cl-pzmq
27406 (sbcl-package->cl-source-package sbcl-pzmq))
27407
27408(define-public ecl-pzmq
27409 (sbcl-package->ecl-package sbcl-pzmq))
27410
27411(define-public sbcl-qbase64
27412 (package
27413 (name "sbcl-qbase64")
27414 (version "0.3.0")
27415 (source
27416 (origin
27417 (method git-fetch)
27418 (uri (git-reference
27419 (url "https://github.com/chaitanyagupta/qbase64")
27420 (commit version)))
27421 (file-name (git-file-name name version))
27422 (sha256
27423 (base32 "1dir0s70ca3hagxv9x15zq4p4ajgl7jrcgqsza2n2y7iqbxh0dwi"))))
27424 (build-system asdf-build-system/sbcl)
27425 (inputs
27426 (list sbcl-metabang-bind sbcl-trivial-gray-streams))
27427 (native-inputs
27428 (list sbcl-fiveam))
27429 (home-page "https://github.com/chaitanyagupta/qbase64")
27430 (synopsis "Base64 encoder and decoder for Common Lisp")
27431 (description "@code{qbase64} provides a fast and flexible base64 encoder
27432and decoder for Common Lisp.")
27433 (license license:bsd-3)))
27434
27435(define-public cl-qbase64
27436 (sbcl-package->cl-source-package sbcl-qbase64))
27437
27438(define-public ecl-qbase64
27439 (sbcl-package->ecl-package sbcl-qbase64))
27440
27441(define-public sbcl-qmynd
27442 (let ((commit "7e56daf73f0ed5f49a931c01af75fb874bcf3445")
27443 (revision "1"))
27444 (package
27445 (name "sbcl-qmynd")
27446 (version (git-version "1.0.0" revision commit))
27447 (source
27448 (origin
27449 (method git-fetch)
27450 (uri (git-reference
27451 (url "https://github.com/qitab/qmynd")
27452 (commit commit)))
27453 (file-name (git-file-name name version))
27454 (sha256
27455 (base32
27456 "06gw5wxcpdclb6a5i5k9lbmdlyqsp182czrm9bm1cpklzbj0ihrl"))))
27457 (build-system asdf-build-system/sbcl)
27458 (inputs
27459 (list sbcl-asdf-finalizers
27460 sbcl-babel
27461 sbcl-chipz
27462 sbcl-cl+ssl
27463 sbcl-flexi-streams
27464 sbcl-ironclad
27465 sbcl-salza2
27466 sbcl-trivial-gray-streams
27467 sbcl-usocket))
27468 (home-page "https://github.com/qitab/qmynd")
27469 (synopsis "QITAB MySQL Native Driver for Common Lisp")
27470 (description "QMyND, the QITAB MySQL Native Driver, is a MySQL client
27471library that directly talks to a MySQL server in its native network protocol.
27472
27473It's a part of QITAB umbrella project.")
27474 (license license:expat))))
27475
27476(define-public cl-qmynd
27477 (sbcl-package->cl-source-package sbcl-qmynd))
27478
27479(define-public ecl-qmynd
27480 (sbcl-package->ecl-package sbcl-qmynd))
27481
27482(define-public sbcl-quantile-estimator
27483 (package
27484 (name "sbcl-quantile-estimator")
27485 (version "0.0.1")
27486 (source
27487 (origin
27488 (method git-fetch)
27489 (uri (git-reference
27490 (url "https://github.com/deadtrickster/quantile-estimator.cl")
27491 (commit "84d0ea405d793f5e808c68c4ddaf25417b0ff8e5")))
27492 (file-name (git-file-name name version))
27493 (sha256
27494 (base32
27495 "0rlswkf0siaabsvvch3dgxmg45fw5w8pd9b7ri2w7a298aya52z9"))))
27496 (build-system asdf-build-system/sbcl)
27497 (arguments
27498 '(#:asd-test-systems '("quantile-estimator.test")))
27499 (inputs
27500 (list sbcl-alexandria))
27501 (native-inputs
27502 (list sbcl-mw-equiv sbcl-prove sbcl-log4cl))
27503 (home-page "https://github.com/deadtrickster/quantile-estimator.cl")
27504 (synopsis
27505 "Effective computation of biased quantiles over data streams")
27506 (description
27507 "Common Lisp implementation of Graham Cormode and S.
27508Muthukrishnan's Effective Computation of Biased Quantiles over Data
27509Streams in ICDE’05.")
27510 (license license:expat)))
27511
27512(define-public cl-quantile-estimator
27513 (sbcl-package->cl-source-package sbcl-quantile-estimator))
27514
27515(define-public ecl-quantile-estimator
27516 (sbcl-package->ecl-package sbcl-quantile-estimator))
27517
27518(define-public sbcl-queues
27519 (let ((commit "47d4da65e9ea20953b74aeeab7e89a831b66bc94"))
27520 (package
27521 (name "sbcl-queues")
27522 (version (git-version "0.0.0" "1" commit))
27523 (source
27524 (origin
27525 (method git-fetch)
27526 (uri (git-reference
27527 (url "https://github.com/oconnore/queues")
27528 (commit commit)))
27529 (file-name (git-file-name "queues" version))
27530 (sha256
27531 (base32
27532 "0wdhfnzi4v6d97pggzj2aw55si94w4327br94jrmyvwf351wqjvv"))))
27533 (build-system asdf-build-system/sbcl)
27534 (inputs
27535 (list sbcl-bordeaux-threads))
27536 (arguments
27537 '(#:asd-systems '("queues"
27538 "queues.simple-queue"
27539 "queues.simple-cqueue"
27540 "queues.priority-queue"
27541 "queues.priority-cqueue")))
27542 (home-page "https://github.com/oconnore/queues")
27543 (synopsis "Common Lisp queue library")
27544 (description
27545 "This is a simple queue library for Common Lisp with features such as
27546non-consing thread safe queues and fibonacci priority queues.")
27547 (license license:expat))))
27548
27549(define-public cl-queues
27550 (sbcl-package->cl-source-package sbcl-queues))
27551
27552(define-public ecl-queues
27553 (sbcl-package->ecl-package sbcl-queues))
27554
27555(define-public sbcl-quicklisp-stats
27556 (let ((commit "953b45c2212ae513d48a611d3dd09c846a6102cd")
27557 (revision "0"))
27558 (package
27559 (name "sbcl-quicklisp-stats")
27560 (version (git-version "0.0.1" revision commit))
27561 (source
27562 (origin
27563 (method git-fetch)
27564 (uri (git-reference
27565 (url "https://github.com/phoe/quicklisp-stats")
27566 (commit commit)))
27567 (file-name (git-file-name "cl-quicklisp-stats" version))
27568 (sha256
27569 (base32 "0v8dgmlgd283n1g486q4sj2mghgdvgywg2nqp43nnrfc04mkvgc0"))))
27570 (build-system asdf-build-system/sbcl)
27571 (inputs
27572 (list sbcl-alexandria
27573 sbcl-drakma
27574 sbcl-split-sequence))
27575 (arguments
27576 `(#:tests? #f)) ; There are no tests.
27577 (synopsis "Fetches and operates on Quicklisp download statistics")
27578 (description
27579 "@code{cl-quicklisp-stats} is a system that fetches and performs basic
27580operations on the Quicklisp download statistics.")
27581 (home-page "https://github.com/phoe/quicklisp-stats/")
27582 (license license:expat))))
27583
27584(define-public cl-quicklisp-stats
27585 (sbcl-package->cl-source-package sbcl-quicklisp-stats))
27586
27587(define-public ecl-quicklisp-stats
27588 (sbcl-package->ecl-package sbcl-quicklisp-stats))
27589
27590(define-public sbcl-quickproject
27591 (package
27592 (name "sbcl-quickproject")
27593 (version "1.4.1")
27594 (source
27595 (origin
27596 (method git-fetch)
27597 (uri (git-reference
27598 (url "https://github.com/xach/quickproject")
27599 (commit (string-append "release-" version))))
27600 (file-name (git-file-name name version))
27601 (sha256
27602 (base32 "1szs8p2wr1yr9mjmj3h3557l6wxzzga0iszimb68z0hb1jj3lva6"))))
27603 (build-system asdf-build-system/sbcl)
27604 (inputs
27605 (list sbcl-cl-fad
27606 sbcl-html-template))
27607 (home-page "https://xach.com/lisp/quickproject/")
27608 (synopsis "Create Common Lisp project skeletons")
27609 (description
27610 "Quickproject provides a quick way to make a Common Lisp project. After
27611creating a project, it extends the ASDF registry so the project may be
27612immediately loaded.")
27613 (license license:expat)))
27614
27615(define-public cl-quickproject
27616 (sbcl-package->cl-source-package sbcl-quickproject))
27617
27618(define-public ecl-quickproject
27619 (sbcl-package->ecl-package sbcl-quickproject))
27620
27621(define-public sbcl-quicksearch
27622 (let ((commit "fb02ecf7c876ec580ab18c7d2c8c7814c06af599"))
27623 (package
27624 (name "sbcl-quicksearch")
27625 (version (git-version "0.01.04" "1" commit))
27626 (source
27627 (origin
27628 (method git-fetch)
27629 (uri (git-reference
27630 (url "https://github.com/tkych/quicksearch/")
27631 (commit commit)))
27632 (file-name (git-file-name name version))
27633 (sha256
27634 (base32 "16k19zjkhh7r64vjq371k5jwjs7cdfjz83flh561n4h4v1z89fps"))))
27635 (build-system asdf-build-system/sbcl)
27636 (inputs
27637 (list sbcl-bordeaux-threads
27638 sbcl-iterate
27639 sbcl-alexandria
27640 sbcl-anaphora
27641 sbcl-cl-ppcre
27642 sbcl-drakma
27643 sbcl-html-entities
27644 sbcl-yason
27645 sbcl-flexi-streams
27646 sbcl-do-urlencode))
27647 (home-page "https://github.com/tkych/quicksearch/")
27648 (synopsis "Search Engine Interface for Common Lisp packages")
27649 (description "Quicksearch is a search-engine-interface for Common Lisp.
27650The goal of Quicksearch is to find the Common Lisp library quickly. For
27651example, if you will find the library about json, just type @code{(qs:?
27652'json)} at REPL.
27653
27654The function @code{quicksearch} searches for Common Lisp projects in
27655Quicklisp, Cliki, GitHub and BitBucket, then outputs results in REPL. The
27656function @code{?} is abbreviation wrapper for @code{quicksearch}.")
27657 (license license:expat))))
27658
27659(define-public cl-quicksearch
27660 (sbcl-package->cl-source-package sbcl-quicksearch))
27661
27662(define-public ecl-quicksearch
27663 (sbcl-package->ecl-package sbcl-quicksearch))
27664
27665(define-public sbcl-quri
27666 (let ((commit "03ecaf3771561d713e58a9c5c22b4d95a7592527")
27667 (revision "0"))
27668 (package
27669 (name "sbcl-quri")
27670 (version (git-version "0.7.0" revision commit))
27671 (source
27672 (origin
27673 (method git-fetch)
27674 (uri (git-reference
27675 (url "https://github.com/fukamachi/quri")
27676 (commit commit)))
27677 (file-name (git-file-name "cl-quri" version))
27678 (sha256
27679 (base32 "1dd96mvgwbs799qzh7amc7kgwy84qhi1gw1yj08n83wmy5k4b9k2"))))
27680 (build-system asdf-build-system/sbcl)
27681 (native-inputs (list sbcl-prove))
27682 (inputs (list sbcl-babel sbcl-split-sequence sbcl-cl-utilities
27683 sbcl-alexandria))
27684 (home-page "https://github.com/fukamachi/quri")
27685 (synopsis "Yet another URI library for Common Lisp")
27686 (description
27687 "QURI (pronounced \"Q-ree\") is yet another URI library for Common
27688Lisp. It is intended to be a replacement of PURI.")
27689 (license license:bsd-3))))
27690
27691(define-public cl-quri
27692 (sbcl-package->cl-source-package sbcl-quri))
27693
27694(define-public ecl-quri
27695 (sbcl-package->ecl-package sbcl-quri))
27696
27697(define-public sbcl-radiance
27698 (let ((commit "8249b00388ffe1c7e516a148c8ea8e7d9bc4243c")
27699 (revision "4"))
27700 (package
27701 (name "sbcl-radiance")
27702 (version (git-version "2.1.2" revision commit))
27703 (source
27704 (origin
27705 (method git-fetch)
27706 (uri (git-reference
27707 (url "https://codeberg.org/shirakumo/radiance")
27708 (commit commit)))
27709 (file-name (git-file-name "radiance" version))
27710 (sha256
27711 (base32 "1kl1936kzv1j2fmnm6n3nq503bxz38zzymwbwq3vhqa0jsqjwynm"))))
27712 (build-system asdf-build-system/sbcl)
27713 (arguments
27714 (list #:tests? #f)) ; TODO: The tests require some configuration.
27715 (native-inputs
27716 (list sbcl-alexandria
27717 sbcl-dexador
27718 sbcl-parachute
27719 sbcl-verbose))
27720 (inputs
27721 (list sbcl-babel
27722 sbcl-bordeaux-threads
27723 sbcl-cl-ppcre
27724 sbcl-closer-mop
27725 sbcl-deploy
27726 sbcl-documentation-utils
27727 sbcl-form-fiddle
27728 sbcl-lambda-fiddle
27729 sbcl-local-time
27730 sbcl-modularize-hooks
27731 sbcl-modularize-interfaces
27732 sbcl-puri
27733 sbcl-trivial-indent
27734 sbcl-trivial-mimes
27735 sbcl-ubiquitous))
27736 (home-page "https://codeberg.org/shirakumo/radiance")
27737 (synopsis "Common Lisp web application environment")
27738 (description
27739 "Radiance is a web application environment, which is sort of like a web
27740framework, but more general, more flexible. It should let you write personal
27741websites and generally deployable applications easily and in such a way that
27742they can be used on practically any setup without having to undergo special
27743adaptations.")
27744 (license license:zlib))))
27745
27746(define-public cl-radiance
27747 (sbcl-package->cl-source-package sbcl-radiance))
27748
27749(define-public ecl-radiance
27750 (sbcl-package->ecl-package sbcl-radiance))
27751
27752(define-public sbcl-random-sample
27753 (let ((commit "46b70374ed796b84ea003e83c1db97b0caf97e22")
27754 (revision "0"))
27755 (package
27756 (name "sbcl-random-sample")
27757 (version (git-version "0.0.0" revision commit))
27758 (source
27759 (origin
27760 (method git-fetch)
27761 (uri (git-reference
27762 (url "https://github.com/ruricolist/random-sample")
27763 (commit commit)))
27764 (file-name (git-file-name "cl-random-sample" version))
27765 (sha256
27766 (base32 "0nhgca6wf754wbg91h40gx7xq22rawg2pn6l7h02wv1jxac4q6nh"))))
27767 (build-system asdf-build-system/sbcl)
27768 (native-inputs
27769 (list sbcl-fiveam))
27770 (inputs
27771 (list sbcl-alexandria
27772 sbcl-infix-math
27773 sbcl-named-readtables
27774 sbcl-serapeum))
27775 (home-page "https://github.com/ruricolist/random-sample")
27776 (synopsis "Take a random sample from a sequence")
27777 (description
27778 "Random-Sample is a library for reliably taking a random sample from a
27779sequence.")
27780 (license license:expat))))
27781
27782(define-public cl-random-sample
27783 (sbcl-package->cl-source-package sbcl-random-sample))
27784
27785(define-public ecl-random-sample
27786 (sbcl-package->ecl-package sbcl-random-sample))
27787
27788(define-public sbcl-random-state
27789 (let ((commit "c270d4f15e0b66ba9680ca8734a5de56959cb118")
27790 (revision "1"))
27791 (package
27792 (name "sbcl-random-state")
27793 (version (git-version "0.1.0" revision commit))
27794 (source
27795 (origin
27796 (method git-fetch)
27797 (uri (git-reference
27798 (url "https://codeberg.org/shinmera/random-state")
27799 (commit commit)))
27800 (file-name (git-file-name "cl-random-state" version))
27801 (sha256
27802 (base32 "0r3bk6hqpr0qmpza93pknl8wpsd6y0yy9qg7vz751a7gzzww9vj6"))))
27803 (build-system asdf-build-system/sbcl)
27804 (inputs
27805 (list sbcl-documentation-utils))
27806 (home-page "https://shinmera.com/docs/random-state/")
27807 (synopsis "Portable random number generation")
27808 (description
27809 "This library is a collection of @dfn{pseudo random number generators}.
27810
27811While Common Lisp does provide a @code{RANDOM} function, it does not allow the
27812user to pass an explicit @code{SEED}, nor to portably exchange the random
27813state between implementations. This can be a headache in cases like games,
27814where a controlled seeding process can be very useful.
27815
27816For both curiosity and convenience, this library offers multiple algorithms to
27817generate random numbers, as well as a bunch of generally useful methods to
27818produce desired ranges.")
27819 (license license:zlib))))
27820
27821(define-public cl-random-state
27822 (sbcl-package->cl-source-package sbcl-random-state))
27823
27824(define-public ecl-random-state
27825 (sbcl-package->ecl-package sbcl-random-state))
27826
27827(define-public sbcl-re
27828 (let ((commit "cfbc1f482970221e80d445080a188fd5c755cd2c")
27829 (revision "1"))
27830 (package
27831 (name "sbcl-re")
27832 (version (git-version "1.0" revision commit))
27833 (source
27834 (origin
27835 (method git-fetch)
27836 (uri (git-reference
27837 (url "https://github.com/massung/re")
27838 (commit commit)))
27839 (file-name (git-file-name "re" version))
27840 (sha256
27841 (base32 "1y2gq2sckspnq8118bix55p2j43dk9qn3p8a2rplp1ip2qxqbb1i"))))
27842 (build-system asdf-build-system/sbcl)
27843 (inputs
27844 (list sbcl-parse))
27845 (home-page "https://github.com/massung/re")
27846 (synopsis "Lua-style Pattern Matching for Common Lisp")
27847 (description
27848 "RE is a small, portable, lightweight, and quick, regular
27849expression library for Common Lisp. It is a non-recursive, backtracing VM.")
27850 (license license:asl2.0))))
27851
27852(define-public cl-re
27853 (sbcl-package->cl-source-package sbcl-re))
27854
27855(define-public ecl-re
27856 (sbcl-package->ecl-package sbcl-re))
27857
27858(define-public sbcl-reader
27859 (package
27860 (name "sbcl-reader")
27861 (version "0.10.0")
27862 (source
27863 (origin
27864 (method git-fetch)
27865 (uri (git-reference
27866 (url "https://github.com/digikar99/reader")
27867 (commit (string-append "v" version))))
27868 (sha256
27869 (base32 "0pbv6w0d8d4qmfkdsz2rk21bp1las9r7pyvpmd95qjz7kpxrirl7"))
27870 (file-name (git-file-name "cl-reader" version))))
27871 (build-system asdf-build-system/sbcl)
27872 (arguments
27873 (list
27874 #:phases
27875 #~(modify-phases %standard-phases
27876 (add-after 'unpack 'fix-paths
27877 (lambda* (#:key inputs #:allow-other-keys)
27878 (substitute* "reader.lisp"
27879 (("echo")
27880 (search-input-file inputs "/bin/echo"))))))))
27881 (inputs
27882 (list coreutils ; Needed for call to echo.
27883 sbcl-alexandria
27884 sbcl-fiveam ; Tests are written directly in the source files.
27885 sbcl-hash-set
27886 sbcl-iterate
27887 sbcl-split-sequence
27888 sbcl-trivial-types))
27889 (synopsis "Reader macros for common objects and data structures")
27890 (description "This package provides a utility library intended
27891at providing configurable reader macros for common tasks such as
27892accessors, hash-tables, sets, uiop:run-program, arrays and a few others.")
27893 (home-page "https://github.com/digikar99/reader/")
27894 (license license:expat)))
27895
27896(define-public cl-reader
27897 (sbcl-package->cl-source-package sbcl-reader))
27898
27899(define-public ecl-reader
27900 (package
27901 (inherit (sbcl-package->ecl-package sbcl-reader))
27902 (arguments
27903 ;; TODO: Tests fail on call to coreutils echo for ecl.
27904 `(#:tests? #f))))
27905
27906(define-public sbcl-regex
27907 (let ((commit "fbc9a9f313b9edc1788f33d4b23a29151635ae22"))
27908 (package
27909 (name "sbcl-regex")
27910 (version (git-version "1" "1" commit))
27911 (source
27912 (origin
27913 (method git-fetch)
27914 (uri (git-reference
27915 (url "https://github.com/michaelw/regex/")
27916 (commit commit)))
27917 (file-name (git-file-name name version))
27918 (sha256
27919 (base32 "0wq5wlafrxv13wg28hg5b10sc48b88swsvznpy2zg7x37m4nmm6a"))))
27920 (build-system asdf-build-system/sbcl)
27921 (home-page "https://github.com/michaelw/regex/")
27922 (synopsis "Regular expression engine for Common Lisp")
27923 (description
27924 "This Common Lisp package provides a regular expression engine.")
27925 (license license:bsd-2))))
27926
27927(define-public cl-regex
27928 (sbcl-package->cl-source-package sbcl-regex))
27929
27930(define-public ecl-regex
27931 (sbcl-package->ecl-package sbcl-regex))
27932
27933(define-public sbcl-repl-utilities
27934 (let ((commit "7e300df663177ea4581f4e7e9c601377881dd986"))
27935 (package
27936 (name "sbcl-repl-utilities")
27937 (version (git-version "0.0.0" "1" commit))
27938 (source
27939 (origin
27940 (method git-fetch)
27941 (uri (git-reference
27942 (url "https://github.com/m-n/repl-utilities/")
27943 (commit commit)))
27944 (file-name (git-file-name name version))
27945 (sha256
27946 (base32 "1hh56pq5nw3l4b83dzlyss69f06r038byj2cnjwvci4hfjhdfcc3"))))
27947 (build-system asdf-build-system/sbcl)
27948 (home-page "https://github.com/m-n/repl-utilities")
27949 (synopsis "Ease common tasks at the Common Lisp REPL")
27950 (description
27951 "@code{repl-utilities} is a set of utilities which ease life at the
27952REPL. It includes three sorts of features: introspective procedures,
27953miscellaneous utility functions, and, pulling them together, methods to
27954conveniently keep these symbols and optionally additional symbols available in
27955whichever package you switch to.")
27956 (license license:bsd-2))))
27957
27958(define-public cl-repl-utilities
27959 (sbcl-package->cl-source-package sbcl-repl-utilities))
27960
27961(define-public ecl-repl-utilities
27962 (sbcl-package->ecl-package sbcl-repl-utilities))
27963
27964(define-public sbcl-restas
27965 (let ((commit "81bbbab6b36f81f846f78e71232e9d3d15f6d952")
27966 (revision "1"))
27967 (package
27968 (name "sbcl-restas")
27969 (version (git-version "0.1.4" revision commit))
27970 (source
27971 (origin
27972 (method git-fetch)
27973 (uri (git-reference
27974 (url "https://github.com/archimag/restas")
27975 (commit commit)))
27976 (file-name (git-file-name "cl-restas" version))
27977 (sha256
27978 (base32 "00ng6jik1lwjw3bbxhijy8s0ml24lgm73liwrr01gcsb0r6wrjjn"))))
27979 (build-system asdf-build-system/sbcl)
27980 (arguments
27981 '(#:phases
27982 (modify-phases %standard-phases
27983 (add-after 'unpack 'fix-paths
27984 (lambda* (#:key inputs #:allow-other-keys)
27985 (substitute* "contrib/restas-daemon.lisp"
27986 (("/lib64/") "")
27987 (("/lib/") "")
27988 (("libcap.so")
27989 (string-append (assoc-ref inputs "libcap")
27990 "/lib/libcap.so"))))))))
27991 (inputs
27992 (list sbcl-alexandria
27993 sbcl-bordeaux-threads
27994 sbcl-cffi
27995 sbcl-data-sift
27996 sbcl-hunchentoot
27997 libcap
27998 sbcl-routes))
27999 (home-page "https://github.com/archimag/restas")
28000 (synopsis "Common Lisp web framework")
28001 (description "@code{RESTAS} is a Common Lisp web application framework.")
28002 (license license:llgpl))))
28003
28004(define-public cl-restas
28005 (sbcl-package->cl-source-package sbcl-restas))
28006
28007(define-public ecl-restas
28008 (sbcl-package->ecl-package sbcl-restas))
28009
28010(define-public sbcl-retrospectiff
28011 (let ((commit "2fbf8c687799487654d988c7036d19d75a7fc67d")
28012 (revision "1"))
28013 (package
28014 (name "sbcl-retrospectiff")
28015 (version (git-version "0.2" revision commit))
28016 (source
28017 (origin
28018 (method git-fetch)
28019 (uri (git-reference
28020 (url "https://github.com/slyrus/retrospectiff")
28021 (commit commit)))
28022 (file-name (git-file-name "cl-retrospectiff" version))
28023 (sha256
28024 (base32 "1vfcbfzhkm2wkxnjg7y6gg93wlib9cqpbdbhyqcm5kc7170ci3vz"))))
28025 (build-system asdf-build-system/sbcl)
28026 (native-inputs
28027 (list sbcl-fiveam))
28028 (inputs
28029 (list sbcl-cl-jpeg
28030 sbcl-com.gigamonkeys.binary-data
28031 sbcl-deflate
28032 sbcl-flexi-streams
28033 sbcl-ieee-floats
28034 sbcl-opticl-core))
28035 (home-page "https://github.com/slyrus/retrospectiff")
28036 (synopsis "Common Lisp library for TIFF images")
28037 (description
28038 "Retrospectiff is a common lisp library for reading and writing images
28039in the TIFF (Tagged Image File Format) format.")
28040 (license license:bsd-2))))
28041
28042(define-public cl-retrospectif
28043 (sbcl-package->cl-source-package sbcl-retrospectiff))
28044
28045(define-public ecl-retrospectiff
28046 (sbcl-package->ecl-package sbcl-retrospectiff))
28047
28048(define-public sbcl-rfc2388
28049 (let ((commit "591bcf7e77f2c222c43953a80f8c297751dc0c4e")
28050 (revision "1"))
28051 (package
28052 (name "sbcl-rfc2388")
28053 (version (git-version "0.0.0" revision commit))
28054 (source
28055 (origin
28056 (method git-fetch)
28057 (uri (git-reference
28058 (url "https://github.com/jdz/rfc2388")
28059 (commit commit)))
28060 (file-name (git-file-name "rfc2388" version))
28061 (sha256
28062 (base32 "0phh5n3clhl9ji8jaxrajidn22d3f0aq87mlbfkkxlnx2pnw694k"))))
28063 (build-system asdf-build-system/sbcl)
28064 (home-page "https://github.com/jdz/rfc2388/")
28065 (synopsis "Implementation of RFC 2388 in Common Lisp")
28066 (description
28067 "This package contains an implementation of RFC 2388, which is used to
28068process form data posted with HTTP POST method using enctype
28069\"multipart/form-data\".")
28070 (license license:bsd-2))))
28071
28072(define-public cl-rfc2388
28073 (sbcl-package->cl-source-package sbcl-rfc2388))
28074
28075(define-public ecl-rfc2388
28076 (sbcl-package->ecl-package sbcl-rfc2388))
28077
28078(define-public sbcl-routes
28079 (let ((commit "1b79e85aa653e1ec87e21ca745abe51547866fa9")
28080 (revision "1"))
28081 (package
28082 (name "sbcl-routes")
28083 (version (git-version "0.2.5" revision commit))
28084 (source
28085 (origin
28086 (method git-fetch)
28087 (uri (git-reference
28088 (url "https://github.com/archimag/cl-routes")
28089 (commit commit)))
28090 (file-name (git-file-name "cl-routes" version))
28091 (sha256
28092 (base32 "1zpk3cp2v8hm50ppjl10yxr437vv4552r8hylvizglzrq2ibsbr1"))))
28093 (build-system asdf-build-system/sbcl)
28094 (arguments
28095 `(#:phases
28096 (modify-phases %standard-phases
28097 (add-after 'unpack 'fix-tests
28098 (lambda* (#:key inputs #:allow-other-keys)
28099 ;; Fix: :FORCE and :FORCE-NOT arguments not allowed in
28100 ;; a nested call to ASDF/OPERATE:OPERATE unless
28101 ;; identically to toplevel
28102 (substitute* "routes.asd"
28103 ((" :force t") "")))))))
28104 (inputs
28105 (list sbcl-iterate
28106 sbcl-puri
28107 sbcl-split-sequence))
28108 (native-inputs
28109 (list sbcl-lift))
28110 (home-page "https://github.com/archimag/cl-routes")
28111 (synopsis "Rails routes system for Common Lisp")
28112 (description
28113 "This is a a Common Lisp re-implementation of the Rails routes system
28114for mapping URLs.")
28115 (license license:llgpl))))
28116
28117(define-public cl-routes
28118 (sbcl-package->cl-source-package sbcl-routes))
28119
28120(define-public ecl-routes
28121 (sbcl-package->ecl-package sbcl-routes))
28122
28123(define-public sbcl-rss
28124 ;; No release.
28125 (let ((commit "51d0145e91b86327ae5c36364f9c3048052e7a58"))
28126 (package
28127 (name "sbcl-rss")
28128 (version (git-version "0.9.1.1" "2" commit))
28129 (source
28130 (origin
28131 (method git-fetch)
28132 (uri (git-reference
28133 (url "http://git.kpe.io/cl-rss.git")
28134 (commit commit)))
28135 (file-name (git-file-name name version))
28136 (sha256
28137 (base32 "0wv3j13fj73gigriw5r9vi920hz05ld7zllsvbxdxvmyfy9k1kly"))
28138 (modules '((guix build utils)))
28139 (snippet
28140 ;; The useless bundled debian folder drags `make' into the closure.
28141 `(begin
28142 (delete-file-recursively "debian")
28143 #t))))
28144 (build-system asdf-build-system/sbcl)
28145 (inputs
28146 (list sbcl-aserve sbcl-kmrcl sbcl-xmls))
28147 (home-page "https://github.com/nsrahmad/cl-rss")
28148 (synopsis "Common Lisp RSS processor")
28149 (description
28150 "This package provides a Common Lisp library for fetching and parsing
28151RSS feeds data via HTTP. Currently, it supports RSS versions 0.90,
281520.91, and 0.92 as well as RSS version 2.")
28153 (license license:bsd-3))))
28154
28155(define-public cl-rss
28156 (sbcl-package->cl-source-package sbcl-rss))
28157
28158(define-public sbcl-rtg-math
28159 (let ((commit "29fc5b3d0028a4a11a82355ecc8cca62662c69e0")
28160 (revision "1"))
28161 (package
28162 (name "sbcl-rtg-math")
28163 (version (git-version "0.0.0" revision commit))
28164 (source
28165 (origin
28166 (method git-fetch)
28167 (uri (git-reference
28168 (url "https://github.com/cbaggers/rtg-math")
28169 (commit commit)))
28170 (file-name (git-file-name "rtg-math" version))
28171 (sha256
28172 (base32 "0bhxxnv7ldkkb18zdxyz2rj2a3iawzq2kcp7cn5i91iby7n0082x"))))
28173 (build-system asdf-build-system/sbcl)
28174 (inputs
28175 (list sbcl-alexandria sbcl-documentation-utils sbcl-glsl-spec))
28176 (home-page "https://github.com/cbaggers/rtg-math")
28177 (synopsis "Common Lisp library of game-related math functions")
28178 (description
28179 "RTG-MATH provides a selection of the math routines most commonly needed
28180for making realtime graphics in Lisp.")
28181 (license license:bsd-2))))
28182
28183(define-public cl-rtg-math
28184 (sbcl-package->cl-source-package sbcl-rtg-math))
28185
28186(define-public ecl-rtg-math
28187 (sbcl-package->ecl-package sbcl-rtg-math))
28188
28189(define-public sbcl-rucksack
28190 (let ((commit "89278f88513ef328d290aa8b2baa06d63b44a9b1")
28191 (revision "0"))
28192 (package
28193 (name "sbcl-rucksack")
28194 (version (git-version "0.1.20" revision commit))
28195 (source
28196 (origin
28197 (method git-fetch)
28198 (uri (git-reference
28199 (url "https://github.com/arieltan/rucksack")
28200 (commit commit)))
28201 (file-name (git-file-name "cl-rucksack" version))
28202 (sha256
28203 (base32 "0acpsxaxpp90km7gdbn9sysilycp3yg1g040fg1vqakpj2yb8vad"))))
28204 (build-system asdf-build-system/sbcl)
28205 (synopsis "Flexible, light weight, persistence library")
28206 (description
28207 "@code{cl-rucksack} is a persistence library based on Arthur Lemmens'
28208Rucksack with some enhancements.")
28209 (home-page "https://github.com/arieltan/rucksack/")
28210 (license license:expat))))
28211
28212(define-public cl-rucksack
28213 (sbcl-package->cl-source-package sbcl-rucksack))
28214
28215(define-public sbcl-rutils
28216 (let ((commit "db3c3f4ae897025b5f0cd81042ca147da60ca0c5")
28217 (revision "0"))
28218 (package
28219 (name "sbcl-rutils")
28220 (version (git-version "5.2.1" revision commit))
28221 (source
28222 (origin
28223 (method git-fetch)
28224 (uri (git-reference
28225 (url "https://github.com/vseloved/rutils")
28226 (commit commit)))
28227 (file-name (git-file-name "rutils" version))
28228 (sha256
28229 (base32 "1d2whscknh1zga2vdqvfqri8wx0gnml3sfqz62igq0ppap6q07y3"))))
28230 (build-system asdf-build-system/sbcl)
28231 (arguments
28232 `(#:asd-systems '("rutils" "rutilsx")
28233 ;; Tests disabled because of a circular dependency with should-test.
28234 #:tests? #f
28235 #:phases
28236 (modify-phases %standard-phases
28237 (add-after 'unpack 'fix-build
28238 (lambda _
28239 ;; File failed to load, and we don't use it as tests are
28240 ;; disabled, so let's delete it.
28241 (delete-file "rutilsx-test.asd"))))))
28242 (inputs
28243 (list sbcl-closer-mop
28244 sbcl-named-readtables))
28245 (home-page "https://github.com/vseloved/rutils")
28246 (synopsis "Radical Utilities for Common Lisp")
28247 (description "RUTILS is a syntactic utilities package for Common Lisp.")
28248 (license license:bsd-3))))
28249
28250(define-public cl-rutils
28251 (sbcl-package->cl-source-package sbcl-rutils))
28252
28253(define-public ecl-rutils
28254 (sbcl-package->ecl-package sbcl-rutils))
28255
28256(define-public clasp-rutils
28257 (sbcl-package->clasp-package sbcl-rutils))
28258
28259(define-public sbcl-s-base64
28260 (let ((commit "ed473e220133ca0e8b5b96618ea2972dec9de6cd")
28261 (revision "0"))
28262 (package
28263 (name "sbcl-s-base64")
28264 (version (git-version "2" revision commit))
28265 (source
28266 (origin
28267 (method git-fetch)
28268 (uri (git-reference
28269 (url "https://github.com/svenvc/s-base64")
28270 (commit commit)))
28271 (file-name (git-file-name "cl-s-base64" version))
28272 (sha256
28273 (base32 "0zrr8zhnkdy97c5g54605nhjlf7fly79ylr1yf6wwyssia04cagg"))))
28274 (build-system asdf-build-system/sbcl)
28275 (home-page "https://github.com/svenvc/s-base64")
28276 (synopsis "Common Lisp package to encode and decode base64")
28277 (description
28278 "This package provides a Common Lisp implementation of Base64 encoding
28279and decoding. Base64 encoding is a technique to encode binary data in a
28280portable, safe printable, 7-bit ASCII format.")
28281 (license license:llgpl))))
28282
28283(define-public cl-s-base64
28284 (sbcl-package->cl-source-package sbcl-s-base64))
28285
28286(define-public ecl-s-base64
28287 (sbcl-package->ecl-package sbcl-s-base64))
28288
28289(define-public clasp-s-base64
28290 (sbcl-package->clasp-package sbcl-s-base64))
28291
28292(define-public sbcl-s-graphviz
28293 (let ((commit "a06d9573f0d4e21751b0ae782515b63a40ad6eae")
28294 (revision "1"))
28295 (package
28296 (name "sbcl-s-graphviz")
28297 (version (git-version "2.0" revision commit))
28298 (source
28299 (origin
28300 (method git-fetch)
28301 (uri (git-reference
28302 (url "https://github.com/jingtaozf/s-graphviz")
28303 (commit commit)))
28304 (file-name (git-file-name "cl-s-graphviz" version))
28305 (sha256
28306 (base32 "1841xwci6y1gfhg15464wrlnw8xgsh1mwbg4yy2y7di02q4fbma2"))))
28307 (build-system asdf-build-system/sbcl)
28308 (inputs
28309 (list sbcl-iterate))
28310 (native-inputs
28311 (list sbcl-literate-lisp))
28312 (home-page "https://github.com/jingtaozf/s-graphviz")
28313 (synopsis "S-expression representation of the GraphViz DOT language")
28314 (description "This package creates GraphViz DOT files from
28315an equivalent s-expression representation.")
28316 (license license:expat))))
28317
28318(define-public cl-s-graphviz
28319 (sbcl-package->cl-source-package sbcl-s-graphviz))
28320
28321(define-public ecl-s-graphviz
28322 (sbcl-package->ecl-package sbcl-s-graphviz))
28323
28324(define-public sbcl-s-sysdeps
28325 ;; No release since 2013.
28326 (let ((commit "7f8de283b7fbd8b038fdf08493063a736db36ce7")
28327 (revision "3"))
28328 (package
28329 (name "sbcl-s-sysdeps")
28330 (build-system asdf-build-system/sbcl)
28331 (version (git-version "1" revision commit))
28332 (home-page "https://github.com/svenvc/s-sysdeps")
28333 (source
28334 (origin
28335 (method git-fetch)
28336 (uri (git-reference
28337 (url home-page)
28338 (commit commit)))
28339 (file-name (git-file-name "cl-s-sysdeps" version))
28340 (sha256
28341 (base32
28342 "0rp81iq0rgl48qdwbmfy89glga81hmry2lp8adjbr5h5ybr92b4n"))
28343 (patches
28344 (search-patches "sbcl-s-sysdeps-bt2.patch"))))
28345 (inputs
28346 (list sbcl-bordeaux-threads sbcl-usocket))
28347 (synopsis "Common Lisp abstraction layer over platform dependent functionality")
28348 (description "@code{s-sysdeps} is an abstraction layer over platform
28349dependent functionality. This simple package is used as a building block in a
28350number of other projects.
28351
28352@code{s-sysdeps} abstracts:
28353
28354@itemize
28355@item managing processes,
28356@item implementing a standard TCP/IP server,
28357@item opening a client TCP/IP socket stream,
28358@item working with process locks.
28359@end itemize\n")
28360 (license license:llgpl))))
28361
28362(define-public cl-s-sysdeps
28363 (sbcl-package->cl-source-package sbcl-s-sysdeps))
28364
28365(define-public ecl-s-sysdeps
28366 (sbcl-package->ecl-package sbcl-s-sysdeps))
28367
28368(define-public sbcl-s-xml
28369 (package
28370 (name "sbcl-s-xml")
28371 (version "3")
28372 (source
28373 (origin
28374 (method url-fetch)
28375 (uri "https://common-lisp.net/project/s-xml/s-xml.tgz")
28376 (sha256
28377 (base32
28378 "061qcr0dzshsa38s5ma4ay924cwak2nq9gy59dw6v9p0qb58nzjf"))))
28379 (build-system asdf-build-system/sbcl)
28380 (home-page "https://common-lisp.net/project/s-xml/")
28381 (synopsis "Simple XML parser implemented in Common Lisp")
28382 (description
28383 "S-XML is a simple XML parser implemented in Common Lisp. This XML
28384parser implementation has the following features:
28385
28386@itemize
28387@item It works (handling many common XML usages).
28388@item It is very small (the core is about 700 lines of code, including
28389comments and whitespace).
28390@item It has a core API that is simple, efficient and pure functional, much
28391like that from SSAX (see also http://ssax.sourceforge.net).
28392@item It supports different DOM models: an XSML-based one, an LXML-based one
28393and a classic xml-element struct based one.
28394@item It is reasonably time and space efficient (internally avoiding garbage
28395generatation as much as possible).
28396@item It does support CDATA.
28397@item It should support the same character sets as your Common Lisp
28398implementation.
28399@item It does support XML name spaces.
28400@end itemize
28401
28402This XML parser implementation has the following limitations:
28403
28404@itemize
28405@item It does not support any special tags (like processing instructions).
28406@item It is not validating, even skips DTD's all together.
28407@end itemize\n")
28408 (license license:lgpl3+)))
28409
28410(define-public cl-s-xml
28411 (sbcl-package->cl-source-package sbcl-s-xml))
28412
28413(define-public ecl-s-xml
28414 (sbcl-package->ecl-package sbcl-s-xml))
28415
28416(define-public sbcl-s-xml-rpc
28417 (package
28418 (name "sbcl-s-xml-rpc")
28419 (version "7")
28420 (source
28421 (origin
28422 (method url-fetch)
28423 (uri "https://common-lisp.net/project/s-xml-rpc/s-xml-rpc.tgz")
28424 (sha256
28425 (base32
28426 "02z7k163d51v0pzk8mn1xb6h5s6x64gjqkslhwm3a5x26k2gfs11"))))
28427 (build-system asdf-build-system/sbcl)
28428 (inputs
28429 (list sbcl-s-xml))
28430 (home-page "https://common-lisp.net/project/s-xml-rpc/")
28431 (synopsis "Implementation of XML-RPC in Common Lisp for both client and server")
28432 (description
28433 "S-XML-RPC is an implementation of XML-RPC in Common Lisp for both
28434client and server.")
28435 (license license:lgpl3+)))
28436
28437(define-public cl-s-xml-rpc
28438 (sbcl-package->cl-source-package sbcl-s-xml-rpc))
28439
28440(define-public ecl-s-xml-rpc
28441 (sbcl-package->ecl-package sbcl-s-xml-rpc))
28442
28443(define-public sbcl-safe-read
28444 (let ((commit "d25f08597b34d7aaeb86b045d57f7b020a5bb5f0")
28445 (revision "0"))
28446 (package
28447 (name "sbcl-safe-read")
28448 (version (git-version "0.1" revision commit))
28449 (source
28450 (origin
28451 (method git-fetch)
28452 (uri (git-reference
28453 (url "https://github.com/phoe/safe-read")
28454 (commit commit)))
28455 (file-name (git-file-name "cl-safe-read" version))
28456 (sha256
28457 (base32 "1r9k8danfnqgpbn2vb90n6wdc6jd92h1ig565yplrbh6232lhi26"))))
28458 (build-system asdf-build-system/sbcl)
28459 (inputs
28460 (list sbcl-local-time sbcl-trivial-garbage))
28461 (home-page "https://github.com/phoe/safe-read/")
28462 (synopsis "Safer variant of READ")
28463 (description
28464 "This package provides a safer variant of @code{READ} secure against
28465internbombing, excessive input and macro characters.")
28466 (license license:bsd-2))))
28467
28468(define-public cl-safe-read
28469 (sbcl-package->cl-source-package sbcl-safe-read))
28470
28471(define-public ecl-safe-read
28472 (sbcl-package->ecl-package sbcl-safe-read))
28473
28474(define-public sbcl-salmagundi
28475 (let ((commit "aa231f6043111ec5dbeb06feab732efb7d59c959")
28476 (revision "0"))
28477 (package
28478 (name "sbcl-salmagundi")
28479 (version (git-version "0.0.0" revision commit))
28480 (source
28481 (origin
28482 (method git-fetch)
28483 (uri (git-reference
28484 (url "https://github.com/s-expressionists/Salmagundi")
28485 (commit commit)))
28486 (file-name (git-file-name name version))
28487 (sha256
28488 (base32
28489 "1i0hknnd555ih509kvna2xdirfxyy05wr2bp628997rnj8drlsnx"))))
28490 (build-system asdf-build-system/sbcl)
28491 (inputs (list sbcl-trivial-package-locks))
28492 (home-page "https://github.com/s-expressionists/Salmagundi")
28493 (synopsis "Implementation of Common Lisp hash tables")
28494 (description "This library contains code that implements Common Lisp
28495hash tables.")
28496 (license license:bsd-2))))
28497
28498(define-public cl-salmagundi
28499 (sbcl-package->cl-source-package sbcl-salmagundi))
28500
28501(define-public ecl-salmagundi
28502 (sbcl-package->ecl-package sbcl-salmagundi))
28503
28504(define-public clasp-salmagundi
28505 (sbcl-package->clasp-package sbcl-salmagundi))
28506
28507(define-public sbcl-salza2
28508 (package
28509 (name "sbcl-salza2")
28510 (version "2.1")
28511 (source
28512 (origin
28513 (method git-fetch)
28514 (uri (git-reference
28515 (url "https://github.com/xach/salza2")
28516 (commit (string-append "release-" version))))
28517 (file-name (git-file-name name version))
28518 (sha256
28519 (base32 "1p48lxdibnps5rpyh5cmnk0vc77bmmxb32qdzfz93zadr8wwas10"))))
28520 (build-system asdf-build-system/sbcl)
28521 (native-inputs
28522 (list sbcl-chipz sbcl-flexi-streams sbcl-parachute))
28523 (inputs
28524 (list sbcl-trivial-gray-streams))
28525 (synopsis "Common Lisp library for zlib, deflate and gzip compression")
28526 (description
28527 "Salza2 is a Common Lisp library for creating compressed data in the zlib,
28528deflate, or gzip data formats, described in RFC 1950, RFC 1951, and RFC 1952,
28529respectively.")
28530 (home-page "https://www.xach.com/lisp/salza2/")
28531 (license license:bsd-2)))
28532
28533(define-public cl-salza2
28534 (sbcl-package->cl-source-package sbcl-salza2))
28535
28536(define-public ecl-salza2
28537 (sbcl-package->ecl-package sbcl-salza2))
28538
28539(define-public sbcl-sb-cga
28540 (let ((commit "9a554ea1c01cac998ff7eaa5f767bc5bcdc4c094"))
28541 (package
28542 (name "sbcl-sb-cga")
28543 (version (git-version "1.0.1" "1" commit))
28544 (source
28545 (origin
28546 (method git-fetch)
28547 (uri (git-reference
28548 (url "https://github.com/nikodemus/sb-cga/")
28549 (commit commit)))
28550 (file-name (git-file-name "cl-sb-cga" version))
28551 (sha256
28552 (base32 "1y54qlwfrhch9aghk7nsbdx7x2qsvgsws1g2k631l9dsgdakw4w8"))))
28553 (build-system asdf-build-system/sbcl)
28554 (inputs
28555 (list sbcl-alexandria))
28556 (home-page "https://github.com/nikodemus/sb-cga/")
28557 (synopsis "Computer graphic algebra for Common Lisp")
28558 (description
28559 "SB-CGA is a computer graphics algebra library for Common Lisp.
28560
28561Despite the prefix it is actually portable - but optimizations that make it
28562fast (using SIMD instructions) are currently implemented for SBCL/x86-64
28563only.")
28564 (license license:expat))))
28565
28566(define-public cl-sb-cga
28567 (sbcl-package->cl-source-package sbcl-sb-cga))
28568
28569(define-public ecl-sb-cga
28570 (sbcl-package->ecl-package sbcl-sb-cga))
28571
28572(define-public sbcl-schemeish
28573 (let ((commit "872ea3dc3f2ea8438388b5e7660acd9446c49948")
28574 (revision "2"))
28575 (package
28576 (name "sbcl-schemeish")
28577 (version (git-version "0.0.1" revision commit))
28578 (source
28579 (origin
28580 (method git-fetch)
28581 (uri (git-reference
28582 (url "https://github.com/chebert/schemeish")
28583 (commit commit)))
28584 (file-name (git-file-name "cl-schemeish" version))
28585 (sha256
28586 (base32 "08lbrmsamfpva83l1ap33gp8ff99v0l2dyyidjgwdchmbdgq3gqf"))))
28587 (build-system asdf-build-system/sbcl)
28588 (inputs
28589 (list sbcl-trivial-arguments sbcl-trivial-cltl2))
28590 (arguments
28591 (list #:phases
28592 #~(modify-phases %standard-phases
28593 (add-after 'unpack 'fix-build
28594 (lambda _
28595 ;; To fix the warning:
28596 ;; Argument of type (INTEGER 1 1) cannot be used as a keyword.
28597 (substitute* "src/arities.lisp"
28598 (("1 2 3 4 5 6 7 8")
28599 ":a1 :a2 :a3 :a4 :a5 :a6 :a7 :a8")))))))
28600 (synopsis "Scheme style syntax/macros/functions for Common Lisp")
28601 (description
28602 "Schemeish implements several useful Scheme constructs for Common Lisp.
28603These include named-let, define, scheme argument lists, and a shortcut to
28604FUNCALL with [] instead of ().")
28605 (home-page "https://github.com/chebert/schemeish")
28606 ;; MIT License
28607 (license license:expat))))
28608
28609(define-public cl-schemeish
28610 (sbcl-package->cl-source-package sbcl-schemeish))
28611
28612(define-public ecl-schemeish
28613 (sbcl-package->ecl-package sbcl-schemeish))
28614
28615(define-public sbcl-screamer
28616 (let ((commit "ce50614024de090b376107668da5e53232540ec7"))
28617 (package
28618 (name "sbcl-screamer")
28619 (version (git-version "0.0.1" "1" commit))
28620 (source
28621 (origin
28622 (method git-fetch)
28623 (uri (git-reference
28624 (url "https://github.com/nikodemus/screamer/")
28625 (commit commit)))
28626 (file-name (git-file-name "cl-screamer" version))
28627 (sha256
28628 (base32 "1jl42pl6kwkiq71d0naf3r1mn1qy89ndimfgiz58c4g66xbjb7kx"))))
28629 (build-system asdf-build-system/sbcl)
28630 (native-inputs
28631 (list sbcl-iterate
28632 sbcl-hu.dwim.stefil))
28633 (home-page "https://nikodemus.github.io/screamer/")
28634 (synopsis "Nondeterministic programming and constraint propagation")
28635 (description
28636 "Screamer is an extension of Common Lisp that adds support for
28637nondeterministic programming. Screamer consists of two levels. The basic
28638nondeterministic level adds support for backtracking and undoable side
28639effects. On top of this nondeterministic substrate, Screamer provides a
28640comprehensive constraint programming language in which one can formulate and
28641solve mixed systems of numeric and symbolic constraints. Together, these two
28642levels augment Common Lisp with practically all of the functionality of both
28643Prolog and constraint logic programming languages such as CHiP and CLP(R).
28644Furthermore, Screamer is fully integrated with Common Lisp. Screamer programs
28645can coexist and interoperate with other extensions to as CLIM and Iterate.")
28646 (license license:expat))))
28647
28648(define-public cl-screamer
28649 (sbcl-package->cl-source-package sbcl-screamer))
28650
28651(define-public ecl-screamer
28652 (sbcl-package->ecl-package sbcl-screamer))
28653
28654(define-public clasp-screamer
28655 (sbcl-package->clasp-package sbcl-screamer))
28656
28657(define-public sbcl-sdf
28658 ;; Shinmera's fork required for Alloy.
28659 (let ((commit "e1ab3ac4ea52c0e0119b832f428c71f580b4d83b")
28660 (revision "1"))
28661 (package
28662 (name "sbcl-sdf")
28663 (version (git-version "0.0.1" revision commit))
28664 (source
28665 (origin
28666 (method git-fetch)
28667 (uri (git-reference
28668 (url "https://codeberg.org/shinmera/sdf")
28669 (commit commit)))
28670 (file-name (git-file-name "sdf" version))
28671 (sha256
28672 (base32 "1cyq4hkgiw9mnb87ah6xw19cybfs9hfbjvg1ch2mf4cr0ism0nvn"))))
28673 (build-system asdf-build-system/sbcl)
28674 (inputs
28675 (list sbcl-zpb-ttf
28676 sbcl-cl-vectors
28677 sbcl-opticl
28678 sbcl-binpack
28679 sbcl-3b-bmfont/shinmera
28680 sbcl-pathname-utils))
28681 (arguments
28682 `(#:asd-systems '("sdf" "sdf/bmfont")))
28683 (home-page "https://codeberg.org/shinmera/sdf")
28684 (synopsis "Signed distance font atlas generator")
28685 (description
28686 "This library generates
28687sdf (@url{https://steamcdn-a.akamaihd.net/apps/valve/2007/SIGGRAPH2007_AlphaTestedMagnification.pdf}),
28688psdf and
28689msdf (@url{https://github.com/Chlumsky/msdfgen/files/3050967/thesis.pdf})
28690atlases.")
28691 (license license:expat))))
28692
28693(define-public cl-sdf
28694 (sbcl-package->cl-source-package sbcl-sdf))
28695
28696(define-public ecl-sdf
28697 (sbcl-package->ecl-package sbcl-sdf))
28698
28699(define-public sbcl-sdl2
28700 (let ((commit "8c78e68cc5c1477dcd4c81a707e35912c2529536")
28701 (revision "3"))
28702 (package
28703 (name "sbcl-sdl2")
28704 (version (git-version "0.0.0" revision commit))
28705 (source
28706 (origin
28707 (method git-fetch)
28708 (uri (git-reference
28709 (url "https://github.com/lispgames/cl-sdl2")
28710 (commit commit)))
28711 (file-name (git-file-name "cl-sdl2" version))
28712 (sha256
28713 (base32 "0ix2nsg2ghmkcfdhwlvgylfijg0nzbadgfch5dgyakmxmiv3rs4k"))))
28714 (build-system asdf-build-system/sbcl)
28715 (arguments
28716 `(#:asd-systems '("sdl2" "sdl2/examples")
28717 #:phases
28718 (modify-phases %standard-phases
28719 (add-after 'unpack 'fix-paths
28720 (lambda* (#:key inputs #:allow-other-keys)
28721 (substitute* "src/library.lisp"
28722 (("libSDL2-2.0.so.0")
28723 (search-input-file inputs "/lib/libSDL2-2.0.so.0"))))))))
28724 (inputs
28725 (list sbcl-alexandria
28726 sbcl-cl-autowrap
28727 sbcl-cl-opengl
28728 sbcl-cl-ppcre
28729 sbcl-trivial-channels
28730 sbcl-trivial-features
28731 sdl2))
28732 (home-page "https://github.com/lispgames/cl-sdl2")
28733 (synopsis "Common Lisp bindings for SDL2 using C2FFI")
28734 (description
28735 "This package provides a Common Lisp wrapper system for the SDL 2.0
28736C Library.")
28737 (license license:expat))))
28738
28739(define-public cl-sdl2
28740 (sbcl-package->cl-source-package sbcl-sdl2))
28741
28742(define-public ecl-sdl2
28743 (sbcl-package->ecl-package sbcl-sdl2))
28744
28745(define-public sbcl-sdl2-image
28746 (let ((commit "3963be863e1df371b2c3f17f1bc59bc572c5954b")
28747 (revision "2"))
28748 (package
28749 (name "sbcl-sdl2-image")
28750 (version (git-version "1.0" revision commit))
28751 (source
28752 (origin
28753 (method git-fetch)
28754 (uri (git-reference
28755 (url "https://github.com/lispgames/cl-sdl2-image")
28756 (commit commit)))
28757 (file-name (git-file-name "cl-sdl2-image" version))
28758 (sha256
28759 (base32 "1jzrz3ppr5nbh0w6cvbbpv5x6gdq71a6v2qanvnjvcjs0zwf97iq"))))
28760 (build-system asdf-build-system/sbcl)
28761 (arguments
28762 (list #:phases
28763 #~(modify-phases %standard-phases
28764 (add-after 'unpack 'fix-paths
28765 (lambda* (#:key inputs #:allow-other-keys)
28766 (substitute* "src/library.lisp"
28767 (("libSDL2_image-2.0.so.0")
28768 (search-input-file inputs "/lib/libSDL2_image-2.0.so.0"))))))))
28769 (inputs
28770 (list sdl2-image
28771 sbcl-alexandria
28772 sbcl-cl-autowrap
28773 sbcl-defpackage-plus
28774 sbcl-sdl2))
28775 (home-page "https://github.com/lispgames/cl-sdl2-image")
28776 (synopsis "SDL2_image wrapper for Common Lisp")
28777 (description
28778 "This is a (currently) brief but usable wrap for SDL2_image.")
28779 (license license:expat))))
28780
28781(define-public cl-sdl2-image
28782 (sbcl-package->cl-source-package sbcl-sdl2-image))
28783
28784(define-public ecl-sdl2-image
28785 (sbcl-package->ecl-package sbcl-sdl2-image))
28786
28787(define-public sbcl-sdl2kit
28788 (let ((commit "aae663224a10ece2b0c374aa5942a3f0bc1b3c2f"))
28789 (package
28790 (name "sbcl-sdl2kit")
28791 (version (git-version "0.0.0" "1" commit))
28792 (source
28793 (origin
28794 (method git-fetch)
28795 (uri (git-reference
28796 (url "https://github.com/lispgames/sdl2kit/")
28797 (commit commit)))
28798 (file-name (git-file-name "cl-sdl2kit" version))
28799 (sha256
28800 (base32 "10ymmxqsvdn7ndda9k2qcixj75l7namgqdxc5y2w3v5r1313fy2d"))))
28801 (build-system asdf-build-system/sbcl)
28802 (inputs
28803 (list sbcl-alexandria
28804 sbcl-cl-opengl
28805 sbcl-defpackage-plus
28806 sbcl-sdl2))
28807 (home-page "https://github.com/lispgames/sdl2kit/")
28808 (synopsis "Utility kit for CL-SDL2")
28809 (description
28810 "This is a utility kit for @code{cl-sdl2} that provides something similar to
28811GLUT. However, it's also geared at being useful for \"real\" applications or
28812games.")
28813 (license license:expat))))
28814
28815(define-public cl-sdl2kit
28816 (sbcl-package->cl-source-package sbcl-sdl2kit))
28817
28818(define-public ecl-sdl2kit
28819 (sbcl-package->ecl-package sbcl-sdl2kit))
28820
28821(define-public sbcl-sdl2-mixer
28822 (let ((commit "580d63402938e073705ab1905b6f9a4b9a48d175")
28823 (revision "2"))
28824 (package
28825 (name "sbcl-sdl2-mixer")
28826 (version (git-version "1.0" revision commit))
28827 (source
28828 (origin
28829 (method git-fetch)
28830 (uri (git-reference
28831 (url "https://github.com/lispgames/cl-sdl2-mixer")
28832 (commit commit)))
28833 (file-name (git-file-name "cl-sdl2-mixer" version))
28834 (sha256
28835 (base32 "0d33pmyrcni90qfj0d4hxf97may1bv7i9z4a6rj02dw254n9r9lh"))))
28836 (build-system asdf-build-system/sbcl)
28837 (arguments
28838 (list #:phases
28839 #~(modify-phases %standard-phases
28840 (add-after 'unpack 'fix-paths
28841 (lambda* (#:key inputs #:allow-other-keys)
28842 (substitute* "src/library.lisp"
28843 (("\"libSDL2_mixer-2.0.so.0\" \"libSDL2_mixer\"")
28844 (string-append
28845 "\""
28846 (search-input-file inputs "/lib/libSDL2_mixer-2.0.so.0")
28847 "\" \""
28848 (search-input-file inputs "/lib/libSDL2_mixer.so")
28849 "\""))))))))
28850 (inputs
28851 (list sbcl-alexandria
28852 sbcl-cl-autowrap
28853 sbcl-sdl2
28854 sbcl-trivial-garbage
28855 sdl2-mixer))
28856 (home-page "https://github.com/lispgames/cl-sdl2-mixer")
28857 (synopsis "Bindings for sdl2_mixer using autowrap for Common Lisp")
28858 (description
28859 "This package provides a Common Lisp wrapper system for the SDL 2.0 Mixer C
28860Library.")
28861 (license license:expat))))
28862
28863(define-public cl-sdl2-mixer
28864 (sbcl-package->cl-source-package sbcl-sdl2-mixer))
28865
28866(define-public ecl-sdl2-mixer
28867 (sbcl-package->ecl-package sbcl-sdl2-mixer))
28868
28869(define-public sbcl-sdl2-ttf
28870 (let ((commit "6dd2df2fb3a79ec4f835e3bc882e60e8da039878")
28871 (revision "1"))
28872 (package
28873 (name "sbcl-sdl2-ttf")
28874 (version (git-version "1.0" revision commit))
28875 (source
28876 (origin
28877 (method git-fetch)
28878 (uri (git-reference
28879 (url "https://github.com/lispgames/cl-sdl2-ttf")
28880 (commit commit)))
28881 (file-name (git-file-name "cl-sdl2-ttf" version))
28882 (sha256
28883 (base32 "07c1bl66dix6ccnyl9mqd6lbk10f9s25985zmv6lss95491ng7my"))))
28884 (build-system asdf-build-system/sbcl)
28885 (arguments
28886 (list #:phases
28887 #~(modify-phases %standard-phases
28888 (add-after 'unpack 'fix-paths
28889 (lambda* (#:key inputs #:allow-other-keys)
28890 (substitute* "src/library.lisp"
28891 (("libSDL2_ttf-2.0.so.0")
28892 (search-input-file inputs "/lib/libSDL2_ttf-2.0.so.0")))))
28893 (add-after 'unpack 'fix-critical-warning
28894 (lambda _
28895 (substitute* "src/helpers.lisp"
28896 (("nreverse") "reverse")))))))
28897 (inputs
28898 (list sdl2-ttf
28899 sbcl-alexandria
28900 sbcl-cffi
28901 sbcl-cl-autowrap
28902 sbcl-defpackage-plus
28903 sbcl-sdl2
28904 sbcl-trivial-garbage))
28905 (home-page "https://github.com/lispgames/cl-sdl2-ttf")
28906 (synopsis "SDL2_ttf wrapper for Common Lisp")
28907 (description
28908 "This is a wrapper for the SDL2_TTF library used for loading fonts and
28909creating text assets. The library, in it's current state, can load TTF and
28910OTF fonts and render fonts with the three different rendering modes provided
28911by the C library (solid, shaded, and blended). While Latin text, UTF8,
28912UNICODE, and Glyph text rendering is available only Latin text has been
28913tested (as shown in the examples).")
28914 (license license:expat))))
28915
28916(define-public cl-sdl2-ttf
28917 (sbcl-package->cl-source-package sbcl-sdl2-ttf))
28918
28919(define-public ecl-sdl2-ttf
28920 (sbcl-package->ecl-package sbcl-sdl2-ttf))
28921
28922(define-public sbcl-sealable-metaobjects
28923 (let ((commit "e09ec97252e0844528f61abdc0c7ee256875f8ee"))
28924 (package
28925 (name "sbcl-sealable-metaobjects")
28926 (version (git-version "0.0.0" "1" commit))
28927 (source
28928 (origin
28929 (method git-fetch)
28930 (uri (git-reference
28931 (url "https://github.com/marcoheisig/sealable-metaobjects/")
28932 (commit commit)))
28933 (file-name (git-file-name "cl-sealable-metaobjects" version))
28934 (sha256
28935 (base32 "0hz1ivlpfhnk1w2cw4q2i000j2dc7maay06ndzziyywg7li6zf2p"))))
28936 (build-system asdf-build-system/sbcl)
28937 (inputs
28938 (list sbcl-closer-mop))
28939 (home-page "https://github.com/marcoheisig/sealable-metaobjects/")
28940 (synopsis "CLOSsy way to trade genericity for performance")
28941 (description
28942 "This library is an extension of the Common Lisp Object System (CLOS)
28943that allows a compiler to inline a generic function under certain
28944conditions.")
28945 (license license:expat))))
28946
28947(define-public cl-sealable-metaobjects
28948 (sbcl-package->cl-source-package sbcl-sealable-metaobjects))
28949
28950(define-public ecl-sealable-metaobjects
28951 (sbcl-package->ecl-package sbcl-sealable-metaobjects))
28952
28953(define-public clasp-sealable-metaobjects
28954 (sbcl-package->clasp-package sbcl-sealable-metaobjects))
28955
28956(define-public sbcl-secret-values
28957 (let ((commit "72996c0551eea338afa355ee90e20171ac74ebd4")
28958 (revision "0"))
28959 (package
28960 (name "sbcl-secret-values")
28961 (version (git-version "0.0.0" revision commit))
28962 (source
28963 (origin
28964 (method git-fetch)
28965 (uri (git-reference
28966 (url "https://github.com/rotatef/secret-values")
28967 (commit commit)))
28968 (file-name (git-file-name "cl-secret-values" version))
28969 (sha256
28970 (base32 "07ph49s27gvjzx60yy094bb9ddwiys34r8cx5l837i34nm2fn3nh"))))
28971 (build-system asdf-build-system/sbcl)
28972 (synopsis "Hide passwords and similar secret inputs")
28973 (description
28974 "This library provides a wrapper type for secret values, to reduce the
28975risk of accidentally revealing them.")
28976 (home-page "https://github.com/rotatef/secret-values")
28977 (license license:expat))))
28978
28979(define-public cl-secret-values
28980 (sbcl-package->cl-source-package sbcl-secret-values))
28981
28982(define-public ecl-secret-values
28983 (sbcl-package->ecl-package sbcl-secret-values))
28984
28985(define-public clasp-secret-values
28986 (sbcl-package->clasp-package sbcl-secret-values))
28987
28988(define-public sbcl-seedable-rng
28989 (let ((commit "aa1a1564b6e07e2698df37c7a98348c4f762cb15")
28990 (revision "1"))
28991 (package
28992 (name "sbcl-seedable-rng")
28993 (version (git-version "0.0.0" revision commit))
28994 (source
28995 (origin
28996 (method git-fetch)
28997 (uri (git-reference
28998 (url "https://git.mfiano.net/mfiano/seedable-rng")
28999 (commit commit)))
29000 (file-name (git-file-name "seedable-rng" version))
29001 (sha256
29002 (base32 "1ldpsbp3qrfzvknclsxj3sdyms1jf9ad20dvh4w0kw3zgahn2nr5"))))
29003 (build-system asdf-build-system/sbcl)
29004 (inputs
29005 (list sbcl-cl-pcg sbcl-golden-utils sbcl-ironclad))
29006 (home-page "https://git.mfiano.net/mfiano/seedable-rng")
29007 (synopsis "Common Lisp random number generator")
29008 (description
29009 "SEEDABLE-RNG provides a convenient means of generating random numbers
29010that are seedable with deterministic results across hardware and Common Lisp
29011implementations.")
29012 (license license:expat))))
29013
29014(define-public cl-seedable-rng
29015 (sbcl-package->cl-source-package sbcl-seedable-rng))
29016
29017(define-public ecl-seedable-rng
29018 (sbcl-package->ecl-package sbcl-seedable-rng))
29019
29020(define-public sbcl-select
29021 (let ((commit "df7920fc451b6d15345040ce4a3ee1ea2818ab1a")
29022 (revision "0"))
29023 (package
29024 (name "sbcl-select")
29025 (version (git-version "1.0.0" revision commit))
29026 (source
29027 (origin
29028 (method git-fetch)
29029 (uri (git-reference
29030 (url "https://github.com/Lisp-Stat/select")
29031 (commit commit)))
29032 (file-name (git-file-name "cl-select" version))
29033 (sha256
29034 (base32 "0bhpvfqp7n33pia4y62qi31bx86gjl2nxjy529rfawac57c9rxv3"))))
29035 (build-system asdf-build-system/sbcl)
29036 (inputs
29037 (list sbcl-alexandria
29038 sbcl-anaphora
29039 sbcl-let-plus))
29040 (native-inputs
29041 (list sbcl-fiveam))
29042 (home-page "https://lisp-stat.github.io/select/")
29043 (synopsis "Library for taking slices from array-like objects")
29044 (description
29045 "This is a library for selecting portions of sequences, arrays or
29046data-frames.")
29047 (license license:ms-pl))))
29048
29049(define-public cl-select
29050 (sbcl-package->cl-source-package sbcl-select))
29051
29052(define-public ecl-select
29053 (sbcl-package->ecl-package sbcl-select))
29054
29055(define-public sbcl-serapeum
29056 (let ((commit "71f35c994b6d84c83157e15365156271b2213ad7")
29057 (revision "13"))
29058 (package
29059 (name "sbcl-serapeum")
29060 (version (git-version "0.0.0" revision commit))
29061 (home-page "https://github.com/ruricolist/serapeum")
29062 (source
29063 (origin
29064 (method git-fetch)
29065 (uri (git-reference
29066 (url home-page)
29067 (commit commit)))
29068 (file-name (git-file-name name version))
29069 (sha256
29070 (base32 "1rmvl3ipw9dz0gxj5k86911fjpin7n6k8k1r6g1z94nd9rw4cgzy"))))
29071 (build-system asdf-build-system/sbcl)
29072 (inputs
29073 (list sbcl-alexandria
29074 sbcl-trivia
29075 sbcl-split-sequence
29076 sbcl-string-case
29077 sbcl-parse-number
29078 sbcl-trivial-garbage
29079 sbcl-bordeaux-threads
29080 sbcl-parse-declarations
29081 sbcl-introspect-environment
29082 sbcl-trivial-cltl2
29083 sbcl-global-vars
29084 sbcl-trivial-file-size
29085 sbcl-trivial-macroexpand-all))
29086 (native-inputs
29087 (list sbcl-atomics
29088 sbcl-fiveam
29089 sbcl-local-time))
29090 (arguments
29091 (list #:phases
29092 #~(modify-phases %standard-phases
29093 (add-after 'unpack 'disable-failing-tests
29094 (lambda _
29095 (substitute* "serapeum.asd"
29096 ;; Guix does not have Quicklisp, and probably never will.
29097 (("\\(:file \"quicklisp\"\\)") "")))))))
29098 (synopsis "Common Lisp utility library beyond Alexandria")
29099 (description
29100 "Serapeum is a conservative library of Common Lisp utilities. It is a
29101supplement, not a competitor, to Alexandria.")
29102 (license license:expat))))
29103
29104(define-public cl-serapeum
29105 (sbcl-package->cl-source-package sbcl-serapeum))
29106
29107(define-public ecl-serapeum
29108 (sbcl-package->ecl-package sbcl-serapeum))
29109
29110(define-public sbcl-series
29111 (let ((commit "da9061b336119d1e5214aff9117171d494d5a58a")
29112 (revision "1"))
29113 (package
29114 (name "sbcl-series")
29115 (version (git-version "2.2.11" revision commit))
29116 (source
29117 (origin
29118 (method git-fetch)
29119 (uri (git-reference
29120 (url "git://git.code.sf.net/p/series/series")
29121 (commit commit)))
29122 (file-name (git-file-name name version))
29123 (sha256
29124 (base32
29125 "07hk2lhfx42zk018pxqvn4gs77vd4n4g8m4xxbqaxgca76mifwfw"))))
29126 (build-system asdf-build-system/sbcl)
29127 (arguments
29128 ;; Disable the tests, they are apparently buggy and I didn't find
29129 ;; a simple way to make them run and pass.
29130 '(#:tests? #f))
29131 (synopsis "Series data structure for Common Lisp")
29132 (description
29133 "This Common Lisp library provides a series data structure much like
29134a sequence, with similar kinds of operations. The difference is that in many
29135situations, operations on series may be composed functionally and yet execute
29136iteratively, without the need to construct intermediate series values
29137explicitly. In this manner, series provide both the clarity of a functional
29138programming style and the efficiency of an iterative programming style.")
29139 (home-page "https://series.sourceforge.net/")
29140 (license license:expat))))
29141
29142(define-public cl-series
29143 (sbcl-package->cl-source-package sbcl-series))
29144
29145(define-public ecl-series
29146 (sbcl-package->ecl-package sbcl-series))
29147
29148(define-public sbcl-sha1
29149 (let ((commit "be8b1b155c3a6ad3eb9b200212af6ff52f5611de")
29150 (revision "0"))
29151 (package
29152 (name "sbcl-sha1")
29153 (version (git-version "1.0" revision commit))
29154 (home-page "https://github.com/massung/sha1")
29155 (source
29156 (origin
29157 (method git-fetch)
29158 (uri (git-reference
29159 (url "https://github.com/massung/sha1")
29160 (commit commit)))
29161 (file-name (git-file-name "cl-sha1" version))
29162 (sha256
29163 (base32 "1cfn0j5yfwqkwr2dm73wr9hz8dmws3ngxlbk9886ahxkg544qx4z"))))
29164 (build-system asdf-build-system/sbcl)
29165 (synopsis "SHA1 Digest and HMAC for Common Lisp")
29166 (description
29167 "This is a very simple implementation of SHA1 and HMAC-SHA1 for
29168Common Lisp. The code is intended to be easy to follow and is therefore a
29169little slower than it could be.")
29170 (license license:asl2.0))))
29171
29172(define-public cl-sha1
29173 (sbcl-package->cl-source-package sbcl-sha1))
29174
29175(define-public ecl-sha1
29176 (sbcl-package->ecl-package sbcl-sha1))
29177
29178(define-public clasp-sha1
29179 (sbcl-package->clasp-package sbcl-sha1))
29180
29181(define-public sbcl-sha3
29182 (package
29183 (name "sbcl-sha3")
29184 (version "1.1.2")
29185 (home-page "https://github.com/pmai/sha3")
29186 (source
29187 (origin
29188 (method git-fetch)
29189 (uri (git-reference
29190 (url "https://github.com/pmai/sha3")
29191 (commit (string-append "release-" version))))
29192 (file-name (git-file-name "cl-sha3" version))
29193 (sha256
29194 (base32 "0jl59js4n1gc08j2bcwf0d1gy82lf7g53b639dwh6b0milbqh7gz"))))
29195 (build-system asdf-build-system/sbcl)
29196 (synopsis "SHA-3 implementation for Common Lisp")
29197 (description
29198 "This library is an implementation of the Secure Hash Algorithm 3 (SHA-3),
29199also known as Keccak. The implementation is constrained to messages with an integral
29200number of octets,i.e. sub-byte length messages are not supported.")
29201 (license license:expat)))
29202
29203(define-public cl-sha3
29204 (sbcl-package->cl-source-package sbcl-sha3))
29205
29206(define-public ecl-sha3
29207 (sbcl-package->ecl-package sbcl-sha3))
29208
29209(define-public clasp-sha3
29210 (sbcl-package->clasp-package sbcl-sha3))
29211
29212(define-public sbcl-shadow
29213 (let ((commit "b2031adbfba3579b48c9d39ad997e19b79b6852f")
29214 (revision "1"))
29215 (package
29216 (name "sbcl-shadow")
29217 (version (git-version "0.0.0" revision commit))
29218 (source
29219 (origin
29220 (method git-fetch)
29221 (uri (git-reference
29222 (url "https://git.mfiano.net/mfiano/shadow")
29223 (commit commit)))
29224 (file-name (git-file-name "shadow" version))
29225 (sha256
29226 (base32 "0w1i734gkdkziin74ql2nhx7jdjxx02ylssaa6qdrvnj4br1124a"))))
29227 (build-system asdf-build-system/sbcl)
29228 (inputs
29229 (list sbcl-cffi
29230 sbcl-cl-opengl
29231 sbcl-glsl-packing
29232 sbcl-golden-utils
29233 sbcl-static-vectors
29234 sbcl-varjo))
29235 (home-page "https://git.mfiano.net/mfiano/shadow")
29236 (synopsis "Management system for OpenGL shader programs")
29237 (description
29238 "This package provides a Common Lisp library for defining OpenGL shader
29239programs. There are also functions for referencing shader programs by name,
29240querying for basic information about them, modifying uniform variables
29241throughout the lifecycle of an OpenGL application, and managing certain OpenGL
29242buffer object types (UBO, SSBO currently).")
29243 (license license:expat))))
29244
29245(define-public cl-shadow
29246 (sbcl-package->cl-source-package sbcl-shadow))
29247
29248(define-public ecl-shadow
29249 (sbcl-package->ecl-package sbcl-shadow))
29250
29251(define-public sbcl-shared-preferences
29252 (package
29253 (name "sbcl-shared-preferences")
29254 (version "1.1.1")
29255 (source
29256 (origin
29257 (method git-fetch)
29258 (uri (git-reference
29259 (url "https://github.com/Hexstream/shared-preferences")
29260 (commit (string-append "v" version))))
29261 (file-name (git-file-name "cl-shared-preferences" version))
29262 (sha256
29263 (base32 "12m4kaba2lxndkjw30a6y2rq16fflh5016lp74l7pf3v0y3j1ydf"))))
29264 (build-system asdf-build-system/sbcl)
29265 (native-inputs
29266 (list sbcl-parachute))
29267 (inputs
29268 (list sbcl-inheriting-readers
29269 sbcl-trivial-garbage))
29270 (home-page "https://www.hexstreamsoft.com/libraries/shared-preferences/")
29271 (synopsis "Flexible specification of package-local preferences")
29272 (description
29273 "This package allows flexible specification of package-local preferences.")
29274 (license license:unlicense)))
29275
29276(define-public cl-shared-preferences
29277 (sbcl-package->cl-source-package sbcl-shared-preferences))
29278
29279(define-public ecl-shared-preferences
29280 (sbcl-package->ecl-package sbcl-shared-preferences))
29281
29282(define-public clasp-shared-preferences
29283 (sbcl-package->clasp-package sbcl-shared-preferences))
29284
29285(define-public sbcl-shasht
29286 (let ((commit "27ba0a8842e103f2d575b3c8bbcfc19bd172d9ea")
29287 (revision "2"))
29288 (package
29289 (name "sbcl-shasht")
29290 (version (git-version "0.1" revision commit))
29291 (source
29292 (origin
29293 (method git-fetch)
29294 (uri (git-reference
29295 (url "https://github.com/yitzchak/shasht")
29296 (commit commit)))
29297 (file-name (git-file-name "cl-shasht" version))
29298 (sha256
29299 (base32 "1y7qh8kdhk06243vkmxzdk0y9rax4g8pv28bd01j48ix777mpcdc"))))
29300 (build-system asdf-build-system/sbcl)
29301 (native-inputs
29302 (list sbcl-alexandria sbcl-parachute))
29303 (inputs
29304 (list sbcl-closer-mop sbcl-trivial-do))
29305 (home-page "https://yitzchak.github.io/shasht/")
29306 (synopsis "Common Lisp JSON reading and writing library")
29307 (description
29308 "This package provides a Common Lisp library to work with the JSON file
29309format.")
29310 (license license:expat))))
29311
29312(define-public cl-shasht
29313 (sbcl-package->cl-source-package sbcl-shasht))
29314
29315(define-public ecl-shasht
29316 (sbcl-package->ecl-package sbcl-shasht))
29317
29318(define-public clasp-shasht
29319 (sbcl-package->clasp-package sbcl-shasht))
29320
29321(define-public sbcl-shlex
29322 (let ((commit "3dee1cb7c0140fa7660ca7a3b2ac5e75d1218e5c")
29323 (revision "2"))
29324 (package
29325 (name "sbcl-shlex")
29326 (version (git-version "0.0.0" revision commit))
29327 (source
29328 (origin
29329 (method git-fetch)
29330 (uri (git-reference
29331 (url "https://github.com/ruricolist/cl-shlex")
29332 (commit commit)))
29333 (file-name (git-file-name "cl-shlex" version))
29334 (sha256
29335 (base32 "16ag48sswgimr1fzr582vhym4s03idpd4lkydw5s58lv80ibpim8"))))
29336 (build-system asdf-build-system/sbcl)
29337 (inputs
29338 (list sbcl-alexandria sbcl-serapeum sbcl-cl-ppcre sbcl-cl-unicode))
29339 (home-page "https://github.com/ruricolist/cl-shlex")
29340 (synopsis "Common Lisp lexical analyzer for shell-like syntaxes")
29341 (description
29342 "This library contains a lexer for syntaxes that use shell-like rules
29343for quoting and commenting. It is a port of the @code{shlex} module from Python’s
29344standard library.")
29345 (license license:expat))))
29346
29347(define-public ecl-shlex
29348 (sbcl-package->ecl-package sbcl-shlex))
29349
29350(define-public cl-shlex
29351 (sbcl-package->cl-source-package sbcl-shlex))
29352
29353(define-public sbcl-sijo-doctest
29354 (package
29355 (name "sbcl-sijo-doctest")
29356 (version "0.4.1")
29357 (source
29358 (origin
29359 (method git-fetch)
29360 (uri (git-reference
29361 (url "https://git.sr.ht/~simendsjo/sijo-doctest")
29362 (commit "265106a7cb75571f05abe2bcf747c6f8e9d5282d")))
29363 (file-name (git-file-name name version))
29364 (sha256
29365 (base32
29366 "0zwsh80d019rddxzqbxwjl0dqrpplk27gbskc1fz8yi6aris7wzq"))))
29367 (build-system asdf-build-system/sbcl)
29368 (native-inputs
29369 (list sbcl-lisp-unit2))
29370 (synopsis "Doctests for Lisp")
29371 (description "Doctests for Lisp.")
29372 (license license:gpl2)
29373 (home-page "https://git.sr.ht/~simendsjo/sijo-doctest")))
29374
29375(define-public cl-sijo-doctest
29376 (sbcl-package->cl-source-package sbcl-sijo-doctest))
29377
29378(define-public sbcl-simple-date-time
29379 (let ((commit "d6992afddedf67a8172a0120a1deac32afcaa2e8")
29380 (revision "1"))
29381 (package
29382 (name "sbcl-simple-date-time")
29383 (version (git-version "0.1.0" revision commit))
29384 (source
29385 (origin
29386 (method git-fetch)
29387 (uri (git-reference
29388 (url "https://github.com/quek/simple-date-time")
29389 (commit commit)))
29390 (file-name (git-file-name "cl-simple-date-time" version))
29391 (sha256
29392 (base32 "06iwf13gcdyqhkzfkcsfdl8iqbdl44cx01c3fjsmhl0v1pp8h2m4"))))
29393 (build-system asdf-build-system/sbcl)
29394 (inputs
29395 (list sbcl-cl-ppcre))
29396 (home-page "https://github.com/quek/simple-date-time")
29397 (synopsis "Date and time library for Common Lisp")
29398 (description "This package is a simple date and time library.")
29399 (license license:bsd-4))))
29400
29401(define-public cl-simple-date-time
29402 (sbcl-package->cl-source-package sbcl-simple-date-time))
29403
29404(define-public ecl-simple-date-time
29405 (sbcl-package->ecl-package sbcl-simple-date-time))
29406
29407(define-public sbcl-simple-guess
29408 (let ((commit "34744e3200a96e6aba285d70f91cdbd6c25508a6")
29409 (revision "0"))
29410 (package
29411 (name "sbcl-simple-guess")
29412 (version (git-version "1.0" revision commit))
29413 (source
29414 (origin
29415 (method git-fetch)
29416 (uri (git-reference
29417 (url "https://github.com/Hexstream/simple-guess")
29418 (commit commit)))
29419 (file-name (git-file-name "cl-simple-guess" version))
29420 (sha256
29421 (base32 "0404vj7ln97x7rn9ypbw4rshs56nnpyjnh1z9k03s039s5q3kpv0"))))
29422 (build-system asdf-build-system/sbcl)
29423 (native-inputs
29424 (list sbcl-fakenil sbcl-parachute))
29425 (inputs
29426 (list sbcl-cesdi
29427 sbcl-closer-mop
29428 sbcl-compatible-metaclasses
29429 sbcl-evaled-when))
29430 (home-page "https://www.hexstreamsoft.com/libraries/simple-guess/")
29431 (synopsis "Extensible protocol for computing a guess using advisors")
29432 (description
29433 "This package defines a simple extensible protocol for computing a guess
29434using advisors.")
29435 (license license:unlicense))))
29436
29437(define-public cl-simple-guess
29438 (sbcl-package->cl-source-package sbcl-simple-guess))
29439
29440(define-public ecl-simple-guess
29441 (sbcl-package->ecl-package sbcl-simple-guess))
29442
29443(define-public clasp-simple-guess
29444 (sbcl-package->clasp-package sbcl-simple-guess))
29445
29446(define-public sbcl-simple-inferiors
29447 (let ((commit "deac886354e03f8a9502ce96f12a0459ce3be671"))
29448 (package
29449 (name "sbcl-simple-inferiors")
29450 (version (git-version "1.1.0" "1" commit))
29451 (source
29452 (origin
29453 (method git-fetch)
29454 (uri (git-reference
29455 (url "https://codeberg.org/shinmera/simple-inferiors")
29456 (commit commit)))
29457 (file-name (git-file-name name version))
29458 (sha256
29459 (base32 "08vsvqv3768bwb2y8mwxbw5wyqzzwqr7rd004r6gafdgf9p9mcx3"))))
29460 (build-system asdf-build-system/sbcl)
29461 (inputs
29462 (list sbcl-bordeaux-threads sbcl-documentation-utils))
29463 (home-page "https://shinmera.com/docs/simple-inferiors/")
29464 (synopsis "Common Lisp library to use inferior processes")
29465 (description
29466 "This is a library to allow easy handling of external processes, and
29467primarily to get their output. It handles proper copying of the standard and
29468error outputs of the process simultaneously, both in a sequential and parallel
29469fashion. It also features a lazy directory switching mechanism, to avoid
29470running into parallelism problems when having to change directory.")
29471 (license license:zlib))))
29472
29473(define-public cl-simple-inferiors
29474 (sbcl-package->cl-source-package sbcl-simple-inferiors))
29475
29476(define-public ecl-simple-inferiors
29477 (sbcl-package->ecl-package sbcl-simple-inferiors))
29478
29479(define-public sbcl-simple-matrix
29480 (package
29481 (name "sbcl-simple-matrix")
29482 (version "3.19")
29483 (source
29484 (origin
29485 (method git-fetch)
29486 (uri (git-reference
29487 (url "https://codeberg.org/glv/cl-simple-matrix")
29488 (commit (string-append "v" version))))
29489 (file-name (git-file-name "cl-simple-matrix" version))
29490 (sha256
29491 (base32 "1wnlxhmafph5rrdwx4f7pjacpaxkgpk8dmll26w8hxgwjksfbbls"))))
29492 (build-system asdf-build-system/sbcl)
29493 (native-inputs (list sbcl-fiveam))
29494 (synopsis "Matrix library for Common Lisp")
29495 (description
29496 "@code{simple-matrix} is a Common Lisp library implementing some
29497functions to work with matrices.")
29498 (home-page "https://codeberg.org/glv/cl-simple-matrix")
29499 (license license:gpl3+)))
29500
29501(define-public cl-simple-matrix
29502 (sbcl-package->cl-source-package sbcl-simple-matrix))
29503
29504(define-public ecl-simple-matrix
29505 (sbcl-package->ecl-package sbcl-simple-matrix))
29506
29507(define-public sbcl-simple-neural-network
29508 (package
29509 (name "sbcl-simple-neural-network")
29510 (version "3.2")
29511 (source
29512 (origin
29513 (method git-fetch)
29514 (uri (git-reference
29515 (url "https://codeberg.org/glv/simple-neural-network")
29516 (commit (string-append "v" version))))
29517 (file-name (git-file-name "cl-simple-neural-network" version))
29518 (sha256
29519 (base32 "15c4851qm1zv76hqa4081z0ni7dnf23130x1rxgsiysjpvz2slyf"))))
29520 (build-system asdf-build-system/sbcl)
29521 (native-inputs
29522 (list sbcl-chipz sbcl-fiveam))
29523 (inputs
29524 (list sbcl-cl-store sbcl-lparallel))
29525 (arguments
29526 (list #:phases
29527 #~(modify-phases %standard-phases
29528 (add-after 'check 'remove-test-data
29529 (lambda _
29530 (for-each delete-file (find-files #$output "\\.gz$")))))))
29531 (synopsis "Simple neural network in Common Lisp")
29532 (description
29533 "@code{simple-neural-network} is a Common Lisp library for creating,
29534training and using basic neural networks. The networks created by this
29535library are feedforward neural networks trained using backpropagation.")
29536 (home-page "https://codeberg.org/glv/simple-neural-network")
29537 (license license:gpl3+)))
29538
29539(define-public cl-simple-neural-network
29540 (sbcl-package->cl-source-package sbcl-simple-neural-network))
29541
29542(define-public ecl-simple-neural-network
29543 (sbcl-package->ecl-package sbcl-simple-neural-network))
29544
29545(define-public sbcl-simple-optimization
29546 (package
29547 (name "sbcl-simple-optimization")
29548 (version "2.0")
29549 (source
29550 (origin
29551 (method git-fetch)
29552 (uri (git-reference
29553 (url "https://codeberg.org/glv/cl-simple-optimization")
29554 (commit (string-append "v" version))))
29555 (file-name (git-file-name "cl-simple-optimization" version))
29556 (sha256
29557 (base32 "0hfqz960vj510cbx8p7g677mqbabzf6s9l8mzd0cp6f2gaz0dm00"))))
29558 (build-system asdf-build-system/sbcl)
29559 (native-inputs (list sbcl-fiveam))
29560 (inputs (list sbcl-simple-matrix))
29561 (synopsis "Solving unconstrained optimization problems in Common Lisp")
29562 (description
29563 "@code{simple-optimization} is a Common Lisp library providing a function
29564to solve unconstrained optimization problems numerically using either the
29565gradient descent or a quasi-Newton method.")
29566 (home-page "https://codeberg.org/glv/cl-simple-optimization")
29567 (license license:gpl3+)))
29568
29569(define-public cl-simple-optimization
29570 (sbcl-package->cl-source-package sbcl-simple-optimization))
29571
29572(define-public ecl-simple-optimization
29573 (sbcl-package->ecl-package sbcl-simple-optimization))
29574
29575(define-public sbcl-simple-parallel-tasks
29576 (let ((commit "ce7b60f788d8f68dfb69b24aac54c0e3b63379a6")
29577 (revision "1"))
29578 (package
29579 (name "sbcl-simple-parallel-tasks")
29580 (version (git-version "1.0" revision commit))
29581 (source
29582 (origin
29583 (method git-fetch)
29584 (uri (git-reference
29585 (url "https://codeberg.org/glv/simple-parallel-tasks")
29586 (commit commit)))
29587 (file-name (git-file-name name version))
29588 (sha256
29589 (base32 "0gvbpyff4siifp3cp86cpr9ksmakn66fx21f3h0hpn647zl07nj7"))))
29590 (build-system asdf-build-system/sbcl)
29591 (native-inputs
29592 (list sbcl-fiveam))
29593 (inputs
29594 (list sbcl-chanl))
29595 (synopsis "Common Lisp library to evaluate some forms in parallel")
29596 (description "This is a simple Common Lisp library to evaluate some
29597forms in parallel.")
29598 (home-page "https://codeberg.org/glv/simple-parallel-tasks")
29599 (license license:gpl3))))
29600
29601(define-public cl-simple-parallel-tasks
29602 (sbcl-package->cl-source-package sbcl-simple-parallel-tasks))
29603
29604(define-public ecl-simple-parallel-tasks
29605 (sbcl-package->ecl-package sbcl-simple-parallel-tasks))
29606
29607(define-public sbcl-simple-rgb
29608 ;; Last versioned release is from 2008.
29609 (let ((commit "ba9b0689362c28aa6a91c0636796c6c372657293")
29610 (revision "1"))
29611 (package
29612 (name "sbcl-simple-rgb")
29613 (version (git-version "0.01" revision commit))
29614 (source
29615 (origin
29616 (method git-fetch)
29617 (uri (git-reference
29618 (url "https://github.com/wmannis/simple-rgb/")
29619 (commit commit)))
29620 (file-name (git-file-name name version))
29621 (sha256
29622 (base32 "0ggv0h2n4mvwnggjr1b40gw667gnyykzki2zadaczi38ydzyzlp1"))))
29623 (build-system asdf-build-system/sbcl)
29624 (home-page "https://github.com/wmannis/simple-rgb")
29625 (synopsis "Manipulate colors in RGB format")
29626 (description
29627 "This Common Lisp library focuses on the small set of basic color
29628manipulations (lightening, compliments, etc.) you might use to generate a
29629color palette for a GUI or web page.")
29630 (license license:bsd-2))))
29631
29632(define-public ecl-simple-rgb
29633 (sbcl-package->ecl-package sbcl-simple-rgb))
29634
29635(define-public clasp-simple-rgb
29636 (sbcl-package->clasp-package sbcl-simple-rgb))
29637
29638(define-public cl-simple-rgb
29639 (sbcl-package->cl-source-package sbcl-simple-rgb))
29640
29641(define-public sbcl-simple-routes
29642 (let ((commit "6f88c38945a4de73e85786d3499c39cacb400598")
29643 (revision "1"))
29644 (package
29645 (name "sbcl-simple-routes")
29646 (version (git-version "0.3" revision commit))
29647 (source
29648 (origin
29649 (method git-fetch)
29650 (uri (git-reference
29651 (url "https://gitlab.com/vancan1ty/simple-routes")
29652 (commit commit)))
29653 (file-name (git-file-name "cl-simple-routes" version))
29654 (sha256
29655 (base32 "0zkjl69zf1ynmqmvwccdbip3wxfyi7xplivv70qwxzd27mc0kh3k"))))
29656 (build-system asdf-build-system/sbcl)
29657 (inputs
29658 (list sbcl-cl-ppcre
29659 sbcl-hunchentoot))
29660 (home-page "https://gitlab.com/vancan1ty/simple-routes")
29661 (synopsis "URL routing library for Hunchentoot")
29662 (description
29663 "@code{simple-routes} is a simple Common Lisp RESTful routing facility
29664on top of Hunchentoot.")
29665 (license license:bsd-2))))
29666
29667(define-public cl-simple-routes
29668 (sbcl-package->cl-source-package sbcl-simple-routes))
29669
29670(define-public ecl-simple-routes
29671 (sbcl-package->ecl-package sbcl-simple-routes))
29672
29673(define-public sbcl-simple-tasks
29674 (let ((commit "fc6f36987656ddc8f588a1e6d8e8c3bab40c472f")
29675 (revision "2"))
29676 (package
29677 (name "sbcl-simple-tasks")
29678 (version (git-version "1.3.0" revision commit))
29679 (source
29680 (origin
29681 (method git-fetch)
29682 (uri (git-reference
29683 (url "https://codeberg.org/shinmera/simple-tasks")
29684 (commit commit)))
29685 (file-name (git-file-name "simple-tasks" version))
29686 (sha256
29687 (base32 "0x2i8qmvs6w20cqhjxibwxypk08dghiiqy5mgq124rijs04fn3lj"))))
29688 (build-system asdf-build-system/sbcl)
29689 (inputs
29690 (list sbcl-array-utils sbcl-bordeaux-threads sbcl-dissect))
29691 (home-page "https://shinmera.com/docs/simple-tasks/")
29692 (synopsis "Simple task scheduling framework")
29693 (description "This is a task scheduling framework for Common Lisp.")
29694 (license license:zlib))))
29695
29696(define-public cl-simple-tasks
29697 (sbcl-package->cl-source-package sbcl-simple-tasks))
29698
29699(define-public ecl-simple-tasks
29700 (sbcl-package->ecl-package sbcl-simple-tasks))
29701
29702(define-public sbcl-simplified-types
29703 (let ((commit "8fd0727a70a9de76289ac62c1567b8d278e7434e")
29704 (revision "0"))
29705 (package
29706 (name "sbcl-simplified-types")
29707 (version (git-version "0.0.0" revision commit))
29708 (source
29709 (origin
29710 (method git-fetch)
29711 (uri (git-reference
29712 (url "https://github.com/marcoheisig/simplified-types")
29713 (commit commit)))
29714 (file-name (git-file-name "cl-simplified-types" version))
29715 (sha256
29716 (base32 "1hdwmn5lz717aj6qdqmfmr3cbjl8l3giwn0fb5ca9pj83cx7fg8y"))))
29717 (build-system asdf-build-system/sbcl)
29718 (inputs
29719 (list sbcl-alexandria
29720 sbcl-introspect-environment
29721 sbcl-trivia))
29722 (home-page "https://github.com/marcoheisig/simplified-types")
29723 (synopsis "Simplify Common Lisp type specifiers")
29724 (description
29725 "Simplified-Types is a library that provides functions for simplifying
29726Common Lisp type specifiers. The API consists of two functions:
29727
29728@itemize
29729@item @code{simplify-type} takes a type specifier and, optionally, an
29730environment, and returns the corresponding simplified type.
29731@item @code{simplified-type-of} takes an object and returns the simplified
29732type of that object.
29733@end itemize")
29734 (license license:expat))))
29735
29736(define-public cl-simplified-types
29737 (sbcl-package->cl-source-package sbcl-simplified-types))
29738
29739(define-public ecl-simplified-types
29740 (sbcl-package->ecl-package sbcl-simplified-types))
29741
29742(define-public sbcl-sketch
29743 ;; No release in years.
29744 (let ((commit "4cc00b08e202c7adda41391463096cf9df1705c3"))
29745 (package
29746 (name "sbcl-sketch")
29747 (version (git-version "2017-11" "1" commit))
29748 (source
29749 (origin
29750 (method git-fetch)
29751 (uri (git-reference
29752 (url "https://github.com/vydd/sketch")
29753 (commit commit)))
29754 (file-name (git-file-name "cl-sketch" version))
29755 (sha256
29756 (base32 "1qrnma8yvmxps9rz3pvlzsir37namppsldijdlr4110pcwi9j9h6"))))
29757 (build-system asdf-build-system/sbcl)
29758 (inputs
29759 (list sbcl-alexandria
29760 sbcl-cl-geometry
29761 sbcl-glkit
29762 sbcl-mathkit
29763 sbcl-md5
29764 sbcl-sdl2
29765 sbcl-sdl2-image
29766 sbcl-sdl2-ttf
29767 sbcl-sdl2kit
29768 sbcl-split-sequence
29769 sbcl-static-vectors))
29770 (arguments
29771 '(#:asd-systems '("sketch" "sketch-examples")))
29772 (home-page "https://github.com/vydd/sketch")
29773 (synopsis "Creative framework for electronic art, visual design and more")
29774 (description
29775 "Sketch is a Common Lisp environment for the creation of electronic
29776art, visual design, game prototyping, game making, computer graphics,
29777exploration of human-computer interaction and more. It is inspired by
29778the Processing language and shares some of the API.")
29779 (license license:expat))))
29780
29781(define-public cl-sketch
29782 (sbcl-package->cl-source-package sbcl-sketch))
29783
29784(define-public ecl-sketch
29785 (sbcl-package->ecl-package sbcl-sketch))
29786
29787(define-public sbcl-skippy
29788 (let ((commit "e456210202ca702c792292c5060a264d45e47090")
29789 (revision "0"))
29790 (package
29791 (name "sbcl-skippy")
29792 (version (git-version "1.3.12" revision commit))
29793 (source
29794 (origin
29795 (method git-fetch)
29796 (uri (git-reference
29797 (url "https://github.com/xach/skippy")
29798 (commit commit)))
29799 (file-name (git-file-name name version))
29800 (sha256
29801 (base32 "1sxbn5nh24qpx9w64x8mhp259cxcl1x8p126wk3b91ijjsj7l5vj"))))
29802 (build-system asdf-build-system/sbcl)
29803 (home-page "https://xach.com/lisp/skippy/")
29804 (synopsis "Common Lisp library for GIF images")
29805 (description
29806 "Skippy is a Common Lisp library to read and write GIF image files.")
29807 (license license:bsd-2))))
29808
29809(define-public cl-skippy
29810 (sbcl-package->cl-source-package sbcl-skippy))
29811
29812(define-public ecl-skippy
29813 (sbcl-package->ecl-package sbcl-skippy))
29814
29815(define-public sbcl-slime-swank
29816 ;; Update together with emacs-slime.
29817 (package
29818 (name "sbcl-slime-swank")
29819 (version "2.32")
29820 (source
29821 (origin
29822 (file-name (git-file-name "cl-slime-swank" version))
29823 (method git-fetch)
29824 (uri (git-reference
29825 (url "https://github.com/slime/slime/")
29826 (commit (string-append "v" version))))
29827 (sha256
29828 (base32 "0s7m7j7y1p8fb6ncpxcxdrrrxp5aw67xl7wrqy8zjjvwzljbs548"))
29829 (modules '((guix build utils)))
29830 (snippet
29831 ;; The doc folder drags `gawk' into the closure. Doc is already
29832 ;; provided by emacs-slime.
29833 `(begin
29834 (delete-file-recursively "doc")
29835 #t))))
29836 (build-system asdf-build-system/sbcl)
29837 (arguments
29838 '(#:asd-systems '("swank" "swank/exts")
29839 #:phases
29840 (modify-phases %standard-phases
29841 (add-after 'unpack 'set-fasl-directory
29842 (lambda* (#:key outputs #:allow-other-keys)
29843 (substitute* "swank-loader.lisp"
29844 (("\\(probe-file fasl\\)" all)
29845 ;; Do not try to delete Guix store files.
29846 (string-append
29847 all "\n"
29848 " (not (equal (subseq (pathname-directory fasl) 1 3)"
29849 " '(\"gnu\" \"store\"))) ; XXX: GUIX PATCH"))))))))
29850 (home-page "https://github.com/slime/slime")
29851 (synopsis "Common Lisp Swank server")
29852 (description
29853 "This is only useful if you want to start a Swank server in a Lisp
29854processes that doesn't run under Emacs. Lisp processes created by
29855@command{M-x slime} automatically start the server.")
29856 (license (list license:gpl2+ license:public-domain))))
29857
29858(define-public cl-slime-swank
29859 (sbcl-package->cl-source-package sbcl-slime-swank))
29860
29861(define-public ecl-slime-swank
29862 (sbcl-package->ecl-package sbcl-slime-swank))
29863
29864(define-public clasp-slime-swank
29865 (sbcl-package->clasp-package sbcl-slime-swank))
29866
29867(define-public sbcl-slippery-chicken
29868 (let ((commit "50ea0ef02fe6e29f43c4683220004a31c09c1d1c")
29869 (revision "2"))
29870 (package
29871 (name "sbcl-slippery-chicken")
29872 (version "1.1.0")
29873 (source
29874 (origin
29875 (method git-fetch)
29876 (uri (git-reference
29877 (url "https://github.com/mdedwards/slippery-chicken/")
29878 (commit commit)))
29879 (file-name (git-file-name "slippery-chicken" version))
29880 (sha256
29881 (base32 "0jfjpbpldnj9bqpk32gqn6imphydzmzp63bdvw89h5216hk53c8m"))))
29882 (build-system asdf-build-system/sbcl)
29883 (arguments
29884 (list
29885 #:phases
29886 #~(modify-phases %standard-phases
29887 (add-after 'unpack 'set-tool-paths
29888 (lambda* (#:key inputs #:allow-other-keys)
29889 (substitute* "src/globals.lsp"
29890 (("/usr/bin/lilypond")
29891 (search-input-file inputs "/bin/lilypond"))
29892 (("/usr/bin/ffprobe")
29893 (search-input-file inputs "/bin/ffprobe"))
29894 (("/usr/bin/csound")
29895 (search-input-file inputs "/bin/csound"))))))))
29896 (inputs
29897 (list csound
29898 ffmpeg
29899 lilypond
29900 sbcl-cl-ppcre
29901 sbcl-cm))
29902 (home-page "https://michael-edwards.org/sc/")
29903 (synopsis "Algorithmic music composition software in Common Lisp")
29904 (description
29905 "This package provides a Common Lisp environment for declarative and
29906generative algorithmic composition.")
29907 (license license:gpl3+))))
29908
29909(define-public cl-slippery-chicken
29910 (sbcl-package->cl-source-package sbcl-slippery-chicken))
29911
29912(define-public ecl-slippery-chicken
29913 (package
29914 (inherit (sbcl-package->ecl-package sbcl-slippery-chicken))
29915 ;; https://github.com/mdedwards/slippery-chicken/issues/112
29916 (arguments (list #:tests? #f))))
29917
29918(define-public sbcl-slite
29919 (let ((commit "942a95330592d30be5ac02fb1b697fb14ccbf1af")
29920 (revision "0"))
29921 (package
29922 (name "sbcl-slite")
29923 (version (git-version "1.0.0" revision commit))
29924 (source
29925 (origin
29926 (method git-fetch)
29927 (uri (git-reference
29928 (url "https://github.com/tdrhq/slite/")
29929 (commit commit)))
29930 (file-name (git-file-name "slite" version))
29931 (sha256
29932 (base32 "0b4c4vs1zlhcvr9flv8bx76v9hrwc9qmazmp60407q7cghn0k8zk"))))
29933 (build-system asdf-build-system/sbcl)
29934 (inputs
29935 (list sbcl-cl-str
29936 sbcl-fiveam
29937 sbcl-parachute
29938 sbcl-lisp-unit2))
29939 (home-page "https://github.com/tdrhq/slite")
29940 (synopsis "Common Lisp system for Slite")
29941 (description
29942 "This package provides the Common Lisp part of the emacs-slite test runner.")
29943 (license license:asl2.0))))
29944
29945(define-public cl-slite
29946 (sbcl-package->cl-source-package sbcl-slite))
29947
29948(define-public ecl-slite
29949 (sbcl-package->ecl-package sbcl-slite))
29950
29951(define-public emacs-slite
29952 (package
29953 (inherit sbcl-slite)
29954 (name "emacs-slite")
29955 (build-system emacs-build-system)
29956 (synopsis "SLIme-based TEst runner for FiveAM and Parachute Tests")
29957 (description
29958 "Slite interactively runs your Common Lisp tests (currently only FiveAM
29959and Parachute are supported). It allows you to see the summary of test
29960failures, jump to test definitions, rerun tests with debugger all from inside
29961Emacs.
29962
29963In order to work, this also requires the slite Common Lisp system to be
29964present. See the @code{*cl-slite packages}.")))
29965
29966(define-public sbcl-slot-extra-options
29967 (let ((commit "29517d980325cd63744f1acf4cfe5c8ccec2b318"))
29968 (package
29969 (name "sbcl-slot-extra-options")
29970 (version (git-version "1.1.1" "1" commit))
29971 (source
29972 (origin
29973 (method git-fetch)
29974 (uri (git-reference
29975 (url "https://github.com/some-mthfka/slot-extra-options/")
29976 (commit commit)))
29977 (file-name (git-file-name "cl-slot-extra-options" version))
29978 (sha256
29979 (base32 "1b2swhjjs0w1034cy045q8l3ndmci7rjawka39q23vncy6d90497"))))
29980 (build-system asdf-build-system/sbcl)
29981 (inputs
29982 (list sbcl-alexandria
29983 sbcl-closer-mop
29984 sbcl-serapeum
29985 sbcl-iterate))
29986 (native-inputs
29987 (list sbcl-parachute))
29988 (home-page "https://github.com/some-mthfka/slot-extra-options/")
29989 (synopsis "Extra options for slots using MOP")
29990 (description
29991 "This library lets you build a metaclass which in turn lets you specify
29992extra slot options in its classes. Options may be easily inspected and custom
29993inheritance may be set up. The Meta-Object Protocol (MOP) is used for the
29994implementation - through @code{closer-mop}. Some convenience function for
29995processing slot options are also available.
29996
29997Possible use case: you want to automatically set up some definitions based on
29998some slots, but you want to have control over it right in the class
29999definition.")
30000 (license license:lgpl3+))))
30001
30002(define-public cl-slot-extra-options
30003 (sbcl-package->cl-source-package sbcl-slot-extra-options))
30004
30005(define-public ecl-slot-extra-options
30006 (sbcl-package->ecl-package sbcl-slot-extra-options))
30007
30008(define-public sbcl-micros
30009 (let ((commit "7dc9b46d3aad13661468863dc21ea1b599890487")
30010 (revision "2"))
30011 (package
30012 (name "sbcl-micros")
30013 (version (git-version "0.0.0" revision commit))
30014 (source
30015 (origin
30016 (method git-fetch)
30017 (uri (git-reference
30018 (url "https://github.com/lem-project/micros")
30019 (commit commit)))
30020 (sha256
30021 (base32 "1qj7p6snz67jr2js22mmlz2w8jc9yrf0jqi1jzj9nw3ws2kc7dqb"))
30022 (file-name (git-file-name "micros" version))))
30023 (build-system asdf-build-system/sbcl)
30024 (native-inputs (list sbcl-rove))
30025 (synopsis "SLIME/SWANK fork for the Lem editor")
30026 (description
30027 "Micros is a SLIME/SWANK implementation forked for use by the Lem
30028editor.")
30029 (home-page "https://github.com/lem-project/micros")
30030 (license license:expat))))
30031
30032(define-public cl-micros
30033 (sbcl-package->cl-source-package sbcl-micros))
30034
30035(define-public ecl-micros
30036 (sbcl-package->ecl-package sbcl-micros))
30037
30038(define-public sbcl-slynk
30039 ;; Update together with emacs-sly.
30040 (let ((commit "9c43bf65b967e12cef1996f1af5f0671d8aecbf4")
30041 (revision "9"))
30042 (package
30043 (name "sbcl-slynk")
30044 (version (git-version "1.0.43" revision commit))
30045 (source
30046 (origin
30047 (method git-fetch)
30048 (uri
30049 (git-reference
30050 (url "https://github.com/joaotavora/sly")
30051 (commit commit)))
30052 (sha256
30053 (base32 "15nyr02ykkws4q79jcmxcawddg8sgq9v5l8k7jv7gg3hnpzxjlb2"))
30054 (file-name (git-file-name "cl-slynk" version))))
30055 (build-system asdf-build-system/sbcl)
30056 (outputs '("out" "image"))
30057 (arguments
30058 `(#:phases
30059 (modify-phases %standard-phases
30060 (add-after 'create-asdf-configuration 'build-image
30061 (lambda* (#:key outputs #:allow-other-keys)
30062 (build-image (string-append
30063 (assoc-ref outputs "image")
30064 "/bin/slynk")
30065 outputs
30066 #:dependencies '("slynk"
30067 "slynk/arglists"
30068 "slynk/fancy-inspector"
30069 "slynk/package-fu"
30070 "slynk/mrepl"
30071 "slynk/trace-dialog"
30072 "slynk/profiler"
30073 "slynk/stickers"
30074 "slynk/indentation"
30075 "slynk/retro"))
30076 #t)))))
30077 (synopsis "Common Lisp IDE for Emacs")
30078 (description "SLY is a fork of SLIME, an IDE backend for Common Lisp.
30079It also features a completely redesigned REPL based on Emacs's own
30080full-featured @code{comint-mode}, live code annotations, and a consistent interactive
30081button interface. Everything can be copied to the REPL. One can create
30082multiple inspectors with independent history.")
30083 (home-page "https://github.com/joaotavora/sly")
30084 (license license:public-domain)
30085 (properties `((cl-source-variant . ,(delay cl-slynk)))))))
30086
30087(define-public cl-slynk
30088 (sbcl-package->cl-source-package sbcl-slynk))
30089
30090(define-public ecl-slynk
30091 (let ((pkg (sbcl-package->ecl-package sbcl-slynk)))
30092 (package
30093 (inherit pkg)
30094 (outputs '("out"))
30095 (arguments
30096 (substitute-keyword-arguments arguments
30097 ((#:phases phases)
30098 `(modify-phases ,phases
30099 (delete 'build-image))))))))
30100
30101(define-public clasp-slynk
30102 (let ((pkg (sbcl-package->clasp-package sbcl-slynk)))
30103 (package
30104 (inherit pkg)
30105 (outputs '("out"))
30106 (arguments
30107 (substitute-keyword-arguments arguments
30108 ((#:phases phases)
30109 `(modify-phases ,phases
30110 (delete 'build-image))))))))
30111
30112(define-public sbcl-smart-buffer
30113 (let ((commit "09b9a9a0b3abaa37abe9a730f5aac2643dca4e62")
30114 (revision "1"))
30115 (package
30116 (name "sbcl-smart-buffer")
30117 (version (git-version "0.0.1" revision commit))
30118 (source
30119 (origin
30120 (method git-fetch)
30121 (uri (git-reference
30122 (url "https://github.com/fukamachi/smart-buffer")
30123 (commit commit)))
30124 (file-name (git-file-name name version))
30125 (sha256
30126 (base32 "0qz1zzxx0wm5ff7gpgsq550a59p0qj594zfmm2rglj97dahj54l7"))))
30127 (build-system asdf-build-system/sbcl)
30128 (arguments
30129 '(#:asd-systems '("smart-buffer-test" "smart-buffer")))
30130 (native-inputs
30131 (list sbcl-prove
30132 sbcl-babel))
30133 (inputs
30134 (list sbcl-xsubseq sbcl-flexi-streams))
30135 (home-page "https://github.com/fukamachi/smart-buffer")
30136 (synopsis "Smart octets buffer")
30137 (description
30138 "Smart-buffer provides an output buffer which changes the destination
30139depending on content size.")
30140 (license license:bsd-3))))
30141
30142(define-public cl-smart-buffer
30143 (sbcl-package->cl-source-package sbcl-smart-buffer))
30144
30145(define-public ecl-smart-buffer
30146 (sbcl-package->ecl-package sbcl-smart-buffer))
30147
30148(define-public sbcl-smug
30149 (let ((commit "647a2428df297e1dd183ba7c19574bdb1320ae79")
30150 (revision "0"))
30151 (package
30152 (name "sbcl-smug")
30153 (version (git-version "0.0.0" revision commit))
30154 (source
30155 (origin
30156 (method git-fetch)
30157 (uri (git-reference
30158 (url "https://github.com/drewc/smug")
30159 (commit commit)))
30160 (file-name (git-file-name "cl-smug" version))
30161 (sha256
30162 (base32 "13gzkj9skya2ziwclk041v7sif392ydbvhvikhg2raa3qjcxb3rq"))))
30163 (build-system asdf-build-system/sbcl)
30164 (arguments
30165 `(#:tests? #f)) ; There are no tests.
30166 (synopsis "Parser combinators for Common Lisp")
30167 (description
30168 "@code{cl-smug} is a library for parsing text, based on monadic parser
30169combinators. Using a simple technique from the functional programming
30170camp, @code{cl-smug} makes it simple to create quick extensible recursive
30171descent parsers without funky syntax or impenetrable macrology.")
30172 (home-page "https://smug.drewc.ca/")
30173 (license license:expat))))
30174
30175(define-public cl-smug
30176 (sbcl-package->cl-source-package sbcl-smug))
30177
30178(define-public ecl-smug
30179 (sbcl-package->ecl-package sbcl-smug))
30180
30181(define-public clasp-smug
30182 (sbcl-package->clasp-package sbcl-smug))
30183
30184(define-public sbcl-snakes
30185 (let ((commit "8c7eae579bb24539dbd584a81a1049f3d3ff8bf8")
30186 (revision "0"))
30187 (package
30188 (name "sbcl-snakes")
30189 (version (git-version "0.0.0" revision commit))
30190 (source
30191 (origin
30192 (method git-fetch)
30193 (uri (git-reference
30194 (url "https://github.com/BnMcGn/snakes")
30195 (commit commit)))
30196 (sha256
30197 (base32 "1ibp919qcpm6kg67b507kpjzdlhpdjr7vkh9vabln3a75k8lnlsg"))
30198 (file-name (git-file-name "cl-snakes" commit))))
30199 (build-system asdf-build-system/sbcl)
30200 (inputs
30201 (list sbcl-alexandria
30202 sbcl-cl-cont
30203 sbcl-cl-utilities
30204 sbcl-closer-mop
30205 sbcl-fiveam
30206 sbcl-iterate))
30207 (home-page "https://github.com/BnMcGn/snakes")
30208 (synopsis "Python-like generators for Common Lisp")
30209 (description
30210 "This package provides Python style generators for Common Lisp.
30211It also includes a port of itertools.")
30212 (license license:asl2.0))))
30213
30214(define-public cl-snakes
30215 (sbcl-package->cl-source-package sbcl-snakes))
30216
30217(define-public ecl-snakes
30218 (sbcl-package->ecl-package sbcl-snakes))
30219
30220(define-public sbcl-spatial-trees
30221 ;; There have been no releases.
30222 (let ((commit "81fdad0a0bf109c80a53cc96eca2e093823400ba")
30223 (revision "1"))
30224 (package
30225 (name "sbcl-spatial-trees")
30226 (version (git-version "0" revision commit))
30227 (source
30228 (origin
30229 (method git-fetch)
30230 (uri (git-reference
30231 (url "https://github.com/rpav/spatial-trees")
30232 (commit commit)))
30233 (file-name (git-file-name name version))
30234 (sha256
30235 (base32
30236 "11rhc6h501dwcik2igkszz7b9n515cr99m5pjh4r2qfwgiri6ysa"))))
30237 (build-system asdf-build-system/sbcl)
30238 (arguments
30239 ;; We cannot build "spatial-trees-viz" here because it depends on
30240 ;; mcclim which depends on spatial-trees. FIXME: Break the circle.
30241 '(#:asd-systems '("spatial-trees" "spatial-trees.nns")))
30242 (inputs
30243 (list sbcl-alexandria sbcl-optima sbcl-iterate))
30244 (native-inputs
30245 (list sbcl-fiveam))
30246 (home-page "https://github.com/rpav/spatial-trees")
30247 (synopsis "Dynamic index data structures for spatially-extended data")
30248 (description
30249 "Spatial-trees is a set of dynamic index data structures for
30250spatially-extended data.")
30251 (license license:bsd-3))))
30252
30253(define-public cl-spatial-trees
30254 (sbcl-package->cl-source-package sbcl-spatial-trees))
30255
30256(define-public ecl-spatial-trees
30257 (sbcl-package->ecl-package sbcl-spatial-trees))
30258
30259(define-public sbcl-special-functions
30260 (let ((commit "f3ca2792ff3f8351839c366413da6b1bb2965a58")
30261 (revision "0"))
30262 (package
30263 (name "sbcl-special-functions")
30264 (version (git-version "1.2.0" revision commit))
30265 (source
30266 (origin
30267 (method git-fetch)
30268 (uri (git-reference
30269 (url "https://github.com/Lisp-Stat/special-functions")
30270 (commit commit)))
30271 (file-name (git-file-name "cl-special-functions" version))
30272 (sha256
30273 (base32 "092szffy7zfxgrvfck11wnj8l0mgcym13yiafj01ad02lbj1fnnv"))))
30274 (build-system asdf-build-system/sbcl)
30275 (native-inputs
30276 (list sbcl-fiveam
30277 sbcl-select
30278 sbcl-cl-variates))
30279 (inputs
30280 (list sbcl-alexandria-plus
30281 sbcl-float-features
30282 sbcl-let-plus
30283 sbcl-numerical-utilities))
30284 (home-page "https://lisp-stat.dev/docs/resources/special-functions/")
30285 (synopsis "Special functions in Common Lisp")
30286 (description "This library implements
30287@url{http://specialfunctionswiki.org/index.php/Main_Page, special
30288functions} and has a focus on high accuracy double-float calculations
30289using the latest algorithms.")
30290 (license license:ms-pl))))
30291
30292(define-public cl-special-functions
30293 (sbcl-package->cl-source-package sbcl-special-functions))
30294
30295(define-public ecl-special-functions
30296 (package
30297 (inherit (sbcl-package->ecl-package sbcl-special-functions))
30298 ;; https://github.com/Lisp-Stat/special-functions/issues/4
30299 (arguments (list #:tests? #f))))
30300
30301(define-public sbcl-specialization-store
30302 (let ((commit "8d39a866a6f24986aad3cc52349e9cb2653496f3")
30303 (revision "1"))
30304 (package
30305 (name "sbcl-specialization-store")
30306 (version (git-version "0.0.5" revision commit))
30307 (source
30308 (origin
30309 (method git-fetch)
30310 (uri (git-reference
30311 (url "https://github.com/markcox80/specialization-store")
30312 (commit commit)))
30313 (file-name (git-file-name "specialization-store" version))
30314 (sha256
30315 (base32 "0r0bgb46q4gy72l78s7djkxq8ibb4bb3yh9brsry5lih7br8lhi0"))))
30316 (build-system asdf-build-system/sbcl)
30317 (native-inputs
30318 (list sbcl-fiveam))
30319 (inputs
30320 (list sbcl-alexandria sbcl-introspect-environment))
30321 (arguments
30322 ;; FIXME: Tests fail with:
30323 ;; Unable to compile test syntax-layer-test define-specialization/name.
30324 (list #:tests? #f))
30325 (home-page "https://github.com/markcox80/specialization-store")
30326 (synopsis "Different type of generic function for Common Lisp")
30327 (description
30328 "SPECIALIZATION-STORE system provides a new kind of function, called
30329a store function, whose behavior depends on the types of objects passed to the
30330function.")
30331 (license license:bsd-2))))
30332
30333(define-public cl-specialization-store
30334 (sbcl-package->cl-source-package sbcl-specialization-store))
30335
30336(define-public ecl-specialization-store
30337 (sbcl-package->ecl-package sbcl-specialization-store))
30338
30339(define-public sbcl-specialized-function
30340 (let ((commit "5e2b04432bdf728496e6ff7227f210f845af7247")
30341 (revision "3"))
30342 (package
30343 (name "sbcl-specialized-function")
30344 (version (git-version "0.1" revision commit))
30345 (source
30346 (origin
30347 (method git-fetch)
30348 (uri (git-reference
30349 (url "https://github.com/numcl/specialized-function")
30350 (commit commit)))
30351 (file-name (git-file-name "specialized-function" version))
30352 (sha256
30353 (base32 "19hfgc83b7as630r1w9r8yl0v6xq3dn01vcrl0bd4pza5hgjn4la"))))
30354 (build-system asdf-build-system/sbcl)
30355 (synopsis "Julia-like dispatch for Common Lisp")
30356 (description
30357 "This library is part of NUMCL. It provides a macro
30358@code{SPECIALIZED} that performs a Julia-like dispatch on the arguments,
30359lazily compiling a type-specific version of the function from the same
30360code. The main target of this macro is speed.")
30361 (home-page "https://github.com/numcl/specialized-function")
30362 (license license:lgpl3+)
30363 (inputs
30364 (list sbcl-alexandria
30365 sbcl-iterate
30366 sbcl-lisp-namespace
30367 sbcl-trivia
30368 sbcl-trivial-cltl2
30369 sbcl-type-r))
30370 (native-inputs
30371 (list sbcl-fiveam)))))
30372
30373(define-public cl-specialized-function
30374 (sbcl-package->cl-source-package sbcl-specialized-function))
30375
30376(define-public ecl-specialized-function
30377 (sbcl-package->ecl-package sbcl-specialized-function))
30378
30379(define-public sbcl-speechless
30380 (let ((commit "50e9b03bdfc8a3bc0836a650d92de47b51c39834")
30381 (revision "1"))
30382 (package
30383 (name "sbcl-speechless")
30384 (version (git-version "1.0.0" revision commit))
30385 (source
30386 (origin
30387 (method git-fetch)
30388 (uri (git-reference
30389 (url "https://github.com/Shirakumo/speechless/")
30390 (commit commit)))
30391 (sha256
30392 (base32 "1k0kc2l98jyv04l48xnj38qwpddan80c7m41srjld64jkna0fhas"))
30393 (file-name (git-file-name "speechless" version))))
30394 (build-system asdf-build-system/sbcl)
30395 (inputs
30396 (list sbcl-cl-markless
30397 sbcl-documentation-utils))
30398 (synopsis "Dialogue system language implementation")
30399 (description "This is a system implementing an advanced dialogue system
30400that is capable of complex dialogue flow including choice trees and
30401conditional branching. Speechless was first developed for the
30402\"Kandria\" (@url{https://kandria.com}) game, and has since been separated and
30403made public in the hopes that it may find use elsewhere or inspire other
30404developers to build similar systems.
30405
30406Speechless is based on the
30407\"Markless\" (@url{https://shirakumo.github.io/markless}) document standard
30408for its syntax and makes use of Markless' ability to be extended to add
30409additional constructs useful for dialogue systems.
30410
30411Speechless can compile dialogue from its base textual form into an efficient
30412instruction set, which is then executed when the game is run. Execution of the
30413dialogue is completely engine-agnostic, and only requires some simple
30414integration with a client protocol to run.
30415
30416Thanks to Markless' extensibility, Speechless can also be further extended to
30417include additional syntax and constructs that may be useful for your
30418particular game.")
30419 (home-page "http://shirakumo.github.io/speechless/")
30420 (license license:zlib))))
30421
30422(define-public speechless
30423 (sbcl-package->cl-source-package sbcl-speechless))
30424
30425(define-public ecl-speechless
30426 (sbcl-package->ecl-package sbcl-speechless))
30427
30428(define-public sbcl-spinneret
30429 ;; No release since 2019, no tags.
30430 (let ((commit "fa70fca10d63f7e30bfd10cdeb3f70ab22841120")
30431 (revision "7"))
30432 (package
30433 (name "sbcl-spinneret")
30434 (version (git-version "3.0" revision commit))
30435 (source
30436 (origin
30437 (method git-fetch)
30438 (uri (git-reference
30439 (url "https://github.com/ruricolist/spinneret/")
30440 (commit commit)))
30441 (file-name (git-file-name name version))
30442 (sha256
30443 (base32 "1dvd1v3ngqizh1zwgi2y0jbzvqhsfqyd53s3wcnz6np3wzkcx2lw"))))
30444 (build-system asdf-build-system/sbcl)
30445 (inputs
30446 (list sbcl-alexandria
30447 sbcl-global-vars
30448 sbcl-parenscript
30449 sbcl-cl-markdown
30450 sbcl-cl-ppcre
30451 sbcl-serapeum
30452 sbcl-in-nomine
30453 sbcl-trivial-gray-streams))
30454 (native-inputs
30455 (list sbcl-fiveam))
30456 (home-page "https://github.com/ruricolist/spinneret")
30457 (synopsis "Common Lisp HTML5 generator")
30458 (description
30459 "In the crowded space of Common Lisp HTML generators, Spinneret
30460occupies the following coordinates:
30461
30462@itemize
30463
30464@item Modern. Targets HTML5. Does not treat XML and HTML as the same
30465problem. Assumes you will be serving your documents as UTF-8.
30466
30467@item Composable. Makes it easy to refactor HTML generation into separate
30468functions and macros.
30469
30470@item Pretty. Treats HTML as a document format, not a serialization. Output
30471is idiomatic and readable, following the coding style of the HTML5
30472specification.
30473
30474@item Aggressive. If something can be interpreted as HTML, then it will be,
30475meaning that some Lisp forms can't be mixed with HTML syntax. In the
30476trade-off between 90% convenience and 10% correctness Spinneret is on the side
30477of convenience.
30478
30479@item Bilingual. Spinneret (after loading @code{spinneret/ps}) has the same
30480semantics in Lisp and Parenscript.
30481
30482@end itemize\n")
30483 (license license:expat))))
30484
30485(define-public cl-spinneret
30486 (sbcl-package->cl-source-package sbcl-spinneret))
30487
30488(define-public ecl-spinneret
30489 (sbcl-package->ecl-package sbcl-spinneret))
30490
30491(define-public sbcl-split-sequence
30492 (package
30493 (name "sbcl-split-sequence")
30494 (version "2.0.1")
30495 (source
30496 (origin
30497 (method git-fetch)
30498 (uri (git-reference
30499 (url "https://github.com/sharplispers/split-sequence")
30500 (commit (string-append "v" version))))
30501 (sha256
30502 (base32
30503 "172k7iv775kwism6304p6z7mqpjvipl57nq1bgvmbk445943fmhq"))
30504 (file-name (git-file-name "split-sequence" version))))
30505 (build-system asdf-build-system/sbcl)
30506 (native-inputs
30507 (list sbcl-fiveam))
30508 (synopsis "Member of the Common Lisp Utilities family of programs")
30509 (description
30510 "Splits sequence into a list of subsequences delimited by objects
30511satisfying the test.")
30512 (home-page "https://cliki.net/split-sequence")
30513 (license license:expat)))
30514
30515(define-public cl-split-sequence
30516 (sbcl-package->cl-source-package sbcl-split-sequence))
30517
30518(define-public ecl-split-sequence
30519 (sbcl-package->ecl-package sbcl-split-sequence))
30520
30521(define-public sbcl-st-json
30522 (let ((commit "4a0025bcc5b6921454822f1b9f38f697b4eeaf43")
30523 (revision "0"))
30524 (package
30525 (name "sbcl-st-json")
30526 (version (git-version "0.0.0" revision commit))
30527 (source
30528 (origin
30529 (method git-fetch)
30530 (uri (git-reference
30531 (url "https://github.com/marijnh/ST-JSON")
30532 (commit commit)))
30533 (file-name (git-file-name name version))
30534 (sha256
30535 (base32 "06qrhr5iw73k96lai2x9w52l6gnmlxy7fsr0r35gz6nz1f71x7gx"))))
30536 (build-system asdf-build-system/sbcl)
30537 (home-page "https://marijnhaverbeke.nl/st-json/")
30538 (synopsis "JSON for Common Lisp")
30539 (description
30540 "ST-JSON (@code{ST} because it originated at Streamtech) is a Common Lisp
30541 library for encoding and decoding JSON values (as specified on json.org).
30542
30543This library does mostly the same thing as CL-JSON, but is simpler and more
30544precise about types (distinguishing boolean false, the empty array, and the
30545empty object).")
30546 (license license:zlib))))
30547
30548(define-public cl-st-json
30549 (sbcl-package->cl-source-package sbcl-st-json))
30550
30551(define-public ecl-st-json
30552 (sbcl-package->ecl-package sbcl-st-json))
30553
30554(define-public clasp-st-json
30555 (sbcl-package->clasp-package sbcl-st-json))
30556
30557(define-public sbcl-staple
30558 (let ((commit "0ee8e25fe6fe8fa83b2a6c93d4febd468c3eaa4e")
30559 (revision "1"))
30560 (package
30561 (name "sbcl-staple")
30562 (version (git-version "2.0.0" revision commit))
30563 (source
30564 (origin
30565 (method git-fetch)
30566 (uri (git-reference
30567 (url "https://codeberg.org/shinmera/staple/")
30568 (commit commit)))
30569 (sha256
30570 (base32 "0qf0if7py3n4rszg25lcavpsqikfz6k5dvcmh5q67y8x5r12i5m7"))
30571 (file-name (git-file-name "staple" version))))
30572 (build-system asdf-build-system/sbcl)
30573 (arguments
30574 '(#:asd-systems '("staple-package-recording"
30575 "staple-code-parser"
30576 "staple"
30577 "staple-markdown"
30578 "staple-markless"
30579 "staple-restructured-text")))
30580 (inputs
30581 (list sbcl-3bmd
30582 sbcl-babel
30583 sbcl-cl-docutils
30584 sbcl-cl-markless
30585 sbcl-cl-ppcre
30586 sbcl-clip
30587 sbcl-concrete-syntax-tree
30588 sbcl-definitions
30589 sbcl-documentation-utils
30590 sbcl-eclector
30591 sbcl-language-codes
30592 sbcl-pathname-utils))
30593 (synopsis "Generate documentation about Lisp projects through an HTML template")
30594 (description "Staple is a documentation system. It provides you with a
30595way to generate standalone documentation accumulated from various sources such
30596as readmes, documentation files, and docstrings.")
30597 (home-page "https://Shinmera.github.io/staple/")
30598 (license license:zlib))))
30599
30600(define-public cl-staple
30601 (sbcl-package->cl-source-package sbcl-staple))
30602
30603(define-public ecl-staple
30604 (sbcl-package->ecl-package sbcl-staple))
30605
30606(define-public sbcl-static-dispatch
30607 (package
30608 (name "sbcl-static-dispatch")
30609 (version "0.5.1")
30610 (source
30611 (origin
30612 (method git-fetch)
30613 (uri (git-reference
30614 (url "https://github.com/alex-gutev/static-dispatch")
30615 (commit (string-append "v" version))))
30616 (file-name (git-file-name "static-dispatch" version))
30617 (sha256
30618 (base32 "1602vx6ybp0n8mbrrp6q8397fkkyvhrqpahc302pjdb57qildajz"))))
30619 (build-system asdf-build-system/sbcl)
30620 (native-inputs
30621 (list sbcl-fiveam))
30622 (inputs
30623 (list sbcl-agutil
30624 sbcl-alexandria
30625 sbcl-anaphora
30626 sbcl-arrows
30627 sbcl-cl-environments
30628 sbcl-closer-mop
30629 sbcl-iterate
30630 sbcl-optima))
30631 (home-page "https://github.com/alex-gutev/static-dispatch")
30632 (synopsis "Static generic function dispatch for Common Lisp")
30633 (description "Static dispatch is a Common Lisp library, inspired by
30634@code{inlined-generic-function}, which allows standard Common Lisp generic
30635function dispatch to be performed statically (at compile time) rather than
30636dynamically (runtime). This is similar to what is known as \"overloading\" in
30637languages such as C++ and Java.
30638
30639The purpose of static dispatch is to provide an optimization in cases where
30640the usual dynamic dispatch is too slow, and the dynamic features of generic
30641functions, such as adding/removing methods at runtime are not required. An
30642example of such a case is a generic equality comparison function. Currently
30643generic functions are considered far too slow to implement generic arithmetic
30644and comparison operations when used heavily in numeric code.")
30645 (license license:expat)))
30646
30647(define-public cl-static-dispatch
30648 (sbcl-package->cl-source-package sbcl-static-dispatch))
30649
30650(define-public ecl-static-dispatch
30651 (sbcl-package->ecl-package sbcl-static-dispatch))
30652
30653(define-public sbcl-static-vectors
30654 (package
30655 (name "sbcl-static-vectors")
30656 (version "1.9.3")
30657 (source
30658 (origin
30659 (method git-fetch)
30660 (uri (git-reference
30661 (url "https://github.com/sionescu/static-vectors")
30662 (commit (string-append "v" version))))
30663 (file-name (git-file-name name version))
30664 (sha256
30665 (base32 "1sn37hyf6x56irn2qqc51ncqswa3n94j6cxwcj2ixgxmszcyzx5h"))))
30666 (native-inputs
30667 (list sbcl-fiveam))
30668 (inputs
30669 (list sbcl-alexandria sbcl-cffi))
30670 (build-system asdf-build-system/sbcl)
30671 (home-page "https://github.com/sionescu/static-vectors")
30672 (synopsis "Allocate SIMPLE-ARRAYs in static memory")
30673 (description
30674 "With @code{static-vectors}, you can create vectors allocated in static
30675memory.")
30676 (license license:expat)))
30677
30678(define-public cl-static-vectors
30679 (sbcl-package->cl-source-package sbcl-static-vectors))
30680
30681(define-public ecl-static-vectors
30682 (sbcl-package->ecl-package sbcl-static-vectors))
30683
30684(define-public sbcl-statistics
30685 (let ((commit "94fc87a2bf81355a40ce3730b4ed77710ecfabaf")
30686 (revision "0"))
30687 (package
30688 (name "sbcl-statistics")
30689 (version (git-version "1.0.0" revision commit))
30690 (source
30691 (origin
30692 (method git-fetch)
30693 (uri (git-reference
30694 (url "https://github.com/Lisp-Stat/statistics")
30695 (commit commit)))
30696 (file-name (git-file-name "cl-statistics" version))
30697 (sha256
30698 (base32 "0is69w6iwh4hyzc5ndgb3i2331f677sa7kw5wy8pmx6hawbkgyir"))))
30699 (build-system asdf-build-system/sbcl)
30700 (native-inputs (list sbcl-clunit2))
30701 (inputs
30702 (list sbcl-alexandria
30703 sbcl-anaphora
30704 sbcl-conduit-packages
30705 sbcl-distributions
30706 sbcl-let-plus
30707 sbcl-numerical-utilities))
30708 (home-page "https://lisp-stat.dev/docs/")
30709 (synopsis "Statistical functions in Common Lisp")
30710 (description "This package provides a consolidation of Common Lisp
30711statistics libraries.")
30712 (license (list license:expat license:ms-pl)))))
30713
30714(define-public cl-statistics
30715 (sbcl-package->cl-source-package sbcl-statistics))
30716
30717(define-public ecl-statistics
30718 (sbcl-package->ecl-package sbcl-statistics))
30719
30720(define-public sbcl-stdutils
30721 (let ((commit "4a4e5a4036b815318282da5dee2a22825369137b")
30722 (revision "0"))
30723 (package
30724 (name "sbcl-stdutils")
30725 (version (git-version "1.0" revision commit))
30726 (source
30727 (origin
30728 (method git-fetch)
30729 (uri (git-reference
30730 (url "https://github.com/eslick/cl-stdutils")
30731 (commit commit)))
30732 (file-name (git-file-name "cl-stdutils" version))
30733 (sha256
30734 (base32 "16vxxphqdq8264x0aanm36x9r6d3ci1gjf4vf46mwl59gcff4wcj"))))
30735 (build-system asdf-build-system/sbcl)
30736 (arguments '(#:tests? #f)) ; There are no tests.
30737 (inputs
30738 (list sbcl-cl-fad
30739 sbcl-cl-ppcre))
30740 (home-page "https://github.com/eslick/cl-stdutils/")
30741 (synopsis "Grab bag of Common Lisp utility functions")
30742 (description
30743 "This package provides a grab bag of miscellaneous Common Lisp
30744utilities.")
30745 (license license:bsd-3))))
30746
30747(define-public cl-stdutils
30748 (sbcl-package->cl-source-package sbcl-stdutils))
30749
30750(define-public ecl-stdutils
30751 (sbcl-package->ecl-package sbcl-stdutils))
30752
30753(define-public sbcl-stealth-mixin
30754 (let ((commit "2f853fcead554221d4be3b10522b502ea729e944")
30755 (revision "0"))
30756 (package
30757 (name "sbcl-stealth-mixin")
30758 (version (git-version "0.0.0" revision commit))
30759 (source
30760 (origin
30761 (method git-fetch)
30762 (uri (git-reference
30763 (url "https://github.com/robert-strandh/Stealth-mixin")
30764 (commit commit)))
30765 (file-name (git-file-name "cl-stealth-mixin" version))
30766 (sha256
30767 (base32 "0ar9cdmbmdnqz1ywpw34n47hlh0vqmb6pl76f5vbfgip3c81xwyi"))))
30768 (build-system asdf-build-system/sbcl)
30769 (inputs
30770 (list sbcl-closer-mop))
30771 (home-page "https://github.com/robert-strandh/Stealth-mixin")
30772 (synopsis "Create stealth mixin classes")
30773 (description
30774 "Stealth-mixin is a Common Lisp library for creating stealth mixin
30775classes. These are classes that are dynamically mixed into other classes
30776without the latter being aware of it.")
30777 (license license:bsd-2))))
30778
30779(define-public cl-stealth-mixin
30780 (sbcl-package->cl-source-package sbcl-stealth-mixin))
30781
30782(define-public ecl-stealth-mixin
30783 (sbcl-package->ecl-package sbcl-stealth-mixin))
30784
30785(define-public sbcl-stem
30786 (let ((commit "901e859bdc2b8cc5d8e91dbaca8909e6db05fa84")
30787 (revision "0"))
30788 (package
30789 (name "sbcl-stem")
30790 (version (git-version "0" revision commit))
30791 (source
30792 (origin
30793 (method git-fetch)
30794 (uri (git-reference
30795 (url "https://github.com/hanshuebner/stem")
30796 (commit commit)))
30797 (file-name (git-file-name name version))
30798 (sha256
30799 (base32 "0a2kr09c3qcwg16n8rm15qgy5p9l6z4m72jray0846hqbnji77mp"))))
30800 (build-system asdf-build-system/sbcl)
30801 (home-page "https://github.com/hanshuebner/stem")
30802 (synopsis "Porter Stemming Algorithm")
30803 (description "Porter Stemming Algorithm.")
30804 (license license:llgpl))))
30805
30806(define-public ecl-stem
30807 (sbcl-package->ecl-package sbcl-stem))
30808
30809(define-public cl-stem
30810 (sbcl-package->cl-source-package sbcl-stem))
30811
30812(define-public sbcl-stmx
30813 ;; No release for years and recent commits contain fixes for recent SBCL
30814 ;; versions.
30815 (let ((commit "95f7dea8e1e58dee59e14a1deb148908d920839f")
30816 (revision "3"))
30817 (package
30818 (name "sbcl-stmx")
30819 (version (git-version "2.0.5" revision commit))
30820 (source
30821 (origin
30822 (method git-fetch)
30823 (uri (git-reference
30824 (url "https://github.com/cosmos72/stmx/")
30825 (commit commit)))
30826 (file-name (git-file-name "cl-stmx" version))
30827 (sha256
30828 (base32 "1qq25y79casaa56a76gj9hk2f3hjcc5z3f4na4vy3sw99km54hn9"))))
30829 (build-system asdf-build-system/sbcl)
30830 (inputs
30831 (list sbcl-alexandria sbcl-bordeaux-threads sbcl-log4cl
30832 sbcl-closer-mop sbcl-trivial-garbage))
30833 (home-page "https://stmx.org/")
30834 (synopsis "High performance Transactional Memory for Common Lisp")
30835 (description
30836 "STMX is a high-performance implementation of composable Transactional
30837Memory, which is a concurrency control mechanism aimed at making concurrent
30838programming easier to write and understand. Instead of traditional lock-based
30839programming, one programs with atomic memory transactions, which can be
30840composed together to make larger atomic memory transactions.
30841
30842A memory transaction gets committed if it returns normally, while it gets
30843rolled back if it signals an error (and the error is propagated to the
30844caller).
30845
30846Finally, memory transactions can safely run in parallel in different threads,
30847are re-executed from the beginning in case of conflicts or if consistent reads
30848cannot be guaranteed, and their effects are not visible from other threads
30849until they commit.
30850
30851Memory transactions give freedom from deadlocks, are immune to thread-safety
30852bugs and race conditions, provide automatic roll-back on failure, and aim at
30853resolving the tension between granularity and concurrency.")
30854 (license license:llgpl))))
30855
30856(define-public cl-stmx
30857 (sbcl-package->cl-source-package sbcl-stmx))
30858
30859(define-public ecl-stmx
30860 (sbcl-package->ecl-package sbcl-stmx))
30861
30862(define-public sbcl-string-case
30863 (let ((commit "718c761e33749e297cd2809c7ba3ade1985c49f7")
30864 (revision "0"))
30865 (package
30866 (name "sbcl-string-case")
30867 (version (git-version "0.0.2" revision commit))
30868 (home-page "https://github.com/pkhuong/string-case")
30869 (source
30870 (origin
30871 (method git-fetch)
30872 (uri (git-reference
30873 (url home-page)
30874 (commit commit)))
30875 (file-name (git-file-name name version))
30876 (sha256
30877 (base32
30878 "1n5i3yh0h5s636rcnwn7jwqy3rjflikra04lymimhpcshhjsk0md"))))
30879 (build-system asdf-build-system/sbcl)
30880 (synopsis "Efficient string= case in Common Lisp")
30881 (description
30882 "@code{string-case} is a Common Lisp macro that generates specialised decision
30883trees to dispatch on string equality.")
30884 (license license:bsd-3))))
30885
30886(define-public cl-string-case
30887 (sbcl-package->cl-source-package sbcl-string-case))
30888
30889(define-public ecl-string-case
30890 (sbcl-package->ecl-package sbcl-string-case))
30891
30892(define-public clasp-string-case
30893 (sbcl-package->clasp-package sbcl-string-case))
30894
30895(define-public sbcl-string-pokemonize
30896 (let ((commit "2dc01643defb497e4d1eb833def71dfc1e8d5da6")
30897 (revision "0"))
30898 (package
30899 (name "sbcl-string-pokemonize")
30900 (version (git-version "20210503" revision commit))
30901 (source
30902 (origin
30903 (method git-fetch)
30904 (uri (git-reference
30905 (url "https://github.com/phoe/string-pokemonize")
30906 (commit commit)))
30907 (file-name (git-file-name name version))
30908 (sha256
30909 (base32 "1zk5klc94pxv7mhx6qrp93rk4ypwd6wfijap7gf9l0wpphg90r9x"))))
30910 (build-system asdf-build-system/sbcl)
30911 (arguments
30912 `(#:tests? #f ; There are no tests.
30913 #:asd-systems '("string-pokemonize")))
30914 (synopsis "Alternate upper- and lowercase")
30915 (description
30916 "@code{string-pokemonize} provides a function that alternates uppercase
30917and lowercase characters for a given string.")
30918 (home-page "https://github.com/phoe/string-pokemonize")
30919 (license license:expat))))
30920
30921(define-public cl-string-pokemonize
30922 (sbcl-package->cl-source-package sbcl-string-pokemonize))
30923
30924(define-public ecl-string-pokemonize
30925 (sbcl-package->ecl-package sbcl-string-pokemonize))
30926
30927(define-public clasp-string-pokemonize
30928 (sbcl-package->clasp-package sbcl-string-pokemonize))
30929
30930(define-public sbcl-stripe
30931 (let ((commit "b59631d21d63e101de6eb96b56941471504ba644")
30932 (revision "0"))
30933 (package
30934 (name "sbcl-stripe")
30935 (version (git-version "0.0.0" revision commit))
30936 (source
30937 (origin
30938 (method git-fetch)
30939 (uri (git-reference
30940 (url "https://github.com/atlas-engineer/stripe")
30941 (commit commit)))
30942 (file-name (git-file-name "cl-stripe" version))
30943 (sha256
30944 (base32 "00sfq2f6dnpwa6pf7rgw5hazbwx4yf1g0jrkfz9h4kq5zyxwk1cy"))))
30945 (build-system asdf-build-system/sbcl)
30946 (inputs
30947 (list sbcl-dexador
30948 sbcl-golden-utils
30949 sbcl-local-time
30950 sbcl-yason))
30951 (home-page "https://github.com/atlas-engineer/stripe")
30952 (synopsis "Stripe payment API client for Common Lisp")
30953 (description "A client for the Stripe payment API.")
30954 (license license:expat))))
30955
30956(define-public cl-stripe
30957 (sbcl-package->cl-source-package sbcl-stripe))
30958
30959(define-public ecl-stripe
30960 (sbcl-package->ecl-package sbcl-stripe))
30961
30962(define-public sbcl-supertrace
30963 (let ((commit "66d22c3ff131ecd1c8048dfced1d62ed6024ecb0"))
30964 (package
30965 (name "sbcl-supertrace")
30966 (version (git-version "0.1.0" "1" commit))
30967 (source
30968 (origin
30969 (method git-fetch)
30970 (uri (git-reference
30971 (url "https://github.com/fukamachi/supertrace")
30972 (commit commit)))
30973 (file-name (git-file-name name version))
30974 (sha256
30975 (base32 "0n369n6b7y1m49biccnnr7svymjdsk8sksrkqrn3mj21vgv7s7bg"))))
30976 (build-system asdf-build-system/sbcl)
30977 (native-inputs
30978 (list sbcl-cffi sbcl-rove sbcl-cl-ppcre sbcl-bordeaux-threads))
30979 (inputs
30980 (list sbcl-cffi))
30981 (home-page "https://github.com/fukamachi/supertrace")
30982 (synopsis "Improved Common Lisp tracing for debugging and profiling")
30983 (description
30984 "Supertrace provides a superior Common Lisp @code{trace} functionality
30985for debugging and profiling real world applications.")
30986 (license license:bsd-2))))
30987
30988(define-public cl-supertrace
30989 (sbcl-package->cl-source-package sbcl-supertrace))
30990
30991(define-public ecl-supertrace
30992 (sbcl-package->ecl-package sbcl-supertrace))
30993
30994(define-public sbcl-swap-bytes
30995 (package
30996 (name "sbcl-swap-bytes")
30997 (build-system asdf-build-system/sbcl)
30998 (version "1.2")
30999 (home-page "https://github.com/sionescu/swap-bytes")
31000 (source
31001 (origin
31002 (method git-fetch)
31003 (uri (git-reference
31004 (url home-page)
31005 (commit (string-append "v" version))))
31006 (file-name (git-file-name name version))
31007 (sha256
31008 (base32
31009 "1hw1v1lw26rifyznpnj1csphha9jgzwpiic16ni3pvs6hcsni9rz"))))
31010 (inputs
31011 (list sbcl-trivial-features))
31012 (native-inputs
31013 (list sbcl-fiveam))
31014 (synopsis "Efficient endianness conversion for Common Lisp")
31015 (description "This Common Lisp library provides optimized byte-swapping
31016primitives. The library can change endianness of unsigned integers of length
310171/2/4/8. Very useful in implementing various network protocols and file
31018formats.")
31019 (license license:expat)))
31020
31021(define-public cl-swap-bytes
31022 (sbcl-package->cl-source-package sbcl-swap-bytes))
31023
31024(define-public ecl-swap-bytes
31025 (sbcl-package->ecl-package sbcl-swap-bytes))
31026
31027(define-public sbcl-sxql
31028 (let ((commit "2a9121b32d2745d622e97be45877348850f61f84")
31029 (revision "4"))
31030 (package
31031 (name "sbcl-sxql")
31032 (version (git-version "0.1.0" revision commit))
31033 (source
31034 (origin
31035 (method git-fetch)
31036 (uri (git-reference
31037 (url "https://github.com/fukamachi/sxql")
31038 (commit commit)))
31039 (file-name (git-file-name "cl-sqxl" version))
31040 (sha256
31041 (base32 "11x4qgdwbddbk0a8avrirp1ksmphfxlimirfwvmiwi0jc4zd5csa"))))
31042 (build-system asdf-build-system/sbcl)
31043 (inputs
31044 (list sbcl-alexandria
31045 sbcl-cl-package-locks
31046 sbcl-cl-syntax
31047 sbcl-iterate
31048 sbcl-optima
31049 sbcl-split-sequence
31050 sbcl-trivia
31051 sbcl-trivial-types))
31052 (native-inputs
31053 (list sbcl-prove))
31054 (home-page "https://github.com/fukamachi/sxql")
31055 (synopsis "SQL generator for Common Lisp")
31056 (description "SQL generator for Common Lisp.")
31057 (license license:bsd-3))))
31058
31059(define-public cl-sxql
31060 (sbcl-package->cl-source-package sbcl-sxql))
31061
31062(define-public ecl-sxql
31063 (sbcl-package->ecl-package sbcl-sxql))
31064
31065(define-public sbcl-sxql-composer
31066 (let ((commit "2b2230cb01ae1b68e28921d99e4814046867fb75")
31067 (revision "1"))
31068 (package
31069 (name "sbcl-sxql-composer")
31070 (version (git-version "0.1" revision commit))
31071 (source
31072 (origin
31073 (method git-fetch)
31074 (uri (git-reference
31075 (url "https://github.com/mmontone/sxql-composer")
31076 (commit commit)))
31077 (file-name (git-file-name "sxql-composer" version))
31078 (sha256
31079 (base32 "1agkrj3ymskzc3c7pxbrj123d1kygjqcls145m0ap3i07q96hh1r"))))
31080 (build-system asdf-build-system/sbcl)
31081 (inputs
31082 (list sbcl-sxql))
31083 (synopsis "Build and compose SXQL queries dynamically")
31084 (description
31085 "This is a Common Lisp library to build and compose SXQL queries
31086dynamically.")
31087 (home-page "https://github.com/mmontone/sxql-composer")
31088 (license license:expat))))
31089
31090(define-public cl-sxql-composer
31091 (sbcl-package->cl-source-package sbcl-sxql-composer))
31092
31093(define-public ecl-sxql-composer
31094 (sbcl-package->ecl-package sbcl-sxql-composer))
31095
31096(define-public sbcl-sycamore
31097 (let ((commit "0b50f6a69dd86818bdb4b833116dda9bc873d6f4")
31098 (revision "1"))
31099 (package
31100 (name "sbcl-sycamore")
31101 (version (git-version "0.0.20250808" revision commit))
31102 (source
31103 (origin
31104 (method git-fetch)
31105 (uri (git-reference
31106 (url "https://github.com/ndantam/sycamore/")
31107 (commit commit)))
31108 (file-name (git-file-name name version))
31109 (sha256
31110 (base32 "1h5va9kbywr6n56k1397y0j3bpgn59h43fjq3sycq2hnl6lb4wi6"))))
31111 (build-system asdf-build-system/sbcl)
31112 (inputs
31113 (list sbcl-alexandria sbcl-cl-ppcre))
31114 (synopsis "Purely functional data structure library in Common Lisp")
31115 (description
31116 "Sycamore is a fast, purely functional data structure library in Common Lisp.
31117If features:
31118
31119@itemize
31120@item Fast, purely functional weight-balanced binary trees.
31121@item Leaf nodes are simple-vectors, greatly reducing tree height.
31122@item Interfaces for tree Sets and Maps (dictionaries).
31123@item Ropes.
31124@item Purely functional pairing heaps.
31125@item Purely functional amortized queue.
31126@end itemize\n")
31127 (home-page "https://ndantam.github.io/sycamore/")
31128 (license license:bsd-3))))
31129
31130(define-public cl-sycamore
31131 (sbcl-package->cl-source-package sbcl-sycamore))
31132
31133(define-public ecl-sycamore
31134 (sbcl-package->ecl-package sbcl-sycamore))
31135
31136(define-public sbcl-symbol-munger
31137 (let ((commit "e96558e8315b8eef3822be713354787b2348b25e")
31138 (revision "2"))
31139 (package
31140 (name "sbcl-symbol-munger")
31141 (version (git-version "0.0.1" revision commit))
31142 (source
31143 (origin
31144 (method git-fetch)
31145 (uri (git-reference
31146 (url "https://github.com/AccelerationNet/symbol-munger")
31147 (commit commit)))
31148 (file-name (git-file-name "cl-symbol-munger" version))
31149 (sha256
31150 (base32
31151 "16fshnxp9212503z1vjlmx5pafv14bzpihn486x1ljakqjigfnfz"))))
31152 (build-system asdf-build-system/sbcl)
31153 (inputs
31154 (list sbcl-alexandria
31155 sbcl-iterate))
31156 (arguments
31157 ;; There is a cyclical dependency between symbol-munger and lisp-unit2.
31158 ;; See https://github.com/AccelerationNet/symbol-munger/issues/4
31159 '(#:tests? #f))
31160 (synopsis
31161 "Capitalization and spacing conversion functions for Common Lisp")
31162 (description
31163 "This is a Common Lisp library to change the capitalization and spacing
31164of a string or a symbol. It can convert to and from Lisp, english, underscore
31165and camel-case rules.")
31166 (home-page "https://github.com/AccelerationNet/symbol-munger")
31167 ;; The package declares a BSD license, but all of the license
31168 ;; text is MIT.
31169 ;; See https://github.com/AccelerationNet/symbol-munger/issues/5
31170 (license license:expat))))
31171
31172(define-public cl-symbol-munger
31173 (sbcl-package->cl-source-package sbcl-symbol-munger))
31174
31175(define-public ecl-symbol-munger
31176 (sbcl-package->ecl-package sbcl-symbol-munger))
31177
31178(define-public clasp-symbol-munger
31179 (sbcl-package->clasp-package sbcl-symbol-munger))
31180
31181(define-public sbcl-system-load
31182 (let ((commit "3ff1a40be55866cc5316ac7a530d872b12510294")
31183 (revision "0"))
31184 (package
31185 (name "sbcl-system-load")
31186 (version (git-version "1.0.0" revision commit))
31187 (source
31188 (origin
31189 (method git-fetch)
31190 (uri (git-reference
31191 (url "https://codeberg.org/shinmera/system-load")
31192 (commit commit)))
31193 (file-name (git-file-name "cl-system-load" version))
31194 (sha256
31195 (base32 "08d8kr8j5l2m8p69f47iklxhna394vx9mrys0sgplf5f2bqb7xcv"))))
31196 (build-system asdf-build-system/sbcl)
31197 (home-page "https://codeberg.org/shinmera/system-load")
31198 (synopsis "Access system's CPU and memory usage from Common Lisp")
31199 (description
31200 "System-Load is a Common Lisp library for accessing the system's CPU and
31201memory usage.")
31202 (license license:zlib))))
31203
31204(define-public cl-system-load
31205 (sbcl-package->cl-source-package sbcl-system-load))
31206
31207(define-public ecl-system-load
31208 (sbcl-package->ecl-package sbcl-system-load))
31209
31210(define-public sbcl-system-locale
31211 (let ((commit "4b334bc2fa45651bcaa28ae7d9331095d6bf0a17"))
31212 (package
31213 (name "sbcl-system-locale")
31214 (version (git-version "1.0.0" "1" commit))
31215 (source
31216 (origin
31217 (method git-fetch)
31218 (uri (git-reference
31219 (url "https://codeberg.org/shinmera/system-locale/")
31220 (commit commit)))
31221 (file-name (git-file-name name commit))
31222 (sha256
31223 (base32 "00p5c053kmgq4ks6l9mxsqz6g3bjcybvkvj0bh3r90qgpkaawm1p"))))
31224 (build-system asdf-build-system/sbcl)
31225 (inputs
31226 (list sbcl-documentation-utils))
31227 (home-page "https://shinmera.com/docs/system-locale/")
31228 (synopsis "Get the system's locale and language settings in Common Lisp")
31229 (description
31230 "This library retrieves locale information configured on the
31231system. This is helpful if you want to write applications and libraries that
31232display messages in the user's native language.")
31233 (license license:zlib))))
31234
31235(define-public cl-system-locale
31236 (sbcl-package->cl-source-package sbcl-system-locale))
31237
31238(define-public ecl-system-locale
31239 (sbcl-package->ecl-package sbcl-system-locale))
31240
31241(define-public sbcl-tailrec
31242 (let ((commit "6f882846d8f5bca9138df26510862e64bb15d92f")
31243 (revision "2"))
31244 (package
31245 (name "sbcl-tailrec")
31246 (version (git-version "0" revision commit))
31247 (source
31248 (origin
31249 (method git-fetch)
31250 (uri (git-reference
31251 (url "https://github.com/charje/tailrec")
31252 (commit commit)))
31253 (file-name (git-file-name name version))
31254 (sha256
31255 (base32 "1h8m2npdzd2cpnl75pvv4yvvfwxa7kl6qvalc9s0y4yws0kaih3i"))))
31256 (build-system asdf-build-system/sbcl)
31257 (inputs
31258 (list sbcl-alexandria sbcl-trivial-macroexpand-all
31259 sbcl-trivial-with-current-source-form))
31260 (home-page "https://github.com/charje/tailrec")
31261 (synopsis "Macro to optimize a Common Lisp function for tail recursion")
31262 (description "Just wrap your Common Lisp function in this macro call and
31263it will be optimized for tail recursion. You will be warned if the function
31264is not tail recursive.")
31265 (license license:llgpl))))
31266
31267(define-public cl-tailrec
31268 (sbcl-package->cl-source-package sbcl-tailrec))
31269
31270(define-public ecl-tailrec
31271 (sbcl-package->ecl-package sbcl-tailrec))
31272
31273(define-public sbcl-tar
31274 (let ((commit "7c6e07a10c93d9e311f087b5f6328cddd481669a")
31275 (revision "0"))
31276 (package
31277 (name "sbcl-tar")
31278 (version (git-version "0.2.3" revision commit))
31279 (source
31280 (origin
31281 (method git-fetch)
31282 (uri (git-reference
31283 (url "https://gitlab.common-lisp.net/cl-tar/cl-tar")
31284 (commit commit)))
31285 (file-name (git-file-name "cl-tar" version))
31286 (sha256
31287 (base32 "0wp23cs3i6a89dibifiz6559la5nk58d1n17xvbxq4nrl8cqsllf"))))
31288 (build-system asdf-build-system/sbcl)
31289 ;; TODO: Build the tar program with 'build-program' when the
31290 ;; 'asdf-release-ops' library is added to Guix.
31291 (arguments
31292 (list
31293 #:asd-systems ''("tar"
31294 "tar/common-extract"
31295 "tar/create"
31296 "tar/docs"
31297 "tar/extract"
31298 "tar/simple-extract")
31299 #:phases
31300 #~(modify-phases %standard-phases
31301 (add-after 'unpack 'patch-to-compile-on-newer-40ants-doc
31302 (lambda _
31303 (substitute* "src/docs.lisp"
31304 ((":package-symbol \\(find-package :tar\\)")
31305 ":package :tar")
31306 ((":package-symbol \\(find-package :tar-simple-extract\\)")
31307 ":package :tar-simple-extract")
31308 ((":package-symbol \\(find-package :tar-extract\\)")
31309 ":package :tar-extract")
31310 ((":package-symbol \\(find-package :tar-create\\)")
31311 ":package :tar-create")))))))
31312 (native-inputs
31313 (list sbcl-parachute
31314 sbcl-40ants-doc))
31315 (inputs
31316 (list sbcl-alexandria
31317 sbcl-babel
31318 sbcl-local-time
31319 sbcl-osicat
31320 sbcl-split-sequence
31321 sbcl-tar-file))
31322 (home-page "https://gitlab.common-lisp.net/cl-tar/cl-tar")
31323 (synopsis "High-level interface for tar files")
31324 (description
31325 "@code{cl-tar} is a Common Lisp library providing a high-level interface
31326for interacting with tar archives.")
31327 (license license:expat))))
31328
31329(define-public cl-tar
31330 (sbcl-package->cl-source-package sbcl-tar))
31331
31332(define-public ecl-tar
31333 (sbcl-package->ecl-package sbcl-tar))
31334
31335(define-public sbcl-tar-file
31336 (let ((commit "0c10bc82f14702c97a26dc25ce075b5d3a2347d1")
31337 (revision "0"))
31338 (package
31339 (name "sbcl-tar-file")
31340 (version (git-version "0.2.1" revision commit))
31341 (source
31342 (origin
31343 (method git-fetch)
31344 (uri (git-reference
31345 (url "https://gitlab.common-lisp.net/cl-tar/cl-tar-file")
31346 (commit commit)))
31347 (file-name (git-file-name "cl-tar-file" version))
31348 (sha256
31349 (base32 "0i8j05fkgdqy4c4pqj0c68sh4s3klpx9kc5wp73qwzrl3xqd2svy"))))
31350 (build-system asdf-build-system/sbcl)
31351 (native-inputs
31352 (list sbcl-parachute))
31353 (inputs
31354 (list sbcl-40ants-doc
31355 sbcl-alexandria
31356 sbcl-babel
31357 sbcl-chipz
31358 sbcl-flexi-streams
31359 sbcl-salza2
31360 sbcl-trivial-gray-streams))
31361 (home-page "https://gitlab.common-lisp.net/cl-tar/cl-tar-file")
31362 (synopsis "Read and write physical entries to and from tar files")
31363 (description
31364 "@code{cl-tar-file} is a Common Lisp library that allows reading from
31365and writing to various tar archive formats. Currently supported are the POSIX
31366ustar, PAX (ustar with a few new entry types), GNU, and v7 (very old) formats.
31367
31368This library is rather low level and is focused exclusively on reading and
31369writing physical tar file entries using streams. Therefore, it contains no
31370functionality for automatically building archives from a set of files on the
31371filesystem or writing the contents of a file to the filesystem. Additionally,
31372there are no smarts that read multiple physical entries and combine them into
31373a single logical entry (e.g., with PAX extended headers or GNU long link/path
31374name support). For a higher-level library that reads and writes logical
31375entries, and also includes filesystem integration, see @code{cl-tar}.")
31376 (license license:bsd-3))))
31377
31378(define-public cl-tar-file
31379 (sbcl-package->cl-source-package sbcl-tar-file))
31380
31381(define-public ecl-tar-file
31382 (sbcl-package->ecl-package sbcl-tar-file))
31383
31384(define-public sbcl-terminal-keypress
31385 (let ((commit "2ef48c045aa627229764b2aa393a83d392d93d08")
31386 (revision "1"))
31387 (package
31388 (name "sbcl-terminal-keypress")
31389 (version (git-version "0.1" revision commit))
31390 (source
31391 (origin
31392 (method git-fetch)
31393 (uri (git-reference
31394 (url "https://github.com/eudoxia0/terminal-keypress")
31395 (commit commit)))
31396 (file-name (git-file-name "cl-terminal-keypress" version))
31397 (sha256
31398 (base32 "11c4krpq5x55qkchx6ykcnb455ssb4r3jjywx3c3irfrkj733ybp"))))
31399 (build-system asdf-build-system/sbcl)
31400 (inputs
31401 (list sbcl-alexandria sbcl-trivial-raw-io))
31402 (native-inputs
31403 (list sbcl-fiveam))
31404 (home-page "https://github.com/eudoxia0/terminal-keypress")
31405 (synopsis "Read keyboard events in the terminal from Common Lisp")
31406 (description
31407 "This is a library for reading semi-raw user input from terminals.
31408Semi-raw as in, we can't detect if the user pressed the @code{Control} key
31409alone, and the function keys are a mystery. What is supported, however, is:
31410
31411@itemize
31412@item Regular characters
31413@item Control+[key]
31414@item Alt+[key]
31415@item Control+Alt+[key]
31416@end itemize")
31417 (license license:expat))))
31418
31419(define-public cl-terminal-keypress
31420 (sbcl-package->cl-source-package sbcl-terminal-keypress))
31421
31422(define-public ecl-terminal-keypress
31423 (sbcl-package->ecl-package sbcl-terminal-keypress))
31424
31425(define-public sbcl-terminal-size
31426 (let ((commit "e0b3d56a9dd3366baf2a05d84381da5747a2ef4a")
31427 (revision "1"))
31428 (package
31429 (name "sbcl-terminal-size")
31430 (version (git-version "0.1" revision commit))
31431 (source
31432 (origin
31433 (method git-fetch)
31434 (uri (git-reference
31435 (url "https://github.com/eudoxia0/terminal-size")
31436 (commit commit)))
31437 (file-name (git-file-name "cl-terminal-size" version))
31438 (sha256
31439 (base32 "1212wbadms9jzrqgarpj3d9xh9w4dab8jhx4k2aryqgf116zs42h"))))
31440 (build-system asdf-build-system/sbcl)
31441 (inputs
31442 (list sbcl-cffi sbcl-osicat))
31443 (native-inputs
31444 (list sbcl-fiveam))
31445 (home-page "https://github.com/eudoxia0/terminal-size")
31446 (synopsis "Get the size of the terminal from Common Lisp")
31447 (description
31448 "This package provides the @code{terminal-size:size} function to get the
31449size of the terminal from Common Lisp.")
31450 (license license:expat))))
31451
31452(define-public cl-terminal-size
31453 (sbcl-package->cl-source-package sbcl-terminal-size))
31454
31455(define-public ecl-terminal-size
31456 (sbcl-package->ecl-package sbcl-terminal-size))
31457
31458(define-public sbcl-terminfo
31459 (let ((commit "b8b2e3ed786bfcf9f1aa4a264cee2e93135080f5")
31460 (revision "1"))
31461 (package
31462 (name "sbcl-terminfo")
31463 (version (git-version "0.0.0" revision commit))
31464 (source
31465 (origin
31466 (method git-fetch)
31467 (uri (git-reference
31468 (url "https://github.com/npatrick04/terminfo")
31469 (commit commit)))
31470 (file-name (git-file-name "terminfo" version))
31471 (sha256
31472 (base32 "1nmin9rr6f75xdhxysba66xa1dh62fh27w9ad1cvmj0062armf6b"))))
31473 (build-system asdf-build-system/sbcl)
31474 (synopsis "Terminfo database front end in Common Lisp")
31475 (home-page "https://github.com/npatrick04/terminfo")
31476 (description
31477 "This is a terminfo database front end in Common Lisp. The package
31478provides a method for determining which capabilities a terminal
31479(e.g. \"xterm\") has and methods to compile or put commands to a stream.")
31480 (license license:expat))))
31481
31482(define-public cl-terminfo
31483 (sbcl-package->cl-source-package sbcl-terminfo))
31484
31485(define-public ecl-terminfo
31486 (sbcl-package->ecl-package sbcl-terminfo))
31487
31488(define-public clasp-terminfo
31489 (sbcl-package->clasp-package sbcl-terminfo))
31490
31491(define-public sbcl-termp
31492 (let ((commit "29789fe83db624679b6f341e3fae3f2577ce6a45")
31493 (revision "0"))
31494 (package
31495 (name "sbcl-termp")
31496 (version (git-version "0.1" revision commit))
31497 (source
31498 (origin
31499 (method git-fetch)
31500 (uri (git-reference
31501 (url "https://github.com/vindarel/termp")
31502 (commit commit)))
31503 (file-name (git-file-name "cl-termp" version))
31504 (sha256
31505 (base32 "03r5cv01q4yg0a2dv2ckn2xys53y9isrq3hkp0dqa96q8wrindlh"))))
31506 (build-system asdf-build-system/sbcl)
31507 (synopsis "Test for real vs. dumb terminal window")
31508 (description
31509 "This is a trivial utility for distinguishing between a process running
31510in a real terminal window and a process running in a dumb one, e.g.
31511emacs-slime.")
31512 (home-page "https://github.com/vindarel/termp")
31513 (license license:expat))))
31514
31515(define-public cl-termp
31516 (sbcl-package->cl-source-package sbcl-termp))
31517
31518(define-public ecl-termp
31519 (sbcl-package->ecl-package sbcl-termp))
31520
31521(define-public clasp-termp
31522 (sbcl-package->clasp-package sbcl-termp))
31523
31524(define-public sbcl-terrable
31525 (let ((commit "e4fe23ffa08e8d53a8168105b413861da59cc786")
31526 (revision "1"))
31527 (package
31528 (name "sbcl-terrable")
31529 (version (git-version "1.0.0" revision commit))
31530 (source
31531 (origin
31532 (method git-fetch)
31533 (uri (git-reference
31534 (url "https://github.com/Shirakumo/terrable")
31535 (commit commit)))
31536 (file-name (git-file-name "terrable" version))
31537 (sha256
31538 (base32 "0pnqflgz410zydc1ivwnd8hcl24bgr7x12yjzr7g4lq3ibc8y97b"))))
31539 (build-system asdf-build-system/sbcl)
31540 (inputs
31541 (list sbcl-documentation-utils sbcl-fast-io sbcl-ieee-floats
31542 sbcl-static-vectors sbcl-trivial-garbage))
31543 (home-page "https://shirakumo.github.io/terrable/")
31544 (synopsis "Parser library for Terragen TER terrain files")
31545 (description
31546 "This package provides Common Lisp support for reading the Terragen
31547@code{.TER} format. The format specification can be found at
31548@url{https://planetside.co.uk/wiki/index.php?title=Terragen_.TER_Format}")
31549 (license license:zlib))))
31550
31551(define-public cl-terrable
31552 (sbcl-package->cl-source-package sbcl-terrable))
31553
31554(define-public ecl-terrable
31555 (sbcl-package->ecl-package sbcl-terrable))
31556
31557(define-public sbcl-texp
31558 (let ((commit "3b5241441fec0151ace50b532043b2a407b4190d")
31559 (revision "0"))
31560 (package
31561 (name "sbcl-texp")
31562 (version (git-version "0" revision commit))
31563 (source
31564 (origin
31565 (method git-fetch)
31566 (uri (git-reference
31567 (url "https://github.com/eugeneia/texp")
31568 (commit commit)))
31569 (file-name (git-file-name name version))
31570 (sha256
31571 (base32 "1sbll7jwmzd86hg0zva8r7db2565nnliasv2x6rkrm9xl97q0kg5"))))
31572 (build-system asdf-build-system/sbcl)
31573 (inputs
31574 (list sbcl-named-readtables))
31575 (home-page "https://github.com/eugeneia/texp")
31576 (synopsis "Domain specific language for producing TeX documents with
31577Common Lisp")
31578 (description "Domain specific language for producing TeX documents with
31579Common Lisp.")
31580 (license license:agpl1))))
31581
31582(define-public ecl-texp
31583 (sbcl-package->ecl-package sbcl-texp))
31584
31585(define-public cl-texp
31586 (sbcl-package->cl-source-package sbcl-texp))
31587
31588(define-public sbcl-the-cost-of-nothing
31589 (let ((commit "f364029fbbf37ae5786f2f9ddf6185dd204a7185")
31590 (revision "0"))
31591 (package
31592 (name "sbcl-the-cost-of-nothing")
31593 (version (git-version "0.0.0" revision commit))
31594 (source
31595 (origin
31596 (method git-fetch)
31597 (uri (git-reference
31598 (url "https://github.com/marcoheisig/the-cost-of-nothing")
31599 (commit commit)))
31600 (file-name (git-file-name "cl-the-cost-of-nothing" version))
31601 (sha256
31602 (base32 "1ccrglyr1wnnfp218w1qj7yfl4yzlxkki3hqaifi5axgbi5dmmh8"))))
31603 (build-system asdf-build-system/sbcl)
31604 (arguments
31605 ;; The test operation benchmarks the Common Lisp implementation; it
31606 ;; doesn't test the package.
31607 (list #:tests? #f))
31608 (inputs
31609 (list sbcl-alexandria
31610 sbcl-closer-mop
31611 sbcl-local-time
31612 sbcl-trivial-garbage))
31613 (home-page "https://github.com/marcoheisig/the-cost-of-nothing")
31614 (synopsis "Measure the run time of Common Lisp code")
31615 (description
31616 "THE-COST-OF-NOTHING is a library for measuring the run time of Common
31617Lisp code. It provides macros and functions for accurate benchmarking and
31618lightweight monitoring. Furthermore, it provides predefined benchmarks to
31619determine the cost of certain actions on a given platform and implementation.")
31620 (license license:expat))))
31621
31622(define-public cl-the-cost-of-nothing
31623 (sbcl-package->cl-source-package sbcl-the-cost-of-nothing))
31624
31625(define-public ecl-the-cost-of-nothing
31626 (sbcl-package->ecl-package sbcl-the-cost-of-nothing))
31627
31628(define-public clasp-the-cost-of-nothing
31629 (sbcl-package->clasp-package sbcl-the-cost-of-nothing))
31630
31631(define-public sbcl-tmpdir
31632 (let ((commit "e1981284b969e04a48a3e7f3b98a50435e853eb6")
31633 (revision "0"))
31634 (package
31635 (name "sbcl-tmpdir")
31636 (version (git-version "0.0.1" revision commit))
31637 (source
31638 (origin
31639 (method git-fetch)
31640 (uri (git-reference
31641 (url "https://github.com/moderninterpreters/tmpdir")
31642 (commit commit)))
31643 (file-name (git-file-name name version))
31644 (sha256
31645 (base32 "11yshmg2wyd75ywwfybklm131d5rdw246pg35a6ksndiq3w5n4k8"))))
31646 (build-system asdf-build-system/sbcl)
31647 (native-inputs
31648 (list sbcl-fiveam
31649 sbcl-osicat
31650 sbcl-cl-fad))
31651 (inputs
31652 (list sbcl-cl-fad))
31653 (home-page "https://github.com/moderninterpreters/tmpdir")
31654 (synopsis "Simple library to create temporary directories")
31655 (description "Simple library to create temporary directories.")
31656 (license license:expat))))
31657
31658(define-public ecl-tmpdir
31659 (sbcl-package->ecl-package sbcl-tmpdir))
31660
31661(define-public cl-tmpdir
31662 (sbcl-package->cl-source-package sbcl-tmpdir))
31663
31664(define-public sbcl-tooter
31665 (let ((commit "6d66a55a87f45cfa940b826ec990a3f5fa9b9630")
31666 (revision "7"))
31667 (package
31668 (name "sbcl-tooter")
31669 (version (git-version "1.0.0" revision commit))
31670 (source
31671 (origin
31672 (method git-fetch)
31673 (uri (git-reference
31674 (url "https://codeberg.org/shinmera/tooter")
31675 (commit commit)))
31676 (file-name (git-file-name "cl-tooter" version))
31677 (sha256
31678 (base32 "1i0hx0i6jgwf9c69m9wmlrv7hzq5n0k43r573jmsldbaxvnm4189"))))
31679 (build-system asdf-build-system/sbcl)
31680 (inputs
31681 (list sbcl-alexandria
31682 sbcl-cl-ppcre
31683 sbcl-documentation-utils
31684 sbcl-drakma
31685 sbcl-yason))
31686 (synopsis "Common Lisp client library for Mastodon instances")
31687 (description
31688 "This is a Common Lisp library implementing the full v1 REST API
31689protocol for Mastodon.")
31690 (home-page "https://codeberg.org/shinmera/tooter")
31691 (license license:zlib))))
31692
31693(define-public cl-tooter
31694 (sbcl-package->cl-source-package sbcl-tooter))
31695
31696(define-public ecl-tooter
31697 (sbcl-package->ecl-package sbcl-tooter))
31698
31699(define-public sbcl-transmission
31700 (let ((commit "4bbf1d2761bfa5dfa79b7bc12c3238089b994d95"))
31701 (package
31702 (name "sbcl-transmission")
31703 (version (git-version "0.1" "1" commit))
31704 (source
31705 (origin
31706 (method git-fetch)
31707 (uri (git-reference
31708 (url "https://github.com/libre-man/cl-transmission/")
31709 (commit commit)))
31710 (file-name (git-file-name name version))
31711 (sha256
31712 (base32 "0sg3f2jqs2z3mvscjhc43hkd34vlcc4c8hq8rhh5w1gjg19z57hb"))))
31713 (build-system asdf-build-system/sbcl)
31714 (arguments
31715 '(#:asd-systems '("cl-transmission")))
31716 (inputs
31717 (list sbcl-cl-ppcre sbcl-jonathan sbcl-named-readtables sbcl-rutils
31718 sbcl-drakma))
31719 (native-inputs
31720 (list sbcl-prove))
31721 (home-page "https://github.com/libre-man/cl-transmission/")
31722 (synopsis "Common Lisp interface with Transmission using its RPC")
31723 (description
31724 "@code{cl-transmission} is a library to interface with the Transmission
31725torrent client using its RPC (remote procedure call).")
31726 (license license:expat))))
31727
31728(define-public cl-transmission
31729 (sbcl-package->cl-source-package sbcl-transmission))
31730
31731(define-public ecl-transmission
31732 (sbcl-package->ecl-package sbcl-transmission))
31733
31734(define-public sbcl-trees
31735 (let ((commit "7b06048af0248c4302088c758208276f9faf2beb"))
31736 (package
31737 (name "sbcl-trees")
31738 (version (git-version "0.11" "1" commit))
31739 (source
31740 (origin
31741 (method git-fetch)
31742 (uri (git-reference
31743 (url "https://github.com/froydnj/trees/")
31744 (commit commit)))
31745 (file-name (git-file-name "cl-trees" version))
31746 (sha256
31747 (base32 "1xvydf3qc17rd7ia8sffxcpclgm3l0iyhx8k72ddk59v3pg5is4k"))))
31748 (build-system asdf-build-system/sbcl)
31749 (home-page "https://github.com/froydnj/trees/")
31750 (synopsis "Binary trees in normal and balanced flavors")
31751 (description
31752 "This package implements binary trees of various kinds, presenting a
31753uniform interface to them all.")
31754 (license license:bsd-3))))
31755
31756(define-public cl-trees
31757 (sbcl-package->cl-source-package sbcl-trees))
31758
31759(define-public ecl-trees
31760 (sbcl-package->ecl-package sbcl-trees))
31761
31762(define-public sbcl-triads
31763 (package
31764 (name "sbcl-triads")
31765 (version "0.0.1")
31766 (source
31767 (origin
31768 (method git-fetch)
31769 (uri (git-reference
31770 (url "https://git.sr.ht/~charje/triads")
31771 (commit (string-append "v" version))))
31772 (file-name (git-file-name "cl-triads" version))
31773 (sha256
31774 (base32 "0s47rcp3karml5b06g98adjr2wxn6y9p9bigh8y7wjihpr3075x1"))))
31775 (build-system asdf-build-system/sbcl)
31776 (outputs '("out" "bin"))
31777 (arguments
31778 '(#:asd-systems '("charje.triads")
31779 #:phases
31780 (modify-phases %standard-phases
31781 (add-after 'create-asdf-configuration 'build-binary
31782 (lambda* (#:key outputs #:allow-other-keys)
31783 (setenv "HOME" (getcwd))
31784 (invoke
31785 "sbcl" "--eval" "(require :asdf)" "--eval"
31786 (format
31787 #f "~S"
31788 `(progn
31789 (require "charje.triads"
31790 ,(string-append (getcwd) "/charje.triads.asd"))
31791 (asdf:make "charje.triads"))))
31792 (install-file
31793 (string-append (getcwd) "/triads")
31794 (string-append (assoc-ref outputs "bin") "/bin")))))))
31795 (inputs
31796 (list sbcl-charje.loop
31797 sbcl-cl-str
31798 sbcl-command-line-args
31799 sbcl-serapeum
31800 sbcl-trivia))
31801 (home-page "https://git.sr.ht/~charje/triads")
31802 (synopsis "Music composition tool to convert roman numerals into triads")
31803 (description "Triads is a simple command line tool that reads roman
31804numeral notation from standard input (or a file) and an musical key and outputs
31805the roman numeral in addition to the notes of the triad associated with that
31806roman numeral given in the key.")
31807 (license license:gpl3)))
31808
31809(define-public cl-triads
31810 (sbcl-package->cl-source-package sbcl-triads))
31811
31812(define-public ecl-triads
31813 (let ((ecl-package (sbcl-package->ecl-package sbcl-triads)))
31814 (package
31815 (inherit ecl-package)
31816 (outputs '("out"))
31817 (arguments
31818 (substitute-keyword-arguments arguments
31819 ((#:phases phases)
31820 `(modify-phases ,phases
31821 (delete 'build-binary))))))))
31822
31823(define-public sbcl-trial
31824 (let ((commit "db4e98ede16640238bd51bf5d63cda57c75a51ae")
31825 (revision "2"))
31826 (package
31827 (name "sbcl-trial")
31828 (version (git-version "1.2.0" revision commit))
31829 (source
31830 (origin
31831 (method git-fetch)
31832 (uri (git-reference
31833 (url "https://github.com/Shirakumo/trial")
31834 (commit commit)))
31835 (file-name (git-file-name "cl-trial" version))
31836 (sha256
31837 (base32 "0haslkzcgivz42k23n90w1dzw8zdgdrqcndadl33pqqlf0d20ilw"))))
31838 (build-system asdf-build-system/sbcl)
31839 (arguments
31840 `(#:asd-systems '("trial"
31841 "trial-alloy"
31842 "trial-animation"
31843 "trial-assimp"
31844 ;; TODO: It requires a long packaging journey.
31845 ;; "trial-feedback"
31846 "trial-gif"
31847 "trial-glfw"
31848 ;; FIXME: Check why this system is failing:
31849 ;; WARNING: Invalid qualifiers for APPEND method
31850 ;; combination in method
31851 ;; ...
31852 ;; "trial-glop"
31853 "trial-gltf"
31854 "trial-harmony"
31855 "trial-jpeg"
31856 "trial-notify"
31857 "trial-png"
31858 ;; TODO: I'm not sure which QOI system to use here. There are two:
31859 ;; - https://github.com/bpanthi977/qoi
31860 ;; - https://github.com/mfiano/qoi
31861 ;; "trial-qoi"
31862 ;; TODO: It requires a long packaging journey.
31863 ;; "trial-qt"
31864 "trial-sdl2"
31865 "trial-terragen"
31866 "trial-tga"
31867 "trial-tiff"
31868 "trial-workbench")))
31869 (native-inputs
31870 (list sbcl-trivial-features))
31871 (inputs
31872 (list sbcl-3d-matrices
31873 sbcl-3d-quaternions
31874 sbcl-3d-transforms
31875 sbcl-3d-vectors
31876 sbcl-alexandria
31877 sbcl-alloy
31878 sbcl-atomics
31879 sbcl-bordeaux-threads
31880 sbcl-cl-gamepad
31881 sbcl-cl-glfw3
31882 sbcl-cl-gltf
31883 sbcl-cl-jpeg
31884 sbcl-cl-opengl
31885 sbcl-cl-ppcre
31886 sbcl-cl-tga
31887 sbcl-classimp
31888 sbcl-closer-mop
31889 sbcl-deploy
31890 sbcl-dns-client
31891 sbcl-fast-io
31892 sbcl-file-notify
31893 sbcl-flare
31894 sbcl-float-features
31895 sbcl-flow
31896 sbcl-for
31897 sbcl-form-fiddle
31898 sbcl-glop
31899 sbcl-glsl-toolkit
31900 sbcl-harmony
31901 sbcl-ieee-floats
31902 sbcl-jzon
31903 sbcl-lambda-fiddle
31904 sbcl-language-codes
31905 sbcl-lquery
31906 sbcl-messagebox
31907 sbcl-mmap
31908 sbcl-pathname-utils
31909 sbcl-pngload
31910 sbcl-promise
31911 sbcl-retrospectiff
31912 sbcl-sdl2
31913 sbcl-simple-tasks
31914 sbcl-static-vectors
31915 sbcl-system-locale
31916 sbcl-terrable
31917 sbcl-trivial-extensible-sequences
31918 sbcl-trivial-garbage
31919 sbcl-trivial-indent
31920 sbcl-trivial-main-thread
31921 sbcl-verbose
31922 sbcl-zpng))
31923 (home-page "https://github.com/Shirakumo/trial")
31924 (synopsis "Common Lisp game engine")
31925 (description
31926 "Trial is a game engine written in Common Lisp. Unlike many other
31927engines, it is meant to be more of a loose connection of components that can be
31928fit together as required by any particular game.")
31929 (license license:zlib))))
31930
31931(define-public cl-trial
31932 (sbcl-package->cl-source-package sbcl-trial))
31933
31934;; TODO: Enable with new ECL when this issue is fixed:
31935;; https://github.com/Shinmera/3d-quaternions/issues/2
31936;; (define-public ecl-trial
31937;; (sbcl-package->ecl-package sbcl-trial))
31938
31939(define-public sbcl-tripod
31940 (let ((commit "b019a27cd7eb895870f84b0eb6c3edc5d7b05928")
31941 (revision "1"))
31942 (package
31943 (name "sbcl-tripod")
31944 (version (git-version "0.0.1" revision commit))
31945 (source
31946 (origin
31947 (method git-fetch)
31948 (uri (git-reference
31949 (url "https://github.com/aartaka/tripod")
31950 (commit commit)))
31951 (file-name (git-file-name "cl-tripod" version))
31952 (sha256
31953 (base32 "0y8sns6njq9x7km58vpj7gx4cia9zkcpng3d38300xk0nnk2kz8w"))))
31954 (build-system asdf-build-system/sbcl)
31955 (outputs '("out" "bin"))
31956 (arguments
31957 (list #:phases
31958 #~(modify-phases %standard-phases
31959 (add-after 'create-asdf-configuration 'build-program
31960 (lambda* (#:key outputs #:allow-other-keys)
31961 ;; FIXME: Using #$output:bin here prevents cl-tripod and
31962 ;; ecl-tripod from building, but using assoc-ref works.
31963 (build-program (string-append ;; #$output:bin
31964 (assoc-ref outputs "bin")
31965 "/bin/tripod")
31966 outputs
31967 #:entry-program '((tripod:entry-point))
31968 #:compress? #t))))))
31969 (inputs
31970 (list sbcl-alexandria
31971 sbcl-cl-gopher
31972 sbcl-cl-markdown
31973 sbcl-clss
31974 sbcl-hunchentoot
31975 sbcl-local-time
31976 sbcl-nactivitypub
31977 sbcl-njson
31978 sbcl-phos
31979 sbcl-plump
31980 sbcl-trivial-mimes))
31981 (home-page "https://aartaka.me/blog/tripod")
31982 (synopsis "Common Lisp web server aiming to ease website hosting")
31983 (description
31984 "Tripod is a Common Lisp web server aiming to ease plain text, HTML,
31985and Gopher website hosting.")
31986 (license license:bsd-2))))
31987
31988(define-public cl-tripod
31989 ;; No "bin" output for the source package.
31990 (let ((pkg (sbcl-package->cl-source-package sbcl-tripod)))
31991 (package/inherit pkg
31992 (outputs '("out")))))
31993
31994;;; Split the trivia package in two to work around the circular dependency
31995;;; between guicho271828/trivia and guicho271828/type-i.
31996(define-public sbcl-trivia.trivial
31997 (let ((commit "8b406c3f83521d290e97bb787d3f6c1eb3b716af")
31998 (revision "0"))
31999 (package
32000 (name "sbcl-trivia.trivial")
32001 (version (git-version "0.1" revision commit))
32002 (source
32003 (origin
32004 (method git-fetch)
32005 (uri (git-reference
32006 (url "https://github.com/guicho271828/trivia")
32007 (commit commit)))
32008 (file-name (git-file-name "cl-trivia" version))
32009 (sha256
32010 (base32
32011 "0fnnjnba07qrsf82jm4q6dini7z72xabcssy5y2bqy082r07l8l7"))))
32012 (build-system asdf-build-system/sbcl)
32013 (inputs
32014 (list sbcl-alexandria
32015 sbcl-closer-mop
32016 sbcl-lisp-namespace
32017 sbcl-trivial-cltl2))
32018 (arguments
32019 '(#:phases
32020 (modify-phases %standard-phases
32021 (add-after 'unpack 'fix-build
32022 (lambda _
32023 (for-each delete-file
32024 '("trivia.balland2006.asd"
32025 "trivia.ppcre.asd"
32026 "trivia.quasiquote.asd"
32027 "trivia.cffi.asd"
32028 "trivia.fset.asd"
32029 "trivia.asd"
32030 "trivia.test.asd")))))))
32031 (synopsis "Pattern matching in Common Lisp")
32032 (description "Trivia is a pattern matching compiler that is compatible
32033with Optima, another pattern matching library for Common Lisp. It is meant to
32034be faster and more extensible than Optima.")
32035 (home-page "https://github.com/guicho271828/trivia")
32036 (license license:llgpl))))
32037
32038(define-public cl-trivia.trivial
32039 (sbcl-package->cl-source-package sbcl-trivia.trivial))
32040
32041(define-public ecl-trivia.trivial
32042 (sbcl-package->ecl-package sbcl-trivia.trivial))
32043
32044(define-public sbcl-trivia
32045 (package
32046 (inherit sbcl-trivia.trivial)
32047 (name "sbcl-trivia")
32048 (native-inputs
32049 (list sbcl-fiveam
32050 sbcl-optima))
32051 (inputs
32052 (list sbcl-alexandria
32053 sbcl-cffi
32054 sbcl-cl-ppcre
32055 sbcl-fare-quasiquote
32056 sbcl-fset
32057 sbcl-iterate
32058 sbcl-trivia.trivial
32059 sbcl-type-i))
32060 (arguments
32061 '(#:asd-systems '("trivia"
32062 "trivia.ppcre"
32063 "trivia.quasiquote"
32064 "trivia.cffi"
32065 "trivia.fset")
32066 #:phases
32067 (modify-phases %standard-phases
32068 (add-after 'unpack 'fix-build
32069 (lambda _
32070 (for-each delete-file
32071 '("trivia.level0.asd"
32072 "trivia.level1.asd"
32073 "trivia.level2.asd"
32074 "trivia.trivial.asd")))))))))
32075
32076(define-public cl-trivia
32077 (sbcl-package->cl-source-package sbcl-trivia))
32078
32079(define-public ecl-trivia
32080 (sbcl-package->ecl-package sbcl-trivia))
32081
32082(define-public sbcl-trivial-adjust-simple-array
32083 (let ((commit "393d4041410db584d49c17d9d959fca7aeb76dfc")
32084 (revision "0"))
32085 (package
32086 (name "sbcl-trivial-adjust-simple-array")
32087 ;; It's currently at 0.0.1, but so is the other commits
32088 (version (git-version "0.0.1" revision commit))
32089 (source
32090 (origin
32091 (method git-fetch)
32092 (uri (git-reference
32093 (url "https://gitlab.com/lockie/trivial-adjust-simple-array")
32094 (commit commit)))
32095 (file-name (git-file-name "cl-trivial-adjust-simple-array" commit))
32096 (sha256
32097 (base32 "1mxsng80x3m4cf65vfd1q5fx9nlzqckfc7axwvf9fh156rdhhr3p"))))
32098 (build-system asdf-build-system/sbcl)
32099 (native-inputs
32100 (list sbcl-alexandria
32101 sbcl-parachute))
32102 (home-page "https://gitlab.com/lockie/trivial-adjust-simple-array")
32103 (synopsis "Tiny utility to change the size of a simple array")
32104 (description
32105 "This Common Lisp library provides a tiny utility to change the size of
32106a simple-array ensuring that the resulting array is still a simple-array.")
32107 (license license:expat))))
32108
32109(define-public cl-trivial-adjust-simple-array
32110 (sbcl-package->cl-source-package sbcl-trivial-adjust-simple-array))
32111
32112(define-public ecl-trivial-adjust-simple-array
32113 (sbcl-package->ecl-package sbcl-trivial-adjust-simple-array))
32114
32115(define-public clasp-trivial-adjust-simple-array
32116 (sbcl-package->clasp-package sbcl-trivial-adjust-simple-array))
32117
32118(define-public sbcl-trivial-arguments
32119 (let ((commit "ecd84ed9cf9ef8f1e873d7409e6bd04979372aa7")
32120 (revision "1"))
32121 (package
32122 (name "sbcl-trivial-arguments")
32123 (version (git-version "1.1.0" revision commit))
32124 (source
32125 (origin
32126 (method git-fetch)
32127 (uri (git-reference
32128 (url "https://codeberg.org/shinmera/trivial-arguments")
32129 (commit commit)))
32130 (file-name (git-file-name "trivial-arguments" version))
32131 (sha256
32132 (base32 "02vaqfavhj8jqxnr68nnzvzshm8jbgcy6m9lvyv4daa6f7ihqf88"))))
32133 (build-system asdf-build-system/sbcl)
32134 (home-page "https://codeberg.org/shinmera/trivial-arguments")
32135 (synopsis "Common Lisp library to retrieve a function's lambda-list")
32136 (description
32137 "This is a simple library to retrieve the argument list of a function.")
32138 (license license:zlib))))
32139
32140(define-public cl-trivial-arguments
32141 (sbcl-package->cl-source-package sbcl-trivial-arguments))
32142
32143(define-public ecl-trivial-arguments
32144 (sbcl-package->ecl-package sbcl-trivial-arguments))
32145
32146(define-public clasp-trivial-arguments
32147 (sbcl-package->clasp-package sbcl-trivial-arguments))
32148
32149(define-public sbcl-trivial-backtrace
32150 (let ((commit "7f90b4a4144775cca0728791e4b92ac2557b07a1")
32151 (revision "2"))
32152 (package
32153 (name "sbcl-trivial-backtrace")
32154 (version (git-version "1.1.0" revision commit))
32155 (source
32156 (origin
32157 (method git-fetch)
32158 (uri (git-reference
32159 (url "https://github.com/hraban/trivial-backtrace")
32160 (commit commit)))
32161 (file-name (git-file-name "trivial-backtrace" version))
32162 (sha256
32163 (base32 "11j0p3vgmnn5q84xw7sacr5p3cvff2hfhsh2is8xpm2iwxc723kn"))))
32164 (build-system asdf-build-system/sbcl)
32165 (native-inputs
32166 (list sbcl-lift))
32167 (arguments
32168 `(#:phases
32169 (modify-phases %standard-phases
32170 ;; sbcl 2.6.4 is too smart, and figures out the test will trigger a
32171 ;; division by zero at compile time and refuse to compile the file. It
32172 ;; looks like the test already tries to avoid compile time checks, so
32173 ;; we go a step further and EVAL parts of the expression.
32174 (add-after 'unpack 'circumvent-compile-time-check
32175 (lambda _
32176 (substitute* "test/tests.lisp"
32177 (("\\(expt 1024 0\\)") "(eval '(expt 1024 0))"))))
32178 (add-after 'check 'delete-test-results
32179 (lambda* (#:key outputs #:allow-other-keys)
32180 (let ((test-results (string-append (assoc-ref outputs "out")
32181 "/share/common-lisp/"
32182 (%lisp-type)
32183 "/trivial-backtrace"
32184 "/test-results")))
32185 (when (file-exists? test-results)
32186 (delete-file-recursively test-results)))
32187 #t)))))
32188 (home-page "https://common-lisp.net/project/trivial-backtrace/")
32189 (synopsis "Portable simple API to work with backtraces in Common Lisp")
32190 (description
32191 "One of the many things that didn't quite get into the Common Lisp
32192standard was how to get a Lisp to output its call stack when something has
32193gone wrong. As such, each Lisp has developed its own notion of what to
32194display, how to display it, and what sort of arguments can be used to
32195customize it. @code{trivial-backtrace} is a simple solution to generating a
32196backtrace portably.")
32197 (license license:expat))))
32198
32199(define-public cl-trivial-backtrace
32200 (sbcl-package->cl-source-package sbcl-trivial-backtrace))
32201
32202(define-public ecl-trivial-backtrace
32203 (sbcl-package->ecl-package sbcl-trivial-backtrace))
32204
32205(define-public sbcl-trivial-battery
32206 (let ((commit "318c9da88b4d11d3f33062e0fd09be660a383404")
32207 (revision "1"))
32208 (package
32209 (name "sbcl-trivial-battery")
32210 (version (git-version "0.1.0" revision commit))
32211 (source
32212 (origin
32213 (method git-fetch)
32214 (uri (git-reference
32215 (url "https://github.com/pokepay/trivial-battery")
32216 (commit commit)))
32217 (file-name (git-file-name "cl-trivial-battery" version))
32218 (sha256
32219 (base32 "12ni2502v9gjszhjsh0aai08cm64gl8g815xghdjhcf7y34ffl2b"))))
32220 (build-system asdf-build-system/sbcl)
32221 (inputs (list sbcl-split-sequence))
32222 (home-page "https://github.com/pokepay/trivial-battery")
32223 (synopsis "Trivial library for getting the battery information")
32224 (description
32225 "This package provides a Common Lisp library for getting the battery
32226information.")
32227 (license license:bsd-2))))
32228
32229(define-public cl-trivial-battery
32230 (sbcl-package->cl-source-package sbcl-trivial-battery))
32231
32232(define-public ecl-trivial-battery
32233 (sbcl-package->ecl-package sbcl-trivial-battery))
32234
32235(define-public sbcl-trivial-benchmark
32236 (let ((commit "1fbc8d15f09ed8aa426bc73956b8b7c9b2668802")
32237 (revision "2"))
32238 (package
32239 (name "sbcl-trivial-benchmark")
32240 (version (git-version "2.0.0" revision commit))
32241 (source
32242 (origin
32243 (method git-fetch)
32244 (uri (git-reference
32245 (url "https://codeberg.org/shinmera/trivial-benchmark/")
32246 (commit commit)))
32247 (file-name (git-file-name "cl-trivial-benchmark" version))
32248 (sha256
32249 (base32 "1p48wgpady0n8frdcgp7sbg93b0fbvpx1qk5valmanhwr9j3xh88"))))
32250 (build-system asdf-build-system/sbcl)
32251 (inputs
32252 (list sbcl-alexandria))
32253 (home-page "https://shinmera.com/docs/trivial-benchmark/")
32254 (synopsis "Easy to use benchmarking system for Common Lisp")
32255 (description
32256 "Trivial-Benchmark runs a block of code many times and outputs some
32257statistical data for it. On SBCL this includes the data from @code{time}, for
32258all other implementations just the @code{real-time} and @code{run-time} data.
32259However, you can extend the system by adding your own @code{metrics} to it, or
32260even by adding additional statistical @code{compute}ations.")
32261 (license license:zlib))))
32262
32263(define-public cl-trivial-benchmark
32264 (sbcl-package->cl-source-package sbcl-trivial-benchmark))
32265
32266(define-public ecl-trivial-benchmark
32267 (sbcl-package->ecl-package sbcl-trivial-benchmark))
32268
32269(define-public clasp-trivial-benchmark
32270 (sbcl-package->clasp-package sbcl-trivial-benchmark))
32271
32272(define-public sbcl-trivial-channels
32273 (let ((commit "e2370118d8983ba69c0360a7695f8f2e2fd6a8a6")
32274 (revision "1"))
32275 (package
32276 (name "sbcl-trivial-channels")
32277 (version (git-version "1.0" revision commit))
32278 (source
32279 (origin
32280 (method git-fetch)
32281 (uri (git-reference
32282 (url "https://github.com/rpav/trivial-channels")
32283 (commit commit)))
32284 (file-name (git-file-name "trivial-channels" version))
32285 (sha256
32286 (base32 "04wnxcgk40x8p0gxnz9arv1a5wasdqrdxa8c4p5v7r2mycfps6jj"))))
32287 (build-system asdf-build-system/sbcl)
32288 (inputs
32289 (list sbcl-bordeaux-threads sbcl-trivial-timeout))
32290 (home-page "https://github.com/rpav/trivial-channels")
32291 (synopsis "Common Lisp simple thread-safe channels with timeout")
32292 (description
32293 "It's very basic implementation of channels and queue for Common Lisp.")
32294 (license license:bsd-2))))
32295
32296(define-public cl-trivial-channels
32297 (sbcl-package->cl-source-package sbcl-trivial-channels))
32298
32299(define-public ecl-trivial-channels
32300 (sbcl-package->ecl-package sbcl-trivial-channels))
32301
32302(define-public sbcl-trivial-clipboard
32303 (let ((commit "50b3d3a25717ac78fb1f0517635c3cb1c31c7667")
32304 (revision "8"))
32305 (package
32306 (name "sbcl-trivial-clipboard")
32307 (version (git-version "0.0.0" revision commit))
32308 (source
32309 (origin
32310 (method git-fetch)
32311 (uri (git-reference
32312 (url "https://github.com/snmsts/trivial-clipboard")
32313 (commit commit)))
32314 (file-name (git-file-name "cl-trivial-clipboard" version))
32315 (sha256
32316 (base32 "1agj4nvw4qq7k4vp64y15gq5h5g22zasys48c2bvzqjr0n9d4lj1"))))
32317 (build-system asdf-build-system/sbcl)
32318 (inputs
32319 ;; Pick xsel instead of xclip because its closure size is slightly
32320 ;; smaller.
32321 (list wl-clipboard xsel))
32322 (native-inputs
32323 (list sbcl-fiveam))
32324 (arguments
32325 `(#:phases
32326 (modify-phases %standard-phases
32327 (add-after 'unpack 'fix-paths
32328 (lambda* (#:key inputs #:allow-other-keys)
32329 (substitute* "src/text.lisp"
32330 (("\"xsel\"")
32331 (string-append "\"" (assoc-ref inputs "xsel") "/bin/xsel\""))
32332 (("\"wl-copy\"")
32333 (string-append "\""
32334 (assoc-ref inputs "wl-clipboard")
32335 "/bin/wl-copy\""))
32336 (("\"wl-paste\"")
32337 (string-append "\""
32338 (assoc-ref inputs "wl-clipboard")
32339 "/bin/wl-paste\""))))))))
32340 (home-page "https://github.com/snmsts/trivial-clipboard")
32341 (synopsis "Access system clipboard in Common Lisp")
32342 (description
32343 "@command{trivial-clipboard} gives access to the system clipboard.")
32344 (license license:expat))))
32345
32346(define-public cl-trivial-clipboard
32347 (sbcl-package->cl-source-package sbcl-trivial-clipboard))
32348
32349(define-public ecl-trivial-clipboard
32350 (sbcl-package->ecl-package sbcl-trivial-clipboard))
32351
32352(define-public sbcl-trivial-cltl2
32353 (let ((commit "8a3bda30dc25d2f65fcf514d0eb6e6db75252c61")
32354 (revision "2"))
32355 (package
32356 (name "sbcl-trivial-cltl2")
32357 (build-system asdf-build-system/sbcl)
32358 (version (git-version "0.1.1" revision commit))
32359 (home-page "https://github.com/Zulu-Inuoe/trivial-cltl2")
32360 (source
32361 (origin
32362 (method git-fetch)
32363 (uri (git-reference
32364 (url home-page)
32365 (commit commit)))
32366 (file-name (git-file-name name version))
32367 (sha256
32368 (base32
32369 "08cnzb9rnczn4pn2zpf0587ny4wjy1mjndy885fz9pw7xrlx37ip"))))
32370 (synopsis "Simple CLtL2 compatibility layer for Common Lisp")
32371 (description "This library is a portable compatibility layer around
32372\"Common Lisp the Language, 2nd
32373Edition\" (@url{https://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node102.html})
32374and it exports symbols from implementation-specific packages.")
32375 (license license:llgpl))))
32376
32377(define-public cl-trivial-cltl2
32378 (sbcl-package->cl-source-package sbcl-trivial-cltl2))
32379
32380(define-public ecl-trivial-cltl2
32381 (sbcl-package->ecl-package sbcl-trivial-cltl2))
32382
32383(define-public sbcl-trivial-custom-debugger
32384 (let ((commit "a560594a673bbcd88136af82086107ee5ff9ca81"))
32385 (package
32386 (name "sbcl-trivial-custom-debugger")
32387 (version (git-version "1.0.0" "1" commit))
32388 (source
32389 (origin
32390 (method git-fetch)
32391 (uri (git-reference
32392 (url "https://github.com/phoe/trivial-custom-debugger")
32393 (commit commit)))
32394 (file-name (git-file-name "trivial-custom-debugger" version))
32395 (sha256
32396 (base32 "1iri5wsp9sc1f5q934cj87zd79r5dc8fda0gl7x1pz95v0wx28yk"))))
32397 (build-system asdf-build-system/sbcl)
32398 (arguments
32399 '(;; FIXME: Tests disabled because of a circular dependency between
32400 ;; trivial-custom-debugger and parachute.
32401 #:tests? #f))
32402 ;;(native-inputs
32403 ;; (list sbcl-parachute))
32404 (home-page "https://github.com/phoe/trivial-custom-debugger/")
32405 (synopsis "Allow arbitrary functions as the standard Lisp debugger")
32406 (description
32407 "This is a portability library that allows one to fully override the
32408standard debugger provided by their Common Lisp system for situations where
32409binding @code{*debugger-hook*} is not enough -- most notably, for
32410@code{break}.")
32411 (license license:expat))))
32412
32413(define-public cl-trivial-custom-debugger
32414 (sbcl-package->cl-source-package sbcl-trivial-custom-debugger))
32415
32416(define-public ecl-trivial-custom-debugger
32417 (package
32418 (inherit (sbcl-package->ecl-package sbcl-trivial-custom-debugger))
32419 (arguments
32420 ;; Tests fail on ECL: https://github.com/phoe/trivial-custom-debugger/issues/3
32421 '(#:tests? #f))))
32422
32423(define-public sbcl-trivial-do
32424 (let ((commit "a19f93227cb80a6bec8846655ebcc7998020bd7e")
32425 (revision "2"))
32426 (package
32427 (name "sbcl-trivial-do")
32428 (version (git-version "0.1" revision commit))
32429 (source
32430 (origin
32431 (method git-fetch)
32432 (uri (git-reference
32433 (url "https://github.com/yitzchak/trivial-do")
32434 (commit commit)))
32435 (file-name (git-file-name name commit))
32436 (sha256
32437 (base32 "0vql7am4zyg6zav3l6n6q3qgdxlnchdxpgdxp8lr9sm7jra7sdsf"))))
32438 (build-system asdf-build-system/sbcl)
32439 (home-page "https://github.com/yitzchak/trivial-do")
32440 (synopsis "Additional dolist style macros for Common Lisp")
32441 (description
32442 "Additional dolist style macros for Common Lisp, such as
32443@code{doalist}, @code{dohash}, @code{dolist*}, @code{doplist}, @code{doseq}
32444and @code{doseq*}.")
32445 (license license:zlib))))
32446
32447(define-public cl-trivial-do
32448 (sbcl-package->cl-source-package sbcl-trivial-do))
32449
32450(define-public ecl-trivial-do
32451 (sbcl-package->ecl-package sbcl-trivial-do))
32452
32453(define-public clasp-trivial-do
32454 (sbcl-package->clasp-package sbcl-trivial-do))
32455
32456(define-public sbcl-trivial-documentation
32457 (let ((commit "e71e7cf611ecd4a27bf5dba3add8698acda762ea")
32458 (revision "0"))
32459 (package
32460 (name "sbcl-trivial-documentation")
32461 (version (git-version "0" revision commit))
32462 (source
32463 (origin
32464 (method git-fetch)
32465 (uri (git-reference
32466 (url "https://github.com/eugeneia/trivial-documentation")
32467 (commit commit)))
32468 (file-name (git-file-name name version))
32469 (sha256
32470 (base32 "0y90zi6kaw7226xc089dl47677fz594a5ck1ld8yggk9ww7cdaav"))))
32471 (build-system asdf-build-system/sbcl)
32472 (arguments
32473 (list
32474 ;; Unable to build the test project. Haven't digged into why.
32475 #:tests? #f))
32476 (inputs
32477 (list sbcl-closer-mop))
32478 (home-page "https://github.com/eugeneia/trivial-documentation")
32479 (synopsis "Scrape on-line documentation out of a running Lisp image")
32480 (description "Scrape on-line documentation out of a running Lisp image.")
32481 (license license:agpl1))))
32482
32483(define-public ecl-trivial-documentation
32484 (sbcl-package->ecl-package sbcl-trivial-documentation))
32485
32486(define-public cl-trivial-documentation
32487 (sbcl-package->cl-source-package sbcl-trivial-documentation))
32488
32489(define-public sbcl-trivial-download
32490 (let ((commit "d2472061d86b1cf3d32f388daacd4e32a13af699"))
32491 (package
32492 (name "sbcl-trivial-download")
32493 (version (git-version "0.3" "1" commit))
32494 (source
32495 (origin
32496 (method git-fetch)
32497 (uri (git-reference
32498 (url "https://github.com/eudoxia0/trivial-download/")
32499 (commit commit)))
32500 (file-name (git-file-name name version))
32501 (sha256
32502 (base32 "06f46zr3gp3wlm2kgxna24qd2gpr1v89x9fynh1x5vrw6c6hqjcv"))))
32503 (build-system asdf-build-system/sbcl)
32504 (inputs
32505 (list sbcl-drakma))
32506 (home-page "https://github.com/eudoxia0/trivial-download/")
32507 (synopsis "Download files from Common Lisp")
32508 (description
32509 "@code{trivial-download} allows you to download files from the Internet
32510from Common Lisp. It provides a progress bar.")
32511 (license license:bsd-2))))
32512
32513(define-public cl-trivial-download
32514 (sbcl-package->cl-source-package sbcl-trivial-download))
32515
32516(define-public ecl-trivial-download
32517 (sbcl-package->ecl-package sbcl-trivial-download))
32518
32519(define-public sbcl-trivial-escapes
32520 (let ((commit "1eca78da2078495d09893be58c28b3aa7b8cc4d1"))
32521 (package
32522 (name "sbcl-trivial-escapes")
32523 (version (git-version "1.2.0" "1" commit))
32524 (source
32525 (origin
32526 (method git-fetch)
32527 (uri (git-reference
32528 (url "https://github.com/williamyaoh/trivial-escapes")
32529 (commit commit)))
32530 (file-name (git-file-name name commit))
32531 (sha256
32532 (base32 "0v6h8lk17iqv1qkxgqjyzn8gi6v0hvq2vmfbb01md3zjvjqxn6lr"))))
32533 (build-system asdf-build-system/sbcl)
32534 (inputs
32535 (list sbcl-named-readtables))
32536 (native-inputs
32537 (list sbcl-fiveam))
32538 (home-page "https://github.com/williamyaoh/trivial-escapes")
32539 (synopsis "C-style escape directives for Common Lisp")
32540 (description
32541 "This Common Lisp library interprets escape characters the same way that
32542most other programming language do.
32543It provides four readtables. The default one lets you write strings like this:
32544@code{#\"This string has\na newline in it!\"}.")
32545 (license license:public-domain))))
32546
32547(define-public cl-trivial-escapes
32548 (sbcl-package->cl-source-package sbcl-trivial-escapes))
32549
32550(define-public ecl-trivial-escapes
32551 (sbcl-package->ecl-package sbcl-trivial-escapes))
32552
32553(define-public sbcl-trivial-extensible-sequences
32554 (let ((commit "d40b2da23716601578b1f645727047f80baeb49a")
32555 (revision "0"))
32556 (package
32557 (name "sbcl-trivial-extensible-sequences")
32558 (version (git-version "1.0.0" revision commit))
32559 (source
32560 (origin
32561 (method git-fetch)
32562 (uri (git-reference
32563 (url "https://codeberg.org/shinmera/trivial-extensible-sequences")
32564 (commit commit)))
32565 (file-name (git-file-name "cl-trivial-extensible-sequences" version))
32566 (sha256
32567 (base32 "0352psdd8j0phjycr6ldckwspyal4jcf0f2fizi6fwdp7nvadng7"))))
32568 (build-system asdf-build-system/sbcl)
32569 (home-page "https://shinmera.com/docs/trivial-extensible-sequences/")
32570 (synopsis "Portability library for the extensible sequences protocol")
32571 (description
32572 "This package provides a portability layer for the extensible sequences
32573standard extension to Common Lisp. Extensible sequences allow you to create
32574your own sequence types that integrate with the rest of the functions and
32575operations that interact with sequences.")
32576 (license license:zlib))))
32577
32578(define-public cl-trivial-extensible-sequences
32579 (sbcl-package->cl-source-package sbcl-trivial-extensible-sequences))
32580
32581;; NOTE: (Sharlatan-20230312T215058+0000): ECL is not supported
32582;; (define-public ecl-trivial-extensible-sequences
32583;; (sbcl-package->ecl-package sbcl-trivial-extensible-sequences))
32584
32585(define-public clasp-trivial-extensible-sequences
32586 (sbcl-package->clasp-package sbcl-trivial-extensible-sequences))
32587
32588(define-public sbcl-trivial-features
32589 (package
32590 (name "sbcl-trivial-features")
32591 (version "1.0")
32592 (source
32593 (origin
32594 (method git-fetch)
32595 (uri (git-reference
32596 (url "https://github.com/trivial-features/trivial-features")
32597 (commit (string-append "v" version))))
32598 (file-name (git-file-name "trivial-features" version))
32599 (sha256
32600 (base32 "0jsqah1znzqilxnw5vannb083ayk0d7phkackqzwwqkyg5hpn6pq"))))
32601 (build-system asdf-build-system/sbcl)
32602 (arguments
32603 '(;; FIXME: Tests disabled because of a circular dependency between
32604 ;; trivial-features and cffi.
32605 #:tests? #f))
32606 ;; (native-inputs
32607 ;; `(("cffi" ,sbcl-cffi)))
32608 (home-page "https://cliki.net/trivial-features")
32609 (synopsis "Ensures consistency of @code{*FEATURES*} in Common Lisp")
32610 (description "Trivial-features ensures that @code{*FEATURES*} is
32611consistent across multiple Common Lisp implementations.")
32612 (license license:expat)))
32613
32614(define-public cl-trivial-features
32615 (sbcl-package->cl-source-package sbcl-trivial-features))
32616
32617(define-public ecl-trivial-features
32618 (sbcl-package->ecl-package sbcl-trivial-features))
32619
32620(define-public clasp-trivial-features
32621 (sbcl-package->clasp-package sbcl-trivial-features))
32622
32623(define-public sbcl-trivial-file-size
32624 (let ((commit "1c1d672a01a446ba0391dbb4ffc40be3b0476f23")
32625 (revision "0"))
32626 (package
32627 (name "sbcl-trivial-file-size")
32628 (version (git-version "0.0.0" revision commit))
32629 (home-page "https://github.com/ruricolist/trivial-file-size")
32630 (source
32631 (origin
32632 (method git-fetch)
32633 (uri (git-reference
32634 (url home-page)
32635 (commit commit)))
32636 (file-name (git-file-name name version))
32637 (sha256
32638 (base32
32639 "17pp86c9zs4y7i1sh7q9gbfw9iqv6655k7fz8qbj9ly1ypgxp4qs"))))
32640 (build-system asdf-build-system/sbcl)
32641 (native-inputs
32642 (list sbcl-fiveam))
32643 (synopsis "Size of a file in bytes in Common Lisp")
32644 (description
32645 "The canonical way to determine the size of a file in bytes, using Common Lisp,
32646is to open the file with an element type of (unsigned-byte 8) and then
32647calculate the length of the stream. This is less than ideal. In most cases
32648it is better to get the size of the file from its metadata, using a system
32649call.
32650
32651This library exports a single function, file-size-in-octets. It returns the
32652size of a file in bytes, using system calls when possible.")
32653 (license license:expat))))
32654
32655(define-public cl-trivial-file-size
32656 (sbcl-package->cl-source-package sbcl-trivial-file-size))
32657
32658(define-public ecl-trivial-file-size
32659 (sbcl-package->ecl-package sbcl-trivial-file-size))
32660
32661(define-public sbcl-trivial-garbage
32662 (let ((commit "3474f6414b73d4e3aa2d5c53080f4247a34f6380")
32663 (revision "0"))
32664 (package
32665 (name "sbcl-trivial-garbage")
32666 (version (git-version "0.21" revision commit))
32667 (source
32668 (origin
32669 (method git-fetch)
32670 (uri (git-reference
32671 (url "https://github.com/trivial-garbage/trivial-garbage")
32672 (commit commit)))
32673 (file-name (git-file-name "cl-trivial-garbage" version))
32674 (sha256
32675 (base32 "0rfwxvwg0kpcaa0hsi035yrkfdfks4bq8d9azmrww2f0rmv9g6sd"))))
32676 (build-system asdf-build-system/sbcl)
32677 (native-inputs
32678 (list sbcl-rt))
32679 (home-page "https://common-lisp.net/project/trivial-garbage/")
32680 (synopsis "Portable GC-related APIs for Common Lisp")
32681 (description "@command{trivial-garbage} provides a portable API to
32682finalizers, weak hash-tables and weak pointers on all major implementations of
32683the Common Lisp programming language.")
32684 (license license:public-domain))))
32685
32686(define-public cl-trivial-garbage
32687 (sbcl-package->cl-source-package sbcl-trivial-garbage))
32688
32689(define-public ecl-trivial-garbage
32690 (sbcl-package->ecl-package sbcl-trivial-garbage))
32691
32692(define-public clasp-trivial-garbage
32693 (sbcl-package->clasp-package sbcl-trivial-garbage))
32694
32695(define-public sbcl-trivial-glob
32696 (let ((commit "0c2675d9452ed164970f2fc4a0e41784ebee819a")
32697 (revision "0"))
32698 (package
32699 (name "sbcl-trivial-glob")
32700 (version (git-version "0.1.0" revision commit))
32701 (source
32702 (origin
32703 (method git-fetch)
32704 (uri (git-reference
32705 (url "https://github.com/fukamachi/trivial-glob")
32706 (commit commit)))
32707 (file-name (git-file-name "cl-trivial-glob" version))
32708 (sha256
32709 (base32 "1z7b35m6mj2dva1lrlp7xa2pg1vvmziza41yp823gvx4y9fr0isy"))))
32710 (build-system asdf-build-system/sbcl)
32711 (native-inputs
32712 (list sbcl-rove))
32713 (home-page "https://github.com/fukamachi/trivial-glob")
32714 (synopsis "Shell-style glob pattern matching for Common Lisp")
32715 (description
32716 "This library provides shell-style glob pattern matching and
32717filesystem globbing for Common Lisp. Patterns support @code{*} and
32718@code{?} wildcards, @code{**} for recursive directory descent,
32719@code{[...]} character classes and @code{@{a,b@}} brace expansion.")
32720 (license license:expat))))
32721
32722(define-public cl-trivial-glob
32723 (sbcl-package->cl-source-package sbcl-trivial-glob))
32724
32725(define-public ecl-trivial-glob
32726 (sbcl-package->ecl-package sbcl-trivial-glob))
32727
32728(define-public sbcl-trivial-gray-streams
32729 (let ((revision "1")
32730 (commit "2b3823edbc78a450db4891fd2b566ca0316a7876"))
32731 (package
32732 (name "sbcl-trivial-gray-streams")
32733 (version (git-version "2.0" revision commit))
32734 (source
32735 (origin
32736 (method git-fetch)
32737 (uri
32738 (git-reference
32739 (url "https://github.com/trivial-gray-streams/trivial-gray-streams")
32740 (commit commit)))
32741 (sha256
32742 (base32 "1hipqwwd5ylskybd173rvlsk7ds4w4nq1cmh9952ivm6dgh7pwzn"))
32743 (file-name (git-file-name "cl-trivial-gray-streams" version))))
32744 (build-system asdf-build-system/sbcl)
32745 (synopsis "Compatibility layer for Gray streams implementations")
32746 (description "Gray streams is an interface proposed for inclusion with
32747ANSI CL by David N. Gray. The proposal did not make it into ANSI CL, but most
32748popular CL implementations implement it. This package provides an extremely
32749thin compatibility layer for gray streams.")
32750 (home-page "https://www.cliki.net/trivial-gray-streams")
32751 (license license:x11))))
32752
32753(define-public cl-trivial-gray-streams
32754 (sbcl-package->cl-source-package sbcl-trivial-gray-streams))
32755
32756(define-public ecl-trivial-gray-streams
32757 (sbcl-package->ecl-package sbcl-trivial-gray-streams))
32758
32759(define-public clasp-trivial-gray-streams
32760 (sbcl-package->clasp-package sbcl-trivial-gray-streams))
32761
32762(define-public sbcl-trivial-indent
32763 (let ((commit "f25275094b80df8aa158af46db980bbc3ce2f88b")
32764 (revision "1"))
32765 (package
32766 (name "sbcl-trivial-indent")
32767 (version (git-version "1.0.0" revision commit))
32768 (source
32769 (origin
32770 (method git-fetch)
32771 (uri
32772 (git-reference
32773 (url "https://codeberg.org/shinmera/trivial-indent")
32774 (commit commit)))
32775 (file-name (git-file-name "cl-trivial-indent" version))
32776 (sha256
32777 (base32 "1zg8cyy1xqpcjrxxqz5zb5xixhwcszkv4p2vq305lb2rka6f3dyx"))))
32778 (build-system asdf-build-system/sbcl)
32779 (synopsis
32780 "Simple Common Lisp library to allow indentation hints for SWANK")
32781 (description
32782 "This library allows you to define custom indentation hints for your
32783macros if the one recognised by SLIME automatically produces unwanted
32784results.")
32785 (home-page "https://shinmera.com/docs/trivial-indent/")
32786 (license license:zlib))))
32787
32788(define-public cl-trivial-indent
32789 (sbcl-package->cl-source-package sbcl-trivial-indent))
32790
32791(define-public ecl-trivial-indent
32792 (sbcl-package->ecl-package sbcl-trivial-indent))
32793
32794(define-public clasp-trivial-indent
32795 (sbcl-package->clasp-package sbcl-trivial-indent))
32796
32797(define-public sbcl-trivial-macroexpand-all
32798 (let ((commit "933270ac7107477de1bc92c1fd641fe646a7a8a9")
32799 (revision "0"))
32800 (package
32801 (name "sbcl-trivial-macroexpand-all")
32802 (version (git-version "0.0.0" revision commit))
32803 (home-page "https://github.com/cbaggers/trivial-macroexpand-all")
32804 (source
32805 (origin
32806 (method git-fetch)
32807 (uri (git-reference
32808 (url home-page)
32809 (commit commit)))
32810 (file-name (git-file-name name version))
32811 (sha256
32812 (base32
32813 "191hnn4b5j4i3crydmlzbm231kj0h7l8zj6mzj69r1npbzkas4bd"))))
32814 (build-system asdf-build-system/sbcl)
32815 (native-inputs
32816 (list sbcl-fiveam))
32817 (synopsis "Portable macroexpand-all for Common Lisp")
32818 (description
32819 "This library provides a macroexpand-all function that calls the
32820implementation specific equivalent.")
32821 (license license:unlicense))))
32822
32823(define-public cl-trivial-macroexpand-all
32824 (sbcl-package->cl-source-package sbcl-trivial-macroexpand-all))
32825
32826(define-public ecl-trivial-macroexpand-all
32827 (sbcl-package->ecl-package sbcl-trivial-macroexpand-all))
32828
32829(define-public sbcl-trivial-main-thread
32830 (let ((commit "25f114973bb69eb63e01d0bbfead31f8e682846a")
32831 (revision "1"))
32832 (package
32833 (name "sbcl-trivial-main-thread")
32834 (version (git-version "1.0.0" revision commit))
32835 (source
32836 (origin
32837 (method git-fetch)
32838 (uri (git-reference
32839 (url "https://codeberg.org/shinmera/trivial-main-thread")
32840 (commit commit)))
32841 (file-name (git-file-name "trivial-main-thread" version))
32842 (sha256
32843 (base32 "0bw1887i7396lqg75qvmgjfzz4xbiq9w5dp8wxdgrcsm0qwlraw7"))))
32844 (build-system asdf-build-system/sbcl)
32845 (inputs
32846 (list sbcl-bordeaux-threads sbcl-simple-tasks sbcl-trivial-features))
32847 (home-page "https://shinmera.com/docs/trivial-main-thread/")
32848 (synopsis "Compatibility library to run things in the main thread")
32849 (description
32850 "This package provides a Common Lisp system which wraps the
32851BORDEAUX-THREADS system to be able to run things in the main thread of the
32852implementation, for example drawing calls of GUI applications.")
32853 (license license:zlib))))
32854
32855(define-public cl-trivial-main-thread
32856 (sbcl-package->cl-source-package sbcl-trivial-main-thread))
32857
32858(define-public ecl-trivial-main-thread
32859 (sbcl-package->ecl-package sbcl-trivial-main-thread))
32860
32861(define-public sbcl-trivial-mimes
32862 (let ((commit "8b1ea1291ef53d55730d2288332656a98068d7e5")
32863 (revision "3"))
32864 (package
32865 (name "sbcl-trivial-mimes")
32866 (version (git-version "1.1.0" revision commit))
32867 (source
32868 (origin
32869 (method git-fetch)
32870 (uri (git-reference
32871 (url "https://shinmera.com/project/trivial-mimes")
32872 (commit commit)))
32873 (file-name (git-file-name name version))
32874 (sha256
32875 (base32 "0dhvrrjh11kcqxv6yi8y6ihcrwirviadlmb3a7m6jvbkj9zfs30v"))))
32876 (build-system asdf-build-system/sbcl)
32877 (native-inputs
32878 (list sbcl-hu.dwim.stefil))
32879 (inputs
32880 (list sbcl-cl-fad))
32881 (home-page "https://shinmera.com/docs/trivial-mimes/")
32882 (synopsis "Tiny Common Lisp library to detect mime types in files")
32883 (description
32884 "This is a teensy library that provides some functions to determine the
32885mime-type of a file.")
32886 (license license:zlib))))
32887
32888(define-public cl-trivial-mimes
32889 (sbcl-package->cl-source-package sbcl-trivial-mimes))
32890
32891(define-public ecl-trivial-mimes
32892 (sbcl-package->ecl-package sbcl-trivial-mimes))
32893
32894(define-public sbcl-trivial-monitored-thread
32895 (let ((commit "b0bab23f9a9bd06f0f33809635c7ba4e6a3d5a21")
32896 (revision "0"))
32897 (package
32898 (name "sbcl-trivial-monitored-thread")
32899 (version (git-version "0.3.11" revision commit))
32900 (source
32901 (origin
32902 (method git-fetch)
32903 (uri (git-reference
32904 (url "https://gitlab.com/ediethelm/trivial-monitored-thread")
32905 (commit commit)))
32906 (file-name (git-file-name "trivial-monitored-thread" version))
32907 (sha256
32908 (base32 "1ipnp2l944hc587bifxsnmiymw468imar0v8bqvgxv8pc5sym4ib"))))
32909 (build-system asdf-build-system/sbcl)
32910 (native-inputs
32911 (list sbcl-fiveam))
32912 (inputs
32913 (list sbcl-iterate sbcl-log4cl sbcl-trivial-utilities))
32914 (home-page "https://gitlab.com/ediethelm/trivial-monitored-thread")
32915 (synopsis "Thread monitoring library for Common Lisp")
32916 (description
32917 "Trivial Monitored Thread offers a very simple (aka trivial) way of
32918spawning threads and being informed when one any of them crash and die.")
32919 (license license:expat))))
32920
32921(define-public cl-trivial-monitored-thread
32922 (sbcl-package->cl-source-package sbcl-trivial-monitored-thread))
32923
32924(define-public ecl-trivial-monitored-thread
32925 (sbcl-package->ecl-package sbcl-trivial-monitored-thread))
32926
32927(define-public sbcl-trivial-octet-streams
32928 (let ((commit "71b00632c569618863376dd0cb985f6868b523b0")
32929 (revision "1"))
32930 (package
32931 (name "sbcl-trivial-octet-streams")
32932 (version (git-version "0.1" revision commit))
32933 (source
32934 (origin
32935 (method git-fetch)
32936 (uri (git-reference
32937 (url "https://github.com/sharplispers/trivial-octet-streams")
32938 (commit commit)))
32939 (file-name (git-file-name "cl-trivial-octet-streams" version))
32940 (sha256
32941 (base32 "0zj7aijn10hflr87774hwi5k1jzq6j5bgh2hm70ixxhcmaq7lqk5"))))
32942 (build-system asdf-build-system/sbcl)
32943 (home-page "https://github.com/sharplispers/trivial-octet-streams")
32944 (synopsis "In-memory octet streams for Common Lisp")
32945 (description
32946 "TRIVIAL-OCTET-STREAMS is a Common Lisp library implementing in-memory
32947octet streams analogous to string streams.")
32948 (license license:bsd-3))))
32949
32950(define-public cl-trivial-octet-streams
32951 (sbcl-package->cl-source-package sbcl-trivial-octet-streams))
32952
32953(define-public ecl-trivial-octet-streams
32954 (sbcl-package->ecl-package sbcl-trivial-octet-streams))
32955
32956(define-public sbcl-trivial-open-browser
32957 (let ((commit "7ab4743dea9d592639f15c565bfa0756e828c427")
32958 (revision "1"))
32959 (package
32960 (name "sbcl-trivial-open-browser")
32961 (version (git-version "0.1" revision commit))
32962 (source
32963 (origin
32964 (method git-fetch)
32965 (uri (git-reference
32966 (url "https://github.com/eudoxia0/trivial-open-browser")
32967 (commit commit)))
32968 (file-name (git-file-name "cl-trivial-open-browser" version))
32969 (sha256
32970 (base32 "0ixay1piq420i6adx642qhw45l6ik7rvgk52lyz27dvx5f8yqsdb"))))
32971 (build-system asdf-build-system/sbcl)
32972 (inputs (list xdg-utils))
32973 (arguments
32974 (list
32975 #:phases
32976 #~(modify-phases %standard-phases
32977 (add-after 'unpack 'fix-paths
32978 (lambda* (#:key inputs #:allow-other-keys)
32979 (substitute* "src/trivial-open-browser.lisp"
32980 (("xdg-open")
32981 (search-input-file inputs "/bin/xdg-open"))))))))
32982 (home-page "https://github.com/eudoxia0/trivial-open-browser")
32983 (synopsis "Open a browser window from Common Lisp")
32984 (description
32985 "This package provides a library to open a web browser to a URL.")
32986 (license license:expat))))
32987
32988(define-public cl-trivial-open-browser
32989 (sbcl-package->cl-source-package sbcl-trivial-open-browser))
32990
32991(define-public ecl-trivial-open-browser
32992 (sbcl-package->ecl-package sbcl-trivial-open-browser))
32993
32994(define-public sbcl-trivial-package-local-nicknames
32995 (package
32996 (name "sbcl-trivial-package-local-nicknames")
32997 (version "0.2")
32998 (home-page "https://github.com/phoe/trivial-package-local-nicknames")
32999 (source
33000 (origin
33001 (method git-fetch)
33002 (uri (git-reference
33003 (url home-page)
33004 (commit "16b7ad4c2b120f50da65154191f468ea5598460e")))
33005 (file-name (git-file-name name version))
33006 (sha256
33007 (base32 "18qc27xkjzdcqrilpk3pm7djldwq5rm3ggd5h9cr8hqcd54i2fqg"))))
33008 (build-system asdf-build-system/sbcl)
33009 (synopsis "Common Lisp compatibility library for package local nicknames")
33010 (description
33011 "This library is a portable compatibility layer around package local nicknames (PLN).
33012This was done so there is a portability library for the PLN API not included
33013in DEFPACKAGE.")
33014 (license license:unlicense)))
33015
33016(define-public cl-trivial-package-local-nicknames
33017 (sbcl-package->cl-source-package sbcl-trivial-package-local-nicknames))
33018
33019(define-public ecl-trivial-package-local-nicknames
33020 (sbcl-package->ecl-package sbcl-trivial-package-local-nicknames))
33021
33022(define-public sbcl-trivial-package-locks
33023 (let ((commit "ca2e2b17124c7898942894383002313cea59486d")
33024 (revision "0"))
33025 (package
33026 (name "sbcl-trivial-package-locks")
33027 (version (git-version "0.1" revision commit))
33028 (source
33029 (origin
33030 (method git-fetch)
33031 (uri (git-reference
33032 (url "https://github.com/yitzchak/trivial-package-locks")
33033 (commit commit)))
33034 (file-name (git-file-name "cl-trivial-package-locks" commit))
33035 (sha256
33036 (base32 "0kbyrkd7a9apyq83bl96jspjggjsswxh93111wrmpvhbnm2vll60"))))
33037 (build-system asdf-build-system/sbcl)
33038 (native-inputs (list sbcl-parachute))
33039 (home-page "https://github.com/yitzchak/trivial-package-locks")
33040 (synopsis "Standard interface to the various package lock implementations")
33041 (description
33042 "This package provides a standard interface to the various package lock
33043implementations of Common Lisp.")
33044 (license license:expat))))
33045
33046(define-public cl-trivial-package-locks
33047 (sbcl-package->cl-source-package sbcl-trivial-package-locks))
33048
33049(define-public ecl-trivial-package-locks
33050 (sbcl-package->ecl-package sbcl-trivial-package-locks))
33051
33052(define-public clasp-trivial-package-locks
33053 (sbcl-package->clasp-package sbcl-trivial-package-locks))
33054
33055(define-public sbcl-trivial-raw-io
33056 (let ((commit "b1a3c876305baa0dead419841de7b3e433a75867")
33057 (revision "1"))
33058 (package
33059 (name "sbcl-trivial-raw-io")
33060 (version (git-version "0.0.2" revision commit))
33061 (source
33062 (origin
33063 (method git-fetch)
33064 (uri (git-reference
33065 (url "https://github.com/kingcons/trivial-raw-io")
33066 (commit commit)))
33067 (file-name (git-file-name "trivial-raw-io" version))
33068 (sha256
33069 (base32 "19290zw2b64k78wr62gv30pp7cmqg07q85vfwjknaffjdd73xwi1"))))
33070 (build-system asdf-build-system/sbcl)
33071 (inputs
33072 (list sbcl-alexandria))
33073 (home-page "https://github.com/kingcons/trivial-raw-io")
33074 (synopsis "Trivial portability for raw *nix IO in Common Lisp")
33075 (description
33076 "This library exports three symbols: @code{with-raw-io},
33077@code{read-char}, and @code{read-line}, to provide raw POSIX I/O in Common
33078Lisp.")
33079 (license license:bsd-2))))
33080
33081(define-public cl-trivial-raw-io
33082 (sbcl-package->cl-source-package sbcl-trivial-raw-io))
33083
33084(define-public ecl-trivial-raw-io
33085 (sbcl-package->ecl-package sbcl-trivial-raw-io))
33086
33087(define-public sbcl-trivial-rfc-1123
33088 (let ((commit "9ef59c3fdec08b0e3c9ed02d39533887b6d1b8e3")
33089 (revision "0"))
33090 (package
33091 (name "sbcl-trivial-rfc-1123")
33092 (version (git-version "0.0.0" revision commit))
33093 (source
33094 (origin
33095 (method git-fetch)
33096 (uri (git-reference
33097 (url "https://github.com/stacksmith/trivial-rfc-1123")
33098 (commit commit)))
33099 (file-name (git-file-name "cl-trivial-rfc-1123" version))
33100 (sha256
33101 (base32 "1w4ywpj10fnp7cya62dzlxlg8nyk4lppn2pnmfixsndwr4ib1h6x"))))
33102 (build-system asdf-build-system/sbcl)
33103 (arguments `(#:asd-systems '("trivial-rfc-1123")))
33104 (inputs (list sbcl-cl-ppcre))
33105 (home-page "https://github.com/stacksmith/trivial-rfc-1123")
33106 (synopsis "Parse and print RFC-1123 timestamps")
33107 (description
33108 "This package parses and prints dates in RFC-1123 format.")
33109 (license license:bsd-3))))
33110
33111(define-public cl-trivial-rfc-1123
33112 (sbcl-package->cl-source-package sbcl-trivial-rfc-1123))
33113
33114(define-public ecl-trivial-rfc-1123
33115 (sbcl-package->ecl-package sbcl-trivial-rfc-1123))
33116
33117(define-public sbcl-trivial-shell
33118 (let ((commit "e02ec191b34b52deca5d1c4ee99d4fa13b8772e0"))
33119 (package
33120 (name "sbcl-trivial-shell")
33121 (version (git-version "0.2.0" "1" commit))
33122 (source
33123 (origin
33124 (method git-fetch)
33125 (uri (git-reference
33126 (url "https://github.com/hraban/trivial-shell")
33127 (commit commit)))
33128 (file-name (git-file-name name version))
33129 (sha256
33130 (base32 "08mpkl5ij5sjfsyn8pq2kvsvpvyvr7ha1r8g1224fa667b8k2q85"))))
33131 (build-system asdf-build-system/sbcl)
33132 (arguments
33133 (list
33134 #:phases
33135 #~(modify-phases %standard-phases
33136 (add-after 'unpack 'fix-paths
33137 (lambda _
33138 (substitute* "dev/definitions.lisp"
33139 (("/bin/sh")
33140 (which "sh"))))))))
33141 (native-inputs
33142 (list sbcl-lift))
33143 (home-page "https://common-lisp.net/project/trivial-shell/")
33144 (synopsis "Common Lisp access to the shell")
33145 (description
33146 "A simple Common-Lisp interface to the underlying operating system.
33147It's independent of the implementation and operating system.")
33148 (license license:expat))))
33149
33150(define-public cl-trivial-shell
33151 (sbcl-package->cl-source-package sbcl-trivial-shell))
33152
33153(define-public ecl-trivial-shell
33154 (sbcl-package->ecl-package sbcl-trivial-shell))
33155
33156(define-public sbcl-trivial-sockets
33157 (package
33158 (name "sbcl-trivial-sockets")
33159 (version "0.4")
33160 (source
33161 (origin
33162 (method git-fetch)
33163 (uri (git-reference
33164 (url "https://github.com/usocket/trivial-sockets/")
33165 (commit (string-append "v" version))))
33166 (file-name (git-file-name "cl-trivial-sockets" version))
33167 (sha256
33168 (base32 "0xj9x5z3psxqap9c29qz1xswx5fiqxyzd35kmbw2g6z08cgb7nd0"))))
33169 (build-system asdf-build-system/sbcl)
33170 (home-page "https://github.com/usocket/trivial-sockets")
33171 (synopsis "Simple socket library for Common Lisp")
33172 (description
33173 "This library is a portable socket interface that allows CL programs to
33174open connected (client) stream sockets to network services.")
33175 (license license:expat)))
33176
33177(define-public cl-trivial-sockets
33178 (sbcl-package->cl-source-package sbcl-trivial-sockets))
33179
33180(define-public sbcl-trivial-timeout
33181 (let ((commit "e70d9b4f7caeab83ea6ac50d724470fe49561e66")
33182 (revision "2"))
33183 (package
33184 (name "sbcl-trivial-timeout")
33185 (version (git-version "0.1.5" revision commit))
33186 (source
33187 (origin
33188 (method git-fetch)
33189 (uri (git-reference
33190 (url "https://github.com/hraban/trivial-timeout")
33191 (commit commit)))
33192 (file-name (git-file-name "trivial-timeout" version))
33193 (sha256
33194 (base32 "0s8z9aj6b3kv21yiyk13cjylzf5zlnw9v86vcff477m1gk9yddjs"))))
33195 (build-system asdf-build-system/sbcl)
33196 (native-inputs
33197 (list sbcl-lift))
33198 (home-page "https://github.com/hraban/trivial-timeout")
33199 (synopsis "Timeout library for Common Lisp")
33200 (description
33201 "This library provides an OS and implementation independent access to
33202timeouts.")
33203 (license license:expat))))
33204
33205(define-public cl-trivial-timeout
33206 (sbcl-package->cl-source-package sbcl-trivial-timeout))
33207
33208(define-public ecl-trivial-timeout
33209 (sbcl-package->ecl-package sbcl-trivial-timeout))
33210
33211(define-public sbcl-trivial-types
33212 (package
33213 (name "sbcl-trivial-types")
33214 (version "0.0.1")
33215 (source
33216 (origin
33217 (method git-fetch)
33218 (uri (git-reference
33219 (url "https://github.com/m2ym/trivial-types")
33220 (commit "ee869f2b7504d8aa9a74403641a5b42b16f47d88")))
33221 (file-name (git-file-name name version))
33222 (sha256
33223 (base32 "1s4cp9bdlbn8447q7w7f1wkgwrbvfzp20mgs307l5pxvdslin341"))))
33224 (build-system asdf-build-system/sbcl)
33225 (home-page "https://github.com/m2ym/trivial-types")
33226 (synopsis "Trivial type definitions for Common Lisp")
33227 (description
33228 "TRIVIAL-TYPES provides missing but important type definitions such as
33229PROPER-LIST, ASSOCIATION-LIST, PROPERTY-LIST and TUPLE.")
33230 (license license:llgpl)))
33231
33232(define-public cl-trivial-types
33233 (sbcl-package->cl-source-package sbcl-trivial-types))
33234
33235(define-public ecl-trivial-types
33236 (sbcl-package->ecl-package sbcl-trivial-types))
33237
33238(define-public clasp-trivial-types
33239 (sbcl-package->clasp-package sbcl-trivial-types))
33240
33241(define-public sbcl-trivial-utf-8
33242 (let ((commit "6ca9943588cbc61ad22a3c1ff81beb371e122394")
33243 (revision "2"))
33244 (package
33245 (name "sbcl-trivial-utf-8")
33246 (version (git-version "0.0.0" revision commit))
33247 (source
33248 (origin
33249 (method git-fetch)
33250 (uri
33251 (git-reference
33252 (url (string-append "https://gitlab.common-lisp.net/"
33253 "trivial-utf-8/trivial-utf-8.git"))
33254 (commit commit)))
33255 (file-name (git-file-name "cl-trivial-utf-8" version))
33256 (sha256
33257 (base32 "0gzgbyzbbhny5y1lq2x82vfy4b4p1snq1sy9lj82hdq7lkyj03ss"))))
33258 (arguments
33259 ;; Guix incorrectly assumes the "8" is part of the version
33260 ;; number and lobs it off.
33261 `(#:asd-systems '("trivial-utf-8")))
33262 (build-system asdf-build-system/sbcl)
33263 (synopsis "UTF-8 input/output library")
33264 (description
33265 "The Babel library solves a similar problem while understanding more
33266encodings. Trivial UTF-8 was written before Babel existed, but for new
33267projects you might be better off going with Babel. The one plus that Trivial
33268UTF-8 has is that it doesn't depend on any other libraries.")
33269 (home-page "https://common-lisp.net/project/trivial-utf-8/")
33270 (license license:bsd-3))))
33271
33272(define-public cl-trivial-utf-8
33273 (sbcl-package->cl-source-package sbcl-trivial-utf-8))
33274
33275(define-public ecl-trivial-utf-8
33276 (sbcl-package->ecl-package sbcl-trivial-utf-8))
33277
33278(define-public clasp-trivial-utf-8
33279 (sbcl-package->clasp-package sbcl-trivial-utf-8))
33280
33281(define-public sbcl-trivial-utilities
33282 (let ((commit "279ff255562628196942632c543d91c357067221")
33283 (revision "0"))
33284 (package
33285 (name "sbcl-trivial-utilities")
33286 (version (git-version "0.4.0" revision commit))
33287 (source
33288 (origin
33289 (method git-fetch)
33290 (uri (git-reference
33291 (url "https://gitlab.com/ediethelm/trivial-utilities")
33292 (commit commit)))
33293 (file-name (git-file-name "trivial-utilities" version))
33294 (sha256
33295 (base32 "0k1xmn5f5dik7scadw0vyy67mik4ypnfqbhlv2vsg9afxzbpx2dz"))))
33296 (build-system asdf-build-system/sbcl)
33297 (inputs
33298 (list sbcl-alexandria sbcl-iterate sbcl-closer-mop))
33299 (home-page "https://gitlab.com/ediethelm/trivial-utilities")
33300 (synopsis "Collection of useful types, functions and macros for Common Lisp")
33301 (description
33302 "This package provides a collection of types, functions and macros. Some
33303 of the functionality is implemented from Graham's On Lisp and Seibel's Practical
33304 Common Lisp.")
33305 (license license:expat))))
33306
33307(define-public cl-trivial-utilities
33308 (sbcl-package->cl-source-package sbcl-trivial-utilities))
33309
33310(define-public ecl-trivial-utilities
33311 (sbcl-package->ecl-package sbcl-trivial-utilities))
33312
33313(define-public clasp-trivial-utilities
33314 (sbcl-package->clasp-package sbcl-trivial-utilities))
33315
33316(define-public sbcl-trivial-with-current-source-form
33317 (let ((commit "9e343e043a77a5478c1f77bb626db22335fbbfb8")
33318 (revision "1"))
33319 (package
33320 (name "sbcl-trivial-with-current-source-form")
33321 (version (git-version "0.1.0" revision commit))
33322 (source
33323 (origin
33324 (method git-fetch)
33325 (uri (git-reference
33326 (url
33327 "https://github.com/scymtym/trivial-with-current-source-form")
33328 (commit commit)))
33329 (file-name (git-file-name "trivial-with-current-source-form" version))
33330 (sha256
33331 (base32 "15zs7mc422ycp1cvcxmirif1dq15mlmv8vzd6l6nzn4qgmph9wz0"))))
33332 (build-system asdf-build-system/sbcl)
33333 (inputs
33334 (list sbcl-alexandria))
33335 (home-page "https://github.com/scymtym/trivial-with-current-source-form")
33336 (synopsis "Help producing better errors for macro users")
33337 (description
33338 "This library allows macro writers to provide better feedback to macro
33339users when errors are signaled during macroexpansion. It uses the compiler's
33340concept of a source-form to report where the error or warning is located.")
33341 (license license:lgpl3))))
33342
33343(define-public cl-trivial-with-current-source-form
33344 (sbcl-package->cl-source-package sbcl-trivial-with-current-source-form))
33345
33346(define-public ecl-trivial-with-current-source-form
33347 ;; Trivial-with-current-source-form does not give any benefits on ECL.
33348 ;; This package is so packages dependent on trivial-with-current-source-form
33349 ;; can be loaded on ECL.
33350 (sbcl-package->ecl-package sbcl-trivial-with-current-source-form))
33351
33352(define-public clasp-trivial-with-current-source-form
33353 (sbcl-package->clasp-package sbcl-trivial-with-current-source-form))
33354
33355(define-public sbcl-trivial-ws
33356 (let ((commit "ebf1ec0ea26bdac4007e98e89f3a621dbfb4390a")
33357 (revision "0"))
33358 (package
33359 (name "sbcl-trivial-ws")
33360 (version (git-version "0.1" revision commit))
33361 (source
33362 (origin
33363 (method git-fetch)
33364 (uri (git-reference
33365 (url "https://github.com/ceramic/trivial-ws/")
33366 (commit commit)))
33367 (file-name (git-file-name name version))
33368 (sha256
33369 (base32 "0qmsf0dhmyhjgqjzdgj2yb1nkrijwp4p1j411613i45xjc2zd6m7"))))
33370 (build-system asdf-build-system/sbcl)
33371 (native-inputs
33372 (list sbcl-prove
33373 sbcl-find-port))
33374 (inputs
33375 (list sbcl-hunchensocket
33376 sbcl-websocket-driver
33377 sbcl-cl-async))
33378 (home-page "https://github.com/ceramic/trivial-ws")
33379 (synopsis "Common Lisp library for using WebSockets")
33380 (description
33381 "This package implements a simple interface for using WebSockets via Common Lisp.")
33382 (license license:expat))))
33383
33384(define-public cl-trivial-ws
33385 (sbcl-package->cl-source-package sbcl-trivial-ws))
33386
33387(define-public ecl-trivial-ws
33388 (package
33389 (inherit (sbcl-package->ecl-package sbcl-trivial-ws))
33390 (arguments
33391 ;; https://github.com/ceramic/trivial-ws/issues/7
33392 (list #:tests? #f))))
33393
33394(define-public sbcl-trivialib-type-unify
33395 (let ((commit "62492ebf04db567dcf435ae84c50b7b8202ecf99")
33396 (revision "1"))
33397 (package
33398 (name "sbcl-trivialib-type-unify")
33399 (version (git-version "0.1" revision commit))
33400 (source
33401 (origin
33402 (method git-fetch)
33403 (uri (git-reference
33404 (url "https://github.com/guicho271828/trivialib.type-unify")
33405 (commit commit)))
33406 (file-name (git-file-name name version))
33407 (sha256
33408 (base32
33409 "1bkyfzbwv75p50zp8n1n9rh2r29pw3vgz91gmn2gzzkyq3khj1vh"))))
33410 (build-system asdf-build-system/sbcl)
33411 (synopsis "Common Lisp type unification")
33412 (description
33413 "Unifies a parametrized type specifier against an actual type specifier.
33414Importantly, it handles complicated array-subtypes and number-related types
33415correctly.")
33416 (home-page "https://github.com/guicho271828/trivialib.type-unify")
33417 (license license:lgpl3+)
33418 (inputs
33419 (list sbcl-alexandria
33420 sbcl-trivia
33421 sbcl-introspect-environment
33422 sbcl-type-r))
33423 (native-inputs
33424 (list sbcl-fiveam))
33425 (arguments
33426 `(#:asd-systems '("trivialib.type-unify"))))))
33427
33428(define-public cl-trivialib-type-unify
33429 (sbcl-package->cl-source-package sbcl-trivialib-type-unify))
33430
33431(define-public ecl-trivialib-type-unify
33432 (sbcl-package->ecl-package sbcl-trivialib-type-unify))
33433
33434(define-public sbcl-trucler
33435 (let ((commit "39d4ba1a44f6998a961ed19b9cd8d19ea48d43ba")
33436 (revision "2"))
33437 (package
33438 (name "sbcl-trucler")
33439 (version (git-version "0.0.0" revision commit))
33440 (source
33441 (origin
33442 (method git-fetch)
33443 (uri (git-reference
33444 (url "https://github.com/s-expressionists/Trucler")
33445 (commit commit)))
33446 (file-name (git-file-name "cl-trucler" commit))
33447 (sha256
33448 (base32 "16cxx9pgpn3bkrmazc4lqhmaf20c0rhp1vaj78ms8ldwfqqrgznr"))))
33449 (build-system asdf-build-system/sbcl)
33450 (inputs
33451 (list sbcl-acclimation))
33452 (arguments
33453 '(#:asd-systems '("trucler"
33454 "trucler-base"
33455 "trucler-native"
33456 "trucler-reference")))
33457 (home-page "https://github.com/s-expressionists/Trucler")
33458 (synopsis "Environment protocol for Common Lisp compilers")
33459 (description
33460 "Trucler defines a CLOS-based protocol to be used by Common Lisp
33461compilers for environment query and update. In addition, library authors can
33462use the @code{trucler-native} interface to inspect native environments.
33463Trucler supports introspection for variables, functions, tags, blocks and
33464optimization policies.")
33465 (license license:bsd-2))))
33466
33467(define-public cl-trucler
33468 (sbcl-package->cl-source-package sbcl-trucler))
33469
33470(define-public ecl-trucler
33471 (package
33472 (inherit (sbcl-package->ecl-package sbcl-trucler))
33473 (arguments
33474 ;; https://github.com/s-expressionists/Trucler/issues/14
33475 (list #:tests? #f))))
33476
33477(define-public sbcl-type-i
33478 (let ((commit "d34440ab4ebf5a46a58deccb35950b15670e3667")
33479 (revision "2"))
33480 (package
33481 (name "sbcl-type-i")
33482 (build-system asdf-build-system/sbcl)
33483 (version (git-version "0.1" revision commit))
33484 (home-page "https://github.com/guicho271828/type-i")
33485 (source
33486 (origin
33487 (method git-fetch)
33488 (uri (git-reference
33489 (url home-page)
33490 (commit commit)))
33491 (file-name (git-file-name name version))
33492 (sha256
33493 (base32
33494 "12wsga0pwjkkr176lnjwkmmlm3ccp0n310sjj9h20lk53iyd0z69"))))
33495 (inputs
33496 (list sbcl-alexandria
33497 sbcl-introspect-environment
33498 sbcl-trivia.trivial))
33499 (native-inputs
33500 (list sbcl-fiveam))
33501 (synopsis "Type inference utility on unary predicates for Common Lisp")
33502 (description "This library tries to provide a way to detect what kind of
33503type the given predicate is trying to check. This is different from inferring
33504the return type of a function.")
33505 (license license:llgpl))))
33506
33507(define-public cl-type-i
33508 (sbcl-package->cl-source-package sbcl-type-i))
33509
33510(define-public ecl-type-i
33511 (package
33512 (inherit (sbcl-package->ecl-package sbcl-type-i))
33513 (arguments
33514 ;; The tests get stuck indefinitely
33515 '(#:tests? #f))))
33516
33517(define-public sbcl-type-r
33518 (let ((commit "83c89e38f2f7a7b16f1012777ecaf878cfa6a267")
33519 (revision "1"))
33520 (package
33521 (name "sbcl-type-r")
33522 (version (git-version "0.0.0" revision commit))
33523 (source
33524 (origin
33525 (method git-fetch)
33526 (uri (git-reference
33527 (url "https://github.com/guicho271828/type-r")
33528 (commit commit)))
33529 (file-name (git-file-name name version))
33530 (sha256
33531 (base32
33532 "1arsxc2539rg8vbrdirz4xxj1b06mc6g6rqndz7a02g127qvk2sm"))))
33533 (build-system asdf-build-system/sbcl)
33534 (synopsis "Parser interface for Common Lisp built-in compound types")
33535 (description
33536 "Collections of accessor functions and patterns to access
33537the elements in compound type specifier, e.g. @code{dimensions} in
33538@code{(array element-type dimensions)}")
33539 (home-page "https://github.com/guicho271828/type-r")
33540 (license license:lgpl3+)
33541 (inputs
33542 (list sbcl-trivia
33543 sbcl-alexandria))
33544 (native-inputs
33545 (list sbcl-fiveam)))))
33546
33547(define-public cl-type-r
33548 (sbcl-package->cl-source-package sbcl-type-r))
33549
33550(define-public ecl-type-r
33551 (sbcl-package->ecl-package sbcl-type-r))
33552
33553(define-public sbcl-type-templates
33554 (let ((commit "5b389ebcff61b81585a64d0b899b69fa12aa5f96")
33555 (revision "0"))
33556 (package
33557 (name "sbcl-type-templates")
33558 (version (git-version "4.0.0" revision commit))
33559 (source
33560 (origin
33561 (method git-fetch)
33562 (uri (git-reference
33563 (url "https://codeberg.org/shinmera/type-templates")
33564 (commit commit)))
33565 (file-name (git-file-name "cl-type-templates" version))
33566 (sha256
33567 (base32 "1zmz3bmwg8ncqbnjwimn8n7q9ik9arnhd5ijd22ap1nwhbnmk1rj"))))
33568 (build-system asdf-build-system/sbcl)
33569 (arguments
33570 ;; No tests
33571 (list #:tests? #f))
33572 (inputs
33573 (list sbcl-alexandria
33574 sbcl-documentation-utils
33575 sbcl-form-fiddle))
33576 (home-page "https://shinmera.com/docs/type-templates/")
33577 (synopsis "Library for defining and expanding templated functions")
33578 (description
33579 "The Type-Templates library allows you to define types and “template
33580functions” that can be expanded into various type-specialized versions to
33581eliminate runtime dispatch overhead. It was specifically designed to
33582implement low-level numerical data types and functionality.")
33583 (license license:zlib))))
33584
33585(define-public cl-type-templates
33586 (sbcl-package->cl-source-package sbcl-type-templates))
33587
33588(define-public ecl-type-templates
33589 (sbcl-package->ecl-package sbcl-type-templates))
33590
33591(define-public clasp-type-templates
33592 (sbcl-package->clasp-package sbcl-type-templates))
33593
33594(define-public sbcl-typo
33595 (let ((commit "86ebb75edba8bb6b828d5196d96f38ed1225384d")
33596 (revision "1"))
33597 (package
33598 (name "sbcl-typo")
33599 (version (git-version "0.0.0" revision commit))
33600 (source
33601 (origin
33602 (method git-fetch)
33603 (uri (git-reference
33604 (url "https://github.com/marcoheisig/Typo")
33605 (commit commit)))
33606 (file-name (git-file-name "cl-typo" version))
33607 (sha256
33608 (base32 "12r0jwhl41mfgb3wkikisvp5qf35nmajmvqv2gjjph7j2p5qh8h0"))))
33609 (build-system asdf-build-system/sbcl)
33610 (inputs
33611 (list sbcl-alexandria
33612 sbcl-closer-mop
33613 sbcl-introspect-environment
33614 sbcl-trivia
33615 sbcl-trivial-arguments
33616 sbcl-trivial-garbage))
33617 (home-page "https://github.com/marcoheisig/Typo")
33618 (synopsis "Portable type inference library for Common Lisp")
33619 (description
33620 "Typo is a portable library for Common Lisp that does approximate
33621reasoning about types, but without consing.")
33622 (license license:expat))))
33623
33624(define-public cl-typo
33625 (sbcl-package->cl-source-package sbcl-typo))
33626
33627(define-public sbcl-uax-14
33628 (let ((commit "0432162525119c401d3d705bb9bcc9580a03914f")
33629 (revision "1"))
33630 (package
33631 (name "sbcl-uax-14")
33632 (version (git-version "1.0.0" revision commit))
33633 (source
33634 (origin
33635 (method git-fetch)
33636 (uri (git-reference
33637 (url "https://codeberg.org/shinmera/uax-14")
33638 (commit commit)))
33639 (file-name (git-file-name "uax-14" version))
33640 (sha256
33641 (base32 "1sb2s58k01yjaggaq8i7kbyfsh6mzyqbiz1vm59smxn9qqwd8apm"))))
33642 (build-system asdf-build-system/sbcl)
33643 (native-inputs
33644 (list sbcl-parachute sbcl-cl-ppcre))
33645 (inputs
33646 (list sbcl-documentation-utils))
33647 (arguments
33648 `(#:asd-systems '("uax-14")))
33649 (home-page "https://shinmera.com/docs/uax-14/")
33650 (synopsis "Unicode Standard Annex #14 for standardised line breaking")
33651 (description
33652 "This is an implementation of the Unicode Standards Annex
33653#14 (@url{http://www.unicode.org/reports/tr14/}) line breaking algorithm. It
33654provides a fast and convenient way to determine line breaking opportunities in
33655text.
33656
33657Note that this algorithm does not support break opportunities that require
33658morphological analysis. In order to handle such cases, please consult a system
33659that provides this kind of capability, such as a hyphenation algorithm.
33660
33661Also note that this system is completely unaware of layouting decisions. Any
33662kind of layouting decisions, such as which breaks to pick, how to space
33663between words, how to handle bidirectionality, and what to do in emergency
33664situations when there are no breaks on an overfull line are left up to the
33665user.")
33666 (license license:zlib))))
33667
33668(define-public cl-uax-14
33669 (sbcl-package->cl-source-package sbcl-uax-14))
33670
33671(define-public ecl-uax-14
33672 (sbcl-package->ecl-package sbcl-uax-14))
33673
33674(define-public clasp-uax-14
33675 (sbcl-package->clasp-package sbcl-uax-14))
33676
33677(define-public sbcl-uax-15
33678 (package
33679 (name "sbcl-uax-15")
33680 (version "0.1.3")
33681 (source
33682 (origin
33683 (method git-fetch)
33684 (uri (git-reference
33685 (url "https://github.com/sabracrolleton/uax-15")
33686 (commit (string-append "v" version))))
33687 (file-name (git-file-name "cl-uax-15" version))
33688 (sha256
33689 (base32 "0kkr3sw3hqsb8ciyn8dzb1cfz260fk1y39vydc98gsfrn6nqh3vw"))))
33690 (build-system asdf-build-system/sbcl)
33691 (arguments
33692 `(#:asd-systems '("uax-15")))
33693 (native-inputs
33694 (list sbcl-parachute))
33695 (inputs
33696 (list sbcl-cl-ppcre sbcl-split-sequence))
33697 (home-page "https://github.com/sabracrolleton/uax-15")
33698 (synopsis "Common Lisp implementation of unicode normalization functions")
33699 (description
33700 "This package provides supports for unicode normalization, RFC8264 and
33701RFC7564.")
33702 (license license:expat)))
33703
33704(define-public cl-uax-15
33705 (sbcl-package->cl-source-package sbcl-uax-15))
33706
33707(define-public ecl-uax-15
33708 (sbcl-package->ecl-package sbcl-uax-15))
33709
33710(define-public sbcl-ubiquitous
33711 (let ((commit "35eb7bd9e1b3daee1705f6b41260775180cce8af")
33712 (revision "1"))
33713 (package
33714 (name "sbcl-ubiquitous")
33715 (version (git-version "2.0.0" revision commit))
33716 (source
33717 (origin
33718 (method git-fetch)
33719 (uri (git-reference
33720 (url "https://codeberg.org/shinmera/ubiquitous")
33721 (commit commit)))
33722 (file-name (git-file-name "ubiquitous" version))
33723 (sha256
33724 (base32 "1xlkaqmjcpkiv2xl2s2pvvrv976dlc846wm16s1lj62iy1315i49"))))
33725 (build-system asdf-build-system/sbcl)
33726 (inputs
33727 (list sbcl-bordeaux-threads))
33728 (arguments
33729 '(#:asd-systems '("ubiquitous"
33730 "ubiquitous-concurrent")))
33731 (home-page "https://shinmera.com/docs/ubiquitous/")
33732 (synopsis "Application configuration mechanism for Common Lisp")
33733 (description
33734 "@code{UBIQUITOUS} is a very easy-to-use library for persistent
33735configuration storage. It automatically takes care of finding a suitable place
33736to save your data, and provides simple functions to access and modify the data
33737within.")
33738 (license license:zlib))))
33739
33740(define-public cl-ubiquitous
33741 (sbcl-package->cl-source-package sbcl-ubiquitous))
33742
33743(define-public ecl-ubiquitous
33744 (sbcl-package->ecl-package sbcl-ubiquitous))
33745
33746(define-public sbcl-ucons
33747 (let ((commit "d976810ef2b12a2caaf55bd0f258272e9b79f3be")
33748 (revision "0"))
33749 (package
33750 (name "sbcl-ucons")
33751 (version (git-version "0.0.0" revision commit))
33752 (source
33753 (origin
33754 (method git-fetch)
33755 (uri (git-reference
33756 (url "https://github.com/marcoheisig/ucons")
33757 (commit commit)))
33758 (file-name (git-file-name "cl-ucons" version))
33759 (sha256
33760 (base32 "17aj47pdjiywnf33hl46p27za2q0pq5ar3fpqxaqskggxrfxmijl"))))
33761 (build-system asdf-build-system/sbcl)
33762 (inputs
33763 (list sbcl-alexandria
33764 sbcl-atomics
33765 sbcl-bordeaux-threads
33766 sbcl-named-readtables
33767 sbcl-trivia))
33768 (home-page "https://github.com/marcoheisig/ucons")
33769 (synopsis "Unique conses for Common Lisp")
33770 (description "UCONS is a Common Lisp library providing unique conses.
33771Unique conses are different from regular conses in that, in addition to their
33772@code{car} and @code{cdr}, they maintain a table of past users. Also, the
33773@code{cdr} of each ucons is restricted to other uconses or @code{nil}.
33774Uconses are meant for those situations where even reusing regular conses (to
33775avoid consing) is too computationally expensive.")
33776 (license license:expat))))
33777
33778(define-public cl-ucons
33779 (sbcl-package->cl-source-package sbcl-ucons))
33780
33781(define-public ecl-ucons
33782 (sbcl-package->ecl-package sbcl-ucons))
33783
33784(define-public sbcl-uffi
33785 (package
33786 (name "sbcl-uffi")
33787 (version "2.1.2")
33788 (source
33789 (origin
33790 (method git-fetch)
33791 (uri (git-reference
33792 (url "http://git.kpe.io/uffi.git")
33793 (commit (string-append "v" version))))
33794 (file-name (git-file-name name version))
33795 (sha256
33796 (base32 "1hqszvz0a3wk4s9faa83sc3vjxcb5rxmjclyr17yzwg55z733kry"))
33797 (modules '((guix build utils)))
33798 (snippet
33799 ;; The useless bundled debian folder drags `make' into the closure.
33800 `(begin
33801 (delete-file-recursively "debian")
33802 #t))))
33803 (build-system asdf-build-system/sbcl)
33804 (arguments
33805 `(#:tests? #f ; TODO: Fix use of deprecated ASDF functions
33806 #:phases
33807 (modify-phases %standard-phases
33808 (add-after 'unpack 'fix-permissions
33809 (lambda _
33810 (make-file-writable "doc/html.tar.gz")
33811 #t)))))
33812 (synopsis "Universal foreign function library for Common Lisp")
33813 (description
33814 "UFFI provides a universal foreign function interface (FFI)
33815 for Common Lisp.")
33816 (home-page "https://quickdocs.org/uffi/")
33817 (license license:llgpl)))
33818
33819(define-public cl-uffi
33820 (package
33821 (inherit (sbcl-package->cl-source-package sbcl-uffi))
33822 (arguments
33823 `(#:phases
33824 ;; asdf-build-system/source has its own phases and does not inherit
33825 ;; from asdf-build-system/sbcl phases.
33826 (modify-phases %standard-phases/source
33827 ;; Already done in SBCL package.
33828 (delete 'reset-gzip-timestamps))))))
33829
33830(define-public sbcl-umbra
33831 (let ((commit "d6ef2f6cbfa26180929061129eaf325bf17f73d8")
33832 (revision "1"))
33833 (package
33834 (name "sbcl-umbra")
33835 (version (git-version "0.0.0" revision commit))
33836 (source
33837 (origin
33838 (method git-fetch)
33839 (uri (git-reference
33840 (url "https://git.mfiano.net/mfiano/umbra")
33841 (commit commit)))
33842 (file-name (git-file-name "umbra" version))
33843 (sha256
33844 (base32 "04vyh2j00zdpb8ryxr8g81wjcmqlz9wrn55r3cypcj4qg970r5wi"))))
33845 (build-system asdf-build-system/sbcl)
33846 (inputs
33847 (list sbcl-golden-utils sbcl-shadow sbcl-varjo))
33848 (home-page "https://git.mfiano.net/mfiano/umbra")
33849 (synopsis "Common Lisp library of reusable GPU shader functions")
33850 (description
33851 "This is a Common Lisp library consisting of a collection of useful GPU
33852shader functions, written with @code{Shadow}.")
33853 (license license:expat))))
33854
33855(define-public ecl-umbra
33856 (sbcl-package->ecl-package sbcl-umbra))
33857
33858(define-public cl-umbra
33859 (sbcl-package->cl-source-package sbcl-umbra))
33860
33861(define-public sbcl-universal-tween-engine
33862 (let ((commit "a86d3c61ce6161d88996b055a292bb42469344ef")
33863 (revision "0"))
33864 (package
33865 (name "sbcl-universal-tween-engine")
33866 (version (git-version "1.0.0" revision commit))
33867 (source
33868 (origin
33869 (method git-fetch)
33870 (uri (git-reference
33871 (url "https://github.com/bohonghuang/cl-universal-tween-engine")
33872 (commit commit)))
33873 (file-name (git-file-name name version))
33874 (sha256
33875 (base32 "12bn21rslsmyp9y0y9s2hxivbzh7aajdbfvm3506k9x3yzlzvx7r"))))
33876 (build-system asdf-build-system/sbcl)
33877 (native-inputs
33878 (list sbcl-parachute))
33879 (inputs
33880 (list sbcl-alexandria))
33881 (home-page "https://github.com/bohonghuang/cl-universal-tween-engine")
33882 (synopsis "Common Lisp port of Universal Tween Engine")
33883 (description "Common Lisp port of Universal Tween Engine.")
33884 (license license:asl2.0))))
33885
33886(define-public ecl-universal-tween-engine
33887 (sbcl-package->ecl-package sbcl-universal-tween-engine))
33888
33889(define-public cl-universal-tween-engine
33890 (sbcl-package->cl-source-package sbcl-universal-tween-engine))
33891
33892(define-public sbcl-unix-opts
33893 (let ((commit "0e61f34b2ecf62288437810d4abb31e572048b04")
33894 (revision "1"))
33895 (package
33896 (name "sbcl-unix-opts")
33897 (version (git-version "0.1.7" revision commit))
33898 (source
33899 (origin
33900 (method git-fetch)
33901 (uri (git-reference
33902 (url "https://github.com/libre-man/unix-opts")
33903 (commit commit)))
33904 (file-name (git-file-name "unix-opts" version))
33905 (sha256
33906 (base32 "16mcqpzwrz808p9n3wwl99ckg3hg7yihw08y1i4l7c92aldbkasq"))))
33907 (build-system asdf-build-system/sbcl)
33908 (home-page "https://github.com/libre-man/unix-opts")
33909 (synopsis "Unix-style command line options parser")
33910 (description
33911 "This is a minimalistic parser of command line options. The main
33912advantage of the library is the ability to concisely define command line
33913options once and then use this definition for parsing and extraction of
33914command line arguments, as well as printing description of command line
33915options (you get --help for free). This way you don't need to repeat
33916yourself. Also, @command{unix-opts} doesn't depend on anything and
33917precisely controls the behavior of the parser via Common Lisp restarts.")
33918 (license license:expat))))
33919
33920(define-public cl-unix-opts
33921 (sbcl-package->cl-source-package sbcl-unix-opts))
33922
33923(define-public ecl-unix-opts
33924 (sbcl-package->ecl-package sbcl-unix-opts))
33925
33926(define-public clasp-unix-opts
33927 (sbcl-package->clasp-package sbcl-unix-opts))
33928
33929(define-public sbcl-usocket
33930 (package
33931 (name "sbcl-usocket")
33932 (version "0.8.9")
33933 (source
33934 (origin
33935 (method git-fetch)
33936 (uri (git-reference
33937 (url "https://github.com/usocket/usocket/")
33938 (commit (string-append "v" version))))
33939 (file-name (git-file-name "cl-usocket" version))
33940 (sha256
33941 (base32 "0msrrp069vrma70fr0wzw5jc94r796ha53dhpq8bdm1h3fm7f103"))))
33942 (build-system asdf-build-system/sbcl)
33943 (native-inputs
33944 (list sbcl-rt))
33945 (inputs
33946 (list sbcl-bordeaux-threads sbcl-split-sequence))
33947 (arguments
33948 `(#:tests? #f ; FIXME: Tests need network access?
33949 #:asd-systems '("usocket"
33950 "usocket-server")))
33951 (home-page "https://common-lisp.net/project/usocket/")
33952 (synopsis "Universal socket library for Common Lisp")
33953 (description
33954 "This library strives to provide a portable TCP/IP and UDP/IP socket
33955interface for as many Common Lisp implementations as possible, while keeping
33956the abstraction and portability layer as thin as possible.")
33957 (license license:expat)))
33958
33959(define-public cl-usocket
33960 (sbcl-package->cl-source-package sbcl-usocket))
33961
33962(define-public ecl-usocket
33963 (sbcl-package->ecl-package sbcl-usocket))
33964
33965(define-public sbcl-alive-lsp
33966 (package
33967 (name "sbcl-alive-lsp")
33968 (version "0.2.11")
33969 (source
33970 (origin
33971 (method git-fetch)
33972 (uri (git-reference
33973 (url "https://github.com/nobody-famous/alive-lsp")
33974 (commit (string-append "v" version))))
33975 (file-name (git-file-name "sbcl-alive-lsp" version))
33976 (sha256
33977 (base32 "1dmgglrg7294vx8qacc5d2hkhfrids1iacihj2l8czrvwc3i19yz"))))
33978 (build-system asdf-build-system/sbcl)
33979 (inputs
33980 (list sbcl-usocket
33981 sbcl-cl-json
33982 sbcl-bordeaux-threads
33983 sbcl-flexi-streams))
33984 (home-page "https://github.com/nobody-famous/alive-lsp")
33985 (synopsis "Common Lisp Alive LSP")
33986 (description "This package provides a Language Server Protocol
33987implementation for use with the
33988@url{https://github.com/nobody-famous/alive, Alive} Visual Studio Code
33989extension.
33990
33991It can be used in Emacs like this:
33992
33993@example
33994(require 'lsp)
33995(defun lsp-lisp-alive-start-ls ()
33996 \"Start the alive-lsp.\"
33997 (interactive)
33998 (when-let (((lsp--port-available \"localhost\" lsp-lisp-alive-port)))
33999 (lsp-async-start-process #'ignore #'ignore
34000 \"sbcl\"
34001 \"--eval\"
34002 \"(require :asdf)\"
34003 \"--eval\"
34004 \"(asdf:load-system :alive-lsp)\"
34005 \"--eval\"
34006 (format \"(alive/server::start :port %s)\"
34007 lsp-lisp-alive-port))))
34008@end example")
34009 (license license:unlicense)))
34010
34011(define-public cl-alive-lsp
34012 (sbcl-package->cl-source-package sbcl-alive-lsp))
34013
34014(define-public sbcl-utf8-input-stream
34015 (let ((commit "d33b57a4d439c2f0877e5513be45eb6940d92c68")
34016 (revision "0"))
34017 (package
34018 (name "sbcl-utf8-input-stream")
34019 (version (git-version "0.0.1" revision commit))
34020 (source
34021 (origin
34022 (method git-fetch)
34023 (uri (git-reference
34024 (url "https://github.com/veer66/utf8-input-stream")
34025 (commit commit)))
34026 (file-name (git-file-name "cl-utf8-input-stream" version))
34027 (sha256
34028 (base32 "06fk8fsz9nngdfjymg93h1l5m4yhfg4w8as68zlaj698xf9ry3i5"))))
34029 (build-system asdf-build-system/sbcl)
34030 (inputs (list sbcl-babel sbcl-trivial-gray-streams))
34031 (home-page "https://github.com/veer66/utf8-input-stream")
34032 (synopsis "UTF-8 string input stream over a binary stream for Common
34033Lisp")
34034 (description "This package provides a UTF-8 string input stream over a
34035binary stream for Common Lisp.")
34036 (license license:expat))))
34037
34038(define-public cl-utf8-input-stream
34039 (sbcl-package->cl-source-package sbcl-utf8-input-stream))
34040
34041(define-public ecl-utf8-input-stream
34042 (sbcl-package->ecl-package sbcl-utf8-input-stream))
34043
34044(define-public clasp-utf8-input-stream
34045 (sbcl-package->clasp-package sbcl-utf8-input-stream))
34046
34047(define-public sbcl-utils-kt
34048 (let ((commit "4adfe2889036ab5ffdd3cc2182ca2cc692bf11ff"))
34049 (package
34050 (name "sbcl-utils-kt")
34051 (version (git-version "2007-12-02" "1" commit))
34052 (source
34053 (origin
34054 (method git-fetch)
34055 (uri (git-reference
34056 (url "https://github.com/kennytilton/utils-kt")
34057 (commit commit)))
34058 (file-name (git-file-name "cl-utils-kt" version))
34059 (sha256
34060 (base32 "016x3w034brz02z9mrsrkhk2djizg3yqsvhl9k62xqcnpy3b87dn"))))
34061 (build-system asdf-build-system/sbcl)
34062 (home-page "https://github.com/kennytilton/utils-kt")
34063 (synopsis "Kenny's utilities for Common Lisp")
34064 (description
34065 "This library contains generic hacks meant to be used in any project.
34066It was originally developed for the Cells library.")
34067 (license license:expat))))
34068
34069(define-public cl-utils-kt
34070 (sbcl-package->cl-source-package sbcl-utils-kt))
34071
34072(define-public ecl-utils-kt
34073 (sbcl-package->ecl-package sbcl-utils-kt))
34074
34075(define-public clasp-utils-kt
34076 (sbcl-package->clasp-package sbcl-utils-kt))
34077
34078(define-public sbcl-utm-ups
34079 (let ((commit "f1e6fd469871051470dfaabdf199afb75f2fa302")
34080 (revision "0"))
34081 (package
34082 (name "sbcl-utm-ups")
34083 (version (git-version "1.2" revision commit))
34084 (source
34085 (origin
34086 (method git-fetch)
34087 (uri (git-reference
34088 (url "https://codeberg.org/glv/utm-ups")
34089 (commit commit)))
34090 (file-name (git-file-name "cl-utm-ups" version))
34091 (sha256
34092 (base32 "19nnnqagfg1c1vzwlqpp8mq2d0hrk8r6r07a46nvdyzmwbnmbwyr"))))
34093 (build-system asdf-build-system/sbcl)
34094 (native-inputs
34095 (list sbcl-fiveam))
34096 (synopsis
34097 "Convert coordinates between latitude/longitude and UTM or UPS")
34098 (description
34099 "This a Common Lisp library to convert geographic coordinates between
34100latitude/longitude and UTM (Universal Transverse Mercator) or UPS (Universal
34101Polar Stereographic).")
34102 (home-page "https://codeberg.org/glv/utm-ups")
34103 (license license:gpl3+))))
34104
34105(define-public cl-utm-ups
34106 (sbcl-package->cl-source-package sbcl-utm-ups))
34107
34108(define-public ecl-utm-ups
34109 (sbcl-package->ecl-package sbcl-utm-ups))
34110
34111(define-public sbcl-uuid
34112 (let ((commit "e7d6680c3138385c0708f7aaf0c96622eeb140e8"))
34113 (package
34114 (name "sbcl-uuid")
34115 (version (git-version "2012.12.26" "1" commit))
34116 (source
34117 (origin
34118 (method git-fetch)
34119 (uri (git-reference
34120 (url "https://github.com/dardoria/uuid")
34121 (commit commit)))
34122 (file-name (git-file-name name version))
34123 (sha256
34124 (base32
34125 "0jnyp2kibcf5cwi60l6grjrj8wws9chasjvsw7xzwyym2lyid46f"))))
34126 (build-system asdf-build-system/sbcl)
34127 (inputs
34128 (list sbcl-ironclad sbcl-trivial-utf-8))
34129 (home-page "https://github.com/dardoria/uuid")
34130 (synopsis
34131 "Common Lisp implementation of UUIDs according to RFC4122")
34132 (description
34133 "Common Lisp implementation of UUIDs according to RFC4122.")
34134 (license license:llgpl))))
34135
34136(define-public cl-uuid
34137 (sbcl-package->cl-source-package sbcl-uuid))
34138
34139(define-public ecl-uuid
34140 (sbcl-package->ecl-package sbcl-uuid))
34141
34142(define-public sbcl-varjo
34143 (let ((commit "9e77f30220053155d2ef8870ceba157f75e538d4")
34144 (revision "1"))
34145 (package
34146 (name "sbcl-varjo")
34147 (version (git-version "0.0.0" revision commit))
34148 (source
34149 (origin
34150 (method git-fetch)
34151 (uri (git-reference
34152 (url "https://github.com/cbaggers/varjo")
34153 (commit commit)))
34154 (file-name (git-file-name "varjo" version))
34155 (sha256
34156 (base32 "1p9x1wj576x5d31yvls9r1avkjkyhri7kyxbjfkg9z93a1w18j9z"))))
34157 (build-system asdf-build-system/sbcl)
34158 (native-inputs
34159 (list sbcl-fiveam))
34160 (inputs
34161 (list sbcl-alexandria
34162 sbcl-cl-ppcre
34163 sbcl-documentation-utils
34164 sbcl-fn
34165 sbcl-glsl-spec
34166 sbcl-named-readtables
34167 sbcl-parse-float
34168 sbcl-vas-string-metrics))
34169 (home-page "https://github.com/cbaggers/varjo")
34170 (synopsis "Lisp to GLSL Language Translator")
34171 (description
34172 "Varjo is a Lisp to GLSL compiler. Vari is the dialect of lisp Varjo
34173compiles. It aims to be as close to Common Lisp as possible, but naturally it
34174is statically typed so there are differences.")
34175 (license license:bsd-2))))
34176
34177(define-public cl-varjo
34178 (sbcl-package->cl-source-package sbcl-varjo))
34179
34180(define-public ecl-varjo
34181 (sbcl-package->ecl-package sbcl-varjo))
34182
34183(define-public sbcl-vas-string-metrics
34184 (let ((commit "f2e4500b180316123fbd549bd51c751ee2d6ba0f")
34185 (revision "1"))
34186 (package
34187 (name "sbcl-vas-string-metrics")
34188 (version (git-version "0.0.0" revision commit))
34189 (source
34190 (origin
34191 (method git-fetch)
34192 (uri (git-reference
34193 (url "https://github.com/vsedach/vas-string-metrics")
34194 (commit commit)))
34195 (file-name (git-file-name "vas-string-metrics" version))
34196 (sha256
34197 (base32 "11fcnd03ybzz37rkg3z0wsb727yqgcd9gn70sccfb34l89ia279k"))))
34198 (build-system asdf-build-system/sbcl)
34199 (arguments
34200 '(#:asd-test-systems '("test.vas-string-metrics")
34201 #:phases
34202 (modify-phases %standard-phases
34203 (add-after 'unpack 'fix-test-asd
34204 (lambda _
34205 (substitute* "test.vas-string-metrics.asd"
34206 ((":depends-on")
34207 (string-append
34208 ":perform (test-op (op c) (symbol-call :vas-string-metrics :run-tests))"
34209 "\n"
34210 " :depends-on"))))))))
34211 (home-page "https://github.com/vsedach/vas-string-metrics")
34212 (synopsis "String distance algorithms for Common Lisp")
34213 (description
34214 "VAS-STRING-METRICS provides the Jaro, Jaro-Winkler, Soerensen-Dice,
34215Levenshtein, and normalized Levenshtein string distance/similarity metrics
34216algorithms.")
34217 (license license:lgpl3+))))
34218
34219(define-public cl-vas-string-metrics
34220 (sbcl-package->cl-source-package sbcl-vas-string-metrics))
34221
34222(define-public ecl-vas-string-metrics
34223 (sbcl-package->ecl-package sbcl-vas-string-metrics))
34224
34225(define-public clasp-vas-string-metrics
34226 (sbcl-package->clasp-package sbcl-vas-string-metrics))
34227
34228(define-public sbcl-verbose
34229 (let ((commit "c5b7ecd465be61b35af17ef57564697b88397174")
34230 (revision "1"))
34231 (package
34232 (name "sbcl-verbose")
34233 (version (git-version "2.0.0" revision commit))
34234 (source
34235 (origin
34236 (method git-fetch)
34237 (uri (git-reference
34238 (url "https://codeberg.org/shinmera/verbose/")
34239 (commit commit)))
34240 (file-name (git-file-name "verbose" version))
34241 (sha256
34242 (base32 "0r51ydj5v7afi2jrlscbhxprv13d9vzg5316g1yzwaxc1kzsdsw6"))))
34243 (build-system asdf-build-system/sbcl)
34244 (inputs
34245 (list sbcl-bordeaux-threads sbcl-dissect sbcl-documentation-utils
34246 sbcl-local-time sbcl-piping))
34247 (home-page "https://shinmera.com/docs/verbose/")
34248 (synopsis "Logging framework using the piping library")
34249 (description
34250 "This is a Common Lisp library providing logging faciltiy similar to
34251@code{CL-LOG} and @code{LOG4CL}.")
34252 (license license:zlib))))
34253
34254(define-public cl-verbose
34255 (sbcl-package->cl-source-package sbcl-verbose))
34256
34257(define-public ecl-verbose
34258 (sbcl-package->ecl-package sbcl-verbose))
34259
34260(define-public sbcl-vernacular
34261 ;; No release.
34262 (let ((commit "79be179e9ada423b3ec41d2a1ea6f6e0266ed21f"))
34263 (package
34264 (name "sbcl-vernacular")
34265 (version (git-version "0.8.0" "1" commit))
34266 (source
34267 (origin
34268 (method git-fetch)
34269 (uri (git-reference
34270 (url "https://github.com/ruricolist/vernacular/")
34271 (commit commit)))
34272 (file-name (git-file-name name version))
34273 (sha256
34274 (base32 "19vzn28hw4is4sgmvzqin18ds89s0pai21vcm0ky10vmfv6wg745"))
34275 (modules '((guix build utils)))
34276 (snippet
34277 '(begin
34278 ;; The demo depends on cl-js, which we don't have at this point.
34279 (delete-file-recursively "demo")
34280 #t))))
34281 (build-system asdf-build-system/sbcl)
34282 (inputs
34283 (list sbcl-overlord
34284 sbcl-trivial-macroexpand-all
34285 sbcl-local-time
34286 sbcl-parse-js
34287 sbcl-trivia
34288 sbcl-trivial-garbage
34289 sbcl-named-readtables
34290 sbcl-alexandria
34291 sbcl-serapeum
34292 sbcl-trivial-gray-streams))
34293 (arguments
34294 ;; Circular dependency: Tests depend on core-lisp
34295 ;; (http://github.com/ruricolist/core-lisp) which depends on
34296 ;; Vernacular.
34297 '(#:tests? #f))
34298 (home-page "https://github.com/ruricolist/vernacular")
34299 (synopsis "Module system for languages that compile to Common Lisp")
34300 (description
34301 "Vernacular is a build and module system for languages that compile to
34302Common Lisp. It allows languages to compile to Lisp while remaining part of
34303the Common Lisp ecosystem. Vernacular languages interoperate with Common Lisp
34304and one another.
34305
34306Vernacular handles locating files, compiling files into FASLs, tracking
34307dependencies and rebuilding, and export and import between your new language,
34308Lisp, and any other language Vernacular supports.
34309
34310Vernacular builds on Overlord and is inspired by Racket.")
34311 (license license:expat))))
34312
34313(define-public cl-vernacular
34314 (sbcl-package->cl-source-package sbcl-vernacular))
34315
34316(define-public sbcl-vgplot
34317 (let ((commit "76329928a3709387c0779175af56ec49d16bcd35")
34318 (revision "0"))
34319 (package
34320 (name "sbcl-vgplot")
34321 (version (git-version "0.0.0" revision commit))
34322 (source
34323 (origin
34324 (method git-fetch)
34325 (uri (git-reference
34326 (url "https://github.com/volkers/vgplot")
34327 (commit commit)))
34328 (file-name (git-file-name "vgplot" version))
34329 (sha256
34330 (base32 "1vc5fd787xa8831wjbmwrpg17f9isi5k8dmb85fsysz47plbvi1y"))))
34331 (build-system asdf-build-system/sbcl)
34332 (native-inputs
34333 (list sbcl-lisp-unit))
34334 (inputs
34335 (list sbcl-cl-fad sbcl-cl-ppcre sbcl-ltk))
34336 (home-page "https://github.com/volkers/vgplot")
34337 (synopsis "Common lisp library interfacing to the gnuplot utility")
34338 (description
34339 "This package provides an interface to the @code{gnuplot} plotting
34340utility. The intention of the API is to resemble to some of the plot commands
34341of octave or matlab.")
34342 (license license:gpl3+))))
34343
34344(define-public cl-vgplot
34345 (sbcl-package->cl-source-package sbcl-vgplot))
34346
34347(define-public ecl-vgplot
34348 (sbcl-package->ecl-package sbcl-vgplot))
34349
34350(define-public sbcl-colony
34351 (let ((commit "54d020e80192e325311feffa1ecb00f02416541a")
34352 (revision "0"))
34353 (package
34354 (name "sbcl-colony")
34355 (version (git-version "0.1.0" revision commit))
34356 (source
34357 (origin
34358 (method git-fetch)
34359 (uri (git-reference
34360 (url "https://github.com/colonyengine/colony")
34361 (commit commit)))
34362 (file-name (git-file-name "cl-colony" version))
34363 (sha256
34364 (base32 "0wgjr2ss7j42pzx4vx9l9c82i7b1h6ph9b7gi4b1ipjv7bv0ncf5"))))
34365 (build-system asdf-build-system/sbcl)
34366 (arguments
34367 `(#:asd-systems '("colony"
34368 "vorigin"
34369 "vorigin.test"
34370 "vshadow"
34371 "vumbra"
34372 "vutils")
34373 #:phases (modify-phases %standard-phases
34374 (add-after 'unpack 'delete-examples
34375 (lambda _
34376 ;; Don't install the big "examples" directory.
34377 (delete-file-recursively "examples")
34378 ;; Remove example asd files that cause issues during
34379 ;; the 'copy-source' phase because they have the same
34380 ;; names.
34381 (for-each
34382 delete-file
34383 (find-files "."
34384 "^xXx-SYSTEM-NAME-xXx\\.asd$")))))))
34385 (native-inputs (list sbcl-parachute))
34386 (inputs
34387 (list sbcl-3b-bmfont
34388 sbcl-babel
34389 sbcl-cl-cpus
34390 sbcl-cl-graph
34391 sbcl-cl-opengl
34392 sbcl-cl-ppcre
34393 sbcl-cl-slug
34394 sbcl-closer-mop
34395 sbcl-fast-io
34396 sbcl-global-vars
34397 sbcl-glsl-packing
34398 sbcl-jsown
34399 sbcl-lparallel
34400 sbcl-pngload
34401 sbcl-printv
34402 sbcl-queues
34403 sbcl-sdl2
34404 sbcl-serapeum
34405 sbcl-split-sequence
34406 sbcl-static-vectors
34407 sbcl-trivial-features
34408 sbcl-varjo))
34409 (home-page "https://github.com/colonyengine/colony")
34410 (synopsis "Component-based game engine written in Common Lisp")
34411 (description
34412 "Colony provides a system and workflow that helps describe the
34413elements needed to write 2D or 3D games. It was designed with several domain
34414specific languages that make it easier to describe, manipulate, and use assets
34415commonly found in game making. Such assets include (but are not limited to)
34416textures, materials, shader programs, and scene trees of actors that are
34417available for instantiation. Colony Engine also knows how to accept input
34418from keyboards and most joysticks and gamepads.
34419
34420The component system is a hybrid model between an ECS and an object model. The
34421components are defined similar to CLOS defclass, and regular generic methods
34422can be used with them. Components are added to Actors which represent game
34423concepts like players, scenery, effects, etc. We define a component protocol
34424invoked by Colony Engine to move your components to the next state and
34425render them each frame.")
34426 (license license:expat))))
34427
34428(define-public cl-colony
34429 (sbcl-package->cl-source-package sbcl-colony))
34430
34431(define-public sbcl-vom
34432 (let ((commit "1aeafeb5b74c53741b79497e0ef4acf85c92ff24")
34433 (revision "1"))
34434 (package
34435 (name "sbcl-vom")
34436 (version (git-version "0.1.4" revision commit))
34437 (source
34438 (origin
34439 (method git-fetch)
34440 (uri (git-reference
34441 (url "https://github.com/orthecreedence/vom")
34442 (commit commit)))
34443 (file-name (git-file-name name version))
34444 (sha256
34445 (base32
34446 "0536kppj76ax4lrxhv42npkfjsmx45km2g439vf9jmw3apinz9cy"))))
34447 (build-system asdf-build-system/sbcl)
34448 (synopsis "Tiny logging utility for Common Lisp")
34449 (description
34450 "Vom is a logging library for Common Lisp. It's goal is to be useful
34451and small. It does not provide a lot of features as other loggers do, but
34452has a small codebase that's easy to understand and use.")
34453 (home-page "https://github.com/orthecreedence/vom")
34454 (license license:expat))))
34455
34456(define-public cl-vom
34457 (sbcl-package->cl-source-package sbcl-vom))
34458
34459(define-public ecl-vom
34460 (sbcl-package->ecl-package sbcl-vom))
34461
34462(define-public clasp-vom
34463 (sbcl-package->clasp-package sbcl-vom))
34464
34465(define-public sbcl-wayflan
34466 (package
34467 (name "sbcl-wayflan")
34468 (version "0.1.0")
34469 (source
34470 (origin
34471 (method git-fetch)
34472 (uri (git-reference
34473 (url "https://git.sr.ht/~shunter/wayflan")
34474 (commit (string-append "v" version))))
34475 (file-name (git-file-name "cl-wayflan" version))
34476 (sha256
34477 (base32 "11n8w4fh996gspgcsfhbrcmz7az4yrx9a15jh6n72kswgjzq0s5j"))))
34478 (build-system asdf-build-system/sbcl)
34479 (native-inputs
34480 (list sbcl-parachute))
34481 (inputs
34482 (list sbcl-alexandria
34483 sbcl-babel
34484 sbcl-cffi
34485 sbcl-closer-mop
34486 sbcl-plump))
34487 (home-page "https://git.sr.ht/~shunter/wayflan")
34488 (synopsis "Wayland communication library for Common Lisp")
34489 (description
34490 "Wayflan is a from-scratch Wayland communication library for Common Lisp.
34491It makes a good-faith effort to mimic @code{libwayland} behavior not defined
34492in the Wayland spec, to keep compatibility between the two libraries.
34493
34494Wayflan is not a compositor nor a GUI toolkit. Its purpose is to parse Wayland
34495protocol XML documents and exchange Wayland messages between other processes.
34496
34497Features:
34498@itemize
34499@item Client support
34500@item All implementation done in Common Lisp from the socket up
34501@item Enum values are translated into keywords
34502@item Wayland protocol introspection
34503@item ASDF component @code{:wayflan-client-impl} generates code from
34504XML. ASDF's extensible components make it possible to teach your program new
34505protocols for Wayland without the need of a special build system.
34506@end itemize")
34507 (license license:bsd-3)))
34508
34509(define-public cl-wayflan
34510 (sbcl-package->cl-source-package sbcl-wayflan))
34511
34512;; XXX: Error detected: The function CMSG-ALIGN is undefined.An error
34513;; occurred during initialization: COMPILE-FILE-ERROR while compiling
34514;; #<cl-source-file "wayflan/common" "wire">.
34515;; (define-public ecl-wayflan
34516;; (sbcl-package->ecl-package sbcl-wayflan))
34517
34518(define-public sbcl-websocket-driver
34519 (let ((commit "17ba5535fb1c4fe43e7e8ac786e8b61a174fcba3")
34520 (revision "1"))
34521 (package
34522 (name "sbcl-websocket-driver")
34523 (version (git-version "0.2.0" revision commit))
34524 (home-page "https://github.com/fukamachi/websocket-driver")
34525 (source
34526 (origin
34527 (method git-fetch)
34528 (uri (git-reference
34529 (url "https://github.com/fukamachi/websocket-driver")
34530 (commit commit)))
34531 (file-name (git-file-name "cl-websocket-driver" version))
34532 (sha256
34533 (base32 "1lj6xarr62199ladkml7qpgi86w94j4djrp54v9ch0zakni3rhj2"))))
34534 (build-system asdf-build-system/sbcl)
34535 (inputs
34536 (list sbcl-babel
34537 sbcl-clack
34538 sbcl-fast-http
34539 sbcl-fast-io
34540 sbcl-fast-websocket
34541 sbcl-event-emitter
34542 sbcl-sha1
34543 sbcl-cl-base64
34544 sbcl-split-sequence
34545 sbcl-bordeaux-threads
34546 sbcl-quri))
34547 (synopsis "WebSocket server/client for Common Lisp")
34548 (description "This library provides a WebSocket server and client
34549implementation for Common Lisp.")
34550 (license license:bsd-2))))
34551
34552(define-public cl-websocket-driver
34553 (sbcl-package->cl-source-package sbcl-websocket-driver))
34554
34555(define-public ecl-websocket-driver
34556 (sbcl-package->ecl-package sbcl-websocket-driver))
34557
34558(define-public sbcl-which
34559 (let ((commit "b2333e4fcacab6e5d85eecd28b5ef4944bda1448")
34560 (revision "1"))
34561 (package
34562 (name "sbcl-which")
34563 (version (git-version "0.1" revision commit))
34564 (source
34565 (origin
34566 (method git-fetch)
34567 (uri (git-reference
34568 (url "https://github.com/eudoxia0/which")
34569 (commit commit)))
34570 (file-name (git-file-name "cl-which" version))
34571 (sha256
34572 (base32 "127pm9h4rm4w9aadw5yvamnfzhk2rr69kchx10rf9k7sk7izqqfk"))))
34573 (build-system asdf-build-system/sbcl)
34574 (inputs
34575 (list sbcl-cl-fad sbcl-path-parse))
34576 (native-inputs
34577 (list sbcl-fiveam))
34578 (home-page "https://github.com/eudoxia0/which")
34579 (synopsis "The which command in Common Lisp")
34580 (description
34581 "This package provides an implementation of the @code{which} UNIX
34582command in Common Lisp.")
34583 (license license:expat))))
34584
34585(define-public cl-which
34586 (sbcl-package->cl-source-package sbcl-which))
34587
34588(define-public ecl-which
34589 (sbcl-package->ecl-package sbcl-which))
34590
34591(define-public sbcl-wild-package-inferred-system
34592 (let ((commit "800b5f89b61cc4a0a9cf14706fd3f7e7fcd3e539")
34593 (revision "0"))
34594 (package
34595 (name "sbcl-wild-package-inferred-system")
34596 (version (git-version "0.2.0" revision commit))
34597 (source
34598 (origin
34599 (method git-fetch)
34600 (uri (git-reference
34601 (url "https://github.com/privet-kitty/wild-package-inferred-system")
34602 (commit commit)))
34603 (file-name (git-file-name "cl-wild-package-inferred-system" version))
34604 (sha256
34605 (base32 "0sp3j3i83aqyq9bl3djs490nilryi9sh1wjbcqd9z94d9wfbfz80"))))
34606 (build-system asdf-build-system/sbcl)
34607 (native-inputs (list sbcl-fiveam))
34608 (home-page "https://github.com/privet-kitty/wild-package-inferred-system/")
34609 (synopsis "Wildcard for ASDF package-inferred-system")
34610 (description
34611 "@code{wild-package-inferred-system} is an extension of ASDF
34612package-inferred-system that interprets star * and globstar ** in package
34613or system names.")
34614 (license license:expat))))
34615
34616(define-public cl-wild-package-inferred-system
34617 (sbcl-package->cl-source-package sbcl-wild-package-inferred-system))
34618
34619(define-public ecl-wild-package-inferred-system
34620 (sbcl-package->ecl-package sbcl-wild-package-inferred-system))
34621
34622(define-public sbcl-with-output-to-stream
34623 (let ((commit "e94eec464d745e606cc84ea90027c26f93d032a3")
34624 (revision "0"))
34625 (package
34626 (name "sbcl-with-output-to-stream")
34627 (version (git-version "1.0.0" revision commit))
34628 (source
34629 (origin
34630 (method git-fetch)
34631 (uri (git-reference
34632 (url "https://github.com/Hexstream/with-output-to-stream")
34633 (commit commit)))
34634 (file-name (git-file-name name version))
34635 (sha256
34636 (base32 "1cz96hrhf0csn0i8h7cvy54sb80d4w5ljkhpd5k7kr07p9555lqz"))))
34637 (build-system asdf-build-system/sbcl)
34638 (native-inputs
34639 (list sbcl-parachute))
34640 (home-page "https://github.com/Hexstream/with-output-to-stream")
34641 (synopsis "Output to a stream according to the semantics of
34642FORMAT's stream argument")
34643 (description "Provides a simple way of directing output to a stream
34644according to the concise and intuitive semantics of FORMAT's stream
34645argument.")
34646 (license license:unlicense))))
34647
34648(define-public ecl-with-output-to-stream
34649 (sbcl-package->ecl-package sbcl-with-output-to-stream))
34650
34651(define-public cl-with-output-to-stream
34652 (sbcl-package->cl-source-package sbcl-with-output-to-stream))
34653
34654(define-public sbcl-with-user-abort
34655 (let ((commit "60693b4a1354faf17107ad6003b0b870cca37081")
34656 (revision "0"))
34657 (package
34658 (name "sbcl-with-user-abort")
34659 (version (git-version "0.1" revision commit))
34660 (source
34661 (origin
34662 (method git-fetch)
34663 (uri (git-reference
34664 (url "https://github.com/compufox/with-user-abort")
34665 (commit commit)))
34666 (file-name (git-file-name "cl-with-user-abort" version))
34667 (sha256
34668 (base32 "0k1xxfvncdw4fx8nncis1ma128bqq05zky1mrzak5rjbivzjm8j1"))))
34669 (build-system asdf-build-system/sbcl)
34670 (home-page "https://github.com/compufox/with-user-abort")
34671 (synopsis "Portability library for catching SIGINT from Common Lisp")
34672 (description
34673 "@code{with-user-abort} is a Common Lisp portability library providing a
34674like-named macro that catches the SIGINT signal.")
34675 (license license:bsd-3))))
34676
34677(define-public cl-with-user-abort
34678 (sbcl-package->cl-source-package sbcl-with-user-abort))
34679
34680(define-public ecl-with-user-abort
34681 (sbcl-package->ecl-package sbcl-with-user-abort))
34682
34683(define-public sbcl-woo
34684 (let ((commit "7f5219c55d49190f5ae17b123a8729b31c5d706e")
34685 (revision "2"))
34686 (package
34687 (name "sbcl-woo")
34688 (version (git-version "0.12.0" revision commit))
34689 (source
34690 (origin
34691 (method git-fetch)
34692 (uri (git-reference
34693 (url "https://github.com/fukamachi/woo")
34694 (commit commit)))
34695 (file-name (git-file-name "woo" version))
34696 (sha256
34697 (base32 "0nhxlb1qhkl20vknm44gx0cq5cks33rcljczfhgbnmpkzrdpdrrl"))))
34698 (build-system asdf-build-system/sbcl)
34699 (arguments
34700 ;; FIXME: Tests fail because they try to compile clack-test:
34701 ;;
34702 ;; Error opening #P"/gnu/store/...-sbcl-clack-2.0.0-1.e3e0328/
34703 ;; lib/common-lisp/sbcl/clack/src/test-tmpGHU3ALSV.fasl":
34704 ;;
34705 ;; Permission denied
34706 ;;
34707 ;; clack-test should be compiled when building the sbcl-clack package,
34708 ;; but it isn't right now because of the circular dependency between
34709 ;; clack-test and dexador.
34710 `(#:tests? #f))
34711 (native-inputs
34712 (list sbcl-clack sbcl-rove))
34713 (inputs
34714 (list sbcl-alexandria
34715 sbcl-bordeaux-threads
34716 sbcl-cffi
34717 sbcl-cl+ssl
34718 sbcl-cl-speedy-queue ;; Required for ecl build
34719 sbcl-clack
34720 sbcl-fast-http
34721 sbcl-fast-io
34722 sbcl-lev
34723 sbcl-quri
34724 sbcl-rove
34725 sbcl-smart-buffer
34726 sbcl-static-vectors
34727 sbcl-swap-bytes
34728 sbcl-trivial-mimes
34729 sbcl-trivial-utf-8
34730 sbcl-vom))
34731 (home-page "https://github.com/fukamachi/woo")
34732 (synopsis "Non-blocking HTTP server based on libev")
34733 (description
34734 "This package provides the Common Lisp HTTP server @code{WOO}, which
34735is built on top of the @code{libev} event library.")
34736 (license license:expat))))
34737
34738(define-public cl-woo
34739 (sbcl-package->cl-source-package sbcl-woo))
34740
34741(define-public ecl-woo
34742 (sbcl-package->ecl-package sbcl-woo))
34743
34744(define-public sbcl-wordnet
34745 (let ((commit "8cd0db8f5e84e7a930fa74e590ecddf75cd8e5d6")
34746 (revision "0"))
34747 (package
34748 (name "sbcl-wordnet")
34749 (version (git-version "0.0.1" revision commit))
34750 (source
34751 (origin
34752 (method git-fetch)
34753 (uri (git-reference
34754 (url "https://github.com/phoe/wordnet")
34755 (commit commit)))
34756 (sha256
34757 (base32 "07p60k295fsfcp0gmkqhrxd68hb38aqva8f4k8xk8bqqxxf42vkq"))
34758 (file-name (git-file-name "cl-wordnet" commit))))
34759 (build-system asdf-build-system/sbcl)
34760 (arguments
34761 `(#:tests? #f)) ; There are no tests.
34762 (inputs
34763 (list sbcl-split-sequence))
34764 (home-page "https://github.com/phoe/wordnet")
34765 (synopsis "Common Lisp interface to WordNet")
34766 (description
34767 "This software provides an interface by which Common Lisp programs can
34768access lexicographic data from WordNet.")
34769 (license license:expat))))
34770
34771(define-public cl-wordnet
34772 (sbcl-package->cl-source-package sbcl-wordnet))
34773
34774(define-public ecl-wordnet
34775 (sbcl-package->ecl-package sbcl-wordnet))
34776
34777(define-public sbcl-wu-decimal
34778 (let ((commit "5b348bdb32a0f83e80e17aa68cd51787ae8c8a45")
34779 (revision "0"))
34780 (package
34781 (name "sbcl-wu-decimal")
34782 (version (git-version "2.0.0" revision commit))
34783 (source
34784 (origin
34785 (method git-fetch)
34786 (uri (git-reference
34787 (url "https://github.com/Wukix/wu-decimal")
34788 (commit commit)))
34789 (file-name (git-file-name "cl-wu-decimal" version))
34790 (sha256
34791 (base32 "1p7na4hic7297amwm4idfwkyx664ny8cdssncyra37pmv4wzp8dm"))))
34792 (build-system asdf-build-system/sbcl)
34793 (home-page "https://github.com/Wukix/wu-decimal")
34794 (synopsis "Arbitrary-precision decimal arithmetic")
34795 (description
34796 "Wu-Decimal enables convenient, arbitrary-precision decimal arithmetic
34797through a reader macro, @code{#$}, and an update to the @code{pprint} dispatch
34798table. Wu-Decimal uses the CL rational type to store decimals, which enables
34799numeric functions such as @code{+}, @code{-}, etc., to operate on decimal
34800numbers in a natural way.")
34801 (license license:bsd-2))))
34802
34803(define-public cl-wu-decimal
34804 (sbcl-package->cl-source-package sbcl-wu-decimal))
34805
34806(define-public ecl-wu-decimal
34807 (sbcl-package->ecl-package sbcl-wu-decimal))
34808
34809(define-public clasp-wu-decimal
34810 (sbcl-package->clasp-package sbcl-wu-decimal))
34811
34812(define-public sbcl-xhtmlambda
34813 (let ((commit "c86376bccebf77ca428e8033df2ba7d8450ea1e8")
34814 (revision "0"))
34815 (package
34816 (name "sbcl-xhtmlambda")
34817 (version
34818 ;; The source repository doesn't provide any version nor revision, but
34819 ;; a timestamp
34820 (git-version "2022-01-21" revision commit))
34821 (source
34822 (origin
34823 (method git-fetch)
34824 (uri (git-reference
34825 (url "https://gitlab.common-lisp.net/xhtmlambda/XHTMLambda")
34826 (commit commit)))
34827 (file-name (git-file-name "cl-xhtmlambda" version))
34828 (sha256
34829 (base32 "0narbzz06ry1wn048avm1fwihvnjvvc4wfcv5hmdazkilpvnqz2y"))))
34830 (build-system asdf-build-system/sbcl)
34831 (inputs (list sbcl-cl-unicode))
34832 (synopsis "(X)HTML library for Common Lisp")
34833 (description
34834 "(X)HTMLambda is yet another (X)HTML library which
34835emphasizes programmability and user-friendliness. Each (X)HTML element is a
34836structured object and pretty-printing of (X)HTML trees is well defined to
34837provide properly indented human-readable output even for complex recursive
34838arrangements.")
34839 (home-page "https://xhtmlambda.common-lisp.dev/")
34840 (license license:expat))))
34841
34842(define-public cl-xhtmlambda
34843 (sbcl-package->cl-source-package sbcl-xhtmlambda))
34844
34845(define-public clasp-xhtmlambda
34846 (sbcl-package->clasp-package sbcl-xhtmlambda))
34847
34848(define-public sbcl-xkbcommon
34849 (package
34850 (name "sbcl-xkbcommon")
34851 (version "0.2.0")
34852 (source
34853 (origin
34854 (method git-fetch)
34855 (uri (git-reference
34856 (url "https://github.com/sdilts/cl-xkbcommon")
34857 (commit version)))
34858 (file-name (git-file-name "cl-xkbcommon" version))
34859 (sha256
34860 (base32 "0qkaamc8sikpn2q6z21s8249sygszj6bhd0slr8f77k9c2ph1mbb"))))
34861 (build-system asdf-build-system/sbcl)
34862 (arguments
34863 (list #:phases
34864 #~(modify-phases %standard-phases
34865 (add-after 'unpack 'fix-paths
34866 (lambda* (#:key inputs #:allow-other-keys)
34867 (substitute* "xkbcommon.lisp"
34868 (("libxkbcommon.so.0")
34869 (search-input-file inputs "/lib/libxkbcommon.so"))))))))
34870 (native-inputs
34871 (list pkg-config))
34872 (inputs
34873 (list libxkbcommon
34874 sbcl-cffi))
34875 (home-page "https://github.com/sdilts/cl-xkbcommon")
34876 (synopsis "Common Lisp FFI bindings for xkbcommon")
34877 (description
34878 "This package provides Common Lisp FFI bindings for xkbcommon
34879(libxkbcommon) using cffi-grovel.")
34880 (license license:expat)))
34881
34882(define-public cl-xkbcommon
34883 (sbcl-package->cl-source-package sbcl-xkbcommon))
34884
34885(define-public ecl-xkbcommon
34886 (sbcl-package->ecl-package sbcl-xkbcommon))
34887
34888(define-public sbcl-xml-emitter
34889 (package
34890 (name "sbcl-xml-emitter")
34891 (version "1.1.0")
34892 (source (origin
34893 (method git-fetch)
34894 (uri (git-reference
34895 (url "https://github.com/VitoVan/xml-emitter")
34896 (commit version)))
34897 (file-name (git-file-name "cl-xml-emitter" version))
34898 (sha256
34899 (base32
34900 "1w9yx8gc4imimvjqkhq8yzpg3kjrp2y37rjix5c1lnz4s7bxvhk9"))))
34901 (build-system asdf-build-system/sbcl)
34902 (native-inputs (list sbcl-1am))
34903 (inputs (list sbcl-cl-utilities))
34904 (synopsis "Common lisp library for emitting XML output")
34905 (description
34906 "This package provides functions to emit XML, with some complexity for
34907handling indentation. It can be used to produce all sorts of useful XML
34908output; it has an RSS 2.0 emitter built in, so you can make RSS feeds
34909trivially.")
34910 (home-page "https://www.cliki.net/xml-emitter")
34911 (license license:expat)))
34912
34913(define-public cl-xml-emitter
34914 (sbcl-package->cl-source-package sbcl-xml-emitter))
34915
34916(define-public ecl-xml-emitter
34917 (sbcl-package->ecl-package sbcl-xml-emitter))
34918
34919(define-public clasp-xml-emitter
34920 (sbcl-package->clasp-package sbcl-xml-emitter))
34921
34922(define-public sbcl-xmls
34923 (package
34924 (name "sbcl-xmls")
34925 (version "3.2.0")
34926 (source
34927 (origin
34928 (method git-fetch)
34929 (uri (git-reference
34930 (url "https://github.com/rpgoldman/xmls")
34931 (commit version)))
34932 (file-name (git-file-name "cl-xmls" version))
34933 (sha256
34934 (base32 "10406sgap9kdaip7blxldnv6kabiczd6890jgic4pacsrfx6jypk"))))
34935 (native-inputs
34936 (list sbcl-fiveam))
34937 (build-system asdf-build-system/sbcl)
34938 (home-page "https://github.com/rpgoldman/xmls")
34939 (synopsis "Non-validating XML parser for Common Lisp")
34940 (description "Xmls is a self-contained, easily embedded parser that
34941recognizes a useful subset of the XML spec. It provides a simple mapping from
34942XML to Lisp structures or s-expressions and back.")
34943 (license license:bsd-2)))
34944
34945(define-public cl-xmls
34946 (sbcl-package->cl-source-package sbcl-xmls))
34947
34948(define-public ecl-xmls
34949 (sbcl-package->ecl-package sbcl-xmls))
34950
34951(define-public sbcl-xpath
34952 ;; No release.
34953 (let ((commit "d364da693a534e23bd5eb3a85420e9c25e6c75b3"))
34954 (package
34955 (name "sbcl-xpath")
34956 (version (git-version "0.1" "1" commit))
34957 (source
34958 (origin
34959 (method git-fetch)
34960 (uri (git-reference
34961 (url "https://github.com/sharplispers/xpath/")
34962 (commit commit)))
34963 (file-name (git-file-name name version))
34964 (sha256
34965 (base32 "1fb03fgnzrvh22lw1jdg04pmyja5fib5n42rzwp5mhr829yvxkvp"))))
34966 (build-system asdf-build-system/sbcl)
34967 (inputs
34968 (list sbcl-cxml sbcl-parse-number sbcl-cl-ppcre sbcl-cl-yacc))
34969 (home-page "https://github.com/sharplispers/xpath/")
34970 (synopsis "Implementation of the XML Path Language (XPath) Version 1.0")
34971 (description
34972 "This library is an implementation of the XML Path Language (XPath)
34973Version 1.0.")
34974 (license license:bsd-2))))
34975
34976;; According to
34977;; https://github.com/sharplispers/xpath/blob/master/doc/index.xml ECL is not
34978;; supported.
34979(define-public cl-xpath
34980 (sbcl-package->cl-source-package sbcl-xpath))
34981
34982(define-public sbcl-xsubseq
34983 (let ((commit "5ce430b3da5cda3a73b9cf5cee4df2843034422b")
34984 (revision "1"))
34985 (package
34986 (name "sbcl-xsubseq")
34987 (version (git-version "0.0.1" revision commit))
34988 (source
34989 (origin
34990 (method git-fetch)
34991 (uri (git-reference
34992 (url "https://github.com/fukamachi/xsubseq")
34993 (commit commit)))
34994 (file-name (git-file-name name version))
34995 (sha256
34996 (base32 "1xz79q0p2mclf3sqjiwf6izdpb6xrsr350bv4mlmdlm6rg5r99px"))))
34997 (build-system asdf-build-system/sbcl)
34998 (arguments
34999 '(#:asd-systems '("xsubseq-test" "xsubseq")))
35000 (native-inputs
35001 (list sbcl-prove))
35002 (home-page "https://github.com/fukamachi/xsubseq")
35003 (synopsis "Efficient way to use \"subseq\"s in Common Lisp")
35004 (description
35005 "XSubseq provides functions to be able to handle \"subseq\"s more
35006effieiently.")
35007 (license license:bsd-2))))
35008
35009(define-public cl-xsubseq
35010 (sbcl-package->cl-source-package sbcl-xsubseq))
35011
35012(define-public ecl-xsubseq
35013 (sbcl-package->ecl-package sbcl-xsubseq))
35014
35015(define-public sbcl-yason
35016 (package
35017 (name "sbcl-yason")
35018 (version "0.8.5")
35019 (source
35020 (origin
35021 (method git-fetch)
35022 (uri (git-reference
35023 (url "https://github.com/phmarek/yason")
35024 (commit (string-append "v" version))))
35025 (file-name (git-file-name "cl-yason" version))
35026 (sha256
35027 (base32 "0s2101y2mj075q02hnakp2w8zdakl6jid9y41q3644q6bvwbm9g6"))))
35028 (build-system asdf-build-system/sbcl)
35029 (inputs
35030 (list sbcl-alexandria sbcl-trivial-gray-streams))
35031 (synopsis "Common Lisp JSON parser/encoder")
35032 (description
35033 "YASON is a Common Lisp library for encoding and decoding data in the
35034JSON interchange format.")
35035 (home-page "https://github.com/phmarek/yason")
35036 (license license:bsd-3)))
35037
35038(define-public cl-yason
35039 (sbcl-package->cl-source-package sbcl-yason))
35040
35041(define-public ecl-yason
35042 (sbcl-package->ecl-package sbcl-yason))
35043
35044(define-public clasp-yason
35045 (sbcl-package->clasp-package sbcl-yason))
35046
35047(define-public sbcl-yxorp
35048 (package
35049 (name "sbcl-yxorp")
35050 (version "1.1.1")
35051 (source
35052 (origin
35053 (method git-fetch)
35054 (uri (git-reference
35055 (url "https://git.sr.ht/~charje/cl-yxorp")
35056 (commit (string-append "v" version))))
35057 (file-name (git-file-name "cl-yxorp" version))
35058 (sha256
35059 (base32 "0kgam9l7gmnknhphk8xc4n09bgfkhmpns5nw41vgbm5is9ixsxw7"))))
35060 (build-system asdf-build-system/sbcl)
35061 (inputs
35062 (list sbcl-chipz
35063 sbcl-chunga
35064 sbcl-cl+ssl
35065 sbcl-binding-arrows
35066 sbcl-cl-str
35067 sbcl-usocket
35068 sbcl-flexi-streams
35069 sbcl-rutils
35070 sbcl-salza2
35071 sbcl-smart-buffer
35072 sbcl-trivial-garbage))
35073 (home-page "https://github.com/charje/cl-yxorp")
35074 (synopsis
35075 "Reverse proxy server written in and configurable in Common Lisp")
35076 (description
35077 "This is a reverse proxy server written in and configurable in
35078Common Lisp. It supports WebSocket, HTTP, HTTPS, HTTP to HTTPS
35079redirecting, port and host forwarding configuration using a real programming
35080language, HTTP header and body manipulation (also using a real programming
35081language).")
35082 (license license:agpl3)))
35083
35084(define-public cl-yxorp
35085 (sbcl-package->cl-source-package sbcl-yxorp))
35086
35087(define-public ecl-yxorp
35088 ;; Note that due to a bug in ECL this package does not build.
35089 ;; The bug has already been fixed on the development branch,
35090 ;; so this package will work work in the version after 21.2.1.
35091 (sbcl-package->ecl-package sbcl-yxorp))
35092
35093(define-public cl-yxorp-cli
35094 (package
35095 (inherit sbcl-yxorp)
35096 (name "cl-yxorp-cli")
35097 (build-system gnu-build-system)
35098 (arguments
35099 '(#:tests? #f
35100 #:strip-binaries? #f
35101 #:phases
35102 (modify-phases %standard-phases
35103 (delete 'configure)
35104 (add-after 'unpack 'set-home
35105 (lambda _
35106 (setenv "HOME" "/tmp")))
35107 (replace 'build
35108 (lambda _
35109 (invoke
35110 "sbcl" "--noinform"
35111 "--non-interactive"
35112 "--no-userinit"
35113 "--eval" "(require :asdf)"
35114 "--eval" "(pushnew (uiop:getcwd) asdf:*central-registry*)"
35115 "--load" "build.lisp")))
35116 (replace 'install
35117 (lambda* (#:key outputs #:allow-other-keys)
35118 (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
35119 (mkdir-p bin)
35120 (install-file "cl-yxorp" bin)))))))
35121 (inputs (cons (list "sbcl" sbcl) (package-inputs sbcl-yxorp)))))
35122
35123(define-public sbcl-zip
35124 ;; named branch is outdated
35125 (let ((commit "688b1545dd7a4fe355556768bb03f8bd9b847a87")
35126 (revision "1"))
35127 (package
35128 (name "sbcl-zip")
35129 (version (git-version "0.0.0" revision commit))
35130 (source
35131 (origin
35132 (method git-fetch)
35133 (uri (git-reference
35134 (url "https://github.com/bluelisp/zip")
35135 (commit commit)))
35136 (sha256
35137 (base32 "0s08a6fq182fzsbfyvihqbdllq6gxcwkvphxnrd9wwz65dhg5y66"))
35138 (file-name (git-file-name "cl-zip" version))))
35139 (build-system asdf-build-system/sbcl)
35140 (inputs
35141 (list sbcl-babel
35142 sbcl-cl-fad
35143 sbcl-salza2
35144 sbcl-trivial-gray-streams))
35145 (synopsis "Zip library written in Common Lisp")
35146 (description "This package provide a Common Lisp library for .zip-file
35147reading and writing.")
35148 (home-page "https://zip.common-lisp.dev")
35149 (license (list license:bsd-2 license:llgpl)))))
35150
35151(define-public cl-zip
35152 (sbcl-package->cl-source-package sbcl-zip))
35153
35154(define-public ecl-zip
35155 (sbcl-package->ecl-package sbcl-zip))
35156
35157(define-public sbcl-zippy
35158 (let ((commit "ed9bca591ded2ff27a9ac95d9a60827773a0e707")
35159 (revision "1"))
35160 (package
35161 (name "sbcl-zippy")
35162 (version (git-version "1.1.0" revision commit))
35163 (source
35164 (origin
35165 (method git-fetch)
35166 (uri (git-reference
35167 (url "https://codeberg.org/shinmera/zippy/")
35168 (commit commit)))
35169 (sha256
35170 (base32 "16cvyyf2nzd9r3fcy4w6d5wh8n3x833wldmrxmnzd3k2xrkhzfl9"))
35171 (file-name (git-file-name "zippy" version))))
35172 (build-system asdf-build-system/sbcl)
35173 (inputs
35174 (list sbcl-documentation-utils
35175 sbcl-file-attributes
35176 sbcl-pathname-utils
35177 sbcl-alexandria
35178 sbcl-nibbles
35179 sbcl-babel
35180 sbcl-3bz
35181 sbcl-salza2))
35182 (synopsis "Fast zip archive library")
35183 (description "Zippy is a library for the PKWARE Zip archive format. It
35184can read and write zip files. It features:
35185
35186@itemize
35187@item archive inspection without extraction;
35188@item Zip64 support;
35189@item split archive support;
35190@item PKWARE decryption;
35191@item fast deflate decompression thanks to 3bz;
35192@item operates on streams and vectors;
35193@item can compress stream->stream;
35194@item extensible for other encryption and compression mechanisms.
35195@end itemize\n")
35196 (home-page "https://shinmera.com/docs/zippy/")
35197 (license license:zlib))))
35198
35199(define-public cl-zippy
35200 (sbcl-package->cl-source-package sbcl-zippy))
35201
35202(define-public ecl-zippy
35203 (sbcl-package->ecl-package sbcl-zippy))
35204
35205(define-public sbcl-zpb-exif
35206 (package
35207 (name "sbcl-zpb-exif")
35208 (version "1.2.5")
35209 (source
35210 (origin
35211 (method git-fetch)
35212 (uri (git-reference
35213 (url "https://github.com/xach/zpb-exif")
35214 (commit (string-append "release-" version))))
35215 (file-name (git-file-name "cl-zpb-exif" version))
35216 (sha256
35217 (base32 "0h1n36lfl8xn8rfyl5jxz9m8zlg0if2avmryas79f684yczrvdnd"))))
35218 (build-system asdf-build-system/sbcl)
35219 (home-page "https://xach.com/lisp/zpb-exif/")
35220 (synopsis "EXIF information extractor for Common Lisp")
35221 (description
35222 "This is a Common Lisp library to extract EXIF information from image
35223files.")
35224 (license license:bsd-2)))
35225
35226(define-public cl-zpb-exif
35227 (sbcl-package->cl-source-package sbcl-zpb-exif))
35228
35229(define-public ecl-zpb-exif
35230 (sbcl-package->ecl-package sbcl-zpb-exif))
35231
35232(define-public clasp-zpb-exif
35233 (sbcl-package->clasp-package sbcl-zpb-exif))
35234
35235(define-public sbcl-zpb-ttf
35236 (package
35237 (name "sbcl-zpb-ttf")
35238 (version "1.0.7")
35239 (source
35240 (origin
35241 (method git-fetch)
35242 (uri (git-reference
35243 (url "https://github.com/xach/zpb-ttf")
35244 (commit (string-append "release-" version))))
35245 (file-name (git-file-name "cl-zpb-ttf" version))
35246 (sha256
35247 (base32 "04lph7i153zlswvpgg76fxazyswj8j0idqm4ysn8qmflb7xcvd78"))))
35248 (build-system asdf-build-system/sbcl)
35249 (home-page "https://github.com/xach/zpb-ttf")
35250 (synopsis "TrueType font file access for Common Lisp")
35251 (description
35252 "ZPB-TTF is a TrueType font file parser that provides an interface for
35253reading typographic metrics, glyph outlines, and other information from the
35254file.")
35255 (license license:bsd-2)))
35256
35257(define-public cl-zpb-ttf
35258 (sbcl-package->cl-source-package sbcl-zpb-ttf))
35259
35260(define-public ecl-zpb-ttf
35261 (sbcl-package->ecl-package sbcl-zpb-ttf))
35262
35263(define-public clasp-zpb-ttf
35264 (sbcl-package->clasp-package sbcl-zpb-ttf))
35265
35266(define-public sbcl-zpng
35267 (package
35268 (name "sbcl-zpng")
35269 (version "1.2.2")
35270 (source
35271 (origin
35272 (method git-fetch)
35273 (uri (git-reference
35274 (url "https://github.com/xach/zpng")
35275 (commit (string-append "release-" version))))
35276 (file-name (git-file-name name version))
35277 (sha256
35278 (base32 "0b3ag3jhl3z7kdls3ahdsdxsfhhw5qrizk769984f4wkxhb69rcm"))))
35279 (build-system asdf-build-system/sbcl)
35280 (inputs
35281 (list sbcl-salza2))
35282 (synopsis "PNG encoder for Common Lisp")
35283 (description "This is a Common Lisp library for creating PNG images.")
35284 (home-page "https://www.xach.com/lisp/zpng/")
35285 (license license:bsd-2)))
35286
35287(define-public cl-zpng
35288 (sbcl-package->cl-source-package sbcl-zpng))
35289
35290(define-public ecl-zpng
35291 (sbcl-package->ecl-package sbcl-zpng))
35292
35293(define-public sbcl-zr-utils
35294 (let ((commit "be63dff7020c5d8dd2016eb530a7e0285c0cf200")
35295 (revision "1"))
35296 (package
35297 (name "sbcl-zr-utils")
35298 (version (git-version "0.0.0.0" revision commit))
35299 (source
35300 (origin
35301 (method git-fetch)
35302 (uri (git-reference
35303 (url "https://gitlab.com/zombie-raptor/zr-utils.git")
35304 (commit commit)))
35305 (file-name (git-file-name "cl-zr-utils" version))
35306 (sha256
35307 (base32 "0i30ynx33ag7krmy4s8jiws6sl2cnczk8p1dx8bf1m8zf4fjnkmc"))))
35308 (build-system asdf-build-system/sbcl)
35309 (inputs
35310 (list sbcl-alexandria
35311 sbcl-babel
35312 sbcl-closer-mop
35313 sbcl-cl-unicode
35314 sbcl-trivial-gray-streams
35315 sbcl-trivial-with-current-source-form))
35316 (arguments
35317 (list #:tests? #f)) ; FIXME: Test system not found.
35318 (synopsis "Common Lisp utilities library")
35319 (description
35320 "This is a Common Lisp utilities library originating from the
35321Zombie Raptor game engine project.")
35322 (home-page "https://gitlab.com/zombie-raptor/zr-utils")
35323 (license license:expat))))
35324
35325(define-public cl-zr-utils
35326 (sbcl-package->cl-source-package sbcl-zr-utils))
35327
35328(define-public ecl-zr-utils
35329 (sbcl-package->ecl-package sbcl-zr-utils))
35330
35331(define-public sbcl-zs3
35332 (package
35333 (name "sbcl-zs3")
35334 (version "1.3.4")
35335 (source
35336 (origin
35337 (method git-fetch)
35338 (uri
35339 (git-reference
35340 (url "https://github.com/xach/zs3")
35341 (commit (string-append "release-" version))))
35342 (file-name (git-file-name "zs3" version))
35343 (sha256
35344 (base32 "1vr9l0hjjmcs24xfjz1s63jfj2261rlzhjvj5f4vblqi0yc96ir5"))))
35345 (build-system asdf-build-system/sbcl)
35346 (inputs
35347 (list sbcl-drakma
35348 sbcl-alexandria
35349 sbcl-cxml
35350 sbcl-ironclad
35351 sbcl-puri
35352 sbcl-cl-base64))
35353 (synopsis "Work with Amazon S3 and Amazon CloudFront from Common Lisp")
35354 (description "This is ZS3, a library for working with Amazon's Simple Storage
35355Service (S3) and CloudFront service from Common Lisp.")
35356 (home-page "https://github.com/xach/zs3")
35357 (license license:bsd-2)))
35358
35359(define-public cl-zs3
35360 (sbcl-package->cl-source-package sbcl-zs3))
35361
35362(define-public ecl-zs3
35363 (sbcl-package->ecl-package sbcl-zs3))
35364
35365(define-public sbcl-zsort
35366 (let ((commit "f6724a6fff7662a942195cedb0d7f00da59c74ed")
35367 (revision "1"))
35368 (package
35369 (name "sbcl-zsort")
35370 (version (git-version "0.1" revision commit))
35371 (source
35372 (origin
35373 (method git-fetch)
35374 (uri (git-reference
35375 (url "https://github.com/jorgetavares/zsort")
35376 (commit commit)))
35377 (file-name (git-file-name "cl-zsort" version))
35378 (sha256
35379 (base32 "1vyklyh99712zsll4qi0m4mm8yb1nz04403vl8i57bjv5p5max49"))))
35380 (build-system asdf-build-system/sbcl)
35381 (inputs
35382 (list sbcl-alexandria))
35383 (home-page "https://github.com/jorgetavares/zsort")
35384 (synopsis "Collection of portable sorting algorithms in Common Lisp")
35385 (description
35386 "@code{zsort} is a collection of portable sorting algorithms. Common
35387Lisp provides the @code{sort} and @code{stable-sort} functions but these can
35388have different algorithms implemented according to each implementation. Also,
35389the standard sorting functions might not be the best for a certain situations.
35390This library aims to provide developers with more options.")
35391 (license license:expat))))
35392
35393(define-public cl-zsort
35394 (sbcl-package->cl-source-package sbcl-zsort))
35395
35396(define-public ecl-zsort
35397 (sbcl-package->ecl-package sbcl-zsort))
35398
35399(define-public clasp-zsort
35400 (sbcl-package->clasp-package sbcl-zsort))
35401
35402(define-public sbcl-zstd
35403 (let ((commit "134f058eee11512cf772a8d5b64364acf56a10b8")
35404 (revision "1"))
35405 (package
35406 (name "sbcl-zstd")
35407 (version (git-version "2.0" revision commit))
35408 (source
35409 (origin
35410 (method git-fetch)
35411 (uri (git-reference
35412 (url "https://codeberg.org/glv/cl-zstd")
35413 (commit commit)))
35414 (file-name (git-file-name "cl-zstd" version))
35415 (sha256
35416 (base32 "1iqpi5v6fdm6xxc9l8zhk6kcgl8hgxiwk1ki2yx2j3j4kfvqv8j9"))))
35417 (build-system asdf-build-system/sbcl)
35418 (native-inputs
35419 (list sbcl-fiveam))
35420 (inputs
35421 (list sbcl-cffi
35422 sbcl-cl-octet-streams
35423 (list zstd "lib")))
35424 (arguments
35425 (list #:phases
35426 #~(modify-phases %standard-phases
35427 (add-after 'unpack 'fix-paths
35428 (lambda* (#:key inputs #:allow-other-keys)
35429 (substitute* "src/libzstd.lisp"
35430 (("libzstd\\.so")
35431 (search-input-file inputs "/lib/libzstd.so"))))))))
35432 (synopsis "Common Lisp library for Zstandard (de)compression")
35433 (description
35434 "This Common Lisp library provides functions for Zstandard
35435compression/decompression using bindings to the libzstd C library.")
35436 (home-page "https://codeberg.org/glv/cl-zstd")
35437 (license license:gpl3+))))
35438
35439(define-public cl-zstd
35440 (sbcl-package->cl-source-package sbcl-zstd))
35441
35442(define-public ecl-zstd
35443 (sbcl-package->ecl-package sbcl-zstd))
35444
35445(define-public sbcl-cl-transducers
35446 (package
35447 (name "sbcl-cl-transducers")
35448 (version "1.5.1")
35449 (source
35450 (origin
35451 (method git-fetch)
35452 (uri (git-reference
35453 (url "https://github.com/fosskers/cl-transducers")
35454 (commit (string-append "v" version))))
35455 (file-name (git-file-name name version))
35456 (sha256
35457 (base32 "12zbzcmly6gb9xbhidymp966hw26a2h6wfdmi83ynwldc8wfnlwm"))))
35458 (build-system asdf-build-system/sbcl)
35459 (arguments
35460 '(#:asd-systems '("transducers" "transducers/jzon" "transducers/fset")))
35461 (native-inputs
35462 (list sbcl-cl-str
35463 sbcl-parachute))
35464 (inputs
35465 (list sbcl-fset
35466 sbcl-jzon
35467 sbcl-trivia))
35468 (home-page "https://fosskers.github.io/cl-transducers/")
35469 (synopsis "Data source processing for Common Lisp via transducers")
35470 (description
35471 "Transducers are an ergonomic and extremely memory-efficient way to
35472process a data source. Data source refers to simple collections like lists or
35473vectors, but also potentially large files or generators of infinite data.")
35474 (license license:mpl2.0)))
35475
35476(define-public cl-transducers
35477 (sbcl-package->cl-source-package sbcl-cl-transducers))
35478
35479(define-public ecl-cl-transducers
35480 (sbcl-package->ecl-package sbcl-cl-transducers))