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-ntfs";
14 version = "3.7";
15 format = "pyproject";
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchFromGitHub {
20 owner = "fox-it";
21 repo = "dissect.ntfs";
22 rev = "refs/tags/${version}";
23 hash = "sha256-bnFimn5ektIKiX73NZ+1Iz3Uoew138a0nFJgypffC4o=";
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.ntfs"
44 ];
45
46 disabledTestPaths = [
47 # Test is very time consuming
48 "tests/test_index.py"
49 ];
50
51 meta = with lib; {
52 description = "Dissect module implementing a parser for the NTFS file system";
53 homepage = "https://github.com/fox-it/dissect.ntfs";
54 changelog = "https://github.com/fox-it/dissect.ntfs/releases/tag/${version}";
55 license = licenses.agpl3Only;
56 maintainers = with maintainers; [ fab ];
57 };
58}