diff --git a/pkgs/development/python-modules/pycasperglow/default.nix b/pkgs/development/python-modules/pycasperglow/default.nix new file mode 100644 index 000000000000..ddc0ca637937 --- /dev/null +++ b/pkgs/development/python-modules/pycasperglow/default.nix @@ -0,0 +1,45 @@ +{ + lib, + bleak, + bleak-retry-connector, + buildPythonPackage, + fetchFromGitHub, + pytest-asyncio, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage (finalAttrs: { + pname = "pycasperglow"; + version = "1.2.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "mikeodr"; + repo = "pycasperglow"; + tag = "v${finalAttrs.version}"; + hash = "sha256-sLjEo8GSGBtx0GDAHQZad5ePQAwzChdmBE5TU+ebuFI="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + bleak + bleak-retry-connector + ]; + + nativeCheckInputs = [ + pytest-asyncio + pytestCheckHook + ]; + + pythonImportsCheck = [ "pycasperglow" ]; + + meta = { + description = "Async Python library for controlling Casper Glow lights via BLE"; + homepage = "https://github.com/mikeodr/pycasperglow"; + changelog = "https://github.com/mikeodr/pycasperglow/releases/tag/${finalAttrs.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 f09928ddacb6..de7f37dcf248 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13516,6 +13516,8 @@ self: super: with self; { pycasbin = callPackage ../development/python-modules/pycasbin { }; + pycasperglow = callPackage ../development/python-modules/pycasperglow { }; + pycatch22 = callPackage ../development/python-modules/pycatch22 { }; pycayennelpp = callPackage ../development/python-modules/pycayennelpp { };