1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitLab,
5 setuptools,
6 aiohttp,
7 tenacity,
8 aioresponses,
9 pytest-asyncio,
10 pytestCheckHook,
11}:
12
13buildPythonPackage rec {
14 pname = "doorbirdpy";
15 version = "3.0.9";
16 pyproject = true;
17
18 src = fetchFromGitLab {
19 owner = "klikini";
20 repo = "doorbirdpy";
21 tag = version;
22 hash = "sha256-aa7u4x0WAFvCKPPGKJiZA/DYKKCa+xqabHxDMPxEbgo=";
23 };
24
25 build-system = [ setuptools ];
26
27 pythonRelaxDeps = [
28 "tenacity"
29 ];
30
31 dependencies = [
32 aiohttp
33 tenacity
34 ];
35
36 nativeCheckInputs = [
37 aioresponses
38 pytest-asyncio
39 pytestCheckHook
40 ];
41
42 pythonImportsCheck = [ "doorbirdpy" ];
43
44 meta = {
45 changelog = "https://gitlab.com/klikini/doorbirdpy/-/tags/${src.tag}";
46 description = "Python wrapper for the DoorBird LAN API";
47 homepage = "https://gitlab.com/klikini/doorbirdpy";
48 license = lib.licenses.mit;
49 maintainers = with lib.maintainers; [ dotlambda ];
50 };
51}