diff --git a/pkgs/development/python-modules/enocean/default.nix b/pkgs/development/python-modules/enocean/default.nix new file mode 100644 index 000000000000..365d6c94ef28 --- /dev/null +++ b/pkgs/development/python-modules/enocean/default.nix @@ -0,0 +1,51 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, beautifulsoup4 +, enum-compat +, pyserial +, nose +}: + +buildPythonPackage rec { + pname = "enocean"; + version = "0.60.1"; + + src = fetchFromGitHub { + owner = "kipe"; + repo = "enocean"; + rev = version; + sha256 = "0cbcvvy3qaqv8925z608qmkc1l914crzw79krwrz2vpm2fyribab"; + }; + + propagatedBuildInputs = [ + beautifulsoup4 + enum-compat + pyserial + ]; + + checkInputs = [ + nose + ]; + + checkPhase = '' + runHook preCheck + + nosetests + + runHook postCheck + ''; + + pythonImportsCheck = [ + "enocean.communicators" + "enocean.protocol.packet" + "enocean.utils" + ]; + + meta = with lib; { + description = "EnOcean serial protocol implementation"; + homepage = "https://github.com/kipe/enocean"; + license = licenses.mit; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 8aea801c68d6..34db3b64dfd6 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -225,7 +225,7 @@ "emulated_kasa" = ps: with ps; [ sense-energy ]; "emulated_roku" = ps: with ps; [ ]; # missing inputs: emulated_roku "enigma2" = ps: with ps; [ openwebifpy ]; - "enocean" = ps: with ps; [ ]; # missing inputs: enocean + "enocean" = ps: with ps; [ enocean ]; "enphase_envoy" = ps: with ps; [ envoy-reader ]; "entur_public_transport" = ps: with ps; [ ]; # missing inputs: enturclient "environment_canada" = ps: with ps; [ ]; # missing inputs: env_canada diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 6cc18d09dced..1f52ca95d732 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -372,6 +372,7 @@ in with py.pkgs; buildPythonApplication rec { "emonitor" "emulated_hue" "emulated_kasa" + "enocean" "enphase_envoy" "epson" "esphome" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f48d055400f0..4b258efcc92b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2269,6 +2269,8 @@ in { enamlx = callPackage ../development/python-modules/enamlx { }; + enocean = callPackage ../development/python-modules/enocean { }; + enrich = callPackage ../development/python-modules/enrich { }; entrance = callPackage ../development/python-modules/entrance {