From 260df68cc5e2f318dd94db6ec19bde011d51b4b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 3 Mar 2026 17:42:02 -0800 Subject: [PATCH 01/53] python3Packages.aioamazondevices: 12.0.1 -> 13.0.0 Diff: https://github.com/chemelli74/aioamazondevices/compare/v12.0.1...v13.0.0 Changelog: https://github.com/chemelli74/aioamazondevices/blob/v13.0.0/CHANGELOG.md --- .../development/python-modules/aioamazondevices/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aioamazondevices/default.nix b/pkgs/development/python-modules/aioamazondevices/default.nix index c6eaae348f7a..ad693fed53f7 100644 --- a/pkgs/development/python-modules/aioamazondevices/default.nix +++ b/pkgs/development/python-modules/aioamazondevices/default.nix @@ -1,5 +1,6 @@ { aiohttp, + anyio, beautifulsoup4, buildPythonPackage, colorlog, @@ -15,20 +16,21 @@ buildPythonPackage rec { pname = "aioamazondevices"; - version = "12.0.1"; + version = "13.0.0"; pyproject = true; src = fetchFromGitHub { owner = "chemelli74"; repo = "aioamazondevices"; tag = "v${version}"; - hash = "sha256-QLIn5pI6Mol+dPDGZpAnCfG3dMoxzKLJ6d77uyn8Cvk="; + hash = "sha256-ZqGRUxEKaqTO5V5KP75mT9BeOZVir9618Mi+1/GxHEM="; }; build-system = [ poetry-core ]; dependencies = [ aiohttp + anyio beautifulsoup4 colorlog langcodes From 829bea06650151cb9e41385e676daca6ccb58e68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 3 Mar 2026 17:42:59 -0800 Subject: [PATCH 02/53] python3Packages.bumble: 0.0.223 -> 0.0.226 Diff: https://github.com/google/bumble/compare/v0.0.223...v0.0.226 Changelog: https://github.com/google/bumble/releases/tag/v0.0.226 --- pkgs/development/python-modules/bumble/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/bumble/default.nix b/pkgs/development/python-modules/bumble/default.nix index 8235e54a6541..ebcdfdfe7de7 100644 --- a/pkgs/development/python-modules/bumble/default.nix +++ b/pkgs/development/python-modules/bumble/default.nix @@ -28,14 +28,14 @@ buildPythonPackage rec { pname = "bumble"; - version = "0.0.223"; + version = "0.0.226"; pyproject = true; src = fetchFromGitHub { owner = "google"; repo = "bumble"; tag = "v${version}"; - hash = "sha256-Iei2RBk7Tpb8yeTKdtftJfbG3DwuGjvBZuhhs+nMKcU="; + hash = "sha256-sZFP/Vdk8L7oL6+AbsyqmEar3K4oR9rp78mDBxIVdeY="; }; build-system = [ From e1ccf387787acb1590edde89cba9d36f84490c3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 3 Mar 2026 17:37:11 -0800 Subject: [PATCH 03/53] python3Packages.certbot: 5.2.2 -> 5.3.1 Diff: https://github.com/certbot/certbot/compare/v5.2.2...v5.3.1 Changelog: https://github.com/certbot/certbot/blob/v5.3.1/certbot/CHANGELOG.md --- pkgs/development/python-modules/certbot/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/certbot/default.nix b/pkgs/development/python-modules/certbot/default.nix index 0619d03bfe91..3d1500ab1c0f 100644 --- a/pkgs/development/python-modules/certbot/default.nix +++ b/pkgs/development/python-modules/certbot/default.nix @@ -25,14 +25,14 @@ buildPythonPackage rec { pname = "certbot"; - version = "5.2.2"; + version = "5.3.1"; pyproject = true; src = fetchFromGitHub { owner = "certbot"; repo = "certbot"; tag = "v${version}"; - hash = "sha256-+LQX845Qw/T+kR846bNu9xTJ0zcL76rtp48e/Cgu6Vk="; + hash = "sha256-u9qzZFhvIapXQwxehvMieCV+4uigteSOeHVw7ycMCEU="; }; patches = [ From 7656a64fdaf26d7f11c5f565977ba99d6531e12a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 3 Mar 2026 17:35:40 -0800 Subject: [PATCH 04/53] python3Packages.hass-nabucasa: 1.14.0 -> 1.15.0 Diff: https://github.com/nabucasa/hass-nabucasa/compare/1.14.0...1.15.0 Changelog: https://github.com/NabuCasa/hass-nabucasa/releases/tag/1.15.0 --- pkgs/development/python-modules/hass-nabucasa/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/hass-nabucasa/default.nix b/pkgs/development/python-modules/hass-nabucasa/default.nix index d8bfd65582b1..65ab1d21255d 100644 --- a/pkgs/development/python-modules/hass-nabucasa/default.nix +++ b/pkgs/development/python-modules/hass-nabucasa/default.nix @@ -32,7 +32,7 @@ buildPythonPackage (finalAttrs: { pname = "hass-nabucasa"; - version = "1.14.0"; + version = "1.15.0"; pyproject = true; disabled = pythonOlder "3.13"; @@ -41,7 +41,7 @@ buildPythonPackage (finalAttrs: { owner = "nabucasa"; repo = "hass-nabucasa"; tag = finalAttrs.version; - hash = "sha256-uTADu6IK8X+oQVvGdprmijR+MUJuWG9KMclq7zveC8o="; + hash = "sha256-WwpCAIfl/2fp01v9Rq4tQW70aoVlvhEJl31XQTAENmA="; }; postPatch = '' From de17467f58f47b3a7f58e641a0fc025bd871d3cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 3 Mar 2026 19:22:49 -0800 Subject: [PATCH 05/53] python314Packages.aiohttp-cors: fix tests --- .../python-modules/aiohttp-cors/default.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/development/python-modules/aiohttp-cors/default.nix b/pkgs/development/python-modules/aiohttp-cors/default.nix index 083b1a513063..f2f17e78a805 100644 --- a/pkgs/development/python-modules/aiohttp-cors/default.nix +++ b/pkgs/development/python-modules/aiohttp-cors/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + fetchpatch, aiohttp, pytestCheckHook, pytest-aiohttp, @@ -20,6 +21,15 @@ buildPythonPackage rec { hash = "sha256-AbMuUeCNM8+oZj/hutG3zxHOwYN8uZlLFBeYTlu1fh4="; }; + patches = [ + # https://github.com/aio-libs/aiohttp-cors/pull/563 + (fetchpatch { + name = "replace-deprecated-asyncio.iscoroutinefunction-with-its-counterpart-from-inspect.patch"; + url = "https://github.com/aio-libs/aiohttp-cors/commit/efafc0f780a494377910f2328057f83e95f8bf74.patch"; + hash = "sha256-BvE5qqAx83+084khkHt4zjXgR7Bu/ceqMOOh/6fe5TA="; + }) + ]; + build-system = [ setuptools ]; dependencies = [ aiohttp ]; From 4c701c5b87418f0881189581384ce36836041e78 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 4 Mar 2026 15:22:43 +0100 Subject: [PATCH 06/53] python3Packages.home-assistant-chip-wheels: fix version metadata --- .../python-modules/home-assistant-chip-wheels/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/home-assistant-chip-wheels/default.nix b/pkgs/development/python-modules/home-assistant-chip-wheels/default.nix index 9fe4467205ff..8ccc67b828a0 100644 --- a/pkgs/development/python-modules/home-assistant-chip-wheels/default.nix +++ b/pkgs/development/python-modules/home-assistant-chip-wheels/default.nix @@ -65,6 +65,7 @@ stdenv.mkDerivation rec { pname = "home-assistant-chip-wheels"; version = "2025.7.0"; + src = fetchFromGitHub { owner = "home-assistant-libs"; repo = "chip-wheels"; @@ -262,7 +263,7 @@ stdenv.mkDerivation rec { "chip_config_memory_debug_dmalloc=false" ''chip_mdns="minimal"'' ''chip_minmdns_default_policy="libnl"'' - ''chip_python_version="${lib.versions.majorMinor python.version}"'' + ''chip_python_version="${version}"'' ''chip_python_platform_tag="any"'' ''chip_python_package_prefix="home-assistant-chip"'' ''custom_toolchain="custom"'' From a8ad95943cbcdc10cc3370fbdf8f846924155b1a Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 4 Mar 2026 15:28:35 +0100 Subject: [PATCH 07/53] python3Packages.matter-python-client: init at 0.4.3 --- .../matter-python-client/default.nix | 69 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 71 insertions(+) create mode 100644 pkgs/development/python-modules/matter-python-client/default.nix diff --git a/pkgs/development/python-modules/matter-python-client/default.nix b/pkgs/development/python-modules/matter-python-client/default.nix new file mode 100644 index 000000000000..40993c2a7499 --- /dev/null +++ b/pkgs/development/python-modules/matter-python-client/default.nix @@ -0,0 +1,69 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + setuptools, + + # dependencies + aiohttp, + orjson, + home-assistant-chip-clusters, + + # tests + pytest-asyncio, + pytest-aiohttp, + pytestCheckHook, +}: + +buildPythonPackage (finalAttrs: { + pname = "matter-python-client"; + version = "0.4.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "matter-js"; + repo = "matterjs-server"; + tag = "v${finalAttrs.version}"; + hash = "sha256-SnOo6AQzkIqlZPTDe/dhA1EJ8oTBg37zfjiqheGYxIM="; + }; + + sourceRoot = "${finalAttrs.src.name}/python_client"; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace 'version = "0.0.0"' 'version = "${finalAttrs.version}"' + ''; + + build-system = [ setuptools ]; + + dependencies = [ + aiohttp + orjson + home-assistant-chip-clusters + ]; + + nativeCheckInputs = [ + pytest-asyncio + pytest-aiohttp + pytestCheckHook + ]; + + disabledTestPaths = [ + # requires npx and network access to start matterjs + "tests/test_client_integration.py" + "tests/test_integration.py" + ]; + + pythonImportsCheck = [ + "matter_server.client" + ]; + + meta = { + description = "Python Client for the OHF Matter Server"; + homepage = "https://github.com/matter-js/matterjs-server/tree/main/python_client"; + license = lib.licenses.asl20; + teams = [ lib.teams.home-assistant ]; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index dce8d7a332b2..bb408f30b27d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9537,6 +9537,8 @@ self: super: with self; { matrix-nio = callPackage ../development/python-modules/matrix-nio { }; + matter-python-client = callPackage ../development/python-modules/matter-python-client { }; + mattermostdriver = callPackage ../development/python-modules/mattermostdriver { }; maubot = callPackage ../development/python-modules/maubot { }; From 285ac3c8fca157653685a4a232300addaef037d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 4 Mar 2026 16:16:29 +0100 Subject: [PATCH 08/53] python314Packages.snitun: fix test execution see the Python 3.14 changelog for the breaking change to multiprocessing fork on linux per default https://docs.python.org/3/whatsnew/3.14.html#:~:text=On%20Unix%20platforms%20other%20than%20macOS%2C%20%E2%80%98forkserver%E2%80%99%20is%20now%20the%20default%20start%20method%20for%20ProcessPoolExecutor%20(replacing%20%E2%80%98fork%E2%80%99).%20This%20change%20does%20not%20affect%20Windows%20or%20macOS%2C%20where%20%E2%80%98spawn%E2%80%99%20remains%20the%20default%20start%20method Multiple tests failed with similar errors like: _____________________________ test_peer_connection _____________________________ [gw0] linux -- Python 3.14.3 /nix/store/8gnchv834z56s561v3sx2h0ra1a2xn46-python3-3.14.3/bin/python3.14 test_server_sync = [] test_client_sync = event_loop = <_UnixSelectorEventLoop running=False closed=False debug=False> def test_peer_connection( test_server_sync: list[socket.socket], test_client_sync: socket.socket, event_loop: asyncio.AbstractEventLoop, ) -> None: """Run a full flow of with a peer.""" worker = ServerWorker(FERNET_TOKENS) valid = datetime.now(tz=UTC) + timedelta(days=1) aes_key = os.urandom(32) aes_iv = os.urandom(16) hostname = "localhost" fernet_token = create_peer_config(valid.timestamp(), hostname, aes_key, aes_iv) > worker.start() tests/server/test_worker.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /nix/store/8gnchv834z56s561v3sx2h0ra1a2xn46-python3-3.14.3/lib/python3.14/multiprocessing/process.py:121: in start self._popen = self._Popen(self) ^^^^^^^^^^^^^^^^^ /nix/store/8gnchv834z56s561v3sx2h0ra1a2xn46-python3-3.14.3/lib/python3.14/multiprocessing/context.py:224: in _Popen return _default_context.get_context().Process._Popen(process_obj) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /nix/store/8gnchv834z56s561v3sx2h0ra1a2xn46-python3-3.14.3/lib/python3.14/multiprocessing/context.py:300: in _Popen return Popen(process_obj) ^^^^^^^^^^^^^^^^^^ /nix/store/8gnchv834z56s561v3sx2h0ra1a2xn46-python3-3.14.3/lib/python3.14/multiprocessing/popen_forkserver.py:35: in __init__ super().__init__(process_obj) /nix/store/8gnchv834z56s561v3sx2h0ra1a2xn46-python3-3.14.3/lib/python3.14/multiprocessing/popen_fork.py:20: in __init__ self._launch(process_obj) /nix/store/8gnchv834z56s561v3sx2h0ra1a2xn46-python3-3.14.3/lib/python3.14/multiprocessing/popen_forkserver.py:47: in _launch reduction.dump(process_obj, buf) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ obj = file = <_io.BytesIO object at 0x7fffef185c10>, protocol = None def dump(obj, file, protocol=None): '''Replacement for pickle.dump() using ForkingPickler.''' > ForkingPickler(file, protocol).dump(obj) E TypeError: cannot pickle 'weakref.ReferenceType' object E when serializing dict item '_weakref' E when serializing multiprocessing.util.Finalize state E when serializing multiprocessing.util.Finalize object E when serializing dict item 'finalizer' E when serializing multiprocessing.popen_forkserver.Popen state E when serializing multiprocessing.popen_forkserver.Popen object E when serializing dict item '_popen' E when serializing multiprocessing.context.ForkServerProcess state E when serializing multiprocessing.context.ForkServerProcess object E when serializing dict item '_process' E when serializing multiprocessing.managers.SyncManager state E when serializing multiprocessing.managers.SyncManager object E when serializing dict item '_manager' E when serializing snitun.server.worker.ServerWorker state E when serializing snitun.server.worker.ServerWorker object /nix/store/8gnchv834z56s561v3sx2h0ra1a2xn46-python3-3.14.3/lib/python3.14/multiprocessing/reduction.py:60: TypeError ---------------------------- Captured stderr setup ----------------------------- DEBUG:asyncio:Using selector: EpollSelector ------------------------------ Captured log setup ------------------------------ DEBUG asyncio:selector_events.py:64 Using selector: EpollSelector --- .../python-modules/snitun/default.nix | 6 ++++- .../snitun/fix-python-3.14-compatibility.diff | 23 +++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/snitun/fix-python-3.14-compatibility.diff diff --git a/pkgs/development/python-modules/snitun/default.nix b/pkgs/development/python-modules/snitun/default.nix index 6926926605b9..1540fcaec9de 100644 --- a/pkgs/development/python-modules/snitun/default.nix +++ b/pkgs/development/python-modules/snitun/default.nix @@ -8,7 +8,6 @@ pytest-aiohttp, pytest-codspeed, pytestCheckHook, - pythonAtLeast, setuptools, }: @@ -24,6 +23,11 @@ buildPythonPackage rec { hash = "sha256-luXv5J0PUvW+AGTecwkEq+qkG1N5Ja5NbBKJ3M6HC0I="; }; + patches = [ + # https://github.com/NabuCasa/snitun/pull/459 + ./fix-python-3.14-compatibility.diff + ]; + postPatch = '' substituteInPlace pyproject.toml \ --replace-fail 'version = "0.0.0"' 'version = "${version}"' diff --git a/pkgs/development/python-modules/snitun/fix-python-3.14-compatibility.diff b/pkgs/development/python-modules/snitun/fix-python-3.14-compatibility.diff new file mode 100644 index 000000000000..b9d849f76f43 --- /dev/null +++ b/pkgs/development/python-modules/snitun/fix-python-3.14-compatibility.diff @@ -0,0 +1,23 @@ +diff --git a/tests/conftest.py b/tests/conftest.py +index 78594e7..1b9c184 100644 +--- a/tests/conftest.py ++++ b/tests/conftest.py +@@ -5,9 +5,11 @@ + from dataclasses import dataclass, field + from datetime import UTC, datetime, timedelta + import logging ++import multiprocessing + import os + import select + import socket ++import sys + from threading import Thread + from unittest.mock import patch + +@@ -338,3 +340,6 @@ async def test_client_peer(peer_listener: PeerListener) -> AsyncGenerator[Client + yield Client(reader, writer) + + writer.close() ++ ++if sys.platform == "linux": ++ multiprocessing.set_start_method("fork", force=True) From f9a1423309d921f61e873aa338b1f1ce70030951 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 4 Mar 2026 16:25:43 +0100 Subject: [PATCH 09/53] python313Packages.securetar: 2025.2.1 -> 2026.2.0 --- pkgs/development/python-modules/securetar/default.nix | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/securetar/default.nix b/pkgs/development/python-modules/securetar/default.nix index 657b3855c416..5648a10ac554 100644 --- a/pkgs/development/python-modules/securetar/default.nix +++ b/pkgs/development/python-modules/securetar/default.nix @@ -3,25 +3,29 @@ buildPythonPackage, cryptography, fetchFromGitHub, + pynacl, pytestCheckHook, setuptools, }: buildPythonPackage rec { pname = "securetar"; - version = "2025.2.1"; + version = "2026.2.0"; pyproject = true; src = fetchFromGitHub { owner = "home-assistant-libs"; repo = "securetar"; tag = version; - hash = "sha256-uVzyVgS8bWxS7jhwVyv7wTNF8REW+dJIhkRaS/8/FmY="; + hash = "sha256-76JZN0Y9uW0+HUX+j1aCIz9qOjogZ0KXOXXK8rR8Z/4="; }; build-system = [ setuptools ]; - dependencies = [ cryptography ]; + dependencies = [ + cryptography + pynacl + ]; nativeCheckInputs = [ pytestCheckHook ]; From aa802eaa2d5f514176b055385f0bb335eaac0904 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 4 Mar 2026 11:09:30 -0800 Subject: [PATCH 10/53] python314Packages.pyuptimerobot: 23.1.0 -> 24.0.1 Diff: https://github.com/ludeeus/pyuptimerobot/compare/23.1.0...24.0.1 Changelog: https://github.com/ludeeus/pyuptimerobot/releases/tag/24.0.1 --- .../python-modules/pyuptimerobot/default.nix | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/pyuptimerobot/default.nix b/pkgs/development/python-modules/pyuptimerobot/default.nix index 7e3adb8cfc04..f3aba78079d3 100644 --- a/pkgs/development/python-modules/pyuptimerobot/default.nix +++ b/pkgs/development/python-modules/pyuptimerobot/default.nix @@ -4,29 +4,35 @@ aresponses, buildPythonPackage, fetchFromGitHub, + hatchling, pytestCheckHook, pytest-asyncio, + pythonOlder, }: buildPythonPackage rec { pname = "pyuptimerobot"; - version = "23.1.0"; - format = "setuptools"; + version = "24.0.1"; + pyproject = true; + + disabled = pythonOlder "3.14"; src = fetchFromGitHub { owner = "ludeeus"; repo = "pyuptimerobot"; tag = version; - hash = "sha256-hy/hmXxxEb44X8JUszoA1YF/41y7GkQqC4uS+Pax6WA="; + hash = "sha256-vlEXUwGCmscasdWyCxF1bFjA3weR74Zf3RCk5W5ljFg="; }; postPatch = '' # Upstream doesn't set version in the repo - substituteInPlace setup.py \ - --replace 'version="main",' 'version="${version}",' + substituteInPlace pyproject.toml \ + --replace-fail 'version = "0"' 'version = "${version}"' ''; - propagatedBuildInputs = [ aiohttp ]; + build-system = [ hatchling ]; + + dependencies = [ aiohttp ]; nativeCheckInputs = [ aresponses From 6f2f470d98ff0fd38a36b9bb952d77ec0a88b19e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 00:32:30 +0100 Subject: [PATCH 11/53] python314Packages.praw: fix tests --- pkgs/development/python-modules/praw/default.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/development/python-modules/praw/default.nix b/pkgs/development/python-modules/praw/default.nix index d425d832fab0..89a818e3c763 100644 --- a/pkgs/development/python-modules/praw/default.nix +++ b/pkgs/development/python-modules/praw/default.nix @@ -5,6 +5,7 @@ betamax, buildPythonPackage, fetchFromGitHub, + fetchpatch, flit-core, mock, prawcore, @@ -26,6 +27,15 @@ buildPythonPackage rec { hash = "sha256-jxF7rlMwKIKwyYv35vYWAdtClsVhnIkywoyMQeggGBc="; }; + patches = [ + # fix tests under python 3.14 + (fetchpatch { + url = "https://github.com/praw-dev/praw/commit/9edc0bfa62c1878c395d8bc225edfe87e4fc4cd4.patch"; + includes = [ "tests/unit/test_reddit.py" ]; + hash = "sha256-QozdHz8WPCsuBgFgx1j0NwFsPFBmq9KhKiW7B5/QmfE="; + }) + ]; + build-system = [ flit-core ]; dependencies = [ From 1a5507d7b30b7e58a672a48ac512ba6a271772b1 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Thu, 5 Mar 2026 00:42:30 +0100 Subject: [PATCH 12/53] python3Packages.pyserial-asyncio-fast: fix 3.14 compat --- .../pyserial-asyncio-fast/default.nix | 6 ++---- .../pyserial-asyncio-fast/python3.14-compat.patch | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 4 deletions(-) create mode 100644 pkgs/development/python-modules/pyserial-asyncio-fast/python3.14-compat.patch diff --git a/pkgs/development/python-modules/pyserial-asyncio-fast/default.nix b/pkgs/development/python-modules/pyserial-asyncio-fast/default.nix index f8a1c4c8c780..962cc7a478a8 100644 --- a/pkgs/development/python-modules/pyserial-asyncio-fast/default.nix +++ b/pkgs/development/python-modules/pyserial-asyncio-fast/default.nix @@ -2,7 +2,6 @@ lib, buildPythonPackage, fetchFromGitHub, - pythonAtLeast, # build-system setuptools, @@ -20,9 +19,6 @@ buildPythonPackage rec { version = "0.16"; pyproject = true; - # https://github.com/home-assistant-libs/pyserial-asyncio-fast/pull/37 - disabled = pythonAtLeast "3.14"; - src = fetchFromGitHub { owner = "bdraco"; repo = "pyserial-asyncio-fast"; @@ -30,6 +26,8 @@ buildPythonPackage rec { hash = "sha256-bEJySiVVy77vSF/M5f3WGxjeay/36vU8oBbmkpDCFrI="; }; + patches = [ ./python3.14-compat.patch ]; + build-system = [ setuptools ]; dependencies = [ pyserial ]; diff --git a/pkgs/development/python-modules/pyserial-asyncio-fast/python3.14-compat.patch b/pkgs/development/python-modules/pyserial-asyncio-fast/python3.14-compat.patch new file mode 100644 index 000000000000..d46469723e04 --- /dev/null +++ b/pkgs/development/python-modules/pyserial-asyncio-fast/python3.14-compat.patch @@ -0,0 +1,14 @@ +diff --git a/test/test_asyncio.py b/test/test_asyncio.py +index f14bc0b..f2034ef 100644 +--- a/test/test_asyncio.py ++++ b/test/test_asyncio.py +@@ -34,7 +34,8 @@ class Test_asyncio(unittest.TestCase): + """Test asyncio related functionality""" + + def setUp(self): +- self.loop = asyncio.get_event_loop() ++ self.loop = asyncio.new_event_loop() ++ asyncio.set_event_loop(self.loop) + # create a closed serial port + + def tearDown(self): From 70c484d621c6113371abfd896ad5c7005fa36a90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 01:04:14 +0100 Subject: [PATCH 13/53] python314Packages.aiohttp-sse: fix Python 3.14 compat --- pkgs/development/python-modules/aiohttp-sse/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/aiohttp-sse/default.nix b/pkgs/development/python-modules/aiohttp-sse/default.nix index 2db3993b8f7f..95985be62618 100644 --- a/pkgs/development/python-modules/aiohttp-sse/default.nix +++ b/pkgs/development/python-modules/aiohttp-sse/default.nix @@ -28,6 +28,11 @@ buildPythonPackage rec { url = "https://github.com/aio-libs/aiohttp-sse/commit/22c8041f5f737f76bdba2f2fded58abacf04c913.patch"; hash = "sha256-CZjXgDKbm3XmS0tn3MGZMnZ84ZLt4o6v9boAYXYa6A4="; }) + # Fix build with python 3.14 + (fetchpatch { + url = "https://github.com/aio-libs/aiohttp-sse/commit/9eec5f5b0355bb3853d0e4f2af6486c9a5887e38.patch"; + hash = "sha256-KDMhKxomfrHOOUHSkaZCr3+FUod+N2YRR+33VsrjtYM="; + }) ]; build-system = [ setuptools ]; From d856dc4ed3b3ad220694d1f44690779379aa2c80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 01:19:51 +0100 Subject: [PATCH 14/53] python314Packages.pycec: fix Python 3.14 compat, modernize --- .../python-modules/pycec/default.nix | 12 +++++-- .../pycec/python-3.14-compat.patch | 31 +++++++++++++++++++ 2 files changed, 41 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/python-modules/pycec/python-3.14-compat.patch diff --git a/pkgs/development/python-modules/pycec/default.nix b/pkgs/development/python-modules/pycec/default.nix index add007fee470..b1f67bd8bb98 100644 --- a/pkgs/development/python-modules/pycec/default.nix +++ b/pkgs/development/python-modules/pycec/default.nix @@ -4,12 +4,13 @@ fetchFromGitHub, libcec, pytestCheckHook, + setuptools, }: buildPythonPackage rec { pname = "pycec"; version = "0.6.0"; - format = "setuptools"; + pyproject = true; src = fetchFromGitHub { owner = "konikvranik"; @@ -18,7 +19,14 @@ buildPythonPackage rec { hash = "sha256-5KQyHjAvHWeHFqcFHFJxDOPwWuVcFAN2wVdz9a77dzU="; }; - propagatedBuildInputs = [ libcec ]; + patches = [ + # https://github.com/konikvranik/pyCEC/pull/84 + ./python-3.14-compat.patch + ]; + + build-system = [ setuptools ]; + + dependencies = [ libcec ]; nativeCheckInputs = [ pytestCheckHook ]; diff --git a/pkgs/development/python-modules/pycec/python-3.14-compat.patch b/pkgs/development/python-modules/pycec/python-3.14-compat.patch new file mode 100644 index 000000000000..1a2a4590a10c --- /dev/null +++ b/pkgs/development/python-modules/pycec/python-3.14-compat.patch @@ -0,0 +1,31 @@ +From 1384a554579747c0f91a859f1992aa7015db2dc7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= +Date: Thu, 5 Mar 2026 01:17:28 +0100 +Subject: [PATCH] Fix tests under Python 3.14 + +--- + tests/test_hdmi_network.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tests/test_hdmi_network.py b/tests/test_hdmi_network.py +index 972b9ec..48ba8bb 100644 +--- a/tests/test_hdmi_network.py ++++ b/tests/test_hdmi_network.py +@@ -12,7 +12,7 @@ + + + def test_devices(): +- loop = asyncio.get_event_loop() ++ loop = asyncio.new_event_loop() + network = HDMINetwork( + MockAdapter( + [ +@@ -56,7 +56,7 @@ def test_devices(): + + + def test_scan(): +- loop = asyncio.get_event_loop() ++ loop = asyncio.new_event_loop() + network = HDMINetwork( + MockAdapter( + [ From e59de77d77325bcbc6f4715e750ef47f054bb6bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 01:31:34 +0100 Subject: [PATCH 15/53] python314Packages.devolo-plc-api: fix Python 3.14 compat --- .../python-modules/devolo-plc-api/default.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pkgs/development/python-modules/devolo-plc-api/default.nix b/pkgs/development/python-modules/devolo-plc-api/default.nix index 792c285986d7..0df39e24a88e 100644 --- a/pkgs/development/python-modules/devolo-plc-api/default.nix +++ b/pkgs/development/python-modules/devolo-plc-api/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + fetchpatch, httpx, protobuf, pytest-asyncio_0, @@ -27,6 +28,18 @@ buildPythonPackage rec { hash = "sha256-bmZcjvqZwVJzDsdtSbQvJpry2QSSuB6/jOTWG1+jyV4="; }; + patches = [ + # Add Python 3.14 support + (fetchpatch { + url = "https://github.com/2Fake/devolo_plc_api/commit/3b1c167e2df5909910e97bf1626de88b17fb94d1.patch"; + hash = "sha256-oaLYMvRl2Zcum9XkFQ1Dm1/F/BhURLGKrwh6FguVL9Y="; + }) + (fetchpatch { + url = "https://github.com/2Fake/devolo_plc_api/pull/224.patch"; + hash = "sha256-fDGYhjA/tMFKQnEtix1no8Wf+cp9Ph7keXRq1+sH6YA="; + }) + ]; + postPatch = '' substituteInPlace pyproject.toml \ --replace-fail "protobuf>=4.22.0" "protobuf" From 62d841e8b954b51aa3ae8779af853380e648827b Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 18 Feb 2026 07:37:35 +0000 Subject: [PATCH 16/53] python3Packages.pysmarlaapi: 0.13.0 -> 1.0.1 (cherry picked from commit 85bd5b968c87465e69c07d453765fe93cefecb75) --- pkgs/development/python-modules/pysmarlaapi/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pysmarlaapi/default.nix b/pkgs/development/python-modules/pysmarlaapi/default.nix index cf871d82db2f..72ba440eebe1 100644 --- a/pkgs/development/python-modules/pysmarlaapi/default.nix +++ b/pkgs/development/python-modules/pysmarlaapi/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "pysmarlaapi"; - version = "0.13.0"; + version = "1.0.1"; pyproject = true; src = fetchFromGitHub { owner = "Explicatis-GmbH"; repo = "pysmarlaapi"; tag = version; - hash = "sha256-paOBRcTpVMLHB3HCP8JolvebC+xD19x1wieFjZCw4Ko="; + hash = "sha256-mDcBIRs2tJ5BWNQY/G4qN/nBrnKqz9PsW+teNYut9Pc="; }; build-system = [ flit-core ]; From b35e7ea1b67f0931a0debe056996f3fecf5a9827 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 01:45:02 +0100 Subject: [PATCH 17/53] python3Packages.pysyncthru: switch to pytest, minor cleanup --- pkgs/development/python-modules/pysyncthru/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/pysyncthru/default.nix b/pkgs/development/python-modules/pysyncthru/default.nix index 40d1bca3432f..7acb95428ba0 100644 --- a/pkgs/development/python-modules/pysyncthru/default.nix +++ b/pkgs/development/python-modules/pysyncthru/default.nix @@ -5,7 +5,7 @@ setuptools, aiohttp, demjson3, - unittestCheckHook, + pytestCheckHook, }: buildPythonPackage rec { @@ -21,14 +21,14 @@ buildPythonPackage rec { hash = "sha256-IJfj65p80Q4LwWkGV0A0QPtK2+FPkNVz9/WaNGzgTy8="; }; - nativeBuildInputs = [ setuptools ]; + build-system = [ setuptools ]; - propagatedBuildInputs = [ + dependencies = [ aiohttp demjson3 ]; - nativeCheckInputs = [ unittestCheckHook ]; + nativeCheckInputs = [ pytestCheckHook ]; pythonImportsCheck = [ "pysyncthru" ]; From 860c79ba18663ea1726c32219004eb3ec85b28ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 01:50:55 +0100 Subject: [PATCH 18/53] python314Packages.pythonkuma: 0.3.2 -> 0.5.0 Diff: https://github.com/tr4nt0r/pythonkuma/compare/v0.3.2...v0.5.0 Changelog: https://github.com/tr4nt0r/pythonkuma/releases/tag/v0.5.0 --- pkgs/development/python-modules/pythonkuma/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pythonkuma/default.nix b/pkgs/development/python-modules/pythonkuma/default.nix index 2a84e831e9e7..6b35ab6b684f 100644 --- a/pkgs/development/python-modules/pythonkuma/default.nix +++ b/pkgs/development/python-modules/pythonkuma/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "pythonkuma"; - version = "0.3.2"; + version = "0.5.0"; pyproject = true; disabled = pythonOlder "3.12"; @@ -21,7 +21,7 @@ buildPythonPackage rec { owner = "tr4nt0r"; repo = "pythonkuma"; tag = "v${version}"; - hash = "sha256-0/5nN2ddN1UrJdRq8zXiKzELUT6DXWeXx/6X4uusYDI="; + hash = "sha256-7c2TYGRlHn9stAd5Xe1aZP08WyKTtKKfKPGT7OoNmSQ="; }; build-system = [ From 47f535334adb8adccb4805ce62ab3659512fa734 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Sun, 22 Feb 2026 16:40:12 +0100 Subject: [PATCH 19/53] python313Packages.pyvlx: 0.2.28 -> 0.2.30 Changelog: https://github.com/Julius2342/pyvlx/releases/tag/0.2.30 (cherry picked from commit 96b2d39f1f92a0e0a0100e9732e978efb3df34fb) --- pkgs/development/python-modules/pyvlx/default.nix | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/pyvlx/default.nix b/pkgs/development/python-modules/pyvlx/default.nix index 5ab2052c9b97..4398d8d6ab16 100644 --- a/pkgs/development/python-modules/pyvlx/default.nix +++ b/pkgs/development/python-modules/pyvlx/default.nix @@ -5,23 +5,32 @@ pytestCheckHook, pyyaml, setuptools, + setuptools-scm, typing-extensions, zeroconf, }: buildPythonPackage (finalAttrs: { pname = "pyvlx"; - version = "0.2.28"; + version = "0.2.30"; pyproject = true; src = fetchFromGitHub { owner = "Julius2342"; repo = "pyvlx"; tag = finalAttrs.version; - hash = "sha256-l+Yfp8s6x+l/1ssL0wgyzd8QbA4ikr+ZUVMdTEaIjYE="; + hash = "sha256-owrWYBAb/5JAangGwt56gdjJf99C3i04IiKAh1P/MYY="; }; - build-system = [ setuptools ]; + postPatch = '' + substituteInPlace pyproject.toml \ + --replace-fail "setuptools-scm>=8.0" "setuptools-scm" + ''; + + build-system = [ + setuptools + setuptools-scm + ]; dependencies = [ pyyaml From e5fb9c44ac45212b419c7bcaf17f4a84c71c3bc7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 01:58:44 +0100 Subject: [PATCH 20/53] python314Packages.python-picnic-api2: 1.3.2 -> 1.3.4 Diff: https://github.com/codesalatdev/python-picnic-api/compare/v1.3.2...v1.3.4 Changelog: https://github.com/codesalatdev/python-picnic-api/releases/tag/v1.3.4 --- .../python-modules/python-picnic-api2/default.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/python-picnic-api2/default.nix b/pkgs/development/python-modules/python-picnic-api2/default.nix index 83bd486ef516..c2466eaddc56 100644 --- a/pkgs/development/python-modules/python-picnic-api2/default.nix +++ b/pkgs/development/python-modules/python-picnic-api2/default.nix @@ -4,23 +4,28 @@ hatchling, lib, pytestCheckHook, - python-dotenv, + pythonAtLeast, requests, typing-extensions, }: buildPythonPackage rec { pname = "python-picnic-api2"; - version = "1.3.2"; + version = "1.3.4"; pyproject = true; src = fetchFromGitHub { owner = "codesalatdev"; repo = "python-picnic-api"; tag = "v${version}"; - hash = "sha256-GFxs2ZjyGADMG8YWtpy+sAZClLOYt70KtEp5MCgY+7I="; + hash = "sha256-ytzzGr/z0jrsudtCBrcvGITo4DxxC8JCmSmQ8ybeomM="; }; + postPatch = lib.optionalString (pythonAtLeast "3.14") '' + substituteInPlace tests/test_session.py \ + --replace-fail '"Accept-Encoding": "gzip, deflate",' '"Accept-Encoding": "gzip, deflate, zstd",' + ''; + build-system = [ hatchling ]; dependencies = [ From 604584066715766734940160bb3ad5334e5b7324 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 02:06:32 +0100 Subject: [PATCH 21/53] python314Packages.zigpy: 0.92.0 -> 1.1.0 Diff: https://github.com/zigpy/zigpy/compare/0.92.0...1.1.0 Changelog: https://github.com/zigpy/zigpy/releases/tag/1.1.0 --- pkgs/development/python-modules/zigpy/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/zigpy/default.nix b/pkgs/development/python-modules/zigpy/default.nix index 7c69f2fee5f7..0c21c9ee94a2 100644 --- a/pkgs/development/python-modules/zigpy/default.nix +++ b/pkgs/development/python-modules/zigpy/default.nix @@ -24,14 +24,14 @@ buildPythonPackage rec { pname = "zigpy"; - version = "0.92.0"; + version = "1.1.0"; pyproject = true; src = fetchFromGitHub { owner = "zigpy"; repo = "zigpy"; tag = version; - hash = "sha256-6rbjv91mkTSEAKndDy/2a8bGpzw/5g57FEZvZdt9ARI="; + hash = "sha256-N0zGN8Ci6lEqZNuHUtKfB9fIkW3H8+LiAiXlKgtrx2I="; }; postPatch = '' From 4dd436226a247d5884246403472cfd54afc99dd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 02:06:47 +0100 Subject: [PATCH 22/53] python314Packages.zha-quirks: 0.0.157 -> 1.0.1 Diff: https://github.com/zigpy/zha-device-handlers/compare/0.0.157...1.0.1 Changelog: https://github.com/zigpy/zha-device-handlers/releases/tag/1.0.1 --- pkgs/development/python-modules/zha-quirks/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/zha-quirks/default.nix b/pkgs/development/python-modules/zha-quirks/default.nix index c2c5f264a398..d245815d0b93 100644 --- a/pkgs/development/python-modules/zha-quirks/default.nix +++ b/pkgs/development/python-modules/zha-quirks/default.nix @@ -13,7 +13,7 @@ buildPythonPackage rec { pname = "zha-quirks"; - version = "0.0.157"; + version = "1.0.1"; pyproject = true; disabled = pythonOlder "3.12"; @@ -22,7 +22,7 @@ buildPythonPackage rec { owner = "zigpy"; repo = "zha-device-handlers"; tag = version; - hash = "sha256-3rUYF4FSEeccvoTDdOVIX3G9QwwB8D4TSnUHL2vP6/A="; + hash = "sha256-u57Bv3oK0yAQLijlEG18brCfJXZghaA9OhbcGJ+GtCk="; }; postPatch = '' From 4d6f68f0131b86d39cfac00c4b3ae6458338c460 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 02:05:33 +0100 Subject: [PATCH 23/53] python314Packages.zha: 0.0.90 -> 1.0.1 Diff: https://github.com/zigpy/zha/compare/0.0.90...1.0.1 Changelog: https://github.com/zigpy/zha/releases/tag/1.0.1 --- pkgs/development/python-modules/zha/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/zha/default.nix b/pkgs/development/python-modules/zha/default.nix index 609b11b0f598..b0a4dc5c1102 100644 --- a/pkgs/development/python-modules/zha/default.nix +++ b/pkgs/development/python-modules/zha/default.nix @@ -23,7 +23,7 @@ buildPythonPackage rec { pname = "zha"; - version = "0.0.90"; + version = "1.0.1"; pyproject = true; disabled = pythonOlder "3.12"; @@ -32,7 +32,7 @@ buildPythonPackage rec { owner = "zigpy"; repo = "zha"; tag = version; - hash = "sha256-w5pWVkFDxnVzH5BX7VpfjStv1BabGTWE0aFysReWNqA="; + hash = "sha256-vYa8IPlk4C6pwxRYM69LMo5Nm23XBvMDWIuJZ01sWWQ="; }; postPatch = '' From 822e66f4d13586a11069b42db957e1d6e2a97526 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 02:20:12 +0100 Subject: [PATCH 24/53] python314Packages.bx-py-utils: disable failing tests --- pkgs/development/python-modules/bx-py-utils/default.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/bx-py-utils/default.nix b/pkgs/development/python-modules/bx-py-utils/default.nix index 9eb7bd90ac64..9e4e626fa337 100644 --- a/pkgs/development/python-modules/bx-py-utils/default.nix +++ b/pkgs/development/python-modules/bx-py-utils/default.nix @@ -76,15 +76,18 @@ buildPythonPackage rec { "test_happy_path" # cli_base module not found "test_doctests" + # leaks unix timestamp of 1980 into test fixtures + "test_xlsx2dict_complex" + "test_xlsx2dict_simple" ]; disabledTestPaths = [ # depends on cli-base-utilities, which depends on bx-py-utils "bx_py_utils_tests/tests/test_project_setup.py" - ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ # processify() doesn't work under darwin # https://github.com/boxine/bx_py_utils/issues/80 + # Also not working under Linux anymore + # _pickle.PicklingError: Can't pickle local object .process_func at 0x7ffff36deda0> "bx_py_utils_tests/tests/test_processify.py" ]; From 2ec864a0012dad20ab4fbf14f29a680ca189e4b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 02:20:30 +0100 Subject: [PATCH 25/53] python314Packages.universal-silabs-flasher: disable timing sensitive test --- .../python-modules/universal-silabs-flasher/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/development/python-modules/universal-silabs-flasher/default.nix b/pkgs/development/python-modules/universal-silabs-flasher/default.nix index 27c60f8db34e..c415b0d11680 100644 --- a/pkgs/development/python-modules/universal-silabs-flasher/default.nix +++ b/pkgs/development/python-modules/universal-silabs-flasher/default.nix @@ -62,6 +62,11 @@ buildPythonPackage rec { pytest-timeout ]; + disabledTests = [ + # timing sensitive + "test_xmodem_happy_path" + ]; + pythonImportsCheck = [ "universal_silabs_flasher" ]; meta = { From bd064401b4db2d4ea7d7ee919786a25a81fec47e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 02:24:04 +0100 Subject: [PATCH 26/53] python3Packages.python-bsblan: 4.1.0 -> 5.1.2 Diff: https://github.com/liudger/python-bsblan/compare/v4.1.0...v5.1.2 Changelog: https://github.com/liudger/python-bsblan/releases/tag/v5.1.2 --- .../python-modules/python-bsblan/default.nix | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/python-bsblan/default.nix b/pkgs/development/python-modules/python-bsblan/default.nix index 0d4959a97016..b0bc692a021c 100644 --- a/pkgs/development/python-modules/python-bsblan/default.nix +++ b/pkgs/development/python-modules/python-bsblan/default.nix @@ -6,9 +6,8 @@ buildPythonPackage, fetchFromGitHub, hatchling, - mashumaro, - orjson, packaging, + pydantic, pytest-asyncio, pytest-cov-stub, pytest-mock, @@ -20,14 +19,14 @@ buildPythonPackage (finalAttrs: { pname = "python-bsblan"; - version = "4.1.0"; + version = "5.1.2"; pyproject = true; src = fetchFromGitHub { owner = "liudger"; repo = "python-bsblan"; tag = "v${finalAttrs.version}"; - hash = "sha256-t60WMq1kbCIkcQSfr03K9Z6ro3zFGaDxCnl/84by+Qw="; + hash = "sha256-P7c+5x5wQaWfNeeYKkylhV2AQESp40duSQfwsTDVW6M="; }; postPatch = '' @@ -42,9 +41,8 @@ buildPythonPackage (finalAttrs: { dependencies = [ aiohttp backoff - mashumaro - orjson packaging + pydantic yarl ]; From d40682e7d764e5cc17322e985880f6e42bdb835f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 02:26:54 +0100 Subject: [PATCH 27/53] python313Packages.bimmer-connected: mark broken --- pkgs/development/python-modules/bimmer-connected/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/python-modules/bimmer-connected/default.nix b/pkgs/development/python-modules/bimmer-connected/default.nix index f734e52af2ac..7ef9df343f09 100644 --- a/pkgs/development/python-modules/bimmer-connected/default.nix +++ b/pkgs/development/python-modules/bimmer-connected/default.nix @@ -76,5 +76,7 @@ buildPythonPackage rec { homepage = "https://github.com/bimmerconnected/bimmer_connected"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ dotlambda ]; + # https://github.com/bimmerconnected/bimmer_connected#library-not-working-anymore-due-to-changes-at-bmw-side + broken = true; }; } From 4e510bc4d6676dd35c5a1b29dbe9cb9f611fe65d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 03:11:04 +0100 Subject: [PATCH 28/53] python314Packages.aiopvapi: fix Python 3.14 compat --- .../python-modules/aiopvapi/default.nix | 10 +- .../python-modules/aiopvapi/fix-tests.patch | 114 ++++++++++++++++++ 2 files changed, 119 insertions(+), 5 deletions(-) create mode 100644 pkgs/development/python-modules/aiopvapi/fix-tests.patch diff --git a/pkgs/development/python-modules/aiopvapi/default.nix b/pkgs/development/python-modules/aiopvapi/default.nix index 675da1226bac..7f7feec0ab49 100644 --- a/pkgs/development/python-modules/aiopvapi/default.nix +++ b/pkgs/development/python-modules/aiopvapi/default.nix @@ -19,6 +19,11 @@ buildPythonPackage rec { hash = "sha256-yystaH2HRsJoYh2aTpOBA7DLiC2xwpBUccHwmJ0FlaY="; }; + patches = [ + # https://github.com/sander76/aio-powerview-api/pull/46 + ./fix-tests.patch + ]; + build-system = [ setuptools ]; dependencies = [ aiohttp ]; @@ -27,11 +32,6 @@ buildPythonPackage rec { pythonImportsCheck = [ "aiopvapi" ]; - disabledTests = [ - # AssertionError - "test_remove_shade_from_scene" - ]; - meta = { description = "Python API for the PowerView API"; homepage = "https://github.com/sander76/aio-powerview-api"; diff --git a/pkgs/development/python-modules/aiopvapi/fix-tests.patch b/pkgs/development/python-modules/aiopvapi/fix-tests.patch new file mode 100644 index 000000000000..ceadf8d60244 --- /dev/null +++ b/pkgs/development/python-modules/aiopvapi/fix-tests.patch @@ -0,0 +1,114 @@ +From 13b4b685de1ad6c4cb518d751150c573e4edeff7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= +Date: Thu, 5 Mar 2026 03:07:15 +0100 +Subject: [PATCH 1/2] Fix test fixture + +Closes #39 +--- + tests/test_scene_members.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/tests/test_scene_members.py b/tests/test_scene_members.py +index e137396..18452fb 100644 +--- a/tests/test_scene_members.py ++++ b/tests/test_scene_members.py +@@ -39,4 +39,5 @@ async def go(): + _del_mock.mock.assert_called_once_with( + 'http://{}/api/scenemembers'.format(self.fake_ip), + params={"sceneId": 5678, +- 'shadeId': 1234}) ++ 'shadeId': 1234}, ++ timeout=15) + +From 51f813eca4566cf08ab36d60ce693cade92cea28 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= +Date: Thu, 5 Mar 2026 03:07:28 +0100 +Subject: [PATCH 2/2] Fix Python 3.14 compatibility + +--- + aiopvapi/helpers/aiorequest.py | 4 ++-- + tests/fake_server.py | 4 ++-- + tests/test_room.py | 2 +- + tests/test_scene.py | 2 +- + tests/test_scene_members.py | 2 +- + 5 files changed, 7 insertions(+), 7 deletions(-) + +diff --git a/aiopvapi/helpers/aiorequest.py b/aiopvapi/helpers/aiorequest.py +index 9fcb7df..b2b7b3a 100644 +--- a/aiopvapi/helpers/aiorequest.py ++++ b/aiopvapi/helpers/aiorequest.py +@@ -45,11 +45,11 @@ def __init__( + if loop: + self.loop = loop + else: +- self.loop = asyncio.get_event_loop() ++ self.loop = asyncio.new_event_loop() + if websession: + self.websession = websession + else: +- self.websession = aiohttp.ClientSession() ++ self.websession = aiohttp.ClientSession(loop=self.loop) + self.api_version: int | None = api_version + self._last_request_status: int = 0 + _LOGGER.debug("Powerview api version: %s", self.api_version) +diff --git a/tests/fake_server.py b/tests/fake_server.py +index f9d3803..e8e5b9e 100644 +--- a/tests/fake_server.py ++++ b/tests/fake_server.py +@@ -355,7 +355,7 @@ async def main(loop, api_version=2): + + + if __name__ == "__main__": +- loop = asyncio.get_event_loop() ++ loop = asyncio.new_event_loop() + loop.run_until_complete(main(loop)) + + +@@ -365,7 +365,7 @@ def __init__(self, methodName: str = "runTest") -> None: + self.api_version = 2 + + def setUp(self): +- self.loop = asyncio.get_event_loop() ++ self.loop = asyncio.new_event_loop() + self.server = FakePowerViewHub(loop=self.loop, api_version=self.api_version) + self.request = None + +diff --git a/tests/test_room.py b/tests/test_room.py +index 58b0bc9..2ffd51b 100644 +--- a/tests/test_room.py ++++ b/tests/test_room.py +@@ -62,7 +62,7 @@ async def go(): + await self.start_fake_server() + # room = self.get_resource() + +- loop = asyncio.get_event_loop() ++ loop = asyncio.new_event_loop() + request = AioRequest(FAKE_BASE_URL, loop, api_version=2) + + response = Mock(spec=ClientResponse) +diff --git a/tests/test_scene.py b/tests/test_scene.py +index e7f2212..904f605 100644 +--- a/tests/test_scene.py ++++ b/tests/test_scene.py +@@ -68,7 +68,7 @@ async def go(): + await self.start_fake_server() + # scene = self.get_resource() + +- loop = asyncio.get_event_loop() ++ loop = asyncio.new_event_loop() + request = AioRequest(FAKE_BASE_URL, loop, api_version=2) + + response = Mock(spec=ClientResponse) +diff --git a/tests/test_scene_members.py b/tests/test_scene_members.py +index 18452fb..10ca437 100644 +--- a/tests/test_scene_members.py ++++ b/tests/test_scene_members.py +@@ -24,7 +24,7 @@ def setUp(self): + @mock.patch('aiopvapi.helpers.aiorequest.AioRequest.check_response', new=AsyncMock()) + def test_remove_shade_from_scene(self): + """Tests create new scene.""" +- loop = asyncio.get_event_loop() ++ loop = asyncio.new_event_loop() + request = AioRequest(self.fake_ip, loop) + + _del_mock = AsyncMock(return_value=None) From 459640755a93132899584a87ff947871b80d74f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 03:21:39 +0100 Subject: [PATCH 29/53] python314Packages.pymonoprice: fix Python 3.14 compat --- .../python-modules/pymonoprice/default.nix | 5 +++++ .../pymonoprice/python-3.14-compat.patch | 22 +++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/development/python-modules/pymonoprice/python-3.14-compat.patch diff --git a/pkgs/development/python-modules/pymonoprice/default.nix b/pkgs/development/python-modules/pymonoprice/default.nix index d1e878ab473e..805fdf7441ed 100644 --- a/pkgs/development/python-modules/pymonoprice/default.nix +++ b/pkgs/development/python-modules/pymonoprice/default.nix @@ -20,6 +20,11 @@ buildPythonPackage rec { hash = "sha256-kyFOWG/Jvn+h9ludzd2Zul9/lkwPxReH76nnDIGD+fM="; }; + patches = [ + # https://github.com/etsinko/pymonoprice/pull/14 + ./python-3.14-compat.patch + ]; + build-system = [ setuptools ]; dependencies = [ diff --git a/pkgs/development/python-modules/pymonoprice/python-3.14-compat.patch b/pkgs/development/python-modules/pymonoprice/python-3.14-compat.patch new file mode 100644 index 000000000000..ffae01884836 --- /dev/null +++ b/pkgs/development/python-modules/pymonoprice/python-3.14-compat.patch @@ -0,0 +1,22 @@ +From 834cb4f51555f3e027ad0632970e0fdd8ec38a85 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= +Date: Thu, 5 Mar 2026 03:19:19 +0100 +Subject: [PATCH] Fix Python 3.14 compatibility + +--- + tests/test_monoprice.py | 2 +- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/tests/test_monoprice.py b/tests/test_monoprice.py +index 60def3b..3039895 100644 +--- a/tests/test_monoprice.py ++++ b/tests/test_monoprice.py +@@ -332,7 +332,7 @@ class TestAsyncMonoprice(TestMonoprice): + + def setUp(self): + self.responses = {} +- loop = asyncio.get_event_loop() ++ loop = asyncio.new_event_loop() + monoprice = loop.run_until_complete(get_async_monoprice(create_dummy_port(self.responses))) + + # Dummy monoprice that converts async to sync From e35e6b443cead109b9dc850f6b57c7cf15ec2e59 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 25 Feb 2026 10:45:03 +0100 Subject: [PATCH 30/53] python3Packages.imgw-pib: 2.0.1 -> 2.0.2 Diff: https://github.com/bieniu/imgw-pib/compare/2.0.1...2.0.2 Changelog: https://github.com/bieniu/imgw-pib/releases/tag/2.0.2 --- pkgs/development/python-modules/imgw-pib/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/imgw-pib/default.nix b/pkgs/development/python-modules/imgw-pib/default.nix index c0c5de103464..8cad0097e516 100644 --- a/pkgs/development/python-modules/imgw-pib/default.nix +++ b/pkgs/development/python-modules/imgw-pib/default.nix @@ -15,14 +15,14 @@ buildPythonPackage rec { pname = "imgw-pib"; - version = "2.0.1"; + version = "2.0.2"; pyproject = true; src = fetchFromGitHub { owner = "bieniu"; repo = "imgw-pib"; tag = version; - hash = "sha256-scpMdJJMwoKcNdjM9YQsgxkhYOtjjnQjJOS2JhELxvA="; + hash = "sha256-CXBeKckm73nDuncLbJywgV7SUckISqmESNHPis0n700="; }; build-system = [ setuptools ]; From a2f2aa704eaa2d5757430461723997597747c5de Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 25 Feb 2026 10:48:09 +0100 Subject: [PATCH 31/53] python3Packages.imgw-pib: migrate to finalAttrs --- pkgs/development/python-modules/imgw-pib/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/imgw-pib/default.nix b/pkgs/development/python-modules/imgw-pib/default.nix index 8cad0097e516..bdd03727b824 100644 --- a/pkgs/development/python-modules/imgw-pib/default.nix +++ b/pkgs/development/python-modules/imgw-pib/default.nix @@ -13,7 +13,7 @@ syrupy, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "imgw-pib"; version = "2.0.2"; pyproject = true; @@ -21,7 +21,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "bieniu"; repo = "imgw-pib"; - tag = version; + tag = finalAttrs.version; hash = "sha256-CXBeKckm73nDuncLbJywgV7SUckISqmESNHPis0n700="; }; @@ -44,10 +44,10 @@ buildPythonPackage rec { ]; meta = { - changelog = "https://github.com/bieniu/imgw-pib/releases/tag/${src.tag}"; + changelog = "https://github.com/bieniu/imgw-pib/releases/tag/${finalAttrs.src.tag}"; description = "Python async wrapper for IMGW-PIB API"; homepage = "https://github.com/bieniu/imgw-pib"; license = lib.licenses.asl20; maintainers = with lib.maintainers; [ dotlambda ]; }; -} +}) From 9a301f974a256d65548812271d37d9eff92256f1 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 24 Feb 2026 09:24:59 +0000 Subject: [PATCH 32/53] python3Packages.mozart-api: 5.3.1.108.1 -> 5.3.1.108.2 --- pkgs/development/python-modules/mozart-api/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/mozart-api/default.nix b/pkgs/development/python-modules/mozart-api/default.nix index 7c6c36702e9a..495bbab10507 100644 --- a/pkgs/development/python-modules/mozart-api/default.nix +++ b/pkgs/development/python-modules/mozart-api/default.nix @@ -18,13 +18,13 @@ buildPythonPackage rec { pname = "mozart-api"; - version = "5.3.1.108.1"; + version = "5.3.1.108.2"; pyproject = true; src = fetchPypi { pname = "mozart_api"; inherit version; - hash = "sha256-e4tlcwYC1AQA29uPg+UgFcy2ahIZuIaNlhicJiemVgo="; + hash = "sha256-ilUSGgc4m6iMBUuSI7qt7c4DAE8cOPTzLGeQ4JQAB8U="; }; build-system = [ poetry-core ]; From b26d683f154930d403aef8943bb6b7e7569283c0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 26 Feb 2026 22:20:24 +0000 Subject: [PATCH 33/53] python3Packages.pyrainbird: 6.0.5 -> 6.1.0 --- pkgs/development/python-modules/pyrainbird/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyrainbird/default.nix b/pkgs/development/python-modules/pyrainbird/default.nix index 6deea62a1b01..7a5114877817 100644 --- a/pkgs/development/python-modules/pyrainbird/default.nix +++ b/pkgs/development/python-modules/pyrainbird/default.nix @@ -24,14 +24,14 @@ buildPythonPackage rec { pname = "pyrainbird"; - version = "6.0.5"; + version = "6.1.0"; pyproject = true; src = fetchFromGitHub { owner = "allenporter"; repo = "pyrainbird"; tag = version; - hash = "sha256-8zEbj6n16ZBLPLMNFQxOXObz4GisKQMEh03sdSNtDHs="; + hash = "sha256-s4AZXhub1VM4zHvUnhBjmZREE0O3FcK27PPHLzCE2mU="; }; build-system = [ setuptools ]; From 53f8c55005b0c21c8d2171e0c370f857d441cde5 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Mon, 23 Feb 2026 19:51:09 +0000 Subject: [PATCH 34/53] python3Packages.python-overseerr: 0.8.0 -> 0.9.0 --- pkgs/development/python-modules/python-overseerr/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/python-overseerr/default.nix b/pkgs/development/python-modules/python-overseerr/default.nix index 40d22e5f2b83..040416961f67 100644 --- a/pkgs/development/python-modules/python-overseerr/default.nix +++ b/pkgs/development/python-modules/python-overseerr/default.nix @@ -16,14 +16,14 @@ buildPythonPackage rec { pname = "python-overseerr"; - version = "0.8.0"; + version = "0.9.0"; pyproject = true; src = fetchFromGitHub { owner = "joostlek"; repo = "python-overseerr"; tag = "v${version}"; - hash = "sha256-izgUTgRG63FUjb8mH1W4yXFRvwPWIWPKsSiY9awq9SM="; + hash = "sha256-9sJWglF1EqwXG0Cj1hOtNE2dYTmxIZoVWHYT5I4RQu0="; }; build-system = [ poetry-core ]; From 9811124c96b851e7f16c7adc3a9a2f931ff9db6b Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 11 Feb 2026 00:07:52 +0100 Subject: [PATCH 35/53] python313Packages.aranet4: 2.5.1 -> 2.6.0 Changelog: https://github.com/Anrijs/Aranet4-Python/releases/tag/v2.6.0 --- .../python-modules/aranet4/default.nix | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/pkgs/development/python-modules/aranet4/default.nix b/pkgs/development/python-modules/aranet4/default.nix index 4977c5269e2e..87c862c8fa76 100644 --- a/pkgs/development/python-modules/aranet4/default.nix +++ b/pkgs/development/python-modules/aranet4/default.nix @@ -3,7 +3,6 @@ bleak, buildPythonPackage, fetchFromGitHub, - fetchpatch, pytestCheckHook, requests, setuptools, @@ -11,25 +10,16 @@ buildPythonPackage rec { pname = "aranet4"; - version = "2.5.1"; + version = "2.6.0"; pyproject = true; src = fetchFromGitHub { owner = "Anrijs"; repo = "Aranet4-Python"; tag = "v${version}"; - hash = "sha256-/FBrP4aceIX9dcZmm+k13PSAPuK4SQenjWqOAFPSvL8="; + hash = "sha256-9dVa2RCsA+cs0fA8rLaOnikedEDz6fSfQ1tfAV0A7Eo="; }; - patches = [ - # https://github.com/Anrijs/Aranet4-Python/pull/62 - (fetchpatch { - name = "fix-for-failing-test-with-bleak-1.1.0.patch"; - url = "https://github.com/Anrijs/Aranet4-Python/pull/62/commits/0117633682050c77cd00ead1bce93375367d7a3c.patch"; - hash = "sha256-S4Di6bKbapCpDdOIy4sSiG9dO7OZq5ixjjK+ux4EEp0="; - }) - ]; - build-system = [ setuptools ]; dependencies = [ @@ -49,7 +39,8 @@ buildPythonPackage rec { meta = { description = "Module to interact with Aranet4 devices"; homepage = "https://github.com/Anrijs/Aranet4-Python"; - license = with lib.licenses; [ mit ]; + changelog = "https://github.com/Anrijs/Aranet4-Python/releases/tag/v${version}"; + license = lib.licenses.mit; maintainers = with lib.maintainers; [ fab ]; mainProgram = "aranetctl"; }; From 408d6ab2056428095099f0032d3c9ebbad8b4aa5 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 11 Feb 2026 00:16:53 +0100 Subject: [PATCH 36/53] python313Packages.aranet4: migrate to finalAttrs --- pkgs/development/python-modules/aranet4/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/aranet4/default.nix b/pkgs/development/python-modules/aranet4/default.nix index 87c862c8fa76..82889cf4bef9 100644 --- a/pkgs/development/python-modules/aranet4/default.nix +++ b/pkgs/development/python-modules/aranet4/default.nix @@ -8,7 +8,7 @@ setuptools, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "aranet4"; version = "2.6.0"; pyproject = true; @@ -16,7 +16,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "Anrijs"; repo = "Aranet4-Python"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-9dVa2RCsA+cs0fA8rLaOnikedEDz6fSfQ1tfAV0A7Eo="; }; @@ -39,9 +39,9 @@ buildPythonPackage rec { meta = { description = "Module to interact with Aranet4 devices"; homepage = "https://github.com/Anrijs/Aranet4-Python"; - changelog = "https://github.com/Anrijs/Aranet4-Python/releases/tag/v${version}"; + changelog = "https://github.com/Anrijs/Aranet4-Python/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ fab ]; mainProgram = "aranetctl"; }; -} +}) From 786ecb6f4eed67127645ba62757db74024e73135 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 15 Feb 2026 17:40:37 +0000 Subject: [PATCH 37/53] python3Packages.aiomealie: 1.2.0 -> 1.2.1 --- pkgs/development/python-modules/aiomealie/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aiomealie/default.nix b/pkgs/development/python-modules/aiomealie/default.nix index b892f151da65..77cd080a7e08 100644 --- a/pkgs/development/python-modules/aiomealie/default.nix +++ b/pkgs/development/python-modules/aiomealie/default.nix @@ -17,14 +17,14 @@ buildPythonPackage (finalAttrs: { pname = "aiomealie"; - version = "1.2.0"; + version = "1.2.1"; pyproject = true; src = fetchFromGitHub { owner = "joostlek"; repo = "python-mealie"; tag = "v${finalAttrs.version}"; - hash = "sha256-Q+8EZHZqbv5IEqhwCKhRPgr1Cfs/zVhLiwFgCZnNcW4="; + hash = "sha256-TwzE5GAP4DNxj3DZdu83eSobcYYbrOn9tPb+8904a/8="; }; build-system = [ poetry-core ]; From d1868ef083294a7a4d67833a8c4cc2a6c1d684e0 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sun, 22 Feb 2026 05:54:51 +0000 Subject: [PATCH 38/53] python3Packages.pyvicare: 2.56.0 -> 2.58.0 --- pkgs/development/python-modules/pyvicare/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pyvicare/default.nix b/pkgs/development/python-modules/pyvicare/default.nix index 1072a8f0ae76..c155dd90a3f5 100644 --- a/pkgs/development/python-modules/pyvicare/default.nix +++ b/pkgs/development/python-modules/pyvicare/default.nix @@ -12,14 +12,14 @@ buildPythonPackage (finalAttrs: { pname = "pyvicare"; - version = "2.56.0"; + version = "2.58.0"; pyproject = true; src = fetchFromGitHub { owner = "openviess"; repo = "PyViCare"; tag = finalAttrs.version; - hash = "sha256-DRCetTR7sFaShau3in0548FoR+rOaG28SGqfAjAVsn4="; + hash = "sha256-+uXn8bFV8tf1j7McdZ4js3SYsi2C2RUdDdooW5bkCLM="; }; postPatch = '' From 18d2b38946c3f2e42b609d3d24f657b36ba9fbbd Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 19 Feb 2026 03:36:46 +0000 Subject: [PATCH 39/53] python3Packages.librehardwaremonitor-api: 1.9.1 -> 1.10.1 --- .../python-modules/librehardwaremonitor-api/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/librehardwaremonitor-api/default.nix b/pkgs/development/python-modules/librehardwaremonitor-api/default.nix index 5be177d34845..fa46516f19e6 100644 --- a/pkgs/development/python-modules/librehardwaremonitor-api/default.nix +++ b/pkgs/development/python-modules/librehardwaremonitor-api/default.nix @@ -9,14 +9,14 @@ buildPythonPackage rec { pname = "librehardwaremonitor-api"; - version = "1.9.1"; + version = "1.10.1"; pyproject = true; src = fetchFromGitHub { owner = "Sab44"; repo = "librehardwaremonitor-api"; tag = "v${version}"; - hash = "sha256-fj+373+e4X8B7OrejeDe0SXRMQR7vsPO4DoGrmxBu7I="; + hash = "sha256-l9xfO6PzJSYCoZWLdYpeZFpVK0x3ysvS+VM/9BPKlFs="; }; build-system = [ hatchling ]; From 2456b827e9e35dfb478c1530366041e3a27c2972 Mon Sep 17 00:00:00 2001 From: Jamie Magee Date: Mon, 16 Feb 2026 11:13:40 -0800 Subject: [PATCH 40/53] python3Packages.victron-ble: init at 0.9.3 Python library to parse Instant Readout advertisement data from Victron devices via BLE. --- .../python-modules/victron-ble/default.nix | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 pkgs/development/python-modules/victron-ble/default.nix diff --git a/pkgs/development/python-modules/victron-ble/default.nix b/pkgs/development/python-modules/victron-ble/default.nix new file mode 100644 index 000000000000..021ea67a2f22 --- /dev/null +++ b/pkgs/development/python-modules/victron-ble/default.nix @@ -0,0 +1,43 @@ +{ + lib, + bleak, + buildPythonPackage, + click, + fetchFromGitHub, + pycryptodome, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage rec { + pname = "victron-ble"; + version = "0.9.3"; + pyproject = true; + + src = fetchFromGitHub { + owner = "keshavdv"; + repo = "victron-ble"; + tag = "v${version}"; + hash = "sha256-ALdNM6U9bEX/KHcQu+7vM8Z42dEdxYtuxQRZMf10DyI="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + bleak + click + pycryptodome + ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + pythonImportsCheck = [ "victron_ble" ]; + + meta = { + description = "Python library to parse Instant Readout advertisement data from Victron devices"; + homepage = "https://github.com/keshavdv/victron-ble"; + changelog = "https://github.com/keshavdv/victron-ble/releases/tag/${src.tag}"; + license = lib.licenses.unlicense; + maintainers = [ lib.maintainers.jamiemagee ]; + }; +} From 9438079007652b15c5fad186e50304f474f81138 Mon Sep 17 00:00:00 2001 From: Jamie Magee Date: Mon, 16 Feb 2026 11:13:40 -0800 Subject: [PATCH 41/53] python3Packages.victron-ble-ha-parser: init at 0.4.10 Parser for Victron BLE messages suitable for use with Home Assistant. --- .../victron-ble-ha-parser/default.nix | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 pkgs/development/python-modules/victron-ble-ha-parser/default.nix diff --git a/pkgs/development/python-modules/victron-ble-ha-parser/default.nix b/pkgs/development/python-modules/victron-ble-ha-parser/default.nix new file mode 100644 index 000000000000..8967675c5135 --- /dev/null +++ b/pkgs/development/python-modules/victron-ble-ha-parser/default.nix @@ -0,0 +1,43 @@ +{ + lib, + bluetooth-sensor-state-data, + buildPythonPackage, + fetchFromGitHub, + sensor-state-data, + setuptools, + victron-ble, +}: + +buildPythonPackage rec { + pname = "victron-ble-ha-parser"; + version = "0.4.10"; + pyproject = true; + + src = fetchFromGitHub { + owner = "rajlaud"; + repo = "victron-ble-ha-parser"; + tag = "v${version}"; + hash = "sha256-mvQrY1f3Da621yMgTzxduZQ0pxCJN6j7+6pgFwgl4Rs="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + bluetooth-sensor-state-data + sensor-state-data + victron-ble + ]; + + # upstream has no tests + doCheck = false; + + pythonImportsCheck = [ "victron_ble_ha_parser" ]; + + meta = { + description = "Parser for Victron BLE messages suitable for use with Home Assistant"; + homepage = "https://github.com/rajlaud/victron-ble-ha-parser"; + changelog = "https://github.com/rajlaud/victron-ble-ha-parser/releases/tag/${src.tag}"; + license = lib.licenses.asl20; + maintainers = [ lib.maintainers.jamiemagee ]; + }; +} From d47373323ecb8771de5d439d8598db5ab2a4122b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 8 Mar 2026 09:12:20 -0700 Subject: [PATCH 42/53] python3Packages.spotifyaio: 1.0.0 -> 2.0.2 Diff: https://github.com/joostlek/python-spotify/compare/v1.0.0...v2.0.2 Changelog: https://github.com/joostlek/python-spotify/releases/tag/v2.0.2 --- pkgs/development/python-modules/spotifyaio/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/spotifyaio/default.nix b/pkgs/development/python-modules/spotifyaio/default.nix index cae04ad83f90..78dbe0aa0f17 100644 --- a/pkgs/development/python-modules/spotifyaio/default.nix +++ b/pkgs/development/python-modules/spotifyaio/default.nix @@ -16,14 +16,14 @@ buildPythonPackage rec { pname = "spotifyaio"; - version = "1.0.0"; + version = "2.0.2"; pyproject = true; src = fetchFromGitHub { owner = "joostlek"; repo = "python-spotify"; tag = "v${version}"; - hash = "sha256-wl8THtmdJ2l6XNDtmmnk/MF+qTZL0UsbL8o6i/Vwf5k="; + hash = "sha256-Bob6JpbUaQkeH2c5YKVSUkY/FNyVTf+qtB2Rm1xCRX0="; }; postPatch = '' From 4c54aa6c372a0f4a9ec23ccfcf5c67db82a6bb73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 8 Mar 2026 09:14:20 -0700 Subject: [PATCH 43/53] python3Packages.typedmonarchmoney: 0.5.0 -> 0.7.0 Diff: https://github.com/jeeftor/monarchmoney-typed/compare/v0.5.0...v0.7.0 Changelog: https://github.com/jeeftor/monarchmoney-typed/releases/tag/v0.7.0 --- pkgs/development/python-modules/typedmonarchmoney/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/typedmonarchmoney/default.nix b/pkgs/development/python-modules/typedmonarchmoney/default.nix index 6035806e06f9..902e3c7b957c 100644 --- a/pkgs/development/python-modules/typedmonarchmoney/default.nix +++ b/pkgs/development/python-modules/typedmonarchmoney/default.nix @@ -10,14 +10,14 @@ buildPythonPackage (finalAttrs: { pname = "typedmonarchmoney"; - version = "0.5.0"; + version = "0.7.0"; pyproject = true; src = fetchFromGitHub { owner = "jeeftor"; repo = "monarchmoney-typed"; tag = "v${finalAttrs.version}"; - hash = "sha256-pe/j6UnW9N3x/TYp4VyyVTwk2hTGHLTlnEYL6MNziuw="; + hash = "sha256-Tx5JxHAJeNWLzCSAXOvb2+QsS8PU5hK28141BnooZps="; }; build-system = [ hatchling ]; From dec3ec42c28038f3252fb25947d3e438e160331b Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 4 Mar 2026 18:53:40 +0100 Subject: [PATCH 44/53] home-assistant.intents: 2026.1.28 -> 2026.3.3 https://github.com/OHF-Voice/intents-package/releases/tag/2026.3.3 --- pkgs/servers/home-assistant/intents.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/home-assistant/intents.nix b/pkgs/servers/home-assistant/intents.nix index b22bf2be7373..3a35ccc989d6 100644 --- a/pkgs/servers/home-assistant/intents.nix +++ b/pkgs/servers/home-assistant/intents.nix @@ -21,7 +21,7 @@ buildPythonPackage rec { pname = "home-assistant-intents"; - version = "2026.1.28"; + version = "2026.3.3"; pyproject = true; src = fetchFromGitHub { @@ -29,7 +29,7 @@ buildPythonPackage rec { repo = "intents-package"; tag = version; fetchSubmodules = true; - hash = "sha256-5n2B9HeEiuNHlaTHzpl18zaXB3ocWKC2Bs4aEoda7aQ="; + hash = "sha256-jueZ+GmoVcQcvCYsKQVqKdPVl4U32stcwv0N4QTspoE="; }; build-system = [ From 3c1bead43b97f21f607cfc50dc38153bd0f3e5cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 3 Mar 2026 16:52:18 -0800 Subject: [PATCH 45/53] home-assistant: 2026.2.3 -> 2026.3.1 https://www.home-assistant.io/blog/2026/03/04/release-20263/ --- .../home-assistant/component-packages.nix | 145 +++++++++++++----- pkgs/servers/home-assistant/default.nix | 11 +- pkgs/servers/home-assistant/frontend.nix | 4 +- pkgs/servers/home-assistant/tests.nix | 3 + .../update-component-packages.py | 1 + pkgs/top-level/python-packages.nix | 4 + 6 files changed, 122 insertions(+), 46 deletions(-) diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index f4fb1132e70c..bfb1969d01e5 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2,7 +2,7 @@ # Do not edit! { - version = "2026.2.3"; + version = "2026.3.1"; components = { "3_day_blinds" = ps: with ps; [ @@ -469,11 +469,11 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg securetar yalexs @@ -524,6 +524,9 @@ "aws_s3" = ps: with ps; [ aiobotocore + aiohasupervisor + cronsim + securetar ]; "axis" = ps: with ps; [ @@ -759,6 +762,9 @@ ifaddr zeroconf ]; + "brands" = + ps: with ps; [ + ]; "brandt" = ps: with ps; [ ]; @@ -886,6 +892,7 @@ hassil home-assistant-intents ifaddr + matter-python-client mutagen openai plexapi @@ -894,7 +901,6 @@ pychromecast pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg securetar zeroconf @@ -954,11 +960,11 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg securetar ]; @@ -1157,6 +1163,7 @@ home-assistant-frontend home-assistant-intents ifaddr + matter-python-client mutagen numpy openai @@ -1166,7 +1173,6 @@ pynacl pyserial pyspeex-noise - python-matter-server pyturbojpeg securetar sqlalchemy @@ -1559,7 +1565,9 @@ ]; "enocean" = ps: with ps; [ + aiousbwatcher enocean + pyserial ]; "enphase_envoy" = ps: with ps; [ @@ -2093,6 +2101,9 @@ ps: with ps; [ aio-geojson-geonetnz-volcano ]; + "ghost" = + ps: with ps; [ + ]; # missing inputs: aioghost "gios" = ps: with ps; [ gios @@ -2143,7 +2154,7 @@ "google_assistant" = ps: with ps; [ aiohasupervisor - python-matter-server + matter-python-client pyturbojpeg ]; "google_assistant_sdk" = @@ -2338,6 +2349,9 @@ ps: with ps; [ heatmiserv3 ]; + "hegel" = + ps: with ps; [ + ]; # missing inputs: hegel-ip-client "heicko" = ps: with ps; [ ]; @@ -2518,6 +2532,9 @@ ps: with ps; [ homematicip ]; + "homevolt" = + ps: with ps; [ + ]; # missing inputs: homevolt "homewizard" = ps: with ps; [ python-homewizard-energy @@ -2540,6 +2557,7 @@ ]; "html5" = ps: with ps; [ + py-vapid pywebpush ]; "http" = @@ -2643,6 +2661,9 @@ ps: with ps; [ hyperion-py ]; + "hypontech" = + ps: with ps; [ + ]; # missing inputs: hyponcloud "ialarm" = ps: with ps; [ pyialarm @@ -2714,6 +2735,10 @@ pyspeex-noise zeroconf ]; + "idrive_e2" = + ps: with ps; [ + aiobotocore + ]; # missing inputs: idrive-e2-client "idteck_prox" = ps: with ps; [ rfk101py @@ -2797,6 +2822,9 @@ ps: with ps; [ incomfort-client ]; + "indevolt" = + ps: with ps; [ + ]; # missing inputs: indevolt-api "indianamichiganpower" = ps: with ps; [ ]; @@ -2870,6 +2898,9 @@ "integration" = ps: with ps; [ ]; + "intelliclima" = + ps: with ps; [ + ]; # missing inputs: pyintelliclima "intellifire" = ps: with ps; [ intellifire4py @@ -3388,6 +3419,9 @@ ps: with ps; [ aiopyarr ]; + "liebherr" = + ps: with ps; [ + ]; # missing inputs: pyliebherrhomeapi "life360" = ps: with ps; [ ]; @@ -3505,11 +3539,11 @@ hassil home-assistant-intents loqedapi + matter-python-client mutagen openai pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg securetar ]; @@ -3593,7 +3627,7 @@ "matter" = ps: with ps; [ aiohasupervisor - python-matter-server + matter-python-client ]; "maxcube" = ps: with ps; [ @@ -3834,13 +3868,13 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pillow pymicro-vad pynacl pyspeex-noise - python-matter-server pyturbojpeg securetar ]; @@ -3987,6 +4021,9 @@ ps: with ps; [ pymsteams ]; + "mta" = + ps: with ps; [ + ]; # missing inputs: py-nymta "mullvad" = ps: with ps; [ mullvad-api @@ -4007,6 +4044,9 @@ ps: with ps; [ home-assistant-frontend ]; + "myneomitis" = + ps: with ps; [ + ]; # missing inputs: pyaxencoapi "myq" = ps: with ps; [ ]; @@ -4041,8 +4081,7 @@ ]; "nanoleaf" = ps: with ps; [ - aionanoleaf - ]; + ]; # missing inputs: aionanoleaf2 "nasweb" = ps: with ps; [ webio-api @@ -4081,12 +4120,12 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pyatmo pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg securetar ]; @@ -4331,12 +4370,29 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client + mutagen + onedrive-personal-sdk + openai + pymicro-vad + pyspeex-noise + pyturbojpeg + securetar + ]; + "onedrive_for_business" = + ps: with ps; [ + aiohasupervisor + cronsim + ha-ffmpeg + hass-nabucasa + hassil + home-assistant-intents + matter-python-client mutagen onedrive-personal-sdk openai pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg securetar ]; @@ -4528,11 +4584,11 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pymicro-vad pyspeex-noise - python-matter-server python-overseerr pyturbojpeg securetar @@ -4549,13 +4605,13 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai paho-mqtt pymicro-vad pynacl pyspeex-noise - python-matter-server pyturbojpeg securetar ]; @@ -4675,12 +4731,12 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pymicro-vad pyplaato pyspeex-noise - python-matter-server pyturbojpeg securetar ]; @@ -4735,6 +4791,10 @@ ps: with ps; [ powerfox ]; + "powerfox_local" = + ps: with ps; [ + powerfox + ]; "powerwall" = ps: with ps; [ tesla-powerwall @@ -4978,11 +5038,11 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg rachiopy securetar @@ -5081,20 +5141,6 @@ ]; "recovery_mode" = ps: with ps; [ - aiohasupervisor - cronsim - ha-ffmpeg - hass-nabucasa - hassil - home-assistant-frontend - home-assistant-intents - mutagen - openai - pymicro-vad - pyspeex-noise - python-matter-server - pyturbojpeg - securetar ]; "recswitch" = ps: with ps; [ @@ -5104,6 +5150,9 @@ ps: with ps; [ praw ]; + "redgtech" = + ps: with ps; [ + ]; # missing inputs: redgtech-api "refoss" = ps: with ps; [ refoss-ha @@ -6048,6 +6097,9 @@ psutil psutil-home-assistant ]; + "systemnexa2" = + ps: with ps; [ + ]; # missing inputs: python-sn2 "tado" = ps: with ps; [ python-tado @@ -6130,6 +6182,9 @@ "telnet" = ps: with ps; [ ]; + "teltonika" = + ps: with ps; [ + ]; # missing inputs: teltasync "temper" = ps: with ps; [ temperusb @@ -6344,11 +6399,11 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg securetar toonapi @@ -6428,6 +6483,9 @@ ps: with ps; [ pytrafikverket ]; + "trane" = + ps: with ps; [ + ]; # missing inputs: steamloop "transmission" = ps: with ps; [ transmission-rpc @@ -6457,7 +6515,7 @@ ps: with ps; [ ha-ffmpeg tuya-device-sharing-sdk - ]; + ]; # missing inputs: tuya-device-handlers "twentemilieu" = ps: with ps; [ twentemilieu @@ -6682,8 +6740,9 @@ pymicro-vad pyserial pyspeex-noise + victron-ble-ha-parser zeroconf - ]; # missing inputs: victron-ble-ha-parser + ]; "victron_remote_monitoring" = ps: with ps; [ victron-vrm @@ -6779,11 +6838,11 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg securetar visionpluspython @@ -6872,11 +6931,11 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg securetar ]; @@ -7001,11 +7060,11 @@ hass-nabucasa hassil home-assistant-intents + matter-python-client mutagen openai pymicro-vad pyspeex-noise - python-matter-server pyturbojpeg securetar yalexs @@ -7143,6 +7202,9 @@ ps: with ps; [ zcc-helper ]; + "zinvolt" = + ps: with ps; [ + ]; # missing inputs: zinvolt "zodiac" = ps: with ps; [ ]; @@ -7275,6 +7337,7 @@ "bond" "bosch_alarm" "bosch_shc" + "brands" "braviatv" "bring" "broadlink" @@ -7509,6 +7572,7 @@ "growatt_server" "guardian" "habitica" + "hanna" "hardkernel" "hardware" "harmony" @@ -7746,7 +7810,6 @@ "myuplink" "nam" "namecheapdns" - "nanoleaf" "nasweb" "neato" "nederlandse_spoorwegen" @@ -7797,6 +7860,7 @@ "oncue" "ondilo_ico" "onedrive" + "onedrive_for_business" "onewire" "onkyo" "onvif" @@ -7855,6 +7919,7 @@ "poolsense" "portainer" "powerfox" + "powerfox_local" "powerwall" "private_ble_device" "probe_plus" @@ -8007,6 +8072,7 @@ "spc" "speedtestdotnet" "spider" + "splunk" "spotify" "sql" "squeezebox" @@ -8103,7 +8169,6 @@ "trend" "triggercmd" "tts" - "tuya" "twentemilieu" "twilio" "twinkly" @@ -8139,6 +8204,7 @@ "version" "vesync" "vicare" + "victron_ble" "victron_remote_monitoring" "vilfo" "vivotek" @@ -8211,6 +8277,7 @@ "zimi" "zodiac" "zone" + "zoneminder" "zwave_js" "zwave_me" ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index db077c1978b8..f77cbff601a1 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -4,7 +4,7 @@ callPackage, fetchFromGitHub, fetchPypi, - python313, + python314, replaceVars, ffmpeg-headless, inetutils, @@ -244,7 +244,7 @@ let }) ]; - python = python313.override { + python = python314.override { self = python; packageOverrides = lib.composeManyExtensions (defaultOverrides ++ [ packageOverrides ]); }; @@ -263,7 +263,7 @@ let extraBuildInputs = extraPackages python.pkgs; # Don't forget to run update-component-packages.py after updating - hassVersion = "2026.2.3"; + hassVersion = "2026.3.1"; in python.pkgs.buildPythonApplication rec { @@ -284,13 +284,13 @@ python.pkgs.buildPythonApplication rec { owner = "home-assistant"; repo = "core"; tag = version; - hash = "sha256-BEE27D1P3cbxjQMRh3VHL6KDXa7bZDfqK316VQg0/SM="; + hash = "sha256-UQRKwJUyQKHoVyxQrEpQ8Eb9/dxbpjs7ZaruPQNRogs="; }; # Secondary source is pypi sdist for translations sdist = fetchPypi { inherit pname version; - hash = "sha256-UkIxZx3IU0IZh8gbjZ9xRkEZS97UW85FT5isNyPyiHQ="; + hash = "sha256-JMYpobwMUm+Rj0kzDIicyvUHKl8ndrYNxzdp26h427o="; }; build-system = with python.pkgs; [ @@ -335,6 +335,7 @@ python.pkgs.buildPythonApplication rec { dependencies = with python.pkgs; [ # Only packages required in pyproject.toml aiodns + aiogithubapi aiohasupervisor aiohttp aiohttp-asyncmdnsresolver diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix index eb825da19b23..742b5798945b 100644 --- a/pkgs/servers/home-assistant/frontend.nix +++ b/pkgs/servers/home-assistant/frontend.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { # the frontend version corresponding to a specific home-assistant version can be found here # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json pname = "home-assistant-frontend"; - version = "20260128.6"; + version = "20260304.0"; format = "wheel"; src = fetchPypi { @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "home_assistant_frontend"; dist = "py3"; python = "py3"; - hash = "sha256-H9MHB4uVhKfPo9zi5XRDl1IjyUWKeXr3lSU8PEcm/7s="; + hash = "sha256-GuKydiiyv5RrouSCJ+4P83j4atHdowXii/Ab72dB448="; }; # there is nothing to strip in this package diff --git a/pkgs/servers/home-assistant/tests.nix b/pkgs/servers/home-assistant/tests.nix index 1e12fb4de4fd..381696a9b443 100644 --- a/pkgs/servers/home-assistant/tests.nix +++ b/pkgs/servers/home-assistant/tests.nix @@ -100,6 +100,7 @@ let av ]; number = getComponentDeps "conversation"; + ntfy = getComponentDeps "camera" ++ getComponentDeps "tts"; octoprint = getComponentDeps "camera"; ollama = getComponentDeps "ai_task"; onboarding = getComponentDeps "tts" ++ [ @@ -132,6 +133,7 @@ let songpal = [ isal ]; + sonos = getComponentDeps "frontend"; swiss_public_transport = getComponentDeps "cookidoo"; switch = getComponentDeps "camera" ++ getComponentDeps "conversation"; switch_as_x = getComponentDeps "camera" ++ getComponentDeps "conversation"; @@ -160,6 +162,7 @@ let yolink = getComponentDeps "cloud"; zeroconf = getComponentDeps "shelly"; zha = getComponentDeps "deconz" ++ getComponentDeps "frontend"; + zoneminder = getComponentDeps "camera"; zwave_js = getComponentDeps "frontend"; }; diff --git a/pkgs/servers/home-assistant/update-component-packages.py b/pkgs/servers/home-assistant/update-component-packages.py index e968ce876e4e..484333b1fdfa 100755 --- a/pkgs/servers/home-assistant/update-component-packages.py +++ b/pkgs/servers/home-assistant/update-component-packages.py @@ -41,6 +41,7 @@ PKG_SET = "home-assistant.python.pkgs" PKG_PREFERENCES = { "av": "av", "fiblary3": "fiblary3-fork", # https://github.com/home-assistant/core/issues/66466 + "fints": "fints", "HAP-python": "hap-python", "ha-av": "av", "numpy": "numpy", diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index bb408f30b27d..2c343e508b39 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -20625,6 +20625,10 @@ self: super: with self; { viaggiatreno-ha = callPackage ../development/python-modules/viaggiatreno-ha { }; + victron-ble = callPackage ../development/python-modules/victron-ble { }; + + victron-ble-ha-parser = callPackage ../development/python-modules/victron-ble-ha-parser { }; + victron-mqtt = callPackage ../development/python-modules/victron-mqtt { }; victron-vrm = callPackage ../development/python-modules/victron-vrm { }; From ef82f61c3623b07a581cac15de373988f986db00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 5 Mar 2026 00:15:45 +0100 Subject: [PATCH 46/53] nixos/home-assistant: add finalPackage option to easily build your own config --- .../services/home-automation/home-assistant.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/nixos/modules/services/home-automation/home-assistant.nix b/nixos/modules/services/home-automation/home-assistant.nix index dc1900f52c1e..eab677161e15 100644 --- a/nixos/modules/services/home-automation/home-assistant.nix +++ b/nixos/modules/services/home-automation/home-assistant.nix @@ -566,6 +566,16 @@ in ''; }; + finalPackage = mkOption { + default = package; + internal = true; + readOnly = true; + type = types.package; + description = '' + The final Home Assistant package which is being used in the service. + ''; + }; + openFirewall = mkOption { default = false; type = types.bool; From 200315e1f1755a72fb05dc2e639754ddc172ab87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 8 Mar 2026 09:31:29 -0700 Subject: [PATCH 47/53] home-assistant.python.pkgs.pytest-homeassistant-custom-component: 0.13.316 -> 0.13.317 Diff: https://github.com/MatthewFlamm/pytest-homeassistant-custom-component/compare/0.13.316...0.13.317 Changelog: https://github.com/MatthewFlamm/pytest-homeassistant-custom-component/blob/0.13.317/CHANGELOG.md --- .../home-assistant/pytest-homeassistant-custom-component.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/home-assistant/pytest-homeassistant-custom-component.nix b/pkgs/servers/home-assistant/pytest-homeassistant-custom-component.nix index 914ff97a29f3..07ed2d404e2d 100644 --- a/pkgs/servers/home-assistant/pytest-homeassistant-custom-component.nix +++ b/pkgs/servers/home-assistant/pytest-homeassistant-custom-component.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "pytest-homeassistant-custom-component"; - version = "0.13.316"; + version = "0.13.317"; pyproject = true; disabled = pythonOlder "3.13"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "MatthewFlamm"; repo = "pytest-homeassistant-custom-component"; tag = version; - hash = "sha256-wsL/85klBl6tHOZ0fq/AaUskIsqvKIJQ8fEtnQDZnF0="; + hash = "sha256-hn6gy4DWeO/E5I/F7F/CJXNO/O8BIhDnN+8RRmdQ+oU="; }; build-system = [ setuptools ]; From a2bf5ce172b7eb675beda2903e9eee90c24729a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 8 Mar 2026 08:56:47 -0700 Subject: [PATCH 48/53] python3Packages.aiohomematic: 2026.3.0 -> 2026.3.4 Diff: https://github.com/SukramJ/aiohomematic/compare/2026.3.0...2026.3.4 Changelog: https://github.com/SukramJ/aiohomematic/blob/2026.3.4/changelog.md --- pkgs/development/python-modules/aiohomematic/default.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aiohomematic/default.nix b/pkgs/development/python-modules/aiohomematic/default.nix index 62b2933ef8f4..689014659341 100644 --- a/pkgs/development/python-modules/aiohomematic/default.nix +++ b/pkgs/development/python-modules/aiohomematic/default.nix @@ -12,19 +12,22 @@ pytest-xdist, pytestCheckHook, python-slugify, + pythonOlder, setuptools, }: buildPythonPackage rec { pname = "aiohomematic"; - version = "2026.3.0"; + version = "2026.3.4"; pyproject = true; + disabled = pythonOlder "3.14"; + src = fetchFromGitHub { owner = "SukramJ"; repo = "aiohomematic"; tag = version; - hash = "sha256-7CN1/yB4vkY/B7k3kq6Qevlnff4pqr106pBu2t1j7tM="; + hash = "sha256-WN2Blfzt2sAYqSBqT3v3/bu2FOtfZtoAddl2H0efqvM="; }; build-system = [ setuptools ]; From 809bd84832df59ac71e0edbde0422110d009d451 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 8 Mar 2026 08:56:57 -0700 Subject: [PATCH 49/53] python3Packages.aiohomematic-config: 2026.3.0 -> 2026.3.2 Diff: https://github.com/sukramj/aiohomematic-config/compare/2026.3.0...2026.3.2 Changelog: https://github.com/sukramj/aiohomematic-config/blob/2026.3.2/changelog.md --- .../python-modules/aiohomematic-config/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/aiohomematic-config/default.nix b/pkgs/development/python-modules/aiohomematic-config/default.nix index f0df6f49dfff..a01eceb5c624 100644 --- a/pkgs/development/python-modules/aiohomematic-config/default.nix +++ b/pkgs/development/python-modules/aiohomematic-config/default.nix @@ -11,14 +11,14 @@ buildPythonPackage (finalAttrs: { pname = "aiohomematic-config"; - version = "2026.3.0"; + version = "2026.3.2"; pyproject = true; src = fetchFromGitHub { owner = "sukramj"; repo = "aiohomematic-config"; tag = finalAttrs.version; - hash = "sha256-lIvyFS/m1TwAj8und8EoX2E9ngM4rUw9BkfpETuwUGc="; + hash = "sha256-0TfRaTL+oxukl4nMPTxrtLMqCxAOcAW/brXxCeP9NB4="; }; build-system = [ setuptools ]; From 5dd7873de902dc3674d2ce931e6a0dbe7f9af88c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 8 Mar 2026 08:56:26 -0700 Subject: [PATCH 50/53] home-assistant-custom-components.homematicip_local: 2.3.2 -> 2.4.0 Diff: https://github.com/SukramJ/custom_homematic/compare/2.3.2...2.4.0 Changelog: https://github.com/SukramJ/custom_homematic/blob/2.4.0/changelog.md --- .../custom-components/homematicip_local/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/home-assistant/custom-components/homematicip_local/package.nix b/pkgs/servers/home-assistant/custom-components/homematicip_local/package.nix index a3594e4d3b92..8d78de4f0083 100644 --- a/pkgs/servers/home-assistant/custom-components/homematicip_local/package.nix +++ b/pkgs/servers/home-assistant/custom-components/homematicip_local/package.nix @@ -14,13 +14,13 @@ buildHomeAssistantComponent rec { owner = "SukramJ"; domain = "homematicip_local"; - version = "2.3.2"; + version = "2.4.0"; src = fetchFromGitHub { owner = "SukramJ"; repo = "custom_homematic"; tag = version; - hash = "sha256-MQ3jzAq8GNy22/qovLpmUZSyyATnejweFWxue2xsZ+s="; + hash = "sha256-jc2Y6COt6xwoaCuuvx/LGtS/Av86Zeb3ujIPyFvTCec="; }; postPatch = '' From 727555b7584c147504ce4391fce512dcc820d49b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 9 Mar 2026 08:11:56 -0700 Subject: [PATCH 51/53] python3Packages.homeassistant-stubs: 2026.2.3 -> 2026.3.1 Diff: https://github.com/KapJI/homeassistant-stubs/compare/2026.2.3...2026.3.1 Changelog: https://github.com/KapJI/homeassistant-stubs/releases/tag/2026.3.1 --- pkgs/servers/home-assistant/stubs.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/home-assistant/stubs.nix b/pkgs/servers/home-assistant/stubs.nix index a14d16faaf9d..4013b2e2d616 100644 --- a/pkgs/servers/home-assistant/stubs.nix +++ b/pkgs/servers/home-assistant/stubs.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "homeassistant-stubs"; - version = "2026.2.3"; + version = "2026.3.1"; pyproject = true; disabled = python.version != home-assistant.python.version; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "KapJI"; repo = "homeassistant-stubs"; tag = version; - hash = "sha256-WImlT+rtIXwdVpph4T1VIksNPQ9U4nn0Bl23LRBaP/k="; + hash = "sha256-l9ECa6hcJWtZDGTpQVuvZDiGaAn2nlywqVFy1Eg1p3E="; }; build-system = [ From bef92c46b68a40e8e45100ffe83fc1a75b9dc427 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 12 Mar 2026 21:20:12 -0700 Subject: [PATCH 52/53] python3Packages.google-geo-type: unpin protobuf --- pkgs/development/python-modules/google-geo-type/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/google-geo-type/default.nix b/pkgs/development/python-modules/google-geo-type/default.nix index 4dff787e4bf7..59343625e0d4 100644 --- a/pkgs/development/python-modules/google-geo-type/default.nix +++ b/pkgs/development/python-modules/google-geo-type/default.nix @@ -27,6 +27,10 @@ buildPythonPackage rec { build-system = [ setuptools ]; + pythonRelaxDeps = [ + "protobuf" + ]; + dependencies = [ google-api-core google-auth From f9d19ec04549576724f9d864ae8fb8a313229901 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 12 Mar 2026 21:20:28 -0700 Subject: [PATCH 53/53] python3Packages.google-maps-routing: unpin protobuf --- .../python-modules/google-maps-routing/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/google-maps-routing/default.nix b/pkgs/development/python-modules/google-maps-routing/default.nix index d2669fb55b7d..a11638757750 100644 --- a/pkgs/development/python-modules/google-maps-routing/default.nix +++ b/pkgs/development/python-modules/google-maps-routing/default.nix @@ -29,6 +29,10 @@ buildPythonPackage rec { build-system = [ setuptools ]; + pythonRelaxDeps = [ + "protobuf" + ]; + dependencies = [ google-api-core google-auth