diff --git a/pkgs/development/python-modules/elgato/default.nix b/pkgs/development/python-modules/elgato/default.nix new file mode 100644 index 00000000000..6ee0cd01912 --- /dev/null +++ b/pkgs/development/python-modules/elgato/default.nix @@ -0,0 +1,56 @@ +{ lib +, buildPythonPackage +, pythonOlder +, fetchFromGitHub +, aiohttp +, poetry-core +, yarl +, aresponses +, pytest-asyncio +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "elgato"; + version = "2.1.1"; + disabled = pythonOlder "3.8"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "frenck"; + repo = "python-elgato"; + rev = "v${version}"; + sha256 = "19z568jjyww7vi8s44anrb66qjz5l22nz4jqcz49ybhf22warmff"; + }; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + aiohttp + yarl + ]; + + checkInputs = [ + aresponses + pytest-asyncio + pytestCheckHook + ]; + + postPatch = '' + # Upstream doesn't set a version for the pyproject.toml + substituteInPlace pyproject.toml \ + --replace "0.0.0" "${version}" \ + --replace "--cov" "" + ''; + + pythonImportsCheck = [ "elgato" ]; + + meta = with lib; { + description = "Python client for Elgato Key Lights"; + homepage = "https://github.com/frenck/python-elgato"; + license = with 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 0d30fb3e49b..4a60fcf0c9d 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -213,7 +213,7 @@ "efergy" = ps: with ps; [ ]; "egardia" = ps: with ps; [ pythonegardia ]; "eight_sleep" = ps: with ps; [ pyeight ]; - "elgato" = ps: with ps; [ ]; # missing inputs: elgato + "elgato" = ps: with ps; [ elgato ]; "eliqonline" = ps: with ps; [ ]; # missing inputs: eliqonline "elkm1" = ps: with ps; [ ]; # missing inputs: elkm1-lib "elv" = ps: with ps; [ ]; # missing inputs: pypca diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 857d2d4d1a3..04a2aed97de 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -368,6 +368,7 @@ in with py.pkgs; buildPythonApplication rec { "econet" "ee_brightbox" "efergy" + "elgato" "emonitor" "emulated_hue" "enphase_envoy" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3c4967ba977..41570dce009 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2239,6 +2239,8 @@ in { eggdeps = callPackage ../development/python-modules/eggdeps { }; + elgato = callPackage ../development/python-modules/elgato { }; + elasticsearch = callPackage ../development/python-modules/elasticsearch { }; elasticsearch-dsl = callPackage ../development/python-modules/elasticsearch-dsl { };