depot/third_party/nixpkgs/pkgs/development/compilers/rust/cargo-auditable-cargo-wrapper.nix

25 lines
694 B
Nix
Raw Normal View History

{ lib, runCommand, makeBinaryWrapper, rust-audit-info, cargo, cargo-auditable }:
if cargo-auditable.meta.broken then
cargo
else
runCommand "auditable-${cargo.name}" {
nativeBuildInputs = [ makeBinaryWrapper ];
passthru.tests = runCommand "rust-audit-info-test" {
nativeBuildInputs = [ rust-audit-info ];
} ''
rust-audit-info ${lib.getBin rust-audit-info}/bin/rust-audit-info > $out
'';
meta = cargo-auditable.meta // {
mainProgram = "cargo";
};
} ''
mkdir -p $out/bin
makeWrapper ${cargo}/bin/cargo $out/bin/cargo \
--set CARGO_AUDITABLE_IGNORE_UNSUPPORTED 1 \
--prefix PATH : ${lib.makeBinPath [ cargo cargo-auditable ]} \
--add-flags auditable
''