1{ lib
2, rustPlatform
3, fetchCrate
4, pkg-config
5, openssl
6, stdenv
7, darwin
8}:
9
10rustPlatform.buildRustPackage rec {
11 pname = "cherrybomb";
12 version = "1.0.0";
13
14 src = fetchCrate {
15 inherit pname version;
16 hash = "sha256-qZ1eKcRAwCzrzvw6QR28oZ8sGnsXmoOW/bWLQTlpqlo=";
17 };
18
19 cargoHash = "sha256-eosK7MQ3UB8rxKHCrb3s3+BVarv19h0cL+uzwg95Hc8=";
20
21 nativeBuildInputs = [
22 pkg-config
23 ];
24
25 buildInputs = [
26 openssl
27 ] ++ lib.optionals stdenv.isDarwin [
28 darwin.apple_sdk.frameworks.Security
29 ];
30
31 meta = with lib; {
32 description = "A CLI tool that helps you avoid undefined user behavior by validating your API specifications";
33 homepage = "https://github.com/blst-security/cherrybomb";
34 changelog = "https://github.com/blst-security/cherrybomb/releases/tag/v${version}";
35 license = licenses.asl20;
36 maintainers = with maintainers; [ figsoda ];
37 };
38}