diff --git a/pkgs/development/python-modules/androguard/default.nix b/pkgs/development/python-modules/androguard/default.nix index ec19f4730a55..e7058205c54f 100644 --- a/pkgs/development/python-modules/androguard/default.nix +++ b/pkgs/development/python-modules/androguard/default.nix @@ -21,8 +21,8 @@ , codecov , coverage , qt5 -# This is usually used as a library, and it'd be a shame to force the gui -# libraries to the closure if gui is not desired. +# This is usually used as a library, and it'd be a shame to force the GUI +# libraries to the closure if GUI is not desired. , withGui ? false # Tests take a very long time, and currently fail, but next release' tests # shouldn't fail @@ -30,53 +30,52 @@ }: buildPythonPackage rec { - version = "3.3.5"; pname = "androguard"; + version = "3.4.0a1"; - # No tests in pypi tarball src = fetchFromGitHub { repo = pname; owner = pname; rev = "v${version}"; - sha256 = "0zc8m1xnkmhz2v12ddn47q0c01p3sbna2v5npfxhcp88szswlr9y"; + sha256 = "1aparxiq11y0hbvkayp92w684nyxyyx7mi0n1x6x51g5z6c58vmy"; }; propagatedBuildInputs = [ - future - networkx - pygments - lxml - colorama - matplotlib asn1crypto click - pydot + colorama + future ipython + lxml + matplotlib + networkx + pydot + pygments ] ++ lib.optionals withGui [ pyqt5 pyperclip ]; checkInputs = [ - pyqt5 - pyperclip - nose - nose-timer codecov coverage mock + nose + nose-timer + pyperclip + pyqt5 python_magic ]; inherit doCheck; - nativeBuildInputs = lib.optionals withGui [ qt5.wrapQtAppsHook ]; + nativeBuildInputs = lib.optionals withGui [ + qt5.wrapQtAppsHook + ]; # If it won't be verbose, you'll see nothing going on for a long time. checkPhase = '' runHook preCheck - nosetests --verbosity=3 - runHook postCheck ''; @@ -84,10 +83,10 @@ buildPythonPackage rec { makeWrapperArgs+=("''${qtWrapperArgs[@]}") ''; - meta = { - description = "Tool and python library to interact with Android Files"; + meta = with lib; { + description = "Tool and Python library to interact with Android Files"; homepage = "https://github.com/androguard/androguard"; - license = lib.licenses.asl20; - maintainers = [ lib.maintainers.pmiddend ]; + license = licenses.asl20; + maintainers = with maintainers; [ pmiddend ]; }; } diff --git a/pkgs/development/python-modules/rzpipe/default.nix b/pkgs/development/python-modules/rzpipe/default.nix new file mode 100644 index 000000000000..8ff52a289cdd --- /dev/null +++ b/pkgs/development/python-modules/rzpipe/default.nix @@ -0,0 +1,31 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +}: + +buildPythonPackage rec { + pname = "rzpipe"; + version = "0.1.1"; + + disabled = pythonOlder "3.5"; + + src = fetchPypi { + inherit pname version; + sha256 = "13z88c4zjy10a1sc98ba25sz200v6w2wprbq4iknm4sy2fmrsydh"; + }; + + # No native rz_core library + doCheck = false; + + pythonImportsCheck = [ + "rzpipe" + ]; + + meta = with lib; { + description = "Python interface for rizin"; + homepage = "https://rizin.re"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/tools/security/quark-engine/default.nix b/pkgs/tools/security/quark-engine/default.nix new file mode 100644 index 000000000000..c77abfe2ad7d --- /dev/null +++ b/pkgs/tools/security/quark-engine/default.nix @@ -0,0 +1,45 @@ +{ lib +, fetchFromGitHub +, gitMinimal +, python3 +}: + +python3.pkgs.buildPythonApplication rec { + pname = "quark-engine"; + version = "21.8.1"; + + disabled = python3.pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = pname; + repo = pname; + rev = "v${version}"; + sha256 = "0ksmzwji4c98pnqns780n5rdm5r1zx7sc40w8qipk2nf6jncwv6p"; + }; + + propagatedBuildInputs = with python3.pkgs; [ + androguard + click + colorama + gitMinimal + graphviz + pandas + plotly + prettytable + prompt-toolkit + rzpipe + tqdm + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "quark" ]; + + meta = with lib; { + description = "Android malware (analysis and scoring) system"; + homepage = "https://quark-engine.readthedocs.io/"; + license = with licenses; [ gpl3Only ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cce52f2b66fc..5b42e5667541 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18873,6 +18873,8 @@ with pkgs; qtscriptgenerator = callPackage ../development/libraries/qtscriptgenerator { }; + quark-engine = callPackage ../tools/security/quark-engine { }; + quesoglc = callPackage ../development/libraries/quesoglc { }; quickder = callPackage ../development/libraries/quickder {}; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ec541af73dd8..f105d959d5ab 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -8112,6 +8112,8 @@ in { rxv = callPackage ../development/python-modules/rxv { }; + rzpipe = callPackage ../development/python-modules/rzpipe { }; + s2clientprotocol = callPackage ../development/python-modules/s2clientprotocol { }; s3fs = callPackage ../development/python-modules/s3fs { };