1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 pythonOlder,
6 poetry-core,
7 aenum,
8 aioconsole,
9 aiohttp,
10 inflection,
11 pydantic,
12 python-dateutil,
13 typing-extensions,
14 urllib3,
15 websockets,
16 zeroconf,
17}:
18
19buildPythonPackage rec {
20 pname = "mozart-api";
21 version = "4.1.1.116.6";
22 pyproject = true;
23
24 disabled = pythonOlder "3.11";
25
26 src = fetchPypi {
27 pname = "mozart_api";
28 inherit version;
29 hash = "sha256-0TZHH/EXemsSysgfCzg66x5QhAEDUqRyg+qoK/3YuQA=";
30 };
31
32 build-system = [ poetry-core ];
33
34 dependencies = [
35 aenum
36 aioconsole
37 aiohttp
38 inflection
39 pydantic
40 python-dateutil
41 typing-extensions
42 urllib3
43 websockets
44 zeroconf
45 ];
46
47 # Package has no tests
48 doCheck = false;
49
50 pythonImportsCheck = [ "mozart_api" ];
51
52 meta = {
53 description = "REST API for the Bang & Olufsen Mozart platform";
54 homepage = "https://github.com/bang-olufsen/mozart-open-api";
55 changelog = "https://github.com/bang-olufsen/mozart-open-api/releases/tag/${version}";
56 license = lib.licenses.mit;
57 maintainers = with lib.maintainers; [ pyrox0 ];
58 };
59}