1{
2 lib,
3 buildPythonPackage,
4 dissect-archive,
5 dissect-btrfs,
6 dissect-cim,
7 dissect-clfs,
8 dissect-cstruct,
9 dissect-esedb,
10 dissect-etl,
11 dissect-eventlog,
12 dissect-evidence,
13 dissect-executable,
14 dissect-extfs,
15 dissect-fat,
16 dissect-ffs,
17 dissect-fve,
18 dissect-hypervisor,
19 dissect-jffs,
20 dissect-ntfs,
21 dissect-ole,
22 dissect-qnxfs,
23 dissect-regf,
24 dissect-shellitem,
25 dissect-sql,
26 dissect-squashfs,
27 dissect-target,
28 dissect-util,
29 dissect-vmfs,
30 dissect-volume,
31 dissect-xfs,
32 fetchFromGitHub,
33 pythonOlder,
34 setuptools,
35 setuptools-scm,
36}:
37
38buildPythonPackage rec {
39 pname = "dissect";
40 version = "3.19";
41 pyproject = true;
42
43 disabled = pythonOlder "3.11";
44
45 src = fetchFromGitHub {
46 owner = "fox-it";
47 repo = "dissect";
48 tag = version;
49 hash = "sha256-eEiWKblhJPkZuxJvwJnHtxwvJ9uhXIkS56CeRtmEfkU=";
50 };
51
52 pythonRelaxDeps = true;
53
54 build-system = [
55 setuptools
56 setuptools-scm
57 ];
58
59 dependencies = [
60 dissect-archive
61 dissect-btrfs
62 dissect-cim
63 dissect-clfs
64 dissect-cstruct
65 dissect-esedb
66 dissect-etl
67 dissect-eventlog
68 dissect-evidence
69 dissect-executable
70 dissect-extfs
71 dissect-fat
72 dissect-ffs
73 dissect-fve
74 dissect-hypervisor
75 dissect-jffs
76 dissect-ntfs
77 dissect-ole
78 dissect-qnxfs
79 dissect-regf
80 dissect-shellitem
81 dissect-sql
82 dissect-squashfs
83 dissect-target
84 dissect-util
85 dissect-vmfs
86 dissect-volume
87 dissect-xfs
88 ]
89 ++ dissect-target.optional-dependencies.full;
90
91 # Module has no tests
92 doCheck = false;
93
94 pythonImportsCheck = [ "dissect" ];
95
96 meta = with lib; {
97 description = "Dissect meta module";
98 homepage = "https://github.com/fox-it/dissect";
99 changelog = "https://github.com/fox-it/dissect/releases/tag/${src.tag}";
100 license = licenses.agpl3Only;
101 maintainers = with maintainers; [ fab ];
102 };
103}