8cbe6b9ce4
This is a backwards compatible change; it mostly puts all the extensions for postgresql in a common directory to keep them isolated. It also moves a few things that /were not/ extensions out into other parts of the filesystem namespace; namely the postgresql_jdbc and psqlodbc libraries were moved under development/java-modules and development/libraries, respectively. Because these libraries use the libpq postgresql client drivers, they're less sensitive to underlying version changes anyway (since the protocol is relatively stable). No attributes were renamed or harmed in the creation of this patch. Signed-off-by: Austin Seipp <aseipp@pobox.com>
36 lines
1.3 KiB
Nix
36 lines
1.3 KiB
Nix
{ stdenv, fetchFromGitHub, postgresql, openssl, zlib, readline }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "pg_repack-${version}";
|
|
version = "1.4.4";
|
|
|
|
buildInputs = [ postgresql openssl zlib readline ];
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "reorg";
|
|
repo = "pg_repack";
|
|
rev = "refs/tags/ver_${version}";
|
|
sha256 = "0ynsmsxfkcp82ccpz2nrgg8wiil8yxqigvw6425lx8v80h5lszbw";
|
|
};
|
|
|
|
installPhase = ''
|
|
install -D bin/pg_repack -t $out/bin/
|
|
install -D lib/pg_repack.so -t $out/lib/
|
|
install -D lib/{pg_repack--${version}.sql,pg_repack.control} -t $out/share/extension
|
|
'';
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "Reorganize tables in PostgreSQL databases with minimal locks";
|
|
longDescription = ''
|
|
pg_repack is a PostgreSQL extension which lets you remove bloat from tables and indexes, and optionally restore
|
|
the physical order of clustered indexes. Unlike CLUSTER and VACUUM FULL it works online, without holding an
|
|
exclusive lock on the processed tables during processing. pg_repack is efficient to boot,
|
|
with performance comparable to using CLUSTER directly.
|
|
'';
|
|
license = licenses.bsd3;
|
|
maintainers = with maintainers; [ danbst ];
|
|
inherit (postgresql.meta) platforms;
|
|
inherit (src.meta) homepage;
|
|
};
|
|
}
|