Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib
2, asn1crypto
3, buildPythonPackage
4, defusedxml
5, dissect-cim
6, dissect-clfs
7, dissect-cstruct
8, dissect-esedb
9, dissect-etl
10, dissect-eventlog
11, dissect-evidence
12, dissect-extfs
13, dissect-fat
14, dissect-ffs
15, dissect-hypervisor
16, dissect-ntfs
17, dissect-regf
18, dissect-sql
19, dissect-thumbcache
20, dissect-util
21, dissect-volume
22, dissect-xfs
23, fetchFromGitHub
24, flow-record
25, fusepy
26, ipython
27, pytestCheckHook
28, pythonOlder
29, pyyaml
30, setuptools
31, setuptools-scm
32, structlog
33, yara-python
34, zstandard
35}:
36
37buildPythonPackage rec {
38 pname = "dissect-target";
39 version = "3.4";
40 format = "pyproject";
41
42 disabled = pythonOlder "3.7";
43
44 src = fetchFromGitHub {
45 owner = "fox-it";
46 repo = "dissect.target";
47 rev = version;
48 hash = "sha256-QwEznweETwDTuTctOnq0n27JYXC9BO5l6BYpXsMRVq4=";
49 };
50
51 SETUPTOOLS_SCM_PRETEND_VERSION = version;
52
53 nativeBuildInputs = [
54 setuptools
55 setuptools-scm
56 ];
57
58 propagatedBuildInputs = [
59 dissect-cstruct
60 dissect-eventlog
61 dissect-evidence
62 dissect-hypervisor
63 dissect-ntfs
64 dissect-regf
65 dissect-util
66 dissect-volume
67 flow-record
68 structlog
69 ];
70
71 passthru.optional-dependencies = {
72 full = [
73 asn1crypto
74 defusedxml
75 dissect-cim
76 dissect-clfs
77 dissect-esedb
78 dissect-etl
79 dissect-extfs
80 dissect-fat
81 dissect-ffs
82 dissect-sql
83 dissect-thumbcache
84 dissect-xfs
85 fusepy
86 ipython
87 pyyaml
88 yara-python
89 zstandard
90 ];
91 };
92
93 checkInputs = [
94 pytestCheckHook
95 ] ++ passthru.optional-dependencies.full;
96
97 pythonImportsCheck = [
98 "dissect.target"
99 ];
100
101 disabledTests = [
102 # Test requires rdump
103 "test_exec_target_command"
104 ];
105
106 meta = with lib; {
107 description = "Dissect module that provides a programming API and command line tools";
108 homepage = "https://github.com/fox-it/dissect.target";
109 license = licenses.agpl3Only;
110 maintainers = with maintainers; [ fab ];
111 };
112}