1{ lib
2, buildPythonPackage
3, dissect-cstruct
4, dissect-util
5, fetchFromGitHub
6, setuptools
7, setuptools-scm
8, pytestCheckHook
9, pythonOlder
10}:
11
12buildPythonPackage rec {
13 pname = "dissect-volume";
14 version = "3.7";
15 pyproject = true;
16
17 disabled = pythonOlder "3.9";
18
19 src = fetchFromGitHub {
20 owner = "fox-it";
21 repo = "dissect.volume";
22 rev = "refs/tags/${version}";
23 hash = "sha256-5ZO++l6BWA085U5IkghjCT46YhKc85SB7sNU2h4Fpec=";
24 };
25
26 SETUPTOOLS_SCM_PRETEND_VERSION = version;
27
28 nativeBuildInputs = [
29 setuptools
30 setuptools-scm
31 ];
32
33 propagatedBuildInputs = [
34 dissect-cstruct
35 dissect-util
36 ];
37
38 nativeCheckInputs = [
39 pytestCheckHook
40 ];
41
42 pythonImportsCheck = [
43 "dissect.volume"
44 ];
45
46 disabledTests = [
47 # gzip.BadGzipFile: Not a gzipped file
48 "test_ddf_read"
49 "test_dm_thin"
50 "test_lvm_mirro"
51 "test_lvm_thin"
52 "test_md_raid0_zones"
53 "test_md_read"
54 ];
55
56 meta = with lib; {
57 description = "Dissect module implementing various utility functions for the other Dissect modules";
58 homepage = "https://github.com/fox-it/dissect.volume";
59 changelog = "https://github.com/fox-it/dissect.volume/releases/tag/${version}";
60 license = licenses.agpl3Only;
61 maintainers = with maintainers; [ fab ];
62 };
63}