1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 pythonOlder, 6 7 # build-system 8 hatchling, 9 10 # dependencies 11 aiohttp, 12 yarl, 13 14 # tests 15 pytestCheckHook, 16}: 17 18buildPythonPackage rec { 19 pname = "openwebifpy"; 20 version = "4.3.1"; 21 pyproject = true; 22 23 disabled = pythonOlder "3.11"; 24 25 src = fetchPypi { 26 inherit pname version; 27 hash = "sha256-FaynJT+bR63nIwLEwXjTjwPXZ3Q5/X+zpx0gTA3Pqo8="; 28 }; 29 30 build-system = [ hatchling ]; 31 32 dependencies = [ 33 aiohttp 34 yarl 35 ]; 36 37 nativeCheckInputs = [ pytestCheckHook ]; 38 39 pythonImportsCheck = [ "openwebif" ]; 40 41 disabledTests = [ 42 # https://github.com/autinerd/openwebifpy/issues/1 43 "test_get_picon_name" 44 ]; 45 46 meta = with lib; { 47 description = "Provides a python interface to interact with a device running OpenWebIf"; 48 downloadPage = "https://github.com/autinerd/openwebifpy"; 49 homepage = "https://openwebifpy.readthedocs.io/"; 50 changelog = "https://github.com/autinerd/openwebifpy/releases/tag/${version}"; 51 license = licenses.mit; 52 maintainers = with maintainers; [ hexa ]; 53 }; 54}