diff --git a/pkgs/development/python-modules/pypasser/default.nix b/pkgs/development/python-modules/pypasser/default.nix new file mode 100644 index 000000000000..47c1fbe39294 --- /dev/null +++ b/pkgs/development/python-modules/pypasser/default.nix @@ -0,0 +1,59 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + pythonRelaxDepsHook, + pydub, + pysocks, + requests, + selenium, + speechrecognition, +}: + +buildPythonPackage rec { + pname = "pypasser"; + version = "0.0.5"; + pyproject = true; + + src = fetchFromGitHub { + owner = "xHossein"; + repo = "PyPasser"; + tag = version; + hash = "sha256-vqa+Xap9dYvjJMiGNGNmegh7rmAqwf3//MH47xwr/T0="; + }; + + build-system = [ setuptools ]; + + nativeBuildInputs = [ + pythonRelaxDepsHook + ]; + + pythonRelaxDeps = [ + "speechrecognition" + ]; + + dependencies = [ + pydub + pysocks + requests + selenium + speechrecognition + ]; + + pythonImportsCheck = [ + "pypasser" + "pypasser.reCaptchaV2" + "pypasser.reCaptchaV3" + ]; + + # Package has no tests + doCheck = false; + + meta = { + description = "Bypassing reCaptcha V3 by sending HTTP requests & solving reCaptcha V2 using speech to text"; + homepage = "https://github.com/xHossein/PyPasser"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.jamiemagee ]; + }; +} diff --git a/pkgs/development/python-modules/tami4edgeapi/default.nix b/pkgs/development/python-modules/tami4edgeapi/default.nix new file mode 100644 index 000000000000..45cf533db170 --- /dev/null +++ b/pkgs/development/python-modules/tami4edgeapi/default.nix @@ -0,0 +1,46 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + pyjwt, + pypasser, + requests, + pythonOlder, +}: + +buildPythonPackage rec { + pname = "tami4edgeapi"; + version = "3.0"; + pyproject = true; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "Guy293"; + repo = "Tami4EdgeAPI"; + tag = "v${version}"; + hash = "sha256-rhJ8L6qLDnO50Xp2eqquRinDTQjMxWVSjNL5GQI1gvM="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + pyjwt + pypasser + requests + ]; + + # Package has no tests + doCheck = false; + + pythonImportsCheck = [ "Tami4EdgeAPI" ]; + + meta = { + description = "Python API client for Tami4 Edge / Edge+ devices"; + homepage = "https://github.com/Guy293/Tami4EdgeAPI"; + changelog = "https://github.com/Guy293/Tami4EdgeAPI/releases/tag/v${version}"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.jamiemagee ]; + }; +} diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 7f5e0bc77b84..4a4e24d518a1 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -5820,7 +5820,8 @@ ]; "tami4" = ps: with ps; [ - ]; # missing inputs: Tami4EdgeAPI + tami4edgeapi + ]; "tank_utility" = ps: with ps; [ tank-utility @@ -7679,6 +7680,7 @@ "tag" "tailscale" "tailwind" + "tami4" "tankerkoenig" "tasmota" "tautulli" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 5c8c56dc8041..1510628eb390 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13521,6 +13521,8 @@ self: super: with self; { pypass = callPackage ../development/python-modules/pypass { }; + pypasser = callPackage ../development/python-modules/pypasser { }; + pypblib = callPackage ../development/python-modules/pypblib { }; pypca = callPackage ../development/python-modules/pypca { }; @@ -17676,6 +17678,8 @@ self: super: with self; { takethetime = callPackage ../development/python-modules/takethetime { }; + tami4edgeapi = callPackage ../development/python-modules/tami4edgeapi { }; + tank-utility = callPackage ../development/python-modules/tank-utility { }; tappy = callPackage ../development/python-modules/tappy { };