1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, fetchpatch
5, paho-mqtt
6, poetry-core
7, psutil
8, pytestCheckHook
9, pythonOlder
10}:
11
12buildPythonPackage rec {
13 pname = "notus-scanner";
14 version = "unstable-2021-09-05";
15 format = "pyproject";
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchFromGitHub {
20 owner = "greenbone";
21 repo = pname;
22 rev = "049f9a5e6439e4e5113e3b8f30b25ead12d42a56";
23 sha256 = "1fjxyn8wg2kf6xy3pbh7d7yn20dk529p03xpqyz7s40n9nsxhnza";
24 };
25
26 nativeBuildInputs = [
27 poetry-core
28 ];
29
30 propagatedBuildInputs = [
31 paho-mqtt
32 psutil
33 ];
34
35 checkInputs = [
36 pytestCheckHook
37 ];
38
39 patches = [
40 # Switch to poetry-core, https://github.com/greenbone/notus-scanner/pull/31
41 (fetchpatch {
42 name = "switch-to-poetry-core.patch";
43 url = "https://github.com/greenbone/notus-scanner/commit/b52eea317faca30d411096044f9e5ea20b58da65.patch";
44 sha256 = "0q11aslhva47kkpsnpayra7spa849j894vqv34pjqhcnlyipqw6d";
45 })
46 ];
47
48 pythonImportsCheck = [ "notus.scanner" ];
49
50 meta = with lib; {
51 description = "Helper to create results from local security checks";
52 homepage = "https://github.com/greenbone/notus-scanner";
53 license = with licenses; [ agpl3Plus ];
54 maintainers = with maintainers; [ fab ];
55 };
56}