diff --git a/pkgs/development/python-modules/dtlssocket/default.nix b/pkgs/development/python-modules/dtlssocket/default.nix new file mode 100644 index 000000000000..28eae55ef9a6 --- /dev/null +++ b/pkgs/development/python-modules/dtlssocket/default.nix @@ -0,0 +1,34 @@ +{ lib +, buildPythonPackage +, fetchPypi +, autoconf +, cython +}: + +buildPythonPackage rec { + pname = "dtlssocket"; + version = "0.1.12"; + + src = fetchPypi { + pname = "DTLSSocket"; + inherit version; + sha256 = "909a8f52f1890ec9e92fd46ef609daa8875c2a1c262c0b61200e73c6c2dd5099"; + }; + + nativeBuildInputs = [ + autoconf + cython + ]; + + # no tests on PyPI, no tags on GitLab + doCheck = false; + + pythonImportsCheck = [ "DTLSSocket" ]; + + meta = with lib; { + description = "Cython wrapper for tinydtls with a Socket like interface"; + homepage = "https://git.fslab.de/jkonra2m/tinydtls-cython"; + license = licenses.epl10; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pytradfri/default.nix b/pkgs/development/python-modules/pytradfri/default.nix new file mode 100644 index 000000000000..e06a7e681351 --- /dev/null +++ b/pkgs/development/python-modules/pytradfri/default.nix @@ -0,0 +1,40 @@ +{ lib +, buildPythonPackage +, pythonOlder +, fetchFromGitHub +, aiocoap +, dtlssocket +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "pytradfri"; + version = "7.0.6"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "home-assistant-libs"; + repo = "pytradfri"; + rev = version; + sha256 = "0ckh2waz3xpz51pmigg1q336igqvvkl2pzncszvblkwv38a0rj3a"; + }; + + propagatedBuildInputs = [ + aiocoap + dtlssocket + ]; + + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ "pytradfri" ]; + + meta = with lib; { + description = "Python package to communicate with the IKEA Trådfri ZigBee Gateway"; + homepage = "https://github.com/home-assistant-libs/pytradfri"; + license = licenses.mit; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 8fff6d0c3df2..c20ad9fd80fa 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -880,7 +880,7 @@ "traccar" = ps: with ps; [ aiohttp-cors stringcase ]; # missing inputs: pytraccar "trace" = ps: with ps; [ ]; "trackr" = ps: with ps; [ ]; # missing inputs: pytrackr - "tradfri" = ps: with ps; [ ]; # missing inputs: pytradfri[async] + "tradfri" = ps: with ps; [ pytradfri ]; "trafikverket_train" = ps: with ps; [ pytrafikverket ]; "trafikverket_weatherstation" = ps: with ps; [ pytrafikverket ]; "transmission" = ps: with ps; [ transmissionrpc ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index eb05ecd9e6e4..c31dde4fd3ed 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -703,6 +703,7 @@ in with py.pkgs; buildPythonApplication rec { "toon" "tplink" "trace" + "tradfri" "transmission" "trend" "tts" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 723751e7877c..1ae54040a22f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2186,6 +2186,8 @@ in { dsmr-parser = callPackage ../development/python-modules/dsmr-parser { }; + dtlssocket = callPackage ../development/python-modules/dtlssocket { }; + duckdb = callPackage ../development/python-modules/duckdb { inherit (pkgs) duckdb; }; @@ -7130,6 +7132,8 @@ in { cudaSupport = false; }; + pytradfri = callPackage ../development/python-modules/pytradfri { }; + pytrafikverket = callPackage ../development/python-modules/pytrafikverket { }; pytrends = callPackage ../development/python-modules/pytrends { };