diff --git a/pkgs/development/python-modules/dissect-executable/default.nix b/pkgs/development/python-modules/dissect-executable/default.nix new file mode 100644 index 000000000000..0b932de9a2a2 --- /dev/null +++ b/pkgs/development/python-modules/dissect-executable/default.nix @@ -0,0 +1,48 @@ +{ lib +, buildPythonPackage +, dissect-cstruct +, dissect-util +, fetchFromGitHub +, setuptools +, setuptools-scm +, pythonOlder +}: + +buildPythonPackage rec { + pname = "dissect-executable"; + version = "1.1"; + format = "pyproject"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "fox-it"; + repo = "dissect.executable"; + rev = "refs/tags/${version}"; + hash = "sha256-c58g2L3B/3/pC+iyXphYsjhpBs0I0Q64B8+rv5k1dtg="; + }; + + SETUPTOOLS_SCM_PRETEND_VERSION = version; + + nativeBuildInputs = [ + setuptools + setuptools-scm + ]; + + propagatedBuildInputs = [ + dissect-cstruct + dissect-util + ]; + + pythonImportsCheck = [ + "dissect.executable" + ]; + + meta = with lib; { + description = "Dissect module implementing a parser for various executable formats such as PE, ELF and Macho-O"; + homepage = "https://github.com/fox-it/dissect.executable"; + changelog = "https://github.com/fox-it/dissect.executable/releases/tag/${version}"; + license = licenses.agpl3Only; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cfbb687af4c5..2268557ac2f0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2461,6 +2461,8 @@ self: super: with self; { dissect-evidence = callPackage ../development/python-modules/dissect-evidence { }; + dissect-executable = callPackage ../development/python-modules/dissect-executable { }; + dissect-extfs = callPackage ../development/python-modules/dissect-extfs { }; dissect-hypervisor = callPackage ../development/python-modules/dissect-hypervisor { };