Files
nixpkgs/pkgs/servers/sql/postgresql/ext/pg_safeupdate.nix
2025-07-07 14:31:20 +02:00

64 lines
1.6 KiB
Nix

{
fetchFromGitHub,
lib,
postgresql,
postgresqlBuildExtension,
}:
let
sources = {
"13" = {
version = "1.4";
hash = "sha256-1cyvVEC9MQGMr7Tg6EUbsVBrMc8ahdFS3+CmDkmAq4Y=";
};
"14" = {
version = "1.5";
hash = "sha256-RRSpkWLFuif+6RCncnsb1NnjKnIIRY9KgebKkjCN5cs=";
};
"15" = {
version = "1.5";
hash = "sha256-RRSpkWLFuif+6RCncnsb1NnjKnIIRY9KgebKkjCN5cs=";
};
"16" = {
version = "1.5";
hash = "sha256-RRSpkWLFuif+6RCncnsb1NnjKnIIRY9KgebKkjCN5cs=";
};
"17" = {
version = "1.5";
hash = "sha256-RRSpkWLFuif+6RCncnsb1NnjKnIIRY9KgebKkjCN5cs=";
};
"18" = {
version = "1.5";
hash = "sha256-RRSpkWLFuif+6RCncnsb1NnjKnIIRY9KgebKkjCN5cs=";
};
};
source =
sources."${lib.versions.major postgresql.version}" or {
version = "";
hash = throw "pg_safeupdate: version specification for pg ${postgresql.version} missing.";
};
in
postgresqlBuildExtension {
pname = "pg-safeupdate";
inherit (source) version;
src = fetchFromGitHub {
owner = "eradman";
repo = "pg-safeupdate";
tag = source.version;
inherit (source) hash;
};
meta = {
broken = !builtins.elem (lib.versions.major postgresql.version) (builtins.attrNames sources);
description = "Simple extension to PostgreSQL that requires criteria for UPDATE and DELETE";
homepage = "https://github.com/eradman/pg-safeupdate";
changelog = "https://github.com/eradman/pg-safeupdate/raw/${source.version}/NEWS";
platforms = postgresql.meta.platforms;
maintainers = with lib.maintainers; [ wolfgangwalther ];
license = lib.licenses.postgresql;
};
}