1{
2 lib,
3 authlib,
4 buildPythonPackage,
5 deprecated,
6 fetchFromGitHub,
7 poetry-core,
8 requests,
9 pytest-cov-stub,
10 pytestCheckHook,
11}:
12
13buildPythonPackage rec {
14 pname = "pyvicare";
15 version = "2.51.0";
16 pyproject = true;
17
18 src = fetchFromGitHub {
19 owner = "openviess";
20 repo = "PyViCare";
21 tag = version;
22 hash = "sha256-WKu9f59Fc0i4MoGGaTP8s94pD4cYNrQvDt2kyQZ+f1U=";
23 };
24
25 postPatch = ''
26 substituteInPlace pyproject.toml \
27 --replace-fail 'version = "0.1.0"' 'version = "${version}"'
28 '';
29
30 build-system = [ poetry-core ];
31
32 dependencies = [
33 authlib
34 deprecated
35 requests
36 ];
37
38 nativeCheckInputs = [
39 pytest-cov-stub
40 pytestCheckHook
41 ];
42
43 pythonImportsCheck = [ "PyViCare" ];
44
45 meta = with lib; {
46 changelog = "https://github.com/openviess/PyViCare/releases/tag/${src.tag}";
47 description = "Python Library to access Viessmann ViCare API";
48 homepage = "https://github.com/somm15/PyViCare";
49 license = with licenses; [ asl20 ];
50 maintainers = with maintainers; [ fab ];
51 };
52}