Merge branch 'master' into postgresql_group
This commit is contained in:
@@ -3,9 +3,12 @@ let
|
||||
generic =
|
||||
# dependencies
|
||||
{ stdenv, lib, fetchurl, makeWrapper
|
||||
, glibc, zlib, readline, openssl, icu, systemd, libossp_uuid
|
||||
, glibc, zlib, readline, openssl, openssl_1_0_2, icu, systemd, libossp_uuid
|
||||
, pkgconfig, libxml2, tzdata
|
||||
|
||||
# This is important to obtain a version of `libpq` that does not depend on systemd.
|
||||
, enableSystemd ? (lib.versionAtLeast version "9.6" && !stdenv.isDarwin)
|
||||
|
||||
# for postgreql.pkgs
|
||||
, this, self, newScope, buildEnv
|
||||
|
||||
@@ -17,11 +20,11 @@ let
|
||||
icuEnabled = atLeast "10";
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "postgresql-${version}";
|
||||
pname = "postgresql";
|
||||
inherit version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://postgresql/source/v${version}/${name}.tar.bz2";
|
||||
url = "mirror://postgresql/source/v${version}/${pname}-${version}.tar.bz2";
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
@@ -29,9 +32,10 @@ let
|
||||
setOutputFlags = false; # $out retains configureFlags :-/
|
||||
|
||||
buildInputs =
|
||||
[ zlib readline openssl libxml2 makeWrapper ]
|
||||
[ zlib readline libxml2 makeWrapper ]
|
||||
++ lib.optionals icuEnabled [ icu ]
|
||||
++ lib.optionals (atLeast "9.6" && !stdenv.isDarwin) [ systemd ]
|
||||
++ lib.optionals enableSystemd [ systemd ]
|
||||
++ [ (if atLeast "9.5" then openssl else openssl_1_0_2) ]
|
||||
++ lib.optionals (!stdenv.isDarwin) [ libossp_uuid ];
|
||||
|
||||
nativeBuildInputs = lib.optionals icuEnabled [ pkgconfig ];
|
||||
@@ -40,7 +44,7 @@ let
|
||||
|
||||
buildFlags = [ "world" ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = [ "-I${libxml2.dev}/include/libxml2" ];
|
||||
NIX_CFLAGS_COMPILE = "-I${libxml2.dev}/include/libxml2";
|
||||
|
||||
# Otherwise it retains a reference to compiler and fails; see #44767. TODO: better.
|
||||
preConfigure = "CC=${stdenv.cc.targetPrefix}cc";
|
||||
@@ -51,7 +55,7 @@ let
|
||||
"--sysconfdir=/etc"
|
||||
"--libdir=$(lib)/lib"
|
||||
"--with-system-tzdata=${tzdata}/share/zoneinfo"
|
||||
(lib.optionalString (atLeast "9.6" && !stdenv.isDarwin) "--with-systemd")
|
||||
(lib.optionalString enableSystemd "--with-systemd")
|
||||
(if stdenv.isDarwin then "--with-uuid=e2fs" else "--with-ossp-uuid")
|
||||
] ++ lib.optionals icuEnabled [ "--with-icu" ];
|
||||
|
||||
@@ -77,8 +81,8 @@ let
|
||||
postInstall =
|
||||
''
|
||||
moveToOutput "lib/pgxs" "$out" # looks strange, but not deleting it
|
||||
moveToOutput "lib/libpgcommon.a" "$out"
|
||||
moveToOutput "lib/libpgport.a" "$out"
|
||||
moveToOutput "lib/libpgcommon*.a" "$out"
|
||||
moveToOutput "lib/libpgport*.a" "$out"
|
||||
moveToOutput "lib/libecpg*" "$out"
|
||||
|
||||
# Prevent a retained dependency on gcc-wrapper.
|
||||
@@ -106,6 +110,17 @@ let
|
||||
# autodetection doesn't seem to able to find this, but it's there.
|
||||
checkTarget = "check";
|
||||
|
||||
preCheck =
|
||||
# On musl, comment skip the following tests, because they break due to
|
||||
# ! ERROR: could not load library "/build/postgresql-11.5/tmp_install/nix/store/...-postgresql-11.5-lib/lib/libpqwalreceiver.so": Error loading shared library libpq.so.5: No such file or directory (needed by /build/postgresql-11.5/tmp_install/nix/store/...-postgresql-11.5-lib/lib/libpqwalreceiver.so)
|
||||
# See also here:
|
||||
# https://git.alpinelinux.org/aports/tree/main/postgresql/disable-broken-tests.patch?id=6d7d32c12e073a57a9e5946e55f4c1fbb68bd442
|
||||
if stdenv.hostPlatform.isMusl then ''
|
||||
substituteInPlace src/test/regress/parallel_schedule \
|
||||
--replace "subscription" "" \
|
||||
--replace "object_address" ""
|
||||
'' else null;
|
||||
|
||||
doInstallCheck = false; # needs a running daemon?
|
||||
|
||||
disallowedReferences = [ stdenv.cc ];
|
||||
@@ -130,7 +145,7 @@ let
|
||||
homepage = https://www.postgresql.org;
|
||||
description = "A powerful, open source object-relational database system";
|
||||
license = licenses.postgresql;
|
||||
maintainers = with maintainers; [ ocharles thoughtpolice danbst ];
|
||||
maintainers = with maintainers; [ ocharles thoughtpolice danbst globin ];
|
||||
platforms = platforms.unix;
|
||||
knownVulnerabilities = optional (!atLeast "9.4")
|
||||
"PostgreSQL versions older than 9.4 are not maintained anymore!";
|
||||
@@ -151,6 +166,9 @@ let
|
||||
# below. See #22653
|
||||
pathsToLink = ["/" "/bin"];
|
||||
|
||||
# Note: the duplication of executables is about 4MB size.
|
||||
# So a nicer solution was patching postgresql to allow setting the
|
||||
# libdir explicitely.
|
||||
postBuild = ''
|
||||
mkdir -p $out/bin
|
||||
rm $out/bin/{pg_config,postgres,pg_ctl}
|
||||
@@ -164,44 +182,44 @@ let
|
||||
|
||||
in self: {
|
||||
|
||||
postgresql_9_4 = self.callPackage generic {
|
||||
version = "9.4.23";
|
||||
psqlSchema = "9.4";
|
||||
sha256 = "16qx4gfq7i2nnxm0i3zxpb3z1mmzx05a3fsh95414ay8n049q00d";
|
||||
this = self.postgresql_9_4;
|
||||
inherit self;
|
||||
};
|
||||
|
||||
postgresql_9_5 = self.callPackage generic {
|
||||
version = "9.5.18";
|
||||
version = "9.5.20";
|
||||
psqlSchema = "9.5";
|
||||
sha256 = "1pgkz794wmp4f40843sbin49k5lgl59jvl6nazvdbb6mgr441jfz";
|
||||
sha256 = "03fygn3nn6l6ar66sldy5akdg1gynny3yxbrpvmmp5ygfnrm2mwj";
|
||||
this = self.postgresql_9_5;
|
||||
inherit self;
|
||||
};
|
||||
|
||||
postgresql_9_6 = self.callPackage generic {
|
||||
version = "9.6.14";
|
||||
version = "9.6.16";
|
||||
psqlSchema = "9.6";
|
||||
sha256 = "08hsqczy1ixkjyf2vr3s9x69agfz9yr8lh31fir4z0dfr5jw421z";
|
||||
sha256 = "1rr2dgv4ams8r2lp13w85c77rkmzpb88fjlc28mvlw6zq2fblv2w";
|
||||
this = self.postgresql_9_6;
|
||||
inherit self;
|
||||
};
|
||||
|
||||
postgresql_10 = self.callPackage generic {
|
||||
version = "10.9";
|
||||
version = "10.11";
|
||||
psqlSchema = "10.0"; # should be 10, but changing it is invasive
|
||||
sha256 = "0m0gbf7nwgag6a1z5f9xszwzgf2xhx0ncakyxwxlzs87n1zk32wm";
|
||||
sha256 = "02fcmvbh0mhplj3s2jd24s642ysx7bggnf0h8bs5amh7dgzi8p8d";
|
||||
this = self.postgresql_10;
|
||||
inherit self;
|
||||
};
|
||||
|
||||
postgresql_11 = self.callPackage generic {
|
||||
version = "11.4";
|
||||
version = "11.6";
|
||||
psqlSchema = "11.1"; # should be 11, but changing it is invasive
|
||||
sha256 = "12ycjlqncijgmd5z078ybwda8ilas96lc7nxxmdq140mzpgjv002";
|
||||
sha256 = "0w1iq488kpzfgfnlw4k32lz5by695mpnkq461jrgsr99z5zlz4j9";
|
||||
this = self.postgresql_11;
|
||||
inherit self;
|
||||
};
|
||||
|
||||
postgresql_12 = self.callPackage generic {
|
||||
version = "12.1";
|
||||
psqlSchema = "12";
|
||||
sha256 = "1vc3hjcbgkdfczc1ipkk02rahabn7fabpb7qs203jxpnpamz76x0";
|
||||
this = self.postgresql_12;
|
||||
inherit self;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchFromGitHub, postgresql, protobufc }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "cstore_fdw-${version}";
|
||||
pname = "cstore_fdw";
|
||||
version = "1.6.2";
|
||||
|
||||
nativeBuildInputs = [ protobufc ];
|
||||
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/{lib,share/extension}
|
||||
mkdir -p $out/{lib,share/postgresql/extension}
|
||||
|
||||
cp *.so $out/lib
|
||||
cp *.sql $out/share/postgresql/extension
|
||||
|
||||
@@ -1,20 +1,17 @@
|
||||
{ stdenv, fetchFromGitHub, postgresql, openssl }:
|
||||
{ stdenv, fetchFromGitHub, postgresql, openssl, zlib, readline }:
|
||||
|
||||
if stdenv.lib.versionOlder postgresql.version "10"
|
||||
then throw "pg_auto_failover not supported for PostgreSQL ${postgresql.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pg_auto_failover";
|
||||
version = "1.0.2";
|
||||
version = "1.0.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "citusdata";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1296zk143y9fvmcg2hjbrjdjfhi5rrd0clh16vblkghcvxrzfyvy";
|
||||
sha256 = "1idlgqazr2qra5x702f2yjcl99zwm1i5fi84paplfy98i5jjmxm1";
|
||||
};
|
||||
|
||||
buildInputs = [ postgresql openssl ];
|
||||
buildInputs = [ postgresql openssl zlib readline ];
|
||||
|
||||
installPhase = ''
|
||||
install -D -t $out/bin src/bin/pg_autoctl/pg_autoctl
|
||||
@@ -29,5 +26,6 @@ stdenv.mkDerivation rec {
|
||||
maintainers = [ maintainers.marsam ];
|
||||
platforms = postgresql.meta.platforms;
|
||||
license = licenses.postgresql;
|
||||
broken = versionOlder postgresql.version "10";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin # For buildEnv to setup proper symlinks. See #22653
|
||||
mkdir -p $out/{lib,share/extension}
|
||||
mkdir -p $out/{lib,share/postgresql/extension}
|
||||
|
||||
cp *.so $out/lib
|
||||
cp *.sql $out/share/postgresql/extension
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pg_cron";
|
||||
version = "1.1.4";
|
||||
version = "1.2.0";
|
||||
|
||||
buildInputs = [ postgresql ];
|
||||
|
||||
@@ -10,11 +10,11 @@ stdenv.mkDerivation rec {
|
||||
owner = "citusdata";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "0wkqgrm3v999hjcc82h24jv1pib6f6bw8jsv83hgk6g3iv6xsjg9";
|
||||
sha256 = "1hkrk6jxl20k2b0ngchblwkrzigl77jaq1gvininp4yhjdlgaks8";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/{lib,share/extension}
|
||||
mkdir -p $out/{lib,share/postgresql/extension}
|
||||
|
||||
cp *.so $out/lib
|
||||
cp *.sql $out/share/postgresql/extension
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{ stdenv, fetchFromGitHub, postgresql }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pg_hll-${version}";
|
||||
version = "2.12";
|
||||
pname = "pg_hll";
|
||||
version = "2.14";
|
||||
|
||||
buildInputs = [ postgresql ];
|
||||
|
||||
@@ -10,11 +10,11 @@ stdenv.mkDerivation rec {
|
||||
owner = "citusdata";
|
||||
repo = "postgresql-hll";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "1jdc9gjqc3dkjxv855q1p594j0awhrrymrcqnl5vw5vx2ny3bpgn";
|
||||
sha256 = "13vphxkc9pn4bkpgab560bgdbl99li2b3p1n2rm5a78wswlsbsps";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/{lib,share/extension}
|
||||
mkdir -p $out/{lib,share/postgresql/extension}
|
||||
|
||||
cp *.so $out/lib
|
||||
cp *.sql $out/share/postgresql/extension
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pg_partman";
|
||||
version = "4.1.0";
|
||||
version = "4.3.0";
|
||||
|
||||
buildInputs = [ postgresql ];
|
||||
|
||||
@@ -10,12 +10,11 @@ stdenv.mkDerivation rec {
|
||||
owner = "pgpartman";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "0bzv92x492jcwzhal9x4vc3vszixscdpxc6yq5rrqld26dhmsp06";
|
||||
sha256 = "1zkjz4hkjqzg0j7i7bjxgdcv2kfcgqwahirh06yag6hvm4qf9y9w";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin # For buildEnv to setup proper symlinks. See #22653
|
||||
mkdir -p $out/{lib,share/extension}
|
||||
mkdir -p $out/{lib,share/postgresql/extension}
|
||||
|
||||
cp src/*.so $out/lib
|
||||
cp updates/* $out/share/postgresql/extension
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{ stdenv, fetchFromGitHub, postgresql, openssl, zlib, readline }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pg_repack-${version}";
|
||||
version = "1.4.4";
|
||||
pname = "pg_repack";
|
||||
version = "1.4.5";
|
||||
|
||||
buildInputs = [ postgresql openssl zlib readline ];
|
||||
|
||||
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||
owner = "reorg";
|
||||
repo = "pg_repack";
|
||||
rev = "refs/tags/ver_${version}";
|
||||
sha256 = "0ynsmsxfkcp82ccpz2nrgg8wiil8yxqigvw6425lx8v80h5lszbw";
|
||||
sha256 = "1qsya9h4r147mkl7jzh4qk7ciyr3hj6gv7rfh4zml9zav0pjj76x";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{ stdenv, fetchFromGitHub, postgresql }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pg_topn-${version}";
|
||||
version = "2.2.2";
|
||||
pname = "pg_topn";
|
||||
version = "2.3.0";
|
||||
|
||||
buildInputs = [ postgresql ];
|
||||
|
||||
@@ -10,11 +10,11 @@ stdenv.mkDerivation rec {
|
||||
owner = "citusdata";
|
||||
repo = "postgresql-topn";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "1bh28nrxj06vc2cvlsxlwrwad5ff3lfj3kr5cnnggwjk2dhwbbjm";
|
||||
sha256 = "05mjzm7rz5j7byzag23526hhsqsg4dsyxxsg8q9ray1rwxjbr392";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/{lib,share/extension}
|
||||
mkdir -p $out/{lib,share/postgresql/extension}
|
||||
|
||||
cp *.so $out/lib
|
||||
cp *.sql $out/share/postgresql/extension
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchFromGitHub }:
|
||||
{ stdenv, fetchFromGitHub, postgresql }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pgjwt-${version}";
|
||||
stdenv.mkDerivation {
|
||||
pname = "pgjwt";
|
||||
version = "unstable-2017-04-24";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
@@ -23,6 +23,7 @@ stdenv.mkDerivation rec {
|
||||
sign() and verify() functions to create and verify JSON Web Tokens.
|
||||
'';
|
||||
license = licenses.mit;
|
||||
platforms = postgresql.meta.platforms;
|
||||
maintainers = with maintainers; [spinus];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pgroonga";
|
||||
version = "2.2.0";
|
||||
version = "2.2.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://packages.groonga.org/source/${pname}/${pname}-${version}.tar.gz";
|
||||
sha256 = "1cankcprikx8nf72yg4h8542gqqlfgww6d63kg7l8l8sz962d28b";
|
||||
sha256 = "0pdz2lpi7g1n9b5rg6kwhh6fr0bwf06zr642brmh53n6mp41186m";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
@@ -29,6 +29,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
homepage = "https://pgroonga.github.io/";
|
||||
license = licenses.postgresql;
|
||||
platforms = postgresql.meta.platforms;
|
||||
maintainers = with maintainers; [ DerTim1 ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pgrouting";
|
||||
version = "2.6.2";
|
||||
version = "2.6.3";
|
||||
|
||||
nativeBuildInputs = [ cmake perl ];
|
||||
buildInputs = [ postgresql boost gmp cgal mpfr ];
|
||||
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
||||
owner = "pgRouting";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "09xy5pmiwq0lxf2m8p4q5r892mfmn32vf8m75p84jnz4707z1l0j";
|
||||
sha256 = "0jdjb8476vjgc7i26v2drcqjvhdbsk1wx243fddffg169nb664ml";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
|
||||
description = "A PostgreSQL/PostGIS extension that provides geospatial routing functionality";
|
||||
homepage = https://pgrouting.org/;
|
||||
maintainers = [ maintainers.steve-chavez ];
|
||||
platforms = platforms.linux;
|
||||
platforms = postgresql.meta.platforms;
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{ stdenv, fetchFromGitHub, postgresql, perl, perlPackages, which }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pgtap-${version}";
|
||||
version = "1.0.0";
|
||||
pname = "pgtap";
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "theory";
|
||||
repo = "pgtap";
|
||||
rev = "v${version}";
|
||||
sha256 = "0ks53lsrpa8yxav8jh0jlvs25y6p7mkcdch8il1kvib9k5zq2wnb";
|
||||
sha256 = "09fvzsl8m18yzpvrz6cqvs1ffzs451iwmb2mw39yq69jgqby5kqy";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ postgresql perl perlPackages.TAPParserSourceHandlerpgTAP which ];
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
{ stdenv, fetchFromGitHub, postgresql, zeromq, openssl }:
|
||||
|
||||
if stdenv.lib.versionOlder postgresql.version "10"
|
||||
then throw "PipelineDB not supported for PostgreSQL ${postgresql.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pipelinedb";
|
||||
version = "1.0.0-13";
|
||||
@@ -35,5 +32,6 @@ stdenv.mkDerivation rec {
|
||||
license = licenses.asl20;
|
||||
platforms = postgresql.meta.platforms;
|
||||
maintainers = [ maintainers.marsam ];
|
||||
broken = versionOlder postgresql.version "10";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "plv8";
|
||||
version = "2.3.12";
|
||||
version = "2.3.14";
|
||||
|
||||
nativeBuildInputs = [ perl ];
|
||||
buildInputs = [ v8 postgresql ];
|
||||
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
||||
owner = "plv8";
|
||||
repo = "plv8";
|
||||
rev = "v${version}";
|
||||
sha256 = "1yi1ibiibvd0x4z5dm698w32ljrj3yr4j25jm1zkgkwd4ii8y644";
|
||||
sha256 = "12g7z0xkb6zg2qd0hppk2izq238v1k52vb13jlvaij1rbhh10mbp";
|
||||
};
|
||||
|
||||
makefile = "Makefile.shared";
|
||||
@@ -30,8 +30,8 @@ stdenv.mkDerivation rec {
|
||||
meta = with stdenv.lib; {
|
||||
description = "V8 Engine Javascript Procedural Language add-on for PostgreSQL";
|
||||
homepage = "https://plv8.github.io/";
|
||||
maintainers = with maintainers; [ volth ];
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ volth marsam ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
license = licenses.postgresql;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -10,19 +10,21 @@
|
||||
, pkgconfig
|
||||
, file
|
||||
, protobufc
|
||||
, libiconv
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "postgis-${version}";
|
||||
version = "2.5.2";
|
||||
pname = "postgis";
|
||||
version = "3.0.0";
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.osgeo.org/postgis/source/postgis-${version}.tar.gz";
|
||||
sha256 = "0pnva72f2w4jcgnl1y7nw5rdly4ipx3hji4c9yc9s0hna1n2ijxn";
|
||||
sha256 = "15557fbk0xkngihwhqsbdyz2ng49blisf5zydw81j0gabk6x4vy0";
|
||||
};
|
||||
|
||||
buildInputs = [ libxml2 postgresql geos proj gdal json_c protobufc ];
|
||||
buildInputs = [ libxml2 postgresql geos proj gdal json_c protobufc ]
|
||||
++ stdenv.lib.optional stdenv.isDarwin libiconv;
|
||||
nativeBuildInputs = [ perl pkgconfig ];
|
||||
dontDisableStatic = true;
|
||||
|
||||
@@ -43,14 +45,18 @@ stdenv.mkDerivation rec {
|
||||
sed -i "s|\$(DESTDIR)\$(PGSQL_BINDIR)|$prefix/bin|g
|
||||
" \
|
||||
"raster/scripts/python/Makefile";
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p $out/bin
|
||||
|
||||
# postgis' build system assumes it is being installed to the same place as postgresql, and looks
|
||||
# for the postgres binary relative to $PREFIX. We gently support this system using an illusion.
|
||||
ln -s ${postgresql}/bin/postgres $out/bin/postgres
|
||||
'';
|
||||
|
||||
# create aliases for all commands adding version information
|
||||
postInstall = ''
|
||||
# Teardown the illusory postgres used for building; see postConfigure.
|
||||
rm $out/bin/postgres
|
||||
|
||||
for prog in $out/bin/*; do # */
|
||||
ln -s $prog $prog-${version}
|
||||
done
|
||||
@@ -62,8 +68,9 @@ stdenv.mkDerivation rec {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Geographic Objects for PostgreSQL";
|
||||
homepage = https://postgis.net/;
|
||||
changelog = "https://git.osgeo.org/gitea/postgis/postgis/raw/tag/${version}/NEWS";
|
||||
license = licenses.gpl2;
|
||||
maintainers = [ maintainers.marcweber ];
|
||||
platforms = platforms.linux;
|
||||
inherit (postgresql.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchFromGitHub, postgresql, openssl, zlib, readline }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "repmgr";
|
||||
version = "4.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "2ndQuadrant";
|
||||
repo = "repmgr";
|
||||
rev = "v${version}";
|
||||
sha256 = "185789f7igvlqyqcb8kf42jjq8g0wbs2aqd9kimrq5kf4srwgpim";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/{lib,share/postgresql/extension}
|
||||
|
||||
cp *.so $out/lib
|
||||
cp *.sql $out/share/postgresql/extension
|
||||
cp *.control $out/share/postgresql/extension
|
||||
'';
|
||||
|
||||
buildInputs = [ postgresql openssl zlib readline ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "https://repmgr.org/";
|
||||
description = "Replication manager for PostgreSQL cluster";
|
||||
license = licenses.postgresql;
|
||||
platforms = postgresql.meta.platforms;
|
||||
maintainers = with maintainers; [ zimbatm ];
|
||||
};
|
||||
}
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "tds_fdw";
|
||||
version = "1.0.8";
|
||||
version = "2.0.1";
|
||||
|
||||
buildInputs = [ postgresql freetds ];
|
||||
|
||||
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||
owner = "tds-fdw";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "0dlv1imiy773yplqqpl26xka65bc566k2x81wkrbvwqagnwvcai2";
|
||||
sha256 = "1zpcrx30bvaf72782hgz2s19i5ndwvi7z87fanl1lnymznrk9lzg";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
@@ -25,5 +25,6 @@ stdenv.mkDerivation rec {
|
||||
maintainers = [ maintainers.steve-chavez ];
|
||||
platforms = postgresql.meta.platforms;
|
||||
license = licenses.postgresql;
|
||||
broken = versionAtLeast postgresql.version "11.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/{bin,lib,share/extension}
|
||||
mkdir -p $out/{lib,share/postgresql/extension}
|
||||
|
||||
cp *.so $out/lib
|
||||
cp *.sql $out/share/postgresql/extension
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
# }
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "timescaledb-${version}";
|
||||
version = "1.3.2";
|
||||
pname = "timescaledb";
|
||||
version = "1.6.0";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ postgresql openssl ];
|
||||
@@ -17,10 +17,10 @@ stdenv.mkDerivation rec {
|
||||
owner = "timescale";
|
||||
repo = "timescaledb";
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "117az52h8isi15p47r5d6k5y80ng9vj3x8ljq39iavgr364q716c";
|
||||
sha256 = "0b42rhkycr4pwwa4fxnmppd3bl0xz7azvlm145rd7warlsr5h0lb";
|
||||
};
|
||||
|
||||
cmakeFlags = [ "-DSEND_TELEMETRY_DEFAULT=OFF" ];
|
||||
cmakeFlags = [ "-DSEND_TELEMETRY_DEFAULT=OFF" "-DREGRESS_CHECKS=OFF" ];
|
||||
|
||||
# Fix the install phase which tries to install into the pgsql extension dir,
|
||||
# and cannot be manually overridden. This is rather fragile but works OK.
|
||||
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Scales PostgreSQL for time-series data via automatic partitioning across time and space";
|
||||
homepage = https://www.timescale.com/;
|
||||
maintainers = with maintainers; [ volth ];
|
||||
maintainers = with maintainers; [ volth marsam ];
|
||||
platforms = postgresql.meta.platforms;
|
||||
license = licenses.asl20;
|
||||
};
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, postgresql }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "tsearch-extras-${version}";
|
||||
stdenv.mkDerivation {
|
||||
pname = "tsearch-extras";
|
||||
version = "0.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
@@ -23,6 +23,7 @@ stdenv.mkDerivation rec {
|
||||
description = "Provides a few PostgreSQL functions for a lower-level data full text search";
|
||||
homepage = https://github.com/zulip/tsearch_extras/;
|
||||
license = licenses.postgresql;
|
||||
platforms = postgresql.meta.platforms;
|
||||
maintainers = with maintainers; [ DerTim1 ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -50,4 +50,6 @@ self: super: {
|
||||
pg_partman = super.callPackage ./ext/pg_partman.nix { };
|
||||
|
||||
pg_safeupdate = super.callPackage ./ext/pg_safeupdate.nix { };
|
||||
|
||||
repmgr = super.callPackage ./ext/repmgr.nix { };
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user