binwalk: add missing dependencies & versionCheckHook (#373404)

This commit is contained in:
Sandro
2025-01-15 20:12:59 +01:00
committed by GitHub
2 changed files with 70 additions and 1406 deletions
-1394
View File
File diff suppressed because it is too large Load Diff
+70 -12
View File
@@ -1,11 +1,39 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
fontconfig,
bzip2,
cabextract,
dmg2img,
dtc,
dumpifs,
enableUnfree ? false,
fetchFromGitHub,
fontconfig,
gnutar,
jefferson,
lib,
lzfse,
lzo,
lzop,
lz4,
openssl_3,
pkg-config,
python3,
rustPlatform,
sasquatch,
sleuthkit,
srec2bin,
stdenv,
ubi_reader,
ucl,
uefi-firmware-parser,
unrar,
unyaffs,
unzip,
versionCheckHook,
vmlinux-to-elf,
xz,
zlib,
zstd,
_7zz,
}:
rustPlatform.buildRustPackage rec {
@@ -15,20 +43,44 @@ rustPlatform.buildRustPackage rec {
src = fetchFromGitHub {
owner = "ReFirmLabs";
repo = "binwalk";
rev = "refs/tags/v${version}";
tag = "v${version}";
hash = "sha256-em+jOnhCZH5EEJrhXTHmxiwpMcBr5oNU1+5IJ1H/oco=";
};
cargoLock = {
lockFile = ./Cargo.lock;
};
cargoHash = "sha256-7+2TdlfCHJHXn0+q74JhmY3/lC0WfCG2FFmQFQNf4k8=";
nativeBuildInputs = [ pkg-config ];
# https://github.com/ReFirmLabs/binwalk/commits/master/dependencies
buildInputs = [
fontconfig
bzip2
];
cabextract
dmg2img
dtc
dumpifs
fontconfig
gnutar
jefferson
lzfse
lzo
lzop
lz4
openssl_3
python3.pkgs.python-lzo
sasquatch
sleuthkit
srec2bin
ubi_reader
ucl
uefi-firmware-parser
unyaffs
unzip
vmlinux-to-elf
xz
zlib
zstd
_7zz
] ++ lib.optionals enableUnfree [ unrar ];
# skip broken tests
checkFlags =
@@ -53,14 +105,20 @@ rustPlatform.buildRustPackage rec {
"--skip=extractors::common::Chroot::make_executable"
];
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
versionCheckProgramArg = "-V";
meta = {
description = "Firmware Analysis Tool";
homepage = "https://github.com/ReFirmLabs/binwalk";
changelog = "https://github.com/ReFirmLabs/binwalk/releases/tag/${src.rev}";
changelog = "https://github.com/ReFirmLabs/binwalk/releases/tag/v${version}";
license = lib.licenses.mit;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [
koral
felbinger
];
mainProgram = "binwalk";
};
}