Subject: [PATCH v4 7/7] gnu: Add kapla.

From: pukkamustard <[email-masked]>
Date: Thu, 28 Dec 2023 09:40:10 +0000

* gnu/packages/guile-xyz.scm (kapla): New variable.
---
 gnu/packages/guile-xyz.scm | 46 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index a66a6d8ad5..f3d97cca37 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -102,6 +102,7 @@ (define-module (gnu packages guile-xyz)
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages networking)
+  #:use-module (gnu packages ninja)
   #:use-module (gnu packages noweb)
   #:use-module (gnu packages nss)
   #:use-module (gnu packages package-management)
@@ -5193,6 +5194,51 @@ (define-public guile-eris
       (home-page "https://codeberg.org/eris/guile-eris")
       (license license:gpl3+))))
 
+(define-public kapla
+  (let ((commit "fa72bcb116ed6ea20f76206145766cb46fa4f30d")
+        (revision "0"))
+    (package
+      (name "kapla")
+      (version (git-version "0.1.0-dev" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://codeberg.org/eris/kapla.git")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256 (base32 "15g9dg6i93n5wkkma983hvcl5mgvw13yxxrv8ka5n5mvslk9f0wa"))))
+      (build-system gnu-build-system)
+      (arguments
+       (list
+        #:phases
+        #~(modify-phases
+	      %standard-phases
+	    (delete 'patch-source-shebangs)
+	    (replace 'configure
+	      (lambda* (#:key outputs #:allow-other-keys)
+	        (invoke "guile"
+		        "--no-auto-compile"
+		        "configure"
+		        (string-append "--prefix=" #$output))))
+	    (replace 'build (lambda _ (invoke "ninja")))
+	    (delete 'check)
+	    (delete 'install))))
+      (native-inputs (list ninja))
+      (inputs (list guile-3.0))
+      (propagated-inputs
+       (list guile-coap
+	     guile-sqlite3
+	     guile-eris
+	     guile-lib
+	     guile-fibers))
+      (synopsis "Block storage and transport for ERIS encoded content")
+      (description "Kapla is a tool for encoding content with ERIS and
+managing blocks of ERIS encoded content.  It allows blocks to be stored in a
+local database and be shared over the network.")
+      (home-page "https://codeberg.org/eris/kapla")
+      (license license:agpl3+))))
+
 (define-public guile-r6rs-protobuf
   (package
     (name "guile-r6rs-protobuf")
-- 
2.41.0