{ stdenv, lib, rustPlatform, fetchFromGitHub, openssl, pkg-config, Security, libiconv }: rustPlatform.buildRustPackage rec { pname = "cargo-audit"; version = "0.14.1"; src = fetchFromGitHub { owner = "RustSec"; repo = "cargo-audit"; rev = "v${version}"; sha256 = "sha256-apIhTgS7xzDGq2OE1o46bEQxGwkV7bTmzSxy85wHwyo="; }; cargoSha256 = "sha256-b4x5IxoT5KZnY6Pw3VEs/DuCPen6MlgQ2lSIxRDU+5U="; buildInputs = [ openssl libiconv ] ++ lib.optionals stdenv.isDarwin [ Security ]; nativeBuildInputs = [ pkg-config ]; # enables `cargo audit fix` cargoBuildFlags = [ "--features fix" ]; # The tests require network access which is not available in sandboxed Nix builds. doCheck = false; meta = with lib; { description = "Audit Cargo.lock files for crates with security vulnerabilities"; homepage = "https://rustsec.org"; license = with licenses; [ mit asl20 ]; maintainers = with maintainers; [ basvandijk ]; }; }