depot/third_party/nixpkgs/pkgs/development/tools/rust/cargo-cyclonedx/default.nix

52 lines
1.2 KiB
Nix
Raw Normal View History

{ lib
, stdenv
, rustPlatform
, fetchFromGitHub
, pkg-config
, openssl
, Security
, SystemConfiguration
, CoreFoundation
, curl
}:
rustPlatform.buildRustPackage rec {
pname = "cargo-cyclonedx";
version = "0.3.7";
src = fetchFromGitHub {
owner = "CycloneDX";
repo = "cyclonedx-rust-cargo";
rev = "${pname}-${version}";
hash = "sha256-xr3YNjQp+XhIWIqJ1rPUyM9mbtWGExlFEj28/SB8vfE=";
};
cargoHash = "sha256-NsBY+wb4IAlKOMh5BMvT734z//Wp/s0zimm04v8pqyc=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
openssl
] ++ lib.optionals stdenv.isDarwin [
Security
SystemConfiguration
CoreFoundation
curl
];
meta = with lib; {
description = "Creates CycloneDX Software Bill of Materials (SBOM) from Rust (Cargo) projects";
longDescription = ''
The CycloneDX module for Rust (Cargo) creates a valid CycloneDX Software
Bill-of-Material (SBOM) containing an aggregate of all project
dependencies. CycloneDX is a lightweight SBOM specification that is
easily created, human and machine readable, and simple to parse.
'';
homepage = "https://github.com/CycloneDX/cyclonedx-rust-cargo";
license = licenses.asl20;
maintainers = with maintainers; [ nikstur ];
};
}