nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 defusedxml,
5 dissect-cstruct,
6 dissect-target,
7 fetchFromGitHub,
8 minio,
9 pycryptodome,
10 pytestCheckHook,
11 requests,
12 requests-toolbelt,
13 rich,
14 setuptools,
15 setuptools-scm,
16}:
17
18buildPythonPackage rec {
19 pname = "acquire";
20 version = "3.21";
21 pyproject = true;
22
23 src = fetchFromGitHub {
24 owner = "fox-it";
25 repo = "acquire";
26 tag = version;
27 hash = "sha256-CVwPMMQFGqvyxm5tK7JMEX8/dgiF25wwRNaLNfLLWto=";
28 };
29
30 build-system = [
31 setuptools
32 setuptools-scm
33 ];
34
35 dependencies = [
36 defusedxml
37 dissect-cstruct
38 dissect-target
39 ];
40
41 optional-dependencies = {
42 full = [
43 dissect-target
44 minio
45 pycryptodome
46 requests
47 requests-toolbelt
48 rich
49 ]
50 ++ dissect-target.optional-dependencies.full;
51 };
52
53 nativeCheckInputs = [ pytestCheckHook ] ++ optional-dependencies.full;
54
55 disabledTests = [
56 "output_encrypt"
57 "test_collector_collect_glob"
58 "test_collector_collect_path_with_dir"
59 "test_misc_osx"
60 "test_misc_unix"
61 ];
62
63 pythonImportsCheck = [ "acquire" ];
64
65 meta = {
66 description = "Tool to quickly gather forensic artifacts from disk images or a live system";
67 homepage = "https://github.com/fox-it/acquire";
68 changelog = "https://github.com/fox-it/acquire/releases/tag/${src.tag}";
69 license = lib.licenses.agpl3Only;
70 maintainers = with lib.maintainers; [ fab ];
71 };
72}