1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, fetchpatch
5, poetry-core
6, pyserial-asyncio
7, pytest-asyncio
8, pytestCheckHook
9, pythonOlder
10}:
11
12buildPythonPackage rec {
13 pname = "elkm1-lib";
14 version = "2.1.0";
15 format = "pyproject";
16
17 disabled = pythonOlder "3.9";
18
19 src = fetchFromGitHub {
20 owner = "gwww";
21 repo = "elkm1";
22 rev = version;
23 hash = "sha256-uc+hU4RyF6IXUbdpZHozbF6vO2NE2hrfgxAnmmB27lw=";
24 };
25
26 nativeBuildInputs = [
27 poetry-core
28 ];
29
30 propagatedBuildInputs = [
31 pyserial-asyncio
32 ];
33
34 checkInputs = [
35 pytest-asyncio
36 pytestCheckHook
37 ];
38
39 pythonImportsCheck = [
40 "elkm1_lib"
41 ];
42
43 meta = with lib; {
44 description = "Python module for interacting with ElkM1 alarm/automation panel";
45 homepage = "https://github.com/gwww/elkm1";
46 license = licenses.mit;
47 maintainers = with maintainers; [ fab ];
48 };
49}