@@ -0,0 +1,56 @@
1+{ lib
2+, buildPythonPackage
3+, fetchFromGitHub
4+, fetchpatch
5+, paho-mqtt
6+, poetry-core
7+, psutil
8+, pytestCheckHook
9+, pythonOlder
10+}:
11+
12+buildPythonPackage 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+}