1{ 2 lib, 3 aiohttp, 4 buildPythonPackage, 5 click, 6 fetchFromGitHub, 7 prompt-toolkit, 8 pycryptodome, 9 pydantic, 10 pythonOlder, 11 setuptools, 12}: 13 14buildPythonPackage rec { 15 pname = "pykoplenti"; 16 version = "1.4.0"; 17 pyproject = true; 18 19 disabled = pythonOlder "3.7"; 20 21 src = fetchFromGitHub { 22 owner = "stegm"; 23 repo = "pykoplenti"; 24 tag = "v${version}"; 25 hash = "sha256-vsqbjNj5x7X0VGbTq+CdZ9rPXVDypBkgaCI6MImloLo="; 26 }; 27 28 pythonRelaxDeps = [ "pydantic" ]; 29 30 nativeBuildInputs = [ 31 setuptools 32 ]; 33 34 propagatedBuildInputs = [ 35 aiohttp 36 pycryptodome 37 pydantic 38 ]; 39 40 optional-dependencies = { 41 CLI = [ 42 click 43 prompt-toolkit 44 ]; 45 }; 46 47 # Project has no tests 48 doCheck = false; 49 50 pythonImportsCheck = [ "pykoplenti" ]; 51 52 meta = with lib; { 53 description = "Python REST client API for Kostal Plenticore Inverters"; 54 mainProgram = "pykoplenti"; 55 homepage = "https://github.com/stegm/pykoplenti/"; 56 changelog = "https://github.com/stegm/pykoplenti/releases/tag/v${version}"; 57 license = with licenses; [ asl20 ]; 58 maintainers = with maintainers; [ fab ]; 59 }; 60}