1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pyserial-asyncio,
6 pyserial-asyncio-fast,
7 pytest-asyncio,
8 pytestCheckHook,
9 pythonOlder,
10 setuptools,
11}:
12
13buildPythonPackage rec {
14 pname = "pyotgw";
15 version = "2.2.0";
16 pyproject = true;
17
18 disabled = pythonOlder "3.8";
19
20 src = fetchFromGitHub {
21 owner = "mvn23";
22 repo = "pyotgw";
23 rev = "refs/tags/${version}";
24 hash = "sha256-SowM+glni1PGkM87JT9+QWTD4Tu9XmsfXg99GZzSCJM=";
25 };
26
27 build-system = [ setuptools ];
28
29 dependencies = [ pyserial-asyncio-fast ];
30
31 nativeCheckInputs = [
32 pytest-asyncio
33 pytestCheckHook
34 ];
35
36 pythonImportsCheck = [ "pyotgw" ];
37
38 meta = with lib; {
39 description = "Python module to interact the OpenTherm Gateway";
40 homepage = "https://github.com/mvn23/pyotgw";
41 changelog = "https://github.com/mvn23/pyotgw/blob/${version}/CHANGELOG.md";
42 license = with licenses; [ gpl3Plus ];
43 maintainers = with maintainers; [ fab ];
44 };
45}