diff --git a/pkgs/development/python-modules/pymonoprice/default.nix b/pkgs/development/python-modules/pymonoprice/default.nix new file mode 100644 index 000000000000..d1e878ab473e --- /dev/null +++ b/pkgs/development/python-modules/pymonoprice/default.nix @@ -0,0 +1,41 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + pyserial, + pyserial-asyncio-fast, + pytestCheckHook, + setuptools, +}: + +buildPythonPackage rec { + pname = "pymonoprice"; + version = "0.5"; + pyproject = true; + + src = fetchFromGitHub { + owner = "etsinko"; + repo = "pymonoprice"; + tag = version; + hash = "sha256-kyFOWG/Jvn+h9ludzd2Zul9/lkwPxReH76nnDIGD+fM="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + pyserial + pyserial-asyncio-fast + ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + pythonImportsCheck = [ "pymonoprice" ]; + + meta = { + description = "Python 3 interface implementation for Monoprice 6 zone amplifier"; + homepage = "https://github.com/etsinko/pymonoprice"; + changelog = "https://github.com/etsinko/pymonoprice/releases/tag/${version}"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.jamiemagee ]; + }; +} diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index a1a5824877c2..3fec8e07ec1e 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -3693,7 +3693,8 @@ ]; "monoprice" = ps: with ps; [ - ]; # missing inputs: pymonoprice + pymonoprice + ]; "monzo" = ps: with ps; [ monzopy @@ -7319,6 +7320,7 @@ "modem_callerid" "modern_forms" "mold_indicator" + "monoprice" "monzo" "moon" "mopeka" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 337c903a6e4b..a00f7fcc14aa 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13277,6 +13277,8 @@ self: super: with self; { pymongo-inmemory = callPackage ../development/python-modules/pymongo-inmemory { }; + pymonoprice = callPackage ../development/python-modules/pymonoprice { }; + pymoo = callPackage ../development/python-modules/pymoo { }; pymorphy2 = callPackage ../development/python-modules/pymorphy2 { };