{ lib, beautifulsoup4, buildPythonPackage, fetchFromGitHub, base58, bech32, cashaddress, cbor, eth-hash, intervaltree, langdetect, lxml, pdfminer-six, phonenumbers, python-magic, readabilipy, pytestCheckHook, pythonOlder, setuptools, }: buildPythonPackage rec { pname = "iocsearcher"; version = "2.3-unstable-2024-03-04"; pyproject = true; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "malicialab"; repo = "iocsearcher"; rev = "5f7b87761f2195eb358006f3492f0beac7ecc4b0"; hash = "sha256-SYh0+JEZa95iBznNzXut/9Vwof6VFeSlt0/g+XmMPC0="; }; nativeBuildInputs = [ setuptools ]; propagatedBuildInputs = [ base58 beautifulsoup4 bech32 cashaddress cbor eth-hash intervaltree langdetect lxml pdfminer-six phonenumbers python-magic readabilipy ] ++ eth-hash.optional-dependencies.pycryptodome; # Module has no tests doCheck = false; pythonImportsCheck = [ "iocsearcher" ]; meta = with lib; { description = "Library and command line tool for extracting indicators of compromise (IOCs)"; mainProgram = "iocsearcher"; homepage = "https://github.com/malicialab/iocsearcher"; changelog = "https://github.com/malicialab/iocsearcher/releases/tag/v${version}"; license = licenses.mit; maintainers = with maintainers; [ fab ]; }; }