about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/home-assistant
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2020-05-12 14:45:39 +0000
committerAlyssa Ross <hi@alyssa.is>2020-05-12 14:56:01 +0000
commiteb7dadee9c0f903f1152f8dd4165453bfa48ccf4 (patch)
treea6bd66dcbec895aae167465672af08a1ca70f089 /nixpkgs/pkgs/servers/home-assistant
parent3879b925f5dae3a0eb5c98b10c1ac5a0e4d729a3 (diff)
parent683c68232e91f76386db979c461d8fbe2a018782 (diff)
downloadnixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.gz
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.bz2
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.lz
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.xz
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.zst
nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.zip
Merge commit '683c68232e91f76386db979c461d8fbe2a018782'
Diffstat (limited to 'nixpkgs/pkgs/servers/home-assistant')
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/0001-setup.py-relax-dependencies.patch23
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/component-packages.nix20
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/frontend.nix4
-rwxr-xr-xnixpkgs/pkgs/servers/home-assistant/parse-requirements.py2
5 files changed, 39 insertions, 23 deletions
diff --git a/nixpkgs/pkgs/servers/home-assistant/0001-setup.py-relax-dependencies.patch b/nixpkgs/pkgs/servers/home-assistant/0001-setup.py-relax-dependencies.patch
index 52d2daf80b08..e1cf8ada016a 100644
--- a/nixpkgs/pkgs/servers/home-assistant/0001-setup.py-relax-dependencies.patch
+++ b/nixpkgs/pkgs/servers/home-assistant/0001-setup.py-relax-dependencies.patch
@@ -1,4 +1,4 @@
-From 80f39643bb4d25f8ffcbd92804844961b303f4d0 Mon Sep 17 00:00:00 2001
+From 55cb3ba4458bd43588e7921906d091d001130ab0 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io>
 Date: Thu, 9 Apr 2020 07:20:46 +0100
 Subject: [PATCH] setup.py: relax dependencies
@@ -8,14 +8,14 @@ Content-Transfer-Encoding: 8bit
 
 Signed-off-by: Jörg Thalheim <joerg@thalheim.io>
 ---
- setup.py | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
+ setup.py | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
 
 diff --git a/setup.py b/setup.py
-index f53af0ee1..ff4227487 100755
+index 0c56e89b67..ba04546130 100755
 --- a/setup.py
 +++ b/setup.py
