504525a148
GitOrigin-RevId: bd645e8668ec6612439a9ee7e71f7eac4099d4f6
61 lines
1.5 KiB
Nix
61 lines
1.5 KiB
Nix
{ lib
|
|
, buildPythonPackage
|
|
, fetchFromGitHub
|
|
, runCommand
|
|
, python3
|
|
, wireshark-cli
|
|
, pytestCheckHook
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "manuf";
|
|
version = "1.1.5";
|
|
format = "setuptools";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "coolbho3k";
|
|
repo = "manuf";
|
|
rev = "${version}";
|
|
hash = "sha256-3CFs3aqwE8rZPwU1QBqAGxNHT5jg7ymG12yBD56gTNI=";
|
|
};
|
|
|
|
nativeBuildInputs = [ wireshark-cli ];
|
|
|
|
patches = [
|
|
# Do update while building package from wireshark-cli
|
|
./internal_db_update_nix.patch
|
|
# Fix MANUF_URL for external db update functionality (https://github.com/coolbho3k/manuf/issues/34)
|
|
./fix_manuf_url.patch
|
|
];
|
|
|
|
postPatch = ''
|
|
${lib.getExe wireshark-cli} -G manuf > manuf/manuf
|
|
cat ${wireshark-cli}/share/wireshark/wka >> manuf/manuf
|
|
'';
|
|
|
|
nativeCheckInputs = [
|
|
pytestCheckHook
|
|
];
|
|
|
|
disabledTests = [
|
|
"test_update_update"
|
|
];
|
|
|
|
pythonImportsCheck = [ "manuf" ];
|
|
|
|
passthru.tests = {
|
|
testMacAddress = runCommand "${pname}-test" {} ''
|
|
${python3.pkgs.manuf}/bin/manuf BC:EE:7B:00:00:00 > $out
|
|
[ "$(cat $out | tr -d '\n')" = "Vendor(manuf='ASUSTekC', manuf_long='ASUSTek COMPUTER INC.', comment=None)" ]
|
|
'';
|
|
};
|
|
|
|
meta = with lib; {
|
|
homepage = "https://github.com/coolbho3k/manuf";
|
|
description = " Parser library for Wireshark's OUI database";
|
|
mainProgram = "manuf";
|
|
platforms = platforms.linux;
|
|
license = with licenses; [ lgpl3Plus asl20 ];
|
|
maintainers = with maintainers; [ dsuetin ];
|
|
};
|
|
}
|