guix_mirror_bot pushed a commit to branch go-team in repository guix. commit 3aad5cb8ca34ed76ea5e1d3b4923cd024f6551c9 Author: Sharlatan Hellseher <sharlata...@gmail.com> AuthorDate: Wed May 28 22:38:25 2025 +0100
gnu: Add go-github-com-cockroachdb-pebble. * gnu/packages/databases.scm (go-github-com-cockroachdb-pebble, pebble): New variables. Change-Id: I1ad3128d200786441c954609a36efadd49076947 --- gnu/packages/databases.scm | 85 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 73c8bebe98..c0f88c3278 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -114,6 +114,7 @@ #:use-module (gnu packages golang) #:use-module (gnu packages golang-build) #:use-module (gnu packages golang-check) + #:use-module (gnu packages golang-compression) #:use-module (gnu packages golang-crypto) #:use-module (gnu packages golang-web) #:use-module (gnu packages golang-xyz) @@ -146,6 +147,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages popt) #:use-module (gnu packages pretty-print) + #:use-module (gnu packages prometheus) #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages python-build) @@ -487,6 +489,89 @@ database later.") license:mpl1.1 ; examples/interfaces/0{6,8}*.cpp license:public-domain)))) ; including files without explicit licence +(define-public go-github-com-cockroachdb-pebble + ;; TODO: As inherited package can't be placed in separate module, keeping + ;; this Golang source library here. + (package + (name "go-github-com-cockroachdb-pebble") + (version "1.1.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cockroachdb/pebble") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "15px3m8fid7fwh0xfyia75aak6a5sx5q3r01n79fr6mnyiaix18a")))) + (build-system go-build-system) + (arguments + (list + #:go go-1.23 + #:build-flags #~(list "-tags" "external_libzstd") + #:test-flags #~(list "-tags" "external_libzstd" + ;; Skip tests requiring git in PATH. + "-skip" "TestLint") + ;; XXX: Maybe run more tests if possible. + #:test-subdirs #~(list "internal/...") + #:import-path "github.com/cockroachdb/pebble")) + (native-inputs + (list go-github-com-stretchr-testify + go-golang-org-x-perf + pkg-config)) + (inputs + (list (list zstd "lib"))) + (propagated-inputs + (list go-github-com-cespare-xxhash-v2 + go-github-com-cockroachdb-datadriven + go-github-com-cockroachdb-errors + go-github-com-cockroachdb-fifo + go-github-com-cockroachdb-redact + go-github-com-cockroachdb-tokenbucket + go-github-com-datadog-zstd + go-github-com-ghemawat-stream + go-github-com-golang-snappy + go-github-com-guptarohit-asciigraph + go-github-com-hdrhistogram-hdrhistogram-go + go-github-com-klauspost-compress + go-github-com-kr-pretty + go-github-com-pkg-errors + go-github-com-pmezard-go-difflib + go-github-com-prometheus-client-golang + go-github-com-prometheus-client-model + go-github-com-spf13-cobra + go-golang-org-x-exp + go-golang-org-x-perf + go-golang-org-x-sync + go-golang-org-x-sys)) + (home-page "https://github.com/cockroachdb/pebble") + (synopsis "RocksDB/LevelDB inspired key-value database in Golang") + (description + "Pebble is a LevelDB/RocksDB inspired key-value store focused on +performance and internal usage by CockroachDB. Pebble inherits the RocksDB +file formats and a few extensions such as range deletion tombstones, +table-level bloom filters, and updates to the MANIFEST format.") + (license license:bsd-3))) + +(define-public pebble + (package/inherit go-github-com-cockroachdb-pebble + (name "pebble") + (arguments + (substitute-keyword-arguments + (package-arguments go-github-com-cockroachdb-pebble) + ((#:tests? _ #t) #f) + ((#:install-source? _ #t) #f) + ((#:import-path _) "github.com/cockroachdb/pebble/cmd/pebble") + ((#:unpack-path _ "") "github.com/cockroachdb/pebble"))) + (native-inputs + (append (package-propagated-inputs go-github-com-cockroachdb-pebble) + (package-native-inputs go-github-com-cockroachdb-pebble))) + (propagated-inputs '()) + (description + (string-append (package-description + go-github-com-cockroachdb-pebble) + "\nThis package provides command line interface (CLI).")))) + (define-public dicedb (package (name "dicedb")