-@@ -32,10 +32,10 @@ PROJECT_URLS = {
+@@ -32,24 +32,24 @@ PROJECT_URLS = {
  PACKAGES = find_packages(exclude=["tests", "tests.*"])
  
  REQUIRES = [
@@ -26,9 +26,16 @@ index f53af0ee1..ff4227487 100755
 -    "attrs==19.3.0",
 +    "attrs>=19.3.0",
      "bcrypt==3.1.7",
-     "certifi>=2019.11.28",
+-    "certifi>=2020.4.5.1",
++    "certifi>=2019.11.28",
      "ciso8601==2.1.3",
-@@ -47,9 +47,9 @@ REQUIRES = [
+-    "importlib-metadata==1.6.0",
++    "importlib-metadata>=1.5.0",
+     "jinja2>=2.11.1",
+     "PyJWT==1.7.1",
+     # PyJWT has loose dependency. We want the latest one.
+-    "cryptography==2.9",
++    "cryptography>=2.9",
      "pip>=8.0.3",
      "python-slugify==4.0.0",
      "pytz>=2019.03",
@@ -42,5 +49,5 @@ index f53af0ee1..ff4227487 100755
      "voluptuous-serialize==2.3.0",
  ]
 -- 
-2.25.1
+2.26.1
 
diff --git a/nixpkgs/pkgs/servers/home-assistant/component-packages.nix b/nixpkgs/pkgs/servers/home-assistant/component-packages.nix
index d19b70c426ea..96ca0c83898d 100644
--- a/nixpkgs/pkgs/servers/home-assistant/component-packages.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/component-packages.nix
@@ -2,7 +2,7 @@
 # Do not edit!
 
 {
-  version = "0.108.2";
+  version = "0.109.6";
   components = {
     "abode" = ps: with ps; [ ]; # missing inputs: abodepy
     "acer_projector" = ps: with ps; [ pyserial];
@@ -42,11 +42,13 @@
     "arduino" = ps: with ps; [ ]; # missing inputs: PyMata
     "arest" = ps: with ps; [ ];
     "arlo" = ps: with ps; [ ha-ffmpeg]; # missing inputs: pyarlo
+    "arris_tg2492lg" = ps: with ps; [ ]; # missing inputs: arris-tg2492lg
     "aruba" = ps: with ps; [ pexpect];
     "arwn" = ps: with ps; [ aiohttp-cors hbmqtt paho-mqtt];
     "asterisk_cdr" = ps: with ps; [ ]; # missing inputs: asterisk_mbox
     "asterisk_mbox" = ps: with ps; [ ]; # missing inputs: asterisk_mbox
     "asuswrt" = ps: with ps; [ ]; # missing inputs: aioasuswrt
+    "atag" = ps: with ps; [ ]; # missing inputs: pyatag
     "aten_pe" = ps: with ps; [ ]; # missing inputs: atenpdu
     "atome" = ps: with ps; [ ]; # missing inputs: pyatome
     "august" = ps: with ps; [ ]; # missing inputs: py-august
@@ -86,7 +88,7 @@
     "bmp280" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-bmp280
     "bmw_connected_drive" = ps: with ps; [ ]; # missing inputs: bimmer_connected
     "bom" = ps: with ps; [ ]; # missing inputs: bomradarloop
-    "braviatv" = ps: with ps; [ bravia-tv getmac];
+    "braviatv" = ps: with ps; [ bravia-tv];
     "broadlink" = ps: with ps; [ broadlink];
     "brother" = ps: with ps; [ ]; # missing inputs: brother
     "brottsplatskartan" = ps: with ps; [ ]; # missing inputs: brottsplatskartan
@@ -139,7 +141,7 @@
     "datadog" = ps: with ps; [ datadog];
     "ddwrt" = ps: with ps; [ ];
     "deconz" = ps: with ps; [ ]; # missing inputs: pydeconz
-    "decora" = ps: with ps; [ ]; # missing inputs: bluepy decora
+    "decora" = ps: with ps; [ bluepy]; # missing inputs: decora
     "decora_wifi" = ps: with ps; [ ]; # missing inputs: decora_wifi
     "default_config" = ps: with ps; [ pynacl aiohttp-cors defusedxml distro hass-nabucasa netdisco sqlalchemy zeroconf]; # missing inputs: home-assistant-frontend
     "delijn" = ps: with ps; [ ]; # missing inputs: pydelijn
@@ -327,7 +329,7 @@
     "hive" = ps: with ps; [ ]; # missing inputs: pyhiveapi
     "hlk_sw16" = ps: with ps; [ ]; # missing inputs: hlk-sw16
     "homeassistant" = ps: with ps; [ ];
-    "homekit" = ps: with ps; [ HAP-python];
+    "homekit" = ps: with ps; [ HAP-python pyqrcode aiohttp-cors]; # missing inputs: base36 fnvhash
     "homekit_controller" = ps: with ps; [ ]; # missing inputs: aiohomekit[IP]
     "homematic" = ps: with ps; [ pyhomematic];
     "homematicip_cloud" = ps: with ps; [ ]; # missing inputs: homematicip
@@ -467,7 +469,7 @@
     "microsoft_face" = ps: with ps; [ aiohttp-cors];
     "microsoft_face_detect" = ps: with ps; [ aiohttp-cors];
     "microsoft_face_identify" = ps: with ps; [ aiohttp-cors];
-    "miflora" = ps: with ps; [ ]; # missing inputs: bluepy miflora
+    "miflora" = ps: with ps; [ bluepy]; # missing inputs: miflora
     "mikrotik" = ps: with ps; [ ]; # missing inputs: librouteros
     "mill" = ps: with ps; [ ]; # missing inputs: millheater
     "min_max" = ps: with ps; [ ];
@@ -548,6 +550,7 @@
     "openalpr_cloud" = ps: with ps; [ ];
     "openalpr_local" = ps: with ps; [ ];
     "opencv" = ps: with ps; [ numpy]; # missing inputs: opencv-python-headless
+    "openerz" = ps: with ps; [ ]; # missing inputs: openerz-api
     "openevse" = ps: with ps; [ ]; # missing inputs: openevsewifi
     "openexchangerates" = ps: with ps; [ ];
     "opengarage" = ps: with ps; [ ];
@@ -567,7 +570,7 @@
     "otp" = ps: with ps; [ pyotp];
     "owntracks" = ps: with ps; [ pynacl aiohttp-cors];
     "panasonic_bluray" = ps: with ps; [ ]; # missing inputs: panacotta
-    "panasonic_viera" = ps: with ps; [ wakeonlan]; # missing inputs: panasonic_viera
+    "panasonic_viera" = ps: with ps; [ ]; # missing inputs: panasonic_viera
     "pandora" = ps: with ps; [ pexpect];
     "panel_custom" = ps: with ps; [ aiohttp-cors]; # missing inputs: home-assistant-frontend
     "panel_iframe" = ps: with ps; [ aiohttp-cors]; # missing inputs: home-assistant-frontend
@@ -576,6 +579,7 @@
     "persistent_notification" = ps: with ps; [ ];
     "person" = ps: with ps; [ ];
     "philips_js" = ps: with ps; [ ]; # missing inputs: ha-philipsjs
+    "pi4ioe5v9xxxx" = ps: with ps; [ ]; # missing inputs: pi4ioe5v9xxxx
     "pi_hole" = ps: with ps; [ ]; # missing inputs: hole
     "picotts" = ps: with ps; [ ];
     "piglow" = ps: with ps; [ ]; # missing inputs: piglow
@@ -603,7 +607,6 @@
     "pulseaudio_loopback" = ps: with ps; [ ];
     "push" = ps: with ps; [ aiohttp-cors];
     "pushbullet" = ps: with ps; [ pushbullet];
-    "pushetta" = ps: with ps; [ ]; # missing inputs: pushetta
     "pushover" = ps: with ps; [ pushover-complete];
     "pushsafer" = ps: with ps; [ ];
     "pvoutput" = ps: with ps; [ ];
@@ -761,8 +764,8 @@
     "syncthru" = ps: with ps; [ ]; # missing inputs: pysyncthru
     "synology" = ps: with ps; [ ]; # missing inputs: py-synology
     "synology_chat" = ps: with ps; [ ];
+    "synology_dsm" = ps: with ps; [ ]; # missing inputs: python-synology
     "synology_srm" = ps: with ps; [ ]; # missing inputs: synology-srm
-    "synologydsm" = ps: with ps; [ ]; # missing inputs: python-synology
     "syslog" = ps: with ps; [ ];
     "system_health" = ps: with ps; [ aiohttp-cors];
     "system_log" = ps: with ps; [ aiohttp-cors];
@@ -912,7 +915,6 @@
     "yessssms" = ps: with ps; [ ]; # missing inputs: YesssSMS
     "yi" = ps: with ps; [ aioftp ha-ffmpeg];
     "yr" = ps: with ps; [ xmltodict];
-    "yweather" = ps: with ps; [ yahooweather];
     "zabbix" = ps: with ps; [ ]; # missing inputs: pyzabbix
     "zamg" = ps: with ps; [ ];
     "zengge" = ps: with ps; [ ]; # missing inputs: zengge
diff --git a/nixpkgs/pkgs/servers/home-assistant/default.nix b/nixpkgs/pkgs/servers/home-assistant/default.nix
index 51b6d94860cc..9471a5faad8a 100644
--- a/nixpkgs/pkgs/servers/home-assistant/default.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchurl, fetchFromGitHub, fetchpatch, python3, protobuf3_6
+{ stdenv, lib, fetchurl, fetchFromGitHub, fetchpatch, python3, protobuf3_6
 
 # Look up dependencies of specified components in component-packages.nix
 , extraComponents ? [ ]
@@ -67,7 +67,7 @@ let
   extraBuildInputs = extraPackages py.pkgs;
 
   # Don't forget to run parse-requirements.py after updating
-  hassVersion = "0.108.2";
+  hassVersion = "0.109.6";
 
 in with py.pkgs; buildPythonApplication rec {
   pname = "homeassistant";
@@ -86,7 +86,7 @@ in with py.pkgs; buildPythonApplication rec {
     owner = "home-assistant";
     repo = "home-assistant";
     rev = version;
-    sha256 = "0v4i1ak7pkpycas0mzdmxgc42xgfymwx2b0a2a4h13c4z46pbs2l";
+    sha256 = "133l6n165yivnc9qmrahk423hmns0hn0dbnx4ys7yaw3x5hqwyns";
   };
 
   propagatedBuildInputs = [
@@ -98,6 +98,9 @@ in with py.pkgs; buildPythonApplication rec {
     sqlalchemy aiohttp-cors hass-frontend pyotp pyqrcode ciso8601
   ] ++ componentBuildInputs ++ extraBuildInputs;
 
+  # upstream only tests on Linux, so do we.
+  doCheck = stdenv.isLinux;
+
   checkInputs = [
     asynctest pytest pytest-aiohttp requests-mock hass-nabucasa netdisco pydispatcher
   ];
@@ -118,6 +121,10 @@ in with py.pkgs; buildPythonApplication rec {
 
   makeWrapperArgs = lib.optional skipPip "--add-flags --skip-pip";
 
+  passthru = {
+    inherit (py.pkgs) hass-frontend;
+  };
+
   meta = with lib; {
     homepage = "https://home-assistant.io/";
     description = "Open-source home automation platform running on Python 3";
diff --git a/nixpkgs/pkgs/servers/home-assistant/frontend.nix b/nixpkgs/pkgs/servers/home-assistant/frontend.nix
index 9e12016320c9..9fb543d06ce2 100644
--- a/nixpkgs/pkgs/servers/home-assistant/frontend.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/frontend.nix
@@ -4,11 +4,11 @@ buildPythonPackage rec {
   # the frontend version corresponding to a specific home-assistant version can be found here
   # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json
   pname = "home-assistant-frontend";
-  version = "20200407.2";
+  version = "20200505.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0krwn67bkybjb69daik6dki5hm36xs4nbfwqkh0q7ami1xr1f56d";
+    sha256 = "0h19ddgnws5l49fwr4b0j99j4xkhpxkwdsmq71q36akd4s5lj0ll";
   };
 
   # no Python tests implemented
diff --git a/nixpkgs/pkgs/servers/home-assistant/parse-requirements.py b/nixpkgs/pkgs/servers/home-assistant/parse-requirements.py
index 1467c3b528c6..f802485d6c62 100755
--- a/nixpkgs/pkgs/servers/home-assistant/parse-requirements.py
+++ b/nixpkgs/pkgs/servers/home-assistant/parse-requirements.py
@@ -80,7 +80,7 @@ def parse_components(version: str = "master"):
 
 # Recursively get the requirements of a component and its dependencies
 def get_reqs(components, component):
-    requirements = set(components[component]["requirements"])
+    requirements = set(components[component].get("requirements", []))
     deps = components[component].get("dependencies", [])
     for dependency in deps:
         requirements.update(get_reqs(components, dependency))