at 24.11-pre 46 lines 1.4 kB view raw
1{ lib, stdenv, fetchFromGitHub, postgresql, postgresqlTestHook }: 2 3stdenv.mkDerivation rec { 4 pname = "plpgsql-check"; 5 version = "2.7.5"; 6 7 src = fetchFromGitHub { 8 owner = "okbob"; 9 repo = "plpgsql_check"; 10 rev = "v${version}"; 11 hash = "sha256-CD/G/wX6o+mC6gowlpFe1DdJWyh3cB9wxSsW2GXrENE="; 12 }; 13 14 buildInputs = [ postgresql ]; 15 16 installPhase = '' 17 install -D -t $out/lib *${postgresql.dlSuffix} 18 install -D -t $out/share/postgresql/extension *.sql 19 install -D -t $out/share/postgresql/extension *.control 20 ''; 21 22 passthru.tests.extension = stdenv.mkDerivation { 23 name = "plpgsql-check-test"; 24 dontUnpack = true; 25 doCheck = true; 26 buildInputs = [ postgresqlTestHook ]; 27 nativeCheckInputs = [ (postgresql.withPackages (ps: [ ps.plpgsql_check ])) ]; 28 postgresqlTestUserOptions = "LOGIN SUPERUSER"; 29 failureHook = "postgresqlStop"; 30 checkPhase = '' 31 runHook preCheck 32 psql -a -v ON_ERROR_STOP=1 -c "CREATE EXTENSION plpgsql_check;" 33 runHook postCheck 34 ''; 35 installPhase = "touch $out"; 36 }; 37 38 meta = with lib; { 39 description = "Linter tool for language PL/pgSQL"; 40 homepage = "https://github.com/okbob/plpgsql_check"; 41 changelog = "https://github.com/okbob/plpgsql_check/releases/tag/v${version}"; 42 platforms = postgresql.meta.platforms; 43 license = licenses.mit; 44 maintainers = [ ]; 45 }; 46}