diff options
| author | Sharlatan Hellseher <sharlatanus@gmail.com> | 2025-07-10 16:05:02 +0100 |
|---|---|---|
| committer | Sharlatan Hellseher <sharlatanus@gmail.com> | 2025-07-22 20:13:09 +0100 |
| commit | 5569ca7b149a689572941c87c45fe553e8c9225c (patch) | |
| tree | 6a4b7bee8ae62790af13ade47c44d5fab0cf62f9 /gnu | |
| parent | 2ff8d854aee92d67a815dabde84c5b1028c2e075 (diff) | |
gnu: Add cowsql.
* gnu/packages/high-availability.scm (cowsql): New variable.
Change-Id: I8c90e2feb908f918eb17f1ee1cae8dbc25079b06
Diffstat (limited to 'gnu')
| -rw-r--r-- | gnu/packages/high-availability.scm | 48 |
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 | ||
| 119 | embeddable and replicated SQL database engine with high availability and | ||
| 120 | automatic failover. | ||
| 121 | |||
| 122 | cowsql extends SQLite with a network protocol that can connect together | ||
| 123 | various instances of your application and have them act as a highly-available | ||
| 124 | cluster, 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") |
