1{
2 lib,
3 aioconsole,
4 bleak-retry-connector,
5 bleak,
6 buildPythonPackage,
7 deprecated,
8 fetchFromGitHub,
9 freezegun,
10 poetry-core,
11 poetry-dynamic-versioning,
12 pytest-asyncio,
13 pytestCheckHook,
14 pythonOlder,
15 syrupy,
16 tzdata,
17 tzlocal,
18}:
19
20buildPythonPackage rec {
21 pname = "melnor-bluetooth";
22 version = "0.0.25";
23 pyproject = true;
24
25 disabled = pythonOlder "3.9";
26
27 src = fetchFromGitHub {
28 owner = "vanstinator";
29 repo = "melnor-bluetooth";
30 tag = "v${version}";
31 hash = "sha256-BQKXQrPT/+qm9cRO7pfScPwW0iwdhliTfX4XJ/kRQG0=";
32 };
33
34 build-system = [
35 poetry-core
36 poetry-dynamic-versioning
37 ];
38
39 dependencies = [
40 aioconsole
41 bleak
42 bleak-retry-connector
43 deprecated
44 tzdata
45 tzlocal
46 ];
47
48 nativeCheckInputs = [
49 freezegun
50 pytest-asyncio
51 pytestCheckHook
52 syrupy
53 ];
54
55 pythonImportsCheck = [ "melnor_bluetooth" ];
56
57 meta = {
58 description = "Module to interact with Melnor and Eden bluetooth watering timers";
59 homepage = "https://github.com/vanstinator/melnor-bluetooth";
60 changelog = "https://github.com/vanstinator/melnor-bluetooth/releases/tag/v${version}";
61 license = lib.licenses.mit;
62 maintainers = with lib.maintainers; [ fab ];
63 };
64}