From 0bf8e76a206f491e3d8b96ed0a3d27ab0c4bab61 Mon Sep 17 00:00:00 2001 From: Jamie Magee Date: Tue, 26 Aug 2025 21:02:40 -0700 Subject: [PATCH 1/4] python3Packages.uplink: init at 0.10.0 --- .../python-modules/uplink/default.nix | 64 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 66 insertions(+) create mode 100644 pkgs/development/python-modules/uplink/default.nix diff --git a/pkgs/development/python-modules/uplink/default.nix b/pkgs/development/python-modules/uplink/default.nix new file mode 100644 index 000000000000..4020d8e0b9d5 --- /dev/null +++ b/pkgs/development/python-modules/uplink/default.nix @@ -0,0 +1,64 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + hatchling, + requests, + six, + uritemplate, + pytestCheckHook, + pytest-mock, + aiohttp, + marshmallow, + pydantic, + pytest-asyncio, + pytest-twisted, + twisted, + pythonOlder, +}: + +buildPythonPackage rec { + pname = "uplink"; + version = "0.10.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "prkumar"; + repo = "uplink"; + tag = "v${version}"; + hash = "sha256-gI7oHLyC6a5s3jhgG5jj+7q495seMSyUV4XVAp1URTA="; + }; + + build-system = [ hatchling ]; + + dependencies = [ + requests + six + uritemplate + ]; + + optional-dependencies = { + aiohttp = [ aiohttp ]; + marshmallow = [ marshmallow ]; + pydantic = [ pydantic ]; + twisted = [ twisted ]; + }; + + nativeCheckInputs = [ + pytestCheckHook + pytest-mock + pytest-asyncio + pytest-twisted + ] + ++ lib.flatten (lib.attrValues optional-dependencies); + + pythonImportsCheck = [ "uplink" ]; + + meta = { + description = "Declarative HTTP client for Python"; + homepage = "https://github.com/prkumar/uplink"; + changelog = "https://github.com/prkumar/uplink/releases/tag/${src.tag}"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.jamiemagee ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 57f028e1f2fe..f51349c78d3d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -19331,6 +19331,8 @@ self: super: with self; { uplc = callPackage ../development/python-modules/uplc { }; + uplink = callPackage ../development/python-modules/uplink { }; + upnpy = callPackage ../development/python-modules/upnpy { }; uproot = callPackage ../development/python-modules/uproot { }; From 038508f192f6024162a6f99f4ab5314980ece81b Mon Sep 17 00:00:00 2001 From: Jamie Magee Date: Tue, 26 Aug 2025 21:03:02 -0700 Subject: [PATCH 2/4] python3Packages.uplink-protobuf: init at 0.1.0 --- .../uplink-protobuf/default.nix | 45 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 47 insertions(+) create mode 100644 pkgs/development/python-modules/uplink-protobuf/default.nix diff --git a/pkgs/development/python-modules/uplink-protobuf/default.nix b/pkgs/development/python-modules/uplink-protobuf/default.nix new file mode 100644 index 000000000000..1bf054a94386 --- /dev/null +++ b/pkgs/development/python-modules/uplink-protobuf/default.nix @@ -0,0 +1,45 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + uplink, + protobuf, + pytestCheckHook, + pytest-mock, +}: + +buildPythonPackage rec { + pname = "uplink-protobuf"; + version = "0.1.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "prkumar"; + repo = "uplink-protobuf"; + tag = "v${version}"; + hash = "sha256-HeA5bGmYSysidhz8YbST0uTqZ9BKFYQENrWuhcUZ7qY="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + uplink + protobuf + ]; + + nativeCheckInputs = [ + pytestCheckHook + pytest-mock + ]; + + pythonImportsCheck = [ "uplink_protobuf" ]; + + meta = { + description = "Protocol Buffers (Protobuf) support for Uplink"; + homepage = "https://github.com/prkumar/uplink-protobuf"; + changelog = "https://github.com/prkumar/uplink-protobuf/releases/tag/${src.tag}"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.jamiemagee ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f51349c78d3d..1084a8a5868c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -19333,6 +19333,8 @@ self: super: with self; { uplink = callPackage ../development/python-modules/uplink { }; + uplink-protobuf = callPackage ../development/python-modules/uplink-protobuf { }; + upnpy = callPackage ../development/python-modules/upnpy { }; uproot = callPackage ../development/python-modules/uproot { }; From 026ef90c2f6f26b6905413f7f11c5b5dd693bd6a Mon Sep 17 00:00:00 2001 From: Jamie Magee Date: Tue, 26 Aug 2025 21:04:00 -0700 Subject: [PATCH 3/4] python3Packages.solaredge-local: init at 0.2.3 --- .../solaredge-local/default.nix | 39 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 41 insertions(+) create mode 100644 pkgs/development/python-modules/solaredge-local/default.nix diff --git a/pkgs/development/python-modules/solaredge-local/default.nix b/pkgs/development/python-modules/solaredge-local/default.nix new file mode 100644 index 000000000000..b778482ae5ad --- /dev/null +++ b/pkgs/development/python-modules/solaredge-local/default.nix @@ -0,0 +1,39 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + setuptools, + uplink, + uplink-protobuf, +}: + +buildPythonPackage rec { + pname = "solaredge-local"; + version = "0.2.3"; + pyproject = true; + + src = fetchPypi { + pname = "solaredge_local"; + inherit version; + hash = "sha256-tGUr4zlMdyJqRyFAs7INiH5rJYPmu7qoaImg4dzW5rk="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + uplink + uplink-protobuf + ]; + + # Package has no tests + doCheck = false; + + pythonImportsCheck = [ "solaredge_local" ]; + + meta = { + description = "API wrapper to communicate locally with SolarEdge Inverters"; + homepage = "https://github.com/drobtravels/solaredge-local"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.jamiemagee ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1084a8a5868c..19bfe17e7685 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -16920,6 +16920,8 @@ self: super: with self; { softlayer = callPackage ../development/python-modules/softlayer { }; + solaredge-local = callPackage ../development/python-modules/solaredge-local { }; + solarlog-cli = callPackage ../development/python-modules/solarlog-cli { }; solax = callPackage ../development/python-modules/solax { }; From 310e8e695ea861d9965fecb44314bb50a19fb576 Mon Sep 17 00:00:00 2001 From: Jamie Magee Date: Tue, 26 Aug 2025 21:04:54 -0700 Subject: [PATCH 4/4] home-assistant: update component packages --- pkgs/servers/home-assistant/component-packages.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index d6731d9505f9..693c0572297b 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -5550,7 +5550,8 @@ ]; "solaredge_local" = ps: with ps; [ - ]; # missing inputs: solaredge-local + solaredge-local + ]; "solarlog" = ps: with ps; [ solarlog-cli