diff options
Diffstat (limited to 'gnu/packages/lisp-xyz.scm')
-rw-r--r-- | gnu/packages/lisp-xyz.scm | 151 |
1 files changed, 151 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index cde879f210..27312cb369 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -7095,6 +7095,46 @@ the return type of a function.") ;; The tests get stuck indefinitly '(#:tests? #f)))) +(define-public sbcl-simplified-types + (let ((commit "8fd0727a70a9de76289ac62c1567b8d278e7434e") + (revision "0")) + (package + (name "sbcl-simplified-types") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/marcoheisig/simplified-types") + (commit commit))) + (file-name (git-file-name "cl-simplified-types" version)) + (sha256 + (base32 "1hdwmn5lz717aj6qdqmfmr3cbjl8l3giwn0fb5ca9pj83cx7fg8y")))) + (build-system asdf-build-system/sbcl) + (inputs + (list sbcl-alexandria + sbcl-introspect-environment + sbcl-trivia)) + (home-page "https://github.com/marcoheisig/simplified-types") + (synopsis "Simplify Common Lisp type specifiers") + (description + "Simplified-Types is a library that provides functions for simplifying +Common Lisp type specifiers. The API consists of two functions: + +@itemize +@item @code{simplify-type} takes a type specifier and, optionally, an +environment, and returns the corresponding simplified type. +@item @code{simplified-type-of} takes an object and returns the simplified +type of that object. +@end itemize") + (license license:expat)))) + +(define-public cl-simplified-types + (sbcl-package->cl-source-package sbcl-simplified-types)) + +(define-public ecl-simplified-types + (sbcl-package->ecl-package sbcl-simplified-types)) + (define-public sbcl-typo (let ((commit "0e883490f81edf2a1be4e5b101d1caec78d7853b") (revision "0")) @@ -19164,6 +19204,77 @@ fit together as required by any particular game.") (define-public cl-trial (sbcl-package->cl-source-package sbcl-trial)) +(define-public sbcl-virality + (package + (name "sbcl-virality") + (version "0.3.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/bufferswap/ViralityEngine") + (commit (string-append "v" version)))) + (file-name (git-file-name "cl-virality" version)) + (sha256 + (base32 "0hvjcvyd628jh4if6swk1wrfb9qdlnpk9ax1y3jarr8ms7ghfcdb")))) + (build-system asdf-build-system/sbcl) + (arguments + `(#:asd-systems '("virality" + "vorigin" + "vorigin.test" + "vshadow" + "vumbra" + "vutils") + #:phases (modify-phases %standard-phases + (add-after 'unpack 'delete-examples + (lambda _ + ;; Don't install the big "examples" directory. + (delete-file-recursively "examples")))))) + (inputs + (list sbcl-3b-bmfont + sbcl-babel + sbcl-cl-cpus + sbcl-cl-graph + sbcl-cl-opengl + sbcl-cl-ppcre + sbcl-cl-slug + sbcl-closer-mop + sbcl-fast-io + sbcl-global-vars + sbcl-glsl-packing + sbcl-jsown + sbcl-lparallel + sbcl-pngload + sbcl-printv + sbcl-queues + sbcl-sdl2 + sbcl-serapeum + sbcl-split-sequence + sbcl-static-vectors + sbcl-trivial-features + sbcl-varjo)) + (home-page "https://github.com/bufferswap/ViralityEngine") + (synopsis "Component-based game engine written in Common Lisp") + (description + "Virality Engine provides a system and workflow that helps describe the +elements needed to write 2D or 3D games. It was designed with several domain +specific languages that make it easier to describe, manipulate, and use assets +commonly found in game making. Such assets include (but are not limited to) +textures, materials, shader programs, and scene trees of actors that are +available for instantiation. Virality Engine also knows how to accept input +from keyboards and most joysticks and gamepads. + +The component system is a hybrid model between an ECS and an object model. The +components are defined similar to CLOS defclass, and regular generic methods +can be used with them. Components are added to Actors which represent game +concepts like players, scenery, effects, etc. We define a component protocol +invoked by Virality Engine to move your components to the next state and +render them each frame.") + (license license:expat))) + +(define-public cl-virality + (sbcl-package->cl-source-package sbcl-virality)) + (define-public sbcl-cl-liballegro (let ((commit "49f632ce97fc4f835bf5d450588793234b980a64") (revision "1")) @@ -20364,6 +20475,46 @@ configuration file format.") (define-public ecl-clop (sbcl-package->ecl-package sbcl-clop)) +(define-public sbcl-pp-toml + (let ((commit "54f7d08c939d18b24363342c98c19b6812d7afb9") + (revision "0")) + (package + (name "sbcl-pp-toml") + (version (git-version "1.0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pnathan/pp-toml") + (commit commit))) + (file-name (git-file-name "cl-pp-toml" version)) + (sha256 + (base32 "136d7jzz7l2ck9wwld0ac46jmpm94lvja6m50sy73s232slka2hg")))) + (build-system asdf-build-system/sbcl) + (native-inputs + (list sbcl-fiveam)) + (inputs + (list sbcl-alexandria + sbcl-cl-ppcre + sbcl-esrap + sbcl-generic-comparability + sbcl-local-time + sbcl-parse-number + sbcl-split-sequence)) + (home-page "https://github.com/pnathan/pp-toml") + (synopsis "TOML parser for Common Lisp") + (description + "PP-TOML is a Common Lisp library for parsing strings in the TOML +configuration file format. It implements only the 0.1.0 specification of +TOML.") + (license license:llgpl)))) + +(define-public cl-pp-toml + (sbcl-package->cl-source-package sbcl-pp-toml)) + +(define-public ecl-pp-toml + (sbcl-package->ecl-package sbcl-pp-toml)) + (define-public sbcl-linedit (let ((commit "0561c97dfca2f5854fcc66558a567a9875ddcb8f") (revision "1")) |