diff options
author | Fabian Affolter <fabian@affolter-engineering.ch> | 2021-06-18 09:22:52 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-18 09:22:52 +0200 |
commit | c67ec6ddeafbb77b7c7da5f9cb759203a114dca4 (patch) | |
tree | 0c6c024a11fffa5525b1bc081c14bdd1a1fad5c6 | |
parent | eea216fede56d1410a9f416afd4829216d9bed9f (diff) | |
parent | be2b5534e20faaef3fe5dc95542fd276db0cbe81 (diff) | |
download | nixpkgs-c67ec6ddeafbb77b7c7da5f9cb759203a114dca4.tar nixpkgs-c67ec6ddeafbb77b7c7da5f9cb759203a114dca4.tar.gz nixpkgs-c67ec6ddeafbb77b7c7da5f9cb759203a114dca4.tar.bz2 nixpkgs-c67ec6ddeafbb77b7c7da5f9cb759203a114dca4.tar.lz nixpkgs-c67ec6ddeafbb77b7c7da5f9cb759203a114dca4.tar.xz nixpkgs-c67ec6ddeafbb77b7c7da5f9cb759203a114dca4.tar.zst nixpkgs-c67ec6ddeafbb77b7c7da5f9cb759203a114dca4.zip |
Merge pull request #127281 from dotlambda/eebrightbox-init
home-assistant: support ee_brightbox component
-rw-r--r-- | pkgs/development/python-modules/calmjs-parse/default.nix | 49 | ||||
-rw-r--r-- | pkgs/development/python-modules/eebrightbox/default.nix | 58 | ||||
-rw-r--r-- | pkgs/servers/home-assistant/component-packages.nix | 2 | ||||
-rw-r--r-- | pkgs/servers/home-assistant/default.nix | 14 | ||||
-rw-r--r-- | pkgs/top-level/python-packages.nix | 4 |
5 files changed, 126 insertions, 1 deletions
diff --git a/pkgs/development/python-modules/calmjs-parse/default.nix b/pkgs/development/python-modules/calmjs-parse/default.nix new file mode 100644 index 00000000000..33cf052a442 --- /dev/null +++ b/pkgs/development/python-modules/calmjs-parse/default.nix @@ -0,0 +1,49 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, setuptools +, ply +, python +}: + +buildPythonPackage rec { + pname = "calmjs-parse"; + version = "1.2.5"; + + src = fetchFromGitHub { + owner = "calmjs"; + repo = "calmjs.parse"; + rev = version; + sha256 = "0ypfbas33k1706p6w1bf9gnrv38z8fa4qci1iaks80dp58g8sv4r"; + }; + + propagatedBuildInputs = [ + setuptools + ply + ]; + + checkPhase = '' + runHook preCheck + + ${python.interpreter} -m unittest calmjs.parse.tests.make_suite + + runHook postCheck + ''; + + pythonImportsCheck = [ + "calmjs.parse" + "calmjs.parse.asttypes" + "calmjs.parse.parsers" + "calmjs.parse.rules" + "calmjs.parse.sourcemap" + "calmjs.parse.unparsers.es5" + "calmjs.parse.walkers" + ]; + + meta = with lib; { + description = "Various parsers for ECMA standards"; + homepage = "https://github.com/calmjs/calmjs.parse"; + license = licenses.mit; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/eebrightbox/default.nix b/pkgs/development/python-modules/eebrightbox/default.nix new file mode 100644 index 00000000000..d8050b9bf5e --- /dev/null +++ b/pkgs/development/python-modules/eebrightbox/default.nix @@ -0,0 +1,58 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pbr +, calmjs-parse +, certifi +, chardet +, idna +, ply +, requests +, urllib3 +, httpretty +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "eebrightbox"; + version = "0.0.6"; + + src = fetchFromGitHub { + owner = "krygal"; + repo = "eebrightbox"; + rev = version; + sha256 = "1kms240g01871qbvyc5rzf86yxsrlnfvp323jh4k35fpf45z44rr"; + }; + + postPatch = '' + substituteInPlace requirements.txt --replace "==" ">=" + ''; + + nativeBuildInputs = [ + pbr + ]; + + PBR_VERSION = version; + + propagatedBuildInputs = [ + calmjs-parse + certifi + chardet + idna + ply + requests + urllib3 + ]; + + checkInputs = [ + httpretty + pytestCheckHook + ]; + + meta = with lib; { + description = "Connector for EE BrightBox routers"; + homepage = "https://github.com/krygal/eebrightbox"; + 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 95a7ef3c606..00ae505cbfb 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -209,7 +209,7 @@ "eddystone_temperature" = ps: with ps; [ construct ]; # missing inputs: beacontools[scan] "edimax" = ps: with ps; [ pyedimax ]; "edl21" = ps: with ps; [ ]; # missing inputs: pysml - "ee_brightbox" = ps: with ps; [ ]; # missing inputs: eebrightbox + "ee_brightbox" = ps: with ps; [ eebrightbox ]; "efergy" = ps: with ps; [ ]; "egardia" = ps: with ps; [ pythonegardia ]; "eight_sleep" = ps: with ps; [ pyeight ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 004a65daee9..c17fe16dbf8 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -134,6 +134,19 @@ let }); }) + # Pinned due to API changes in eebrightbox>=0.0.5 + (self: super: { + eebrightbox = super.eebrightbox.overridePythonAttrs (oldAttrs: rec { + version = "0.0.4"; + src = fetchFromGitHub { + owner = "krygal"; + repo = "eebrightbox"; + rev = version; + sha256 = "0d8mmpwgrd7gymw5263r1v2wjv6dx6w6pq13d62fkfm4h2hya4a4"; + }; + }); + }) + # home-assistant-frontend does not exist in python3.pkgs (self: super: { home-assistant-frontend = self.callPackage ./frontend.nix { }; @@ -352,6 +365,7 @@ in with py.pkgs; buildPythonApplication rec { "eafm" "ecobee" "econet" + "ee_brightbox" "efergy" "emonitor" "emulated_hue" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 49b5d629e9a..c52c1b8ad03 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1277,6 +1277,8 @@ in { caldav = callPackage ../development/python-modules/caldav { }; + calmjs-parse = callPackage ../development/python-modules/calmjs-parse { }; + can = callPackage ../development/python-modules/can { }; canmatrix = callPackage ../development/python-modules/canmatrix { }; @@ -2229,6 +2231,8 @@ in { edward = callPackage ../development/python-modules/edward { }; + eebrightbox = callPackage ../development/python-modules/eebrightbox { }; + effect = callPackage ../development/python-modules/effect { }; eggdeps = callPackage ../development/python-modules/eggdeps { }; |