diff options
author | Martin Weinelt <hexa@darmstadt.ccc.de> | 2021-06-03 03:43:31 +0200 |
---|---|---|
committer | Martin Weinelt <hexa@darmstadt.ccc.de> | 2021-06-11 11:44:37 +0200 |
commit | d370824442bfcd0f9192b67e774d7b3fc291bf7f (patch) | |
tree | 7464f36c5b0ed155739d95a0eb8cf5dc575981d1 /pkgs/servers/home-assistant | |
parent | dfa53e1aff5f1cbf427d76b7d628e9a4ce9d1010 (diff) | |
download | nixpkgs-d370824442bfcd0f9192b67e774d7b3fc291bf7f.tar nixpkgs-d370824442bfcd0f9192b67e774d7b3fc291bf7f.tar.gz nixpkgs-d370824442bfcd0f9192b67e774d7b3fc291bf7f.tar.bz2 nixpkgs-d370824442bfcd0f9192b67e774d7b3fc291bf7f.tar.lz nixpkgs-d370824442bfcd0f9192b67e774d7b3fc291bf7f.tar.xz nixpkgs-d370824442bfcd0f9192b67e774d7b3fc291bf7f.tar.zst nixpkgs-d370824442bfcd0f9192b67e774d7b3fc291bf7f.zip |
home-assistant: 2021.5.5 -> 2021.6.0
Diffstat (limited to 'pkgs/servers/home-assistant')
-rw-r--r-- | pkgs/servers/home-assistant/component-packages.nix | 31 | ||||
-rw-r--r-- | pkgs/servers/home-assistant/default.nix | 44 | ||||
-rw-r--r-- | pkgs/servers/home-assistant/frontend.nix | 4 |
3 files changed, 59 insertions, 20 deletions
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index fac50abe82c..488fed80fd5 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -96,7 +96,7 @@ "bmp280" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-bmp280 "bmw_connected_drive" = ps: with ps; [ ]; # missing inputs: bimmer_connected "bond" = ps: with ps; [ ]; # missing inputs: bond-api - "bosch_shc" = ps: with ps; [ aiohttp-cors ifaddr zeroconf ]; # missing inputs: boschshcpy + "bosch_shc" = ps: with ps; [ aiohttp-cors boschshcpy ifaddr zeroconf ]; "braviatv" = ps: with ps; [ bravia-tv ]; "broadlink" = ps: with ps; [ broadlink ]; "brother" = ps: with ps; [ brother ]; @@ -313,7 +313,7 @@ "gntp" = ps: with ps; [ gntp ]; "goalfeed" = ps: with ps; [ ]; # missing inputs: pysher "goalzero" = ps: with ps; [ ]; # missing inputs: goalzero - "gogogate2" = ps: with ps; [ ]; # missing inputs: ismartgate + "gogogate2" = ps: with ps; [ ismartgate ]; "google" = ps: with ps; [ google-api-python-client httplib2 oauth2client ]; "google_assistant" = ps: with ps; [ aiohttp-cors ]; "google_cloud" = ps: with ps; [ google-cloud-texttospeech ]; @@ -357,7 +357,7 @@ "home_connect" = ps: with ps; [ aiohttp-cors homeconnect ]; "home_plus_control" = ps: with ps; [ aiohttp-cors homepluscontrol ]; "homeassistant" = ps: with ps; [ ]; - "homekit" = ps: with ps; [ HAP-python pyqrcode pyturbojpeg aiohttp-cors base36 fnvhash ha-ffmpeg ifaddr zeroconf ]; + "homekit" = ps: with ps; [ hap-python pyqrcode pyturbojpeg aiohttp-cors base36 fnvhash ha-ffmpeg ifaddr zeroconf ]; "homekit_controller" = ps: with ps; [ aiohomekit aiohttp-cors ifaddr zeroconf ]; "homematic" = ps: with ps; [ pyhomematic ]; "homematicip_cloud" = ps: with ps; [ homematicip ]; @@ -705,7 +705,7 @@ "rocketchat" = ps: with ps; [ ]; # missing inputs: rocketchat-API "roku" = ps: with ps; [ rokuecp ]; "roomba" = ps: with ps; [ roombapy ]; - "roon" = ps: with ps; [ pyroon ]; + "roon" = ps: with ps; [ roonapi ]; "route53" = ps: with ps; [ boto3 ]; "rova" = ps: with ps; [ ]; # missing inputs: rova "rpi_camera" = ps: with ps; [ ]; @@ -719,10 +719,10 @@ "ruckus_unleashed" = ps: with ps; [ pyruckus ]; "russound_rio" = ps: with ps; [ ]; # missing inputs: russound_rio "russound_rnet" = ps: with ps; [ ]; # missing inputs: russound - "sabnzbd" = ps: with ps; [ aiohttp-cors netdisco pyroute2 zeroconf ]; # missing inputs: pysabnzbd + "sabnzbd" = ps: with ps; [ aiohttp-cors ifaddr netdisco zeroconf ]; # missing inputs: pysabnzbd "safe_mode" = ps: with ps; [ aiohttp-cors hass-nabucasa pillow ]; "saj" = ps: with ps; [ ]; # missing inputs: pysaj - "samsungtv" = ps: with ps; [ samsungctl samsungtvws ]; + "samsungtv" = ps: with ps; [ samsungctl samsungtvws wakeonlan ]; "satel_integra" = ps: with ps; [ ]; # missing inputs: satel_integra "scene" = ps: with ps; [ ]; "schluter" = ps: with ps; [ ]; # missing inputs: py-schluter @@ -736,7 +736,7 @@ "sense" = ps: with ps; [ ]; # missing inputs: sense_energy "sensehat" = ps: with ps; [ ]; # missing inputs: sense-hat "sensibo" = ps: with ps; [ ]; # missing inputs: pysensibo - "sensor" = ps: with ps; [ ]; + "sensor" = ps: with ps; [ sqlalchemy ]; "sentry" = ps: with ps; [ sentry-sdk ]; "serial" = ps: with ps; [ pyserial-asyncio ]; "serial_pm" = ps: with ps; [ ]; # missing inputs: pmsensor @@ -750,6 +750,7 @@ "shodan" = ps: with ps; [ shodan ]; "shopping_list" = ps: with ps; [ aiohttp-cors ]; "sht31" = ps: with ps; [ ]; # missing inputs: Adafruit-GPIO Adafruit-SHT31 + "sia" = ps: with ps; [ ]; # missing inputs: pysiaalarm "sigfox" = ps: with ps; [ ]; "sighthound" = ps: with ps; [ pillow simplehound ]; "signal_messenger" = ps: with ps; [ ]; # missing inputs: pysignalclirestapi @@ -789,18 +790,17 @@ "songpal" = ps: with ps; [ ]; # missing inputs: python-songpal "sonos" = ps: with ps; [ aiohttp-cors plexapi plexauth plexwebsocket pysonos ]; "sony_projector" = ps: with ps; [ ]; # missing inputs: pysdcp - "soundtouch" = ps: with ps; [ aiohttp-cors libsoundtouch pyroute2 zeroconf ]; + "soundtouch" = ps: with ps; [ aiohttp-cors ifaddr libsoundtouch zeroconf ]; "spaceapi" = ps: with ps; [ aiohttp-cors ]; "spc" = ps: with ps; [ ]; # missing inputs: pyspcwebgw "speedtestdotnet" = ps: with ps; [ speedtest-cli ]; "spider" = ps: with ps; [ ]; # missing inputs: spiderpy "splunk" = ps: with ps; [ ]; # missing inputs: hass_splunk - "spotcrime" = ps: with ps; [ ]; # missing inputs: spotcrime "spotify" = ps: with ps; [ aiohttp-cors spotipy ]; "sql" = ps: with ps; [ sqlalchemy ]; "squeezebox" = ps: with ps; [ pysqueezebox ]; "srp_energy" = ps: with ps; [ ]; # missing inputs: srpenergy - "ssdp" = ps: with ps; [ aiohttp-cors async-upnp-client defusedxml netdisco pyroute2 zeroconf ]; + "ssdp" = ps: with ps; [ aiohttp-cors async-upnp-client defusedxml ifaddr netdisco zeroconf ]; "starline" = ps: with ps; [ ]; # missing inputs: starline "starlingbank" = ps: with ps; [ ]; # missing inputs: starlingbank "startca" = ps: with ps; [ xmltodict ]; @@ -825,11 +825,13 @@ "switchbot" = ps: with ps; [ pyswitchbot ]; "switcher_kis" = ps: with ps; [ aioswitcher ]; "switchmate" = ps: with ps; [ ]; # missing inputs: pySwitchmate + "syncthing" = ps: with ps; [ aiosyncthing ]; "syncthru" = ps: with ps; [ url-normalize ]; # missing inputs: pysyncthru "synology_chat" = ps: with ps; [ ]; "synology_dsm" = ps: with ps; [ ]; # missing inputs: synologydsm-api "synology_srm" = ps: with ps; [ ]; # missing inputs: synology-srm "syslog" = ps: with ps; [ ]; + "system_bridge" = ps: with ps; [ aiohttp-cors ifaddr systembridge zeroconf ]; "system_health" = ps: with ps; [ aiohttp-cors ]; "system_log" = ps: with ps; [ aiohttp-cors ]; "systemmonitor" = ps: with ps; [ psutil ]; @@ -937,11 +939,12 @@ "vultr" = ps: with ps; [ vultr ]; "w800rf32" = ps: with ps; [ ]; # missing inputs: pyW800rf32 "wake_on_lan" = ps: with ps; [ wakeonlan ]; + "wallbox" = ps: with ps; [ ]; # missing inputs: wallbox "waqi" = ps: with ps; [ waqiasync ]; "water_heater" = ps: with ps; [ ]; "waterfurnace" = ps: with ps; [ waterfurnace ]; "watson_iot" = ps: with ps; [ ]; # missing inputs: ibmiotf - "watson_tts" = ps: with ps; [ ]; # missing inputs: ibm-watson + "watson_tts" = ps: with ps; [ ibm-watson ]; "waze_travel_time" = ps: with ps; [ WazeRouteCalculator ]; "weather" = ps: with ps; [ ]; "webhook" = ps: with ps; [ aiohttp-cors ]; @@ -968,7 +971,7 @@ "xbox_live" = ps: with ps; [ xboxapi ]; "xeoma" = ps: with ps; [ pyxeoma ]; "xiaomi" = ps: with ps; [ ha-ffmpeg ]; - "xiaomi_aqara" = ps: with ps; [ pyxiaomigateway aiohttp-cors netdisco pyroute2 zeroconf ]; + "xiaomi_aqara" = ps: with ps; [ pyxiaomigateway aiohttp-cors ifaddr netdisco zeroconf ]; "xiaomi_miio" = ps: with ps; [ construct python-miio ]; "xiaomi_tv" = ps: with ps; [ pymitv ]; "xmpp" = ps: with ps; [ slixmpp ]; @@ -984,10 +987,10 @@ "zabbix" = ps: with ps; [ ]; # missing inputs: py-zabbix "zamg" = ps: with ps; [ ]; "zengge" = ps: with ps; [ ]; # missing inputs: zengge - "zeroconf" = ps: with ps; [ aiohttp-cors pyroute2 zeroconf ]; + "zeroconf" = ps: with ps; [ aiohttp-cors ifaddr zeroconf ]; "zerproc" = ps: with ps; [ pyzerproc ]; "zestimate" = ps: with ps; [ xmltodict ]; - "zha" = ps: with ps; [ aiohttp-cors bellows pyroute2 pyserial-asyncio pyserial zeroconf zha-quirks zigpy-cc zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp zigpy ]; + "zha" = ps: with ps; [ aiohttp-cors bellows ifaddr pyserial-asyncio pyserial zeroconf zha-quirks zigpy-cc zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp zigpy ]; "zhong_hong" = ps: with ps; [ ]; # missing inputs: zhong_hong_hvac "ziggo_mediabox_xl" = ps: with ps; [ ]; # missing inputs: ziggo-mediabox-xl "zodiac" = ps: with ps; [ ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index b6f3d9129f9..42e265d5944 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -3,6 +3,7 @@ , fetchFromGitHub , python3 , inetutils +, tzdata , nixosTests # Look up dependencies of specified components in component-packages.nix @@ -21,7 +22,31 @@ let defaultOverrides = [ - # Override the version of some packages pinned in Home Assistant's setup.py + # Override the version of some packages pinned in Home Assistant's setup.py and requirements_all.txt + + # https://github.com/NixOS/nixpkgs/pull/125414 + (mkOverride "flask" "2.0.1" "0mcgwq7b4qd99mf5bsvs3wphchxarf8kgil4hwww3blj31xjak0w") + (mkOverride "itsdangerous" "2.0.1" "1w6gfb2zhbcmrfj6digwzw1z68w6zg1q87rm6la2m412zil4swly") + (mkOverride "jinja2" "3.0.1" "197ms1wimxql650245v63wkv04n8bicj549wfhp51bx68x5lhgvh") + (mkOverride "markupsafe" "2.0.1" "02k2ynmqvvd0z0gakkf8s4idyb606r7zgga41jrkhqmigy06fk2r") + (self: super: { + werkzeug = super.werkzeug.overridePythonAttrs (oldAttrs: rec { + version = "2.0.1"; + src = oldAttrs.src.override { + inherit version; + sha256 = "0hlwawnn8c41f254qify5jnjj8xb97n294h09bqimzqhs0qdpq8x"; + }; + checkInputs = oldAttrs.checkInputs ++ [ python3.pkgs.pytest-xprocess ]; + pytestFlagsArray = [ "-m 'not filterwarnings'" ]; + }); + }) + (mkOverride "flask-restful" "0.3.9" "0gm5dz088v3d2k1dkcp9b3nnqpkk0fp2jly870hijj2xhc5nbv6c") + (self: super: { + debugpy = super.debugpy.overridePythonAttrs (oldAttrs: rec { + # tests fail with flask/werkezug>=2.0 + doCheck = false; + }); + }) # Pinned due to API changes in iaqualink>=2.0, remove after # https://github.com/home-assistant/core/pull/48137 was merged @@ -43,6 +68,7 @@ let pyjwt = super.pyjwt.overridePythonAttrs (oldAttrs: rec { version = "1.7.1"; src = oldAttrs.src.override { + inherit version; sha256 = "15hflax5qkw1v6nssk1r0wkj83jgghskcmn875m3wgvpzdvajncd"; }; disabledTests = [ @@ -155,7 +181,7 @@ let extraBuildInputs = extraPackages py.pkgs; # Don't forget to run parse-requirements.py after updating - hassVersion = "2021.5.5"; + hassVersion = "2021.6.0"; in with py.pkgs; buildPythonApplication rec { pname = "homeassistant"; @@ -174,7 +200,7 @@ in with py.pkgs; buildPythonApplication rec { owner = "home-assistant"; repo = "core"; rev = version; - sha256 = "1vdxygjik1ay58xgyr1rk12cgy63raqi4fldnd4mlhs4i21c7ff8"; + sha256 = "0x1yx8ysd08azk1wscn8v7zljj6k951d8z4z9znzqp129y91x59w"; }; # leave this in, so users don't have to constantly update their downstream patch handling @@ -183,7 +209,8 @@ in with py.pkgs; buildPythonApplication rec { postPatch = '' substituteInPlace setup.py \ - --replace "awesomeversion==21.2.3" "awesomeversion" \ + --replace "attrs==21.2.0" "attrs" \ + --replace "awesomeversion==21.4.0" "awesomeversion" \ --replace "bcrypt==3.1.7" "bcrypt" \ --replace "cryptography==3.3.2" "cryptography" \ --replace "pip>=8.0.3,<20.3" "pip" \ @@ -215,6 +242,8 @@ in with py.pkgs; buildPythonApplication rec { voluptuous voluptuous-serialize yarl + ] ++ lib.optionals (pythonOlder "3.9") [ + backports-zoneinfo ] ++ componentBuildInputs ++ extraBuildInputs; makeWrapperArgs = lib.optional skipPip "--add-flags --skip-pip"; @@ -277,6 +306,7 @@ in with py.pkgs; buildPythonApplication rec { "blackbird" "blueprint" "bluetooth_le_tracker" + "bosch_shc" "braviatv" "broadlink" "brother" @@ -360,6 +390,7 @@ in with py.pkgs; buildPythonApplication rec { "geofency" "glances" "gios" + "gogogate2" "google" "google_assistant" "google_domains" @@ -684,6 +715,8 @@ in with py.pkgs; buildPythonApplication rec { "--deselect tests/components/shelly/test_config_flow.py::test_zeroconf_require_auth" # prometheus/test_init.py: Spurious AssertionError regarding humidifier_target_humidity_percent metric "--deselect tests/components/prometheus/test_init.py::test_view" + # smhi/test_init.py: Tries to fetch data from the network: socket.gaierror: [Errno -2] Name or service not known + "--deselect tests/components/smhi/test_init.py::test_remove_entry" # tests are located in tests/ "tests" # dynamically add packages required for component tests @@ -728,6 +761,9 @@ in with py.pkgs; buildPythonApplication rec { # put ping binary into PATH, e.g. for wake_on_lan tests export PATH=${inetutils}/bin:$PATH + # set up zoneinfo data for backports-zoneinfo in pvpc_hourly_pricing tests + export PYTHONTZPATH="${tzdata}/share/zoneinfo" + # error out when component test directory is missing, otherwise hidden by xdist execution :( for component in ${lib.concatStringsSep " " (map lib.escapeShellArg componentTests)}; do test -d "tests/components/$component" || { diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix index bd490654420..a9b16487167 100644 --- a/pkgs/servers/home-assistant/frontend.nix +++ b/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 = "20210504.0"; + version = "20210601.1"; src = fetchPypi { inherit pname version; - sha256 = "sha256-rNdqflWT8bmGHtAGGfq4xVxDcnK+EZU9qejRWQPJmUI="; + sha256 = "sha256-z2KvP/zMibhpDzBBuWVD0Qpb37NaX3kxyNW4bY9WJrE="; }; # there is nothing to strip in this package |