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