diff --git a/pkgs/development/tools/rust/cargo-pgx/default.nix b/pkgs/development/tools/rust/cargo-pgx/default.nix new file mode 100644 index 000000000000..4ad70bfa9ed4 --- /dev/null +++ b/pkgs/development/tools/rust/cargo-pgx/default.nix @@ -0,0 +1,25 @@ +{ lib, stdenv, fetchCrate, rustPlatform, pkg-config, openssl, Security }: + +rustPlatform.buildRustPackage rec { + pname = "cargo-pgx"; + version = "0.4.5"; + + src = fetchCrate { + inherit version pname; + sha256 = "sha256-BcMGa/1ATwLG8VnwItfd5eqmrck/u0MEoR5sA2yuzyQ="; + }; + + cargoSha256 = "sha256-urlwqBCZMxlPEjLLPBhI2lDNTusCSZ1bZu1p8poVrtw="; + + nativeBuildInputs = [ pkg-config ]; + + buildInputs = [ openssl ] + ++ lib.optionals stdenv.isDarwin [ Security ]; + + meta = with lib; { + description = "Cargo subcommand for ‘pgx’ to make Postgres extension development easy"; + homepage = "https://github.com/tcdi/pgx/tree/v${version}/cargo-pgx"; + license = licenses.mit; + maintainers = with maintainers; [ typetetris ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 39a56d96e964..0e343708626f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14223,6 +14223,9 @@ with pkgs; cargo-outdated = callPackage ../development/tools/rust/cargo-outdated { inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration; }; + cargo-pgx = callPackage ../development/tools/rust/cargo-pgx { + inherit (darwin.apple_sdk.frameworks) Security; + }; cargo-release = callPackage ../development/tools/rust/cargo-release { inherit (darwin.apple_sdk.frameworks) Security; };