diff --git a/pkgs/by-name/co/connect-box/package.nix b/pkgs/by-name/co/connect-box/package.nix new file mode 100644 index 000000000000..87769f0d7360 --- /dev/null +++ b/pkgs/by-name/co/connect-box/package.nix @@ -0,0 +1,5 @@ +{ python3Packages }: + +(python3Packages.toPythonApplication python3Packages.connect-box3).overrideAttrs { + __structuredAttrs = true; +} diff --git a/pkgs/development/python-modules/connect-box3/default.nix b/pkgs/development/python-modules/connect-box3/default.nix new file mode 100644 index 000000000000..e9fd4a33a4d5 --- /dev/null +++ b/pkgs/development/python-modules/connect-box3/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + cyclopts, + fetchFromGitHub, + hatchling, + httpx, + mashumaro, + pytest-asyncio, + pytest-httpx, + pytestCheckHook, + rich, +}: + +buildPythonPackage (finalAttrs: { + pname = "connect-box3"; + version = "0.2.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "home-assistant-ecosystem"; + repo = "python-connect-box3"; + tag = finalAttrs.version; + hash = "sha256-eLrCMziV/+maLIded1n0248Xb14uVBps/gzTUz8NMMc="; + }; + + build-system = [ hatchling ]; + + dependencies = [ + cyclopts + httpx + mashumaro + rich + ]; + + nativeCheckInputs = [ + pytestCheckHook + pytest-asyncio + pytest-httpx + ]; + + pythonImportsCheck = [ "connect_box3" ]; + + meta = { + description = "Interact with a Connect Box 3 modem/router"; + homepage = "https://github.com/home-assistant-ecosystem/python-connect-box3"; + changelog = "https://github.com/home-assistant-ecosystem/python-connect-box3/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ fab ]; + mainProgram = "connect-box"; + }; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 91208e3b4e53..87f315ef871e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3160,6 +3160,8 @@ self: super: with self; { connect-box = callPackage ../development/python-modules/connect-box { }; + connect-box3 = callPackage ../development/python-modules/connect-box3 { }; + connected-components-3d = callPackage ../development/python-modules/connected-components-3d { }; connection-pool = callPackage ../development/python-modules/connection-pool { };