diff --git a/pkgs/development/python-modules/flipr-api/default.nix b/pkgs/development/python-modules/flipr-api/default.nix new file mode 100644 index 000000000000..418c7cf42fef --- /dev/null +++ b/pkgs/development/python-modules/flipr-api/default.nix @@ -0,0 +1,60 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, fetchpatch +, poetry-core +, requests-mock +, pythonOlder +, pytest-asyncio +, pytestCheckHook +, python-dateutil +, requests +}: + +buildPythonPackage rec { + pname = "flipr-api"; + version = "1.4.1"; + format = "pyproject"; + + disabled = pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "cnico"; + repo = pname; + rev = version; + sha256 = "00qkzr2g38fpa7ndnbfx9m4d50lmz0j74nkxif3amnkbl4m6l5vn"; + }; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + python-dateutil + requests + ]; + + checkInputs = [ + requests-mock + pytest-asyncio + pytestCheckHook + ]; + + patches = [ + # Switch to poetry-core, https://github.com/cnico/flipr-api/pull/4 + (fetchpatch { + name = "switch-to-poetry-core.patch"; + url = "https://github.com/cnico/flipr-api/commit/f14be1dfd4f46d4d43d9ea47e51cafca3cc18e86.patch"; + sha256 = "1fdi19cq21zcjx4g132k480yhi5y0x5qj2l0h8k5zky5cdxs58r6"; + }) + ]; + + pythonImportsCheck = [ "flipr_api" ]; + + meta = with lib; { + description = "Python client for Flipr API"; + homepage = "https://github.com/cnico/flipr-api"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 8573056c99a1..74cc9b1a635e 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -272,7 +272,7 @@ "flexit" = ps: with ps; [ pymodbus ]; "flic" = ps: with ps; [ pyflic ]; "flick_electric" = ps: with ps; [ pyflick ]; - "flipr" = ps: with ps; [ ]; # missing inputs: flipr-api + "flipr" = ps: with ps; [ flipr-api ]; "flo" = ps: with ps; [ aioflo ]; "flock" = ps: with ps; [ ]; "flume" = ps: with ps; [ pyflume ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 6bee53266ef4..11133abeb472 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -362,6 +362,7 @@ in with py.pkgs; buildPythonApplication rec { "fireservicerota" "firmata" "flick_electric" + "flipr" "flo" "flume" "flunearyou" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 416e8b1009cc..17be093677b5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2737,6 +2737,8 @@ in { flickrapi = callPackage ../development/python-modules/flickrapi { }; + flipr-api = callPackage ../development/python-modules/flipr-api { }; + flit = callPackage ../development/python-modules/flit { }; flit-core = callPackage ../development/python-modules/flit-core { };