nixpkgs/pkgs/development/tools/rust/cargo-fuzz/default.nix
2018-05-08 03:36:41 +02:00

36 lines
1.1 KiB
Nix

{ stdenv, fetchFromGitHub, fetchurl, runCommand, rustPlatform }:
rustPlatform.buildRustPackage rec {
name = "cargo-fuzz-${version}";
version = "0.5.3"; # Note to self: on 0.5.4, remove the hand-added Cargo.lock
src =
let
source = fetchFromGitHub {
owner = "rust-fuzz";
repo = "cargo-fuzz";
rev = version;
sha256 = "1l452fnjw7i10nrd4y4rssi5d457vgjp6rhdr9cnq32bjhdkprrs";
};
cargo-lock = fetchurl {
url = "https://gist.githubusercontent.com/Ekleog/7d5b62d13b7207aafa4c37d1bbdf2de7/raw/c6027fc1c531947f4d6836a3c4cba1b3e24df24c/Cargo.lock";
sha256 = "0d7b6kxfbfvwksybzrihylamg2zv5fmsk9m6xshryhwipskzzvmd";
};
in
runCommand "cargo-fuzz-src" {} ''
cp -R ${source} $out
chmod +w $out
cp ${cargo-lock} $out/Cargo.lock
'';
cargoSha256 = "0ajm8qp8hi7kn7199ywv26cmjv13phxv72lz8kcq97hxg17x0dkk";
meta = with stdenv.lib; {
description = "Command line helpers for fuzzing";
homepage = https://github.com/rust-fuzz/cargo-fuzz;
license = with licenses; [ mit asl20 ];
maintainers = [ maintainers.ekleog ];
platforms = platforms.all;
};
}