diff --git a/glicid/packages/databases.scm b/glicid/packages/databases.scm index 3dbbe34..6a648ea 100644 --- a/glicid/packages/databases.scm +++ b/glicid/packages/databases.scm @@ -3,24 +3,60 @@ #:use-module (guix download) #:use-module (guix packages) #:use-module ((gnu packages databases) #:prefix gnu:) + #:use-module (gnu packages) #:use-module (gnu packages tls) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages icu4c) + #:use-module (gnu packages bison) + #:use-module (gnu packages flex) + #:use-module (gnu packages web) #:use-module (guix build-system cmake) #:use-module (ice-9 match) #:use-module (guix gexp) #:use-module ((guix licenses) #:prefix license:) ) +(define-public postgresql-16 + (package + (inherit gnu:postgresql-15) + (name "postgresql") + (version "16.4") + (source (origin + (method url-fetch) + (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) + (sha256 (base32 "0vvd73rzj0sl294v15bh8yslakqv412bxqzlkqxyjwxa8pb6c5wp")))) + (inputs `(("icu4c" ,icu4c) + ("pkg-config" ,pkg-config) + ,@(package-inputs gnu:postgresql-15))))) + +; not yet public as the checks fails on jsonb_jsonpath +(define postgresql-17 + (package + (inherit postgresql-16) + (name "postgresql") + (version "17.0") + (source (origin + (method url-fetch) + (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) + (sha256 (base32 "1ph9j60nxwcslpdji4q0snc3932bn8xrpbfvi0jvdmpxq0qn29vy")))) + (inputs `(("icu4c" ,icu4c) + ("pkg-config" ,pkg-config) + ("bison" ,bison) + ("flex" ,flex) + ("json-c" ,json-c) + ,@(package-inputs postgresql-16))))) + (define-public timescaledb (package (name "timescaledb") - (version "2.13.1") + (version "2.17.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/timescale/timescaledb") (commit version))) (file-name (git-file-name name version)) - (sha256 (base32 "1qs97c70rlmsi15mwlknk3p6bs1zm7z4pl4qwwpgqzvwrlgixqzc")))) + (sha256 (base32 "1mfwbi36q6xsi9x81gwy8diijkqqdq297xhsln11a73hq88dlv3a")))) (build-system cmake-build-system) (arguments (list #:imported-modules `((guix build union) @@ -69,7 +105,7 @@ "start")))) (add-after 'prepare-tests 'check (assoc-ref %standard-phases 'check))))) - (inputs (list openssl gnu:postgresql)) + (inputs (list openssl postgresql-16)) (home-page "https://www.timescale.com/") (synopsis "Time-series extension for PostgreSQL") (description "TimescaleDB is a database designed to make SQL scalable for @@ -78,73 +114,15 @@ (partitioning key), as well as full SQL support.") (license license:asl2.0))) -(define-public timescaledb-pg15 - (package - (inherit timescaledb) - (inputs (list openssl gnu:postgresql-15)))) - -(define-public timescaledb-pg14 - (package - (inherit timescaledb) - (inputs (list openssl gnu:postgresql-14)))) - -(define-public timescaledb-pg13 - (package - (inherit timescaledb) - (inputs (list openssl gnu:postgresql-13)))) - -(define-public timescaledb-2.8-pg14 +(define-public timescaledb-2.13 (package (inherit timescaledb) (name "timescaledb") - (version "2.8.1") + (version "2.13.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/timescale/timescaledb") (commit version))) (file-name (git-file-name name version)) - (sha256 (base32 "1gbadna0ilmqad7sbrixm12wd71h43njhsbp1kh5lispb6drdb6r")))) - (inputs (list openssl gnu:postgresql-14)))) - -(define-public timescaledb-2.10 - (package - (inherit timescaledb) - (name "timescaledb") - (version "2.10.3") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/timescale/timescaledb") - (commit version))) - (file-name (git-file-name name version)) - (sha256 (base32 "1yc98wmk5m0g3sl9sgv6fwbmmabpryxxmi5d5chs931n90y773l0")))) - (inputs (list openssl gnu:postgresql-15)))) - -(define-public timescaledb-2.11 - (package - (inherit timescaledb) - (name "timescaledb") - (version "2.11.2") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/timescale/timescaledb") - (commit version))) - (file-name (git-file-name name version)) - (sha256 (base32 "1dqvqbp04xs69px999wk4n99hiniiiq8829xhp9w5nb5dfsg6rvk")))) - (inputs (list openssl gnu:postgresql-15)))) - -(define-public timescaledb-2.12 - (package - (inherit timescaledb) - (name "timescaledb") - (version "2.12.2") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/timescale/timescaledb") - (commit version))) - (file-name (git-file-name name version)) - (sha256 (base32 "0n1hlrjbga7gh5l84s5v5ibhij2jg4b3hjwmpa9ig4m6q28y14bd")))) - (inputs (list openssl gnu:postgresql-15)))) + (sha256 (base32 "1qs97c70rlmsi15mwlknk3p6bs1zm7z4pl4qwwpgqzvwrlgixqzc"))))))