1{ 2 lib, 3 stdenv, 4 buildPythonPackage, 5 defusedxml, 6 fetchFromGitHub, 7 lxml, 8 paramiko, 9 poetry-core, 10 pontos, 11 pytestCheckHook, 12 pythonOlder, 13 typing-extensions, 14}: 15 16buildPythonPackage rec { 17 pname = "python-gvm"; 18 version = "24.3.0"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.9"; 22 23 src = fetchFromGitHub { 24 owner = "greenbone"; 25 repo = "python-gvm"; 26 rev = "refs/tags/v${version}"; 27 hash = "sha256-GIEsP8+RJMIehsBbZWpIRXCdqxm042lPbYTHY7/fknM="; 28 }; 29 30 build-system = [ poetry-core ]; 31 32 dependencies = [ 33 defusedxml 34 lxml 35 paramiko 36 typing-extensions 37 ]; 38 39 nativeCheckInputs = [ 40 pontos 41 pytestCheckHook 42 ]; 43 44 disabledTests = [ 45 # No running SSH available 46 "test_connect_error" 47 "test_feed_xml_error" 48 ] ++ lib.optionals stdenv.isDarwin [ "test_feed_xml_error" ]; 49 50 pythonImportsCheck = [ "gvm" ]; 51 52 meta = with lib; { 53 description = "Collection of APIs that help with remote controlling a Greenbone Security Manager"; 54 homepage = "https://github.com/greenbone/python-gvm"; 55 changelog = "https://github.com/greenbone/python-gvm/releases/tag/v${version}"; 56 license = with licenses; [ gpl3Plus ]; 57 maintainers = with maintainers; [ fab ]; 58 }; 59}