1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 click,
6 ansimarkup,
7 cachetools,
8 colorama,
9 click-default-group,
10 click-repl,
11 dict2xml,
12 hatchling,
13 jinja2,
14 more-itertools,
15 requests,
16 six,
17 pytestCheckHook,
18 mock,
19 pythonOlder,
20}:
21
22buildPythonPackage rec {
23 pname = "greynoise";
24 version = "3.0.1";
25 pyproject = true;
26
27 disabled = pythonOlder "3.6";
28
29 src = fetchFromGitHub {
30 owner = "GreyNoise-Intelligence";
31 repo = "pygreynoise";
32 tag = "v${version}";
33 hash = "sha256-wJDO666HC3EohfR+LbG5F0Cp/eL7q4kXniWhJfc7C3s=";
34 };
35
36 build-system = [
37 hatchling
38 ];
39
40 dependencies = [
41 click
42 ansimarkup
43 cachetools
44 colorama
45 click-default-group
46 click-repl
47 dict2xml
48 jinja2
49 more-itertools
50 requests
51 six
52 ];
53
54 nativeCheckInputs = [
55 pytestCheckHook
56 mock
57 ];
58
59 pythonImportsCheck = [ "greynoise" ];
60
61 meta = with lib; {
62 description = "Python3 library and command line for GreyNoise";
63 mainProgram = "greynoise";
64 homepage = "https://github.com/GreyNoise-Intelligence/pygreynoise";
65 changelog = "https://github.com/GreyNoise-Intelligence/pygreynoise/blob/${src.tag}/CHANGELOG.rst";
66 license = licenses.mit;
67 maintainers = with maintainers; [ mbalatsko ];
68 };
69}