37 lines
821 B
Nix
37 lines
821 B
Nix
|
{
|
||
|
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
|
||
|
''
|