From ad5cda7d207c506f053ba44e7bb36f568a791be5 Mon Sep 17 00:00:00 2001 From: Otavio Salvador Date: Sun, 3 Jan 2021 23:08:46 -0300 Subject: [PATCH] cargo-valgrind: init at 1.3.0 Signed-off-by: Otavio Salvador --- .../tools/rust/cargo-valgrind/default.nix | 42 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 43 insertions(+) create mode 100644 pkgs/development/tools/rust/cargo-valgrind/default.nix diff --git a/pkgs/development/tools/rust/cargo-valgrind/default.nix b/pkgs/development/tools/rust/cargo-valgrind/default.nix new file mode 100644 index 00000000000..138fc060568 --- /dev/null +++ b/pkgs/development/tools/rust/cargo-valgrind/default.nix @@ -0,0 +1,42 @@ +{ stdenv +, rustPlatform +, fetchFromGitHub +, nix-update-script +, makeWrapper +, valgrind +}: + +rustPlatform.buildRustPackage rec { + pname = "cargo-valgrind"; + version = "1.3.0"; + + src = fetchFromGitHub { + owner = "jfrimmel"; + repo = "cargo-valgrind"; + # repo lacks the 1.3.0 tag + # https://github.com/jfrimmel/cargo-valgrind/issues/33 + rev = "d47dd810e3971d676cde5757df8b2e05ed563e41"; + sha256 = "163ch5bpwny1di758rpfib1ddqclxm48j0lmmv741ji3l4nqid32"; + }; + + cargoSha256 = "008s1y3pkn8613kp1gqf494fs93ix0nrwhrkqi5q9bim2mixgccb"; + + passthru = { + updateScript = nix-update-script { + attrPath = pname; + }; + }; + + nativeBuildInputs = [ makeWrapper ]; + + postInstall = '' + wrapProgram $out/bin/cargo-valgrind --prefix PATH : ${stdenv.lib.makeBinPath [ valgrind ]} + ''; + + meta = with stdenv.lib; { + description = ''Cargo subcommand "valgrind": runs valgrind and collects its output in a helpful manner''; + homepage = "https://github.com/jfrimmel/cargo-valgrind"; + license = with licenses; [ asl20 /* or */ mit ]; + maintainers = with maintainers; [ otavio ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index bd3f5e27d31..bf367ccbea5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10740,6 +10740,7 @@ in cargo-udeps = callPackage ../development/tools/rust/cargo-udeps { inherit (darwin.apple_sdk.frameworks) CoreServices Security; }; + cargo-valgrind = callPackage ../development/tools/rust/cargo-valgrind { }; cargo-watch = callPackage ../development/tools/rust/cargo-watch { inherit (darwin.apple_sdk.frameworks) CoreServices; };