1{ lib 2, buildPythonPackage 3, dissect-cstruct 4, dissect-util 5, fetchFromGitHub 6, setuptools 7, setuptools-scm 8, pythonOlder 9}: 10 11buildPythonPackage rec { 12 pname = "dissect-executable"; 13 version = "1.4"; 14 format = "pyproject"; 15 16 disabled = pythonOlder "3.7"; 17 18 src = fetchFromGitHub { 19 owner = "fox-it"; 20 repo = "dissect.executable"; 21 rev = "refs/tags/${version}"; 22 hash = "sha256-h9eOTWJR0Bd3DY8WDYWqLCl1jYJcqP6cRTgWubf/rKI="; 23 }; 24 25 SETUPTOOLS_SCM_PRETEND_VERSION = version; 26 27 nativeBuildInputs = [ 28 setuptools 29 setuptools-scm 30 ]; 31 32 propagatedBuildInputs = [ 33 dissect-cstruct 34 dissect-util 35 ]; 36 37 pythonImportsCheck = [ 38 "dissect.executable" 39 ]; 40 41 meta = with lib; { 42 description = "Dissect module implementing a parser for various executable formats such as PE, ELF and Macho-O"; 43 homepage = "https://github.com/fox-it/dissect.executable"; 44 changelog = "https://github.com/fox-it/dissect.executable/releases/tag/${version}"; 45 license = licenses.agpl3Only; 46 maintainers = with maintainers; [ fab ]; 47 }; 48}