summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2022-07-24 08:59:07 +0200
committerPierre Neidhardt <mail@ambrevar.xyz>2022-07-24 08:59:30 +0200
commitc5a80784e2a08f676e2f49cbdab1f81db8d7dbb6 (patch)
tree6512a35f54b8190f5b6f9ebe1fd71e958f789a62
parent7aab4eddd04e4b26986903680b28dce2de0f4db0 (diff)
gnu: Add ospm.
* gnu/packages/lisp-xyz.scm (cl-ospm, ecl-ospm, sbcl-ospm): New variables.
-rw-r--r--gnu/packages/lisp-xyz.scm51
1 files changed, 51 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 2f6d22fe7d..c0df8b9c86 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -95,6 +95,7 @@
#:use-module (gnu packages mpi)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
+ #:use-module (gnu packages package-management)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
@@ -22779,3 +22780,53 @@ binding @code{*debugger-hook*} is not enough -- most notably, for
(arguments
;; Tests fail on ECL: https://github.com/phoe/trivial-custom-debugger/issues/3
'(#:tests? #f))))
+
+(define-public sbcl-ospm
+ (package
+ (name "sbcl-ospm")
+ (version "0.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/atlas-engineer/ospm")
+ (commit version)))
+ (file-name (git-file-name "cl-ospm" version))
+ (sha256
+ (base32 "1b64ar6x08bcig4brlsim445favjf1zhyj6qz018cildp3xs4miz"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ (list sbcl-alexandria
+ sbcl-calispel
+ sbcl-hu.dwim.defclass-star
+ sbcl-local-time
+ sbcl-moptilities
+ sbcl-named-readtables
+ sbcl-serapeum
+ sbcl-trivia))
+ (native-inputs
+ ;; FIXME: Tests have execution errors because of Guix being run in a container.
+ (list sbcl-lisp-unit2 guix))
+ (home-page "https://github.com/atlas-engineer/ospm")
+ (synopsis "System package manager in Common Lisp")
+ (description
+ "This library is a universal interface to the operating system package manager.
+It has extensive support for Guix, among others:
+
+@itemize
+@item package listing and searching;
+@item package installation and uninstallation;
+@item package file listing;
+@item profile listing;
+@item manifest listing and installation;
+@item generation listing, switching and deletion.
+@end itemize\n")
+ (license license:bsd-3)))
+
+(define-public cl-ospm
+ (let ((pkg (sbcl-package->cl-source-package sbcl-ospm)))
+ (package
+ (inherit pkg)
+ (inputs
+ (cons (list "osicat" cl-osicat)
+ (package-inputs pkg))))))