diff --git a/pkgs/development/tools/rust/cargo-geiger/default.nix b/pkgs/development/tools/rust/cargo-geiger/default.nix new file mode 100644 index 00000000000..7d6fc6781df --- /dev/null +++ b/pkgs/development/tools/rust/cargo-geiger/default.nix @@ -0,0 +1,30 @@ +{ stdenv, lib, fetchFromGitHub +, rustPlatform, pkgconfig +, openssl, Security }: + +rustPlatform.buildRustPackage rec { + pname = "cargo-geiger"; + version = "0.7.3"; + + src = fetchFromGitHub { + owner = "anderejd"; + repo = pname; + rev = "${pname}-${version}"; + sha256 = "1lm8dx19svdpg99zbpfcm1272n18y63sq756hf6k99zi51av17xc"; + }; + + doCheck = false; + + cargoSha256 = "16zvm2y0j7ywv6fx0piq99g8q1sayf3qipd6adrwyqyg8rbf4cw6"; + + buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ]; + nativeBuildInputs = [ pkgconfig ]; + + meta = with lib; { + description = "Detects usage of unsafe Rust in a Rust crate and its dependencies."; + homepage = https://github.com/anderejd/cargo-geiger; + license = with licenses; [ asl20 /* or */ mit ]; + maintainers = with maintainers; [ evanjs ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3d03ef6257c..1be6d168b03 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8526,6 +8526,9 @@ in cargo-bloat = callPackage ../development/tools/rust/cargo-bloat { }; cargo-expand = callPackage ../development/tools/rust/cargo-expand { }; cargo-fuzz = callPackage ../development/tools/rust/cargo-fuzz { }; + cargo-geiger = callPackage ../development/tools/rust/cargo-geiger { + inherit (darwin.apple_sdk.frameworks) Security; + }; cargo-inspect = callPackage ../development/tools/rust/cargo-inspect { inherit (darwin.apple_sdk.frameworks) Security; };