From c1672895058a84d9f1e7724bf4cef42c1303affe Mon Sep 17 00:00:00 2001 From: Matej Urbas Date: Thu, 4 Dec 2025 06:36:18 +0000 Subject: [PATCH 1/3] python3Packages.country-list: init at 1.1.0 --- .../python-modules/country-list/default.nix | 49 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 51 insertions(+) create mode 100644 pkgs/development/python-modules/country-list/default.nix diff --git a/pkgs/development/python-modules/country-list/default.nix b/pkgs/development/python-modules/country-list/default.nix new file mode 100644 index 000000000000..8e4ee9ab6d95 --- /dev/null +++ b/pkgs/development/python-modules/country-list/default.nix @@ -0,0 +1,49 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + # build-system + poetry-core, + + # tests + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "country-list"; + version = "1.1.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "bulv1ne"; + repo = "country_list"; + tag = "v${version}"; + hash = "sha256-jG2AC8c6mgWjHVBX7XW021PLPliLTwEBkN6+HSecfL4="; + fetchSubmodules = true; + }; + + build-system = [ + poetry-core + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pytestFlagsArray = [ + "tests.py" + ]; + + pythonImportsCheck = [ + "country_list" + ]; + + meta = { + description = "List of all countries with names and ISO 3166-1 codes in all languages"; + homepage = "https://github.com/bulv1ne/country_list"; + changelog = "https://github.com/bulv1ne/country_list/blob/${src.tag}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ urbas ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4bbc973724f6..1affacb053db 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3136,6 +3136,8 @@ self: super: with self; { cot = callPackage ../development/python-modules/cot { inherit (pkgs) qemu; }; + country-list = callPackage ../development/python-modules/country-list { }; + countryguess = callPackage ../development/python-modules/countryguess { }; courlan = callPackage ../development/python-modules/courlan { }; From 75c24d4ef07def81a288b697221bfbf40bb0c53e Mon Sep 17 00:00:00 2001 From: Matej Urbas Date: Thu, 4 Dec 2025 06:36:53 +0000 Subject: [PATCH 2/3] python3Packages.mypyllant: init at 0.9.8 --- .../python-modules/mypyllant/default.nix | 73 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 75 insertions(+) create mode 100644 pkgs/development/python-modules/mypyllant/default.nix diff --git a/pkgs/development/python-modules/mypyllant/default.nix b/pkgs/development/python-modules/mypyllant/default.nix new file mode 100644 index 000000000000..77f1f0c9980f --- /dev/null +++ b/pkgs/development/python-modules/mypyllant/default.nix @@ -0,0 +1,73 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + + # build-system + hatch-vcs, + hatchling, + + # dependencies + aiohttp, + pydantic, + + # tests + aioresponses, + country-list, + freezegun, + pytest-asyncio, + pytest-cov-stub, + pytest-mock, + pytest-xdist, + pytestCheckHook, + pyyaml, + requests, +}: + +buildPythonPackage rec { + pname = "mypyllant"; + version = "0.9.8"; + pyproject = true; + + src = fetchFromGitHub { + owner = "signalkraft"; + repo = "myPyllant"; + tag = "v${version}"; + hash = "sha256-eneAFJ4xRL8EKj8Act/YcW7Gx0B85u0g3LTWPlI/B/0="; + }; + + build-system = [ + hatch-vcs + hatchling + ]; + + dependencies = [ + aiohttp + pydantic + ]; + + nativeCheckInputs = [ + aioresponses + country-list + freezegun + pytest-asyncio + pytest-cov-stub + pytest-mock + pytest-xdist + pytestCheckHook + pyyaml + requests + ]; + + pythonImportsCheck = [ + "myPyllant" + ]; + + meta = { + description = "Python library to interact with the API behind the myVAILLANT app"; + homepage = "https://github.com/signalkraft/myPyllant"; + changelog = "https://github.com/signalkraft/myPyllant/releases/tag/${src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ urbas ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1affacb053db..8cc15e7f89b4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10433,6 +10433,8 @@ self: super: with self; { mypy-protobuf = callPackage ../development/python-modules/mypy-protobuf { }; + mypyllant = callPackage ../development/python-modules/mypyllant { }; + mysql-connector = callPackage ../development/python-modules/mysql-connector { }; mysqlclient = callPackage ../development/python-modules/mysqlclient { }; From c3d3b88b073c46409f47569586c69eff8ed6aa81 Mon Sep 17 00:00:00 2001 From: Matej Urbas Date: Thu, 4 Dec 2025 06:37:56 +0000 Subject: [PATCH 3/3] home-assistant-custom-components.mypyllant: init at 0.9.9 --- .../custom-components/mypyllant/package.nix | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 pkgs/servers/home-assistant/custom-components/mypyllant/package.nix diff --git a/pkgs/servers/home-assistant/custom-components/mypyllant/package.nix b/pkgs/servers/home-assistant/custom-components/mypyllant/package.nix new file mode 100644 index 000000000000..e16c0fb998c8 --- /dev/null +++ b/pkgs/servers/home-assistant/custom-components/mypyllant/package.nix @@ -0,0 +1,52 @@ +{ + buildHomeAssistantComponent, + fetchFromGitHub, + lib, + + # dependencies + mypyllant, + voluptuous, + + # tests + aioresponses, + polyfactory, + pytest-cov-stub, + pytest-homeassistant-custom-component, + pytest-xdist, + pytestCheckHook, +}: + +buildHomeAssistantComponent rec { + owner = "signalkraft"; + domain = "mypyllant"; + version = "0.9.9"; + + src = fetchFromGitHub { + owner = "signalkraft"; + repo = "mypyllant-component"; + tag = "v${version}"; + hash = "sha256-6T8SGAP2535VqZmvSeITpMIa0SBJhnWsOKM1Y66WhHE="; + }; + + dependencies = [ + mypyllant + voluptuous + ]; + + nativeCheckInputs = [ + aioresponses + polyfactory + pytest-cov-stub + pytest-homeassistant-custom-component + pytest-xdist + pytestCheckHook + ]; + + meta = { + description = "Unofficial Home Assistant integration for interacting with myVAILLANT"; + changelog = "https://github.com/signalkraft/mypyllant-component/releases/tag/${src.tag}"; + homepage = "https://github.com/signalkraft/mypyllant-component"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ urbas ]; + }; +}