nixpkgs: reorganize the postgresql extensions

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>
This commit is contained in:
Austin Seipp
2019-01-19 17:33:32 -06:00
parent 73f56ae191
commit 8cbe6b9ce4
15 changed files with 27 additions and 24 deletions
+33
View File
@@ -0,0 +1,33 @@
{ stdenv, fetchFromGitHub, postgresql, perl, perlPackages, which }:
stdenv.mkDerivation rec {
name = "pgtap-${version}";
version = "0.99.0";
src = fetchFromGitHub {
owner = "theory";
repo = "pgtap";
rev = "v${version}";
sha256 = "0xakjlbb99mgd8za6m0xa6n3s5fhif217iip6b3aywqw7nh1j6nv";
};
nativeBuildInputs = [ postgresql perl perlPackages.TAPParserSourceHandlerpgTAP which ];
installPhase = ''
install -D {sql/pgtap--${version}.sql,pgtap.control} -t $out/share/extension
'';
meta = with stdenv.lib; {
description = "pgTAP is a unit testing framework for PostgreSQL";
longDescription = ''
pgTAP is a unit testing framework for PostgreSQL written in PL/pgSQL and PL/SQL.
It includes a comprehensive collection of TAP-emitting assertion functions,
as well as the ability to integrate with other TAP-emitting test frameworks.
It can also be used in the xUnit testing style.
'';
maintainers = with maintainers; [ willibutz ];
homepage = https://pgtap.org;
inherit (postgresql.meta) platforms;
license = licenses.mit;
};
}