1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, funcy
5, intervaltree
6, pefile
7, typing-extensions
8, vivisect
9, pytest-sugar
10, pytestCheckHook
11, python-flirt
12}:
13buildPythonPackage rec {
14 pname = "viv-utils";
15 version = "0.7.9";
16
17 src = fetchFromGitHub {
18 owner = "williballenthin";
19 repo = "viv-utils";
20 rev = "refs/tags/v${version}";
21 hash = "sha256-xM3jtA6fNk36+enL/EcQH59CNajYnGlEDu06QXIFz6A=";
22 };
23
24 postPatch = ''
25 substituteInPlace setup.py \
26 --replace "==" ">="
27 '';
28
29 propagatedBuildInputs = [
30 funcy
31 intervaltree
32 pefile
33 typing-extensions
34 vivisect
35 ];
36
37 nativeCheckInputs = [
38 pytest-sugar
39 pytestCheckHook
40 ];
41
42 passthru = {
43 optional-dependencies = {
44 flirt = [
45 python-flirt
46 ];
47 };
48 };
49
50 meta = with lib; {
51 description = "Utilities for working with vivisect";
52 homepage = "https://github.com/williballenthin/viv-utils";
53 changelog = "https://github.com/williballenthin/viv-utils/releases/tag/v${version}";
54 license = licenses.asl20;
55 maintainers = [ ];
56 };
57}