1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, pefile
5, pytestCheckHook
6, pythonOlder
7}:
8
9buildPythonPackage rec {
10 pname = "dnfile";
11 version = "0.13.0";
12 format = "setuptools";
13
14 disabled = pythonOlder "3.7";
15
16 src = fetchFromGitHub {
17 owner = "malwarefrank";
18 repo = pname;
19 rev = "refs/tags/v${version}";
20 hash = "sha256-TH30gEoxXkaDac6hJsGQFWzwDeqzdZ19HK8i/3Dlh8k=";
21 fetchSubmodules = true;
22 };
23
24 postPatch = ''
25 substituteInPlace setup.py \
26 --replace "pytest-runner" ""
27 '';
28
29 propagatedBuildInputs = [
30 pefile
31 ];
32
33 nativeCheckInputs = [
34 pytestCheckHook
35 ];
36
37 pythonImportsCheck = [
38 "dnfile"
39 ];
40
41 meta = with lib; {
42 description = "Module to parse .NET executable files";
43 homepage = "hhttps://github.com/malwarefrank/dnfile";
44 changelog = "https://github.com/malwarefrank/dnfile/blob/v${version}/HISTORY.rst";
45 license = with licenses; [ mit ];
46 maintainers = with maintainers; [ fab ];
47 };
48}