1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 paho-mqtt, 6 poetry-core, 7 psutil, 8 pytestCheckHook, 9 python-gnupg, 10 pythonOlder, 11 pythonRelaxDepsHook, 12 sentry-sdk, 13 tomli, 14}: 15 16buildPythonPackage rec { 17 pname = "notus-scanner"; 18 version = "22.6.3"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.7"; 22 23 src = fetchFromGitHub { 24 owner = "greenbone"; 25 repo = "notus-scanner"; 26 rev = "refs/tags/v${version}"; 27 hash = "sha256-LYYof/s0OvXMbEH7jyFIymUVrWYUd/6lychIzfPlylc="; 28 }; 29 30 pythonRelaxDeps = [ 31 "packaging" 32 "python-gnupg" 33 ]; 34 35 build-system = [ poetry-core ]; 36 37 nativeBuildInputs = [ pythonRelaxDepsHook ]; 38 39 propagatedBuildInputs = [ 40 paho-mqtt 41 psutil 42 python-gnupg 43 sentry-sdk 44 ] ++ lib.optionals (pythonOlder "3.11") [ tomli ]; 45 46 nativeCheckInputs = [ pytestCheckHook ]; 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 changelog = "https://github.com/greenbone/notus-scanner/releases/tag/v${version}"; 54 license = with licenses; [ agpl3Plus ]; 55 maintainers = with maintainers; [ fab ]; 56 }; 57}