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 jinja2,
13 more-itertools,
14 requests,
15 six,
16 pytestCheckHook,
17 mock,
18 pythonOlder,
19}:
20
21buildPythonPackage rec {
22 pname = "greynoise";
23 version = "2.2.0";
24 format = "setuptools";
25
26 disabled = pythonOlder "3.6";
27
28 src = fetchFromGitHub {
29 owner = "GreyNoise-Intelligence";
30 repo = "pygreynoise";
31 rev = "refs/tags/v${version}";
32 hash = "sha256-jsLvq0GndprdYL5mxHDRtZmNkeKT/rIV+dAnRPEmsV8=";
33 };
34
35 propagatedBuildInputs = [
36 click
37 ansimarkup
38 cachetools
39 colorama
40 click-default-group
41 click-repl
42 dict2xml
43 jinja2
44 more-itertools
45 requests
46 six
47 ];
48
49 nativeCheckInputs = [
50 pytestCheckHook
51 mock
52 ];
53
54 pythonImportsCheck = [ "greynoise" ];
55
56 meta = with lib; {
57 description = "Python3 library and command line for GreyNoise";
58 mainProgram = "greynoise";
59 homepage = "https://github.com/GreyNoise-Intelligence/pygreynoise";
60 changelog = "https://github.com/GreyNoise-Intelligence/pygreynoise/blob/${src.rev}/CHANGELOG.rst";
61 license = licenses.mit;
62 maintainers = with maintainers; [ mbalatsko ];
63 };
64}