diff --git a/pkgs/development/python-modules/reolink-aio/default.nix b/pkgs/development/python-modules/reolink-aio/default.nix new file mode 100644 index 000000000000..ff6acc1f2b59 --- /dev/null +++ b/pkgs/development/python-modules/reolink-aio/default.nix @@ -0,0 +1,67 @@ +{ lib +, aiohttp +, aiounittest +, buildPythonPackage +, fetchFromGitHub +, ffmpeg-python +, pytestCheckHook +, pythonOlder +, requests +}: + +buildPythonPackage rec { + pname = "reolink-aio"; + version = "0.1.1"; + format = "setuptools"; + + disabled = pythonOlder "3.9"; + + src = fetchFromGitHub { + owner = "starkillerOG"; + repo = "reolink_aio"; + rev = "refs/tags/${version}"; + sha256 = "sha256-KUsBCV8OVPj0QC1DKUBVRqtt1dpGq+JunuBZsZKfQno="; + }; + + propagatedBuildInputs = [ + aiohttp + ffmpeg-python + requests + ]; + + checkInputs = [ + aiounittest + pytestCheckHook + ]; + + postPatch = '' + # Packages in nixpkgs is different than the module name + substituteInPlace setup.py \ + --replace "ffmpeg" "ffmpeg-python" + ''; + + pytestFlagsArray = [ + "tests/test.py" + ]; + + disabledTests = [ + # Tests require network access + "test1_settings" + "test2_states" + "test3_images" + "test4_properties" + "test_succes" + ]; + + pythonImportsCheck = [ + "reolink_aio" + ]; + + meta = with lib; { + description = "Module to interact with the Reolink IP camera API"; + homepage = "https://github.com/starkillerOG/reolink_aio"; + changelog = "https://github.com/starkillerOG/reolink_aio/releases/tag/${version}"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/reolink/default.nix b/pkgs/development/python-modules/reolink/default.nix index 896eb093cf9b..070c665e8a41 100644 --- a/pkgs/development/python-modules/reolink/default.nix +++ b/pkgs/development/python-modules/reolink/default.nix @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "fwestenberg"; repo = pname; rev = "refs/tags/v${version}"; - sha256 = "sha256-XUYTDHh0oTro6BT+h4LjRdMukOZTlWP+giFpjLciZNQ="; + hash = "sha256-XUYTDHh0oTro6BT+h4LjRdMukOZTlWP+giFpjLciZNQ="; }; propagatedBuildInputs = [ @@ -61,8 +61,9 @@ buildPythonPackage rec { ]; meta = with lib; { - description = "Python module to interact with the Reolink IP camera API"; + description = "Module to interact with the Reolink IP camera API"; homepage = "https://github.com/fwestenberg/reolink"; + changelog = "https://github.com/fwestenberg/reolink/releases/tag/v${version}"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7e1a758e4d4c..8ee4c44c2a3f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9759,6 +9759,8 @@ self: super: with self; { reolink = callPackage ../development/python-modules/reolink { }; + reolink-aio = callPackage ../development/python-modules/reolink-aio { }; + reparser = callPackage ../development/python-modules/reparser { }; repeated-test = callPackage ../development/python-modules/repeated-test { };