summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2025-07-10 16:05:02 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2025-07-22 20:13:09 +0100
commit5569ca7b149a689572941c87c45fe553e8c9225c (patch)
tree6a4b7bee8ae62790af13ade47c44d5fab0cf62f9 /gnu/packages
parent2ff8d854aee92d67a815dabde84c5b1028c2e075 (diff)
gnu: Add cowsql.
* gnu/packages/high-availability.scm (cowsql): New variable. Change-Id: I8c90e2feb908f918eb17f1ee1cae8dbc25079b06
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/high-availability.scm48
1 files changed, 48 insertions, 0 deletions
diff --git a/gnu/packages/high-availability.scm b/gnu/packages/high-availability.scm
index 7c21bcf8ca1..a70a990cb0a 100644
--- a/gnu/packages/high-availability.scm
+++ b/gnu/packages/high-availability.scm
@@ -61,6 +61,7 @@
61 #:use-module (gnu packages pkg-config) 61 #:use-module (gnu packages pkg-config)
62 #:use-module (gnu packages python) 62 #:use-module (gnu packages python)
63 #:use-module (gnu packages rsync) 63 #:use-module (gnu packages rsync)
64 #:use-module (gnu packages sqlite)
64 #:use-module (gnu packages tls) 65 #:use-module (gnu packages tls)
65 #:use-module (gnu packages valgrind) 66 #:use-module (gnu packages valgrind)
66 #:use-module (gnu packages version-control) 67 #:use-module (gnu packages version-control)
@@ -76,6 +77,53 @@
76 #:use-module ((guix licenses) 77 #:use-module ((guix licenses)
77 #:prefix license:)) 78 #:prefix license:))
78 79
80(define-public cowsql
81 ;; Use the latest commit which includs
82 ;; <https://github.com/cowsql/cowsql/pull/37>, revert back to vertion tags
83 ;; when released.
84 (let ((commit "cb624d3263ca22b42ecfa8a1dd8a0c8d990db7b6")
85 (revision "0"))
86 (package
87 (name "cowsql")
88 (version (git-version "1.15.8" revision commit))
89 (source
90 (origin
91 (method git-fetch)
92 (uri (git-reference
93 (url "https://github.com/cowsql/cowsql")
94 (commit commit)))
95 (file-name (git-file-name name version))
96 (sha256
97 (base32 "0b4ymmsp9y9zzwanp739bc6p5qzl1h6ny2g50blhda99xcnlaf77"))))
98 (build-system gnu-build-system)
99 (arguments
100 (list
101 #:phases
102 #~(modify-phases %standard-phases
103 (replace 'bootstrap
104 (lambda _
105 (invoke "autoreconf" "-vfi"))))))
106 (native-inputs
107 (list autoconf
108 automake
109 libtool
110 pkg-config))
111 (inputs
112 (list cowsql-raft
113 libuv
114 sqlite))
115 (home-page "https://github.com/cowsql/cowsql")
116 (synopsis "Embeddable, replicated and fault tolerant SQL engine")
117 (description
118 "cowsql (/ˈkaʊ,siːkwəl/ listen) is a C library that implements an
119embeddable and replicated SQL database engine with high availability and
120automatic failover.
121
122cowsql extends SQLite with a network protocol that can connect together
123various instances of your application and have them act as a highly-available
124cluster, with no dependency on external databases.")
125 (license license:gpl3+))))
126
79(define-public cowsql-raft 127(define-public cowsql-raft
80 (package 128 (package
81 (name "cowsql-raft") 129 (name "cowsql-raft")