guix_mirror_bot pushed a commit to branch master
in repository guix.

commit 7d7b8b6f6820dc2d1e2311a23a04bc27c55d5fc0
Author: bdunahu <[email protected]>
AuthorDate: Fri Dec 5 01:02:30 2025 -0500

    gnu: Add sdb.
    
    * gnu/packages/databases.scm (sdb): New variable.
    
    Change-Id: I199de01ffb467a3f64b48d5ae42dc5fc18cab3df
    Signed-off-by: Cayetano Santos <[email protected]>
---
 gnu/packages/databases.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 26668b4ed7..ef2665b888 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -67,6 +67,7 @@
 ;;; Copyright © 2025 Ashvith Shetty <[email protected]>
 ;;; Copyright © 2025 Philippe Swartvagher <[email protected]>
 ;;; Copyright © 2025 Simen Endsjø <[email protected]>
+;;; Copyright © 2025 bdunahu <[email protected]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -139,6 +140,7 @@
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages networking)
+  #:use-module (gnu packages node)
   #:use-module (gnu packages onc-rpc)
   #:use-module (gnu packages openstack)
   #:use-module (gnu packages pantheon)
@@ -5849,6 +5851,46 @@ with no external dependencies.  The targets are small 
apps that would
 be blown away by a SQL-DB or an external database server.")
     (license license:expat)))
 
+(define-public sdb
+  (package
+    (name "sdb")
+    (version "2.2.4")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://github.com/radareorg/sdb.git";)
+                     (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "15pc807s2nmhnr3mspyz9h47rkxkv1r07x959ir17v5b6zs7wxvw"))))
+    (build-system meson-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-before 'check 'setenv-cc
+            (lambda _
+              (setenv "CC" #$(cc-for-target))))
+          ;; The provided meson.build uses a Makefile in the source root
+          ;; to run the tests, but resolves its directory relative to
+          ;; the build directory, assuming the build is one level under
+          ;; the source tree. This breaks if the build tree is elsewhere.
+          (add-before 'check 'set-test-workdir-to-source-root
+            (lambda _
+              (substitute* "../source/meson.build"
+                (("workdir: join_paths.*$")
+                 "workdir: meson.project_source_root(),\n")))))))
+    (native-inputs
+     (list node
+           perl
+           python-minimal-wrapper))
+    (home-page "https://github.com/radareorg/sdb";)
+    (synopsis "Simple and fast string based key-value database")
+    (description "SDB is a simple key/value database based on djb's cdb disk
+storage that supports JSON and array introspection.")
+    (license license:expat)))
+
 (define-public sequeler
   (package
     (name "sequeler")

Reply via email to