1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, ifaddr
5, poetry-core
6, pythonOlder
7, requests
8, six
9, websocket-client
10}:
11
12buildPythonPackage rec {
13 pname = "roonapi";
14 version = "0.1.5";
15 format = "pyproject";
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchFromGitHub {
20 owner = "pavoni";
21 repo = "pyroon";
22 rev = version;
23 hash = "sha256-356eSRlO0kIaOm+O4bApraC0amEprBcCSvzl3LQ7k/E=";
24 };
25
26 nativeBuildInputs = [
27 poetry-core
28 ];
29
30 propagatedBuildInputs = [
31 ifaddr
32 requests
33 six
34 websocket-client
35 ];
36
37 # Tests require access to the Roon API
38 doCheck = false;
39
40 pythonImportsCheck = [
41 "roonapi"
42 ];
43
44 meta = with lib; {
45 description = "Python library to interface with the Roon API";
46 homepage = "https://github.com/pavoni/pyroon";
47 changelog = "https://github.com/pavoni/pyroon/releases/tag/${version}";
48 license = with licenses; [ asl20 ];
49 maintainers = with maintainers; [ fab ];
50 };
51}