diff options
author | Martin Weinelt <hexa@darmstadt.ccc.de> | 2022-02-02 21:53:50 +0100 |
---|---|---|
committer | Martin Weinelt <hexa@darmstadt.ccc.de> | 2022-02-03 02:17:16 +0100 |
commit | 93a6cd0fd6e5540bfbc40e38502425078d91d137 (patch) | |
tree | 1a1aae160ca534eff6b30b16ab91e2ff8f8241e4 /pkgs | |
parent | cb9bb7723736fc84c2ad7e9671538dd5c4b2c7ba (diff) |
home-assistant: 2021.12.10 -> 2022.2.0
https://www.home-assistant.io/blog/2022/02/02/release-20222/
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/servers/home-assistant/component-packages.nix | 64 | ||||
-rw-r--r-- | pkgs/servers/home-assistant/default.nix | 74 | ||||
-rw-r--r-- | pkgs/servers/home-assistant/frontend.nix | 4 | ||||
-rw-r--r-- | pkgs/servers/home-assistant/tests.nix | 7 |
4 files changed, 59 insertions, 90 deletions
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 7a325693a0ffe..5a32970945614 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2,14 +2,14 @@ # Do not edit! { - version = "2021.12.10"; + version = "2022.2.0"; components = { "abode" = ps: with ps; [ abodepy ]; "accuweather" = ps: with ps; [ accuweather ]; "acer_projector" = ps: with ps; [ pyserial ]; "acmeda" = ps: with ps; [ aiopulse ]; "actiontec" = ps: with ps; [ ]; - "adax" = ps: with ps; [ adax ]; + "adax" = ps: with ps; [ adax ]; # missing inputs: Adax-local "adguard" = ps: with ps; [ adguardhome ]; "ads" = ps: with ps; [ pyads ]; "advantage_air" = ps: with ps; [ advantage-air ]; @@ -45,18 +45,18 @@ "apcupsd" = ps: with ps; [ apcaccess ]; "api" = ps: with ps; [ aiohttp-cors ]; "apns" = ps: with ps; [ ]; # missing inputs: apns2 - "apple_tv" = ps: with ps; [ pyatv ]; + "apple_tv" = ps: with ps; [ aiohttp-cors ifaddr pyatv zeroconf ]; "apprise" = ps: with ps; [ apprise ]; "aprs" = ps: with ps; [ aprslib geopy ]; "aqualogic" = ps: with ps; [ aqualogic ]; "aquostv" = ps: with ps; [ ]; # missing inputs: sharp_aquos_rc "arcam_fmj" = ps: with ps; [ arcam-fmj ]; - "arduino" = ps: with ps; [ ]; # missing inputs: PyMata "arest" = ps: with ps; [ ]; "arlo" = ps: with ps; [ ha-ffmpeg pyarlo ]; "arris_tg2492lg" = ps: with ps; [ ]; # missing inputs: arris-tg2492lg "aruba" = ps: with ps; [ pexpect ]; "arwn" = ps: with ps; [ aiohttp-cors paho-mqtt ]; + "aseko_pool_live" = ps: with ps; [ ]; # missing inputs: aioaseko "asterisk_cdr" = ps: with ps; [ ]; # missing inputs: asterisk_mbox "asterisk_mbox" = ps: with ps; [ ]; # missing inputs: asterisk_mbox "asuswrt" = ps: with ps; [ aioasuswrt ]; @@ -66,6 +66,7 @@ "august" = ps: with ps; [ yalexs ]; "aurora" = ps: with ps; [ auroranoaa ]; "aurora_abb_powerone" = ps: with ps; [ ]; # missing inputs: aurorapy + "aussie_broadband" = ps: with ps; [ ]; # missing inputs: pyaussiebb "auth" = ps: with ps; [ aiohttp-cors ]; "automation" = ps: with ps; [ aiohttp-cors ]; "avea" = ps: with ps; [ avea ]; @@ -181,6 +182,7 @@ "dexcom" = ps: with ps; [ pydexcom ]; "dhcp" = ps: with ps; [ aiodiscover scapy ]; "dht" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-dht + "diagnostics" = ps: with ps; [ aiohttp-cors ]; "dialogflow" = ps: with ps; [ aiohttp-cors ]; "digital_ocean" = ps: with ps; [ digital-ocean ]; "digitalloggers" = ps: with ps; [ ]; # missing inputs: dlipower @@ -223,6 +225,7 @@ "elgato" = ps: with ps; [ elgato ]; "eliqonline" = ps: with ps; [ eliqonline ]; "elkm1" = ps: with ps; [ elkm1-lib ]; + "elmax" = ps: with ps; [ elmax-api ]; "elv" = ps: with ps; [ pypca ]; "emby" = ps: with ps; [ pyemby ]; "emoncms" = ps: with ps; [ ]; @@ -282,7 +285,7 @@ "flume" = ps: with ps; [ pyflume ]; "flunearyou" = ps: with ps; [ pyflunearyou ]; "flux" = ps: with ps; [ ]; - "flux_led" = ps: with ps; [ flux-led ]; + "flux_led" = ps: with ps; [ aiohttp-cors flux-led ifaddr ]; "folder" = ps: with ps; [ ]; "folder_watcher" = ps: with ps; [ watchdog ]; "foobot" = ps: with ps; [ foobot-async ]; @@ -325,6 +328,7 @@ "goalfeed" = ps: with ps; [ ]; # missing inputs: pysher "goalzero" = ps: with ps; [ goalzero ]; "gogogate2" = ps: with ps; [ ismartgate ]; + "goodwe" = ps: with ps; [ goodwe ]; "google" = ps: with ps; [ google-api-python-client httplib2 oauth2client ]; "google_assistant" = ps: with ps; [ pyturbojpeg aiohttp-cors ]; "google_cloud" = ps: with ps; [ google-cloud-texttospeech ]; @@ -371,6 +375,7 @@ "homekit_controller" = ps: with ps; [ aiohomekit aiohttp-cors ifaddr zeroconf ]; "homematic" = ps: with ps; [ pyhomematic ]; "homematicip_cloud" = ps: with ps; [ homematicip ]; + "homewizard" = ps: with ps; [ aiohwenergy ]; "homeworks" = ps: with ps; [ pyhomeworks ]; "honeywell" = ps: with ps; [ somecomfort ]; "horizon" = ps: with ps; [ ]; # missing inputs: horimote @@ -402,12 +407,14 @@ "incomfort" = ps: with ps; [ incomfort-client ]; "influxdb" = ps: with ps; [ influxdb-client influxdb ]; "input_boolean" = ps: with ps; [ ]; + "input_button" = ps: with ps; [ ]; "input_datetime" = ps: with ps; [ ]; "input_number" = ps: with ps; [ ]; "input_select" = ps: with ps; [ ]; "input_text" = ps: with ps; [ ]; "insteon" = ps: with ps; [ pyinsteon ]; "integration" = ps: with ps; [ ]; + "intellifire" = ps: with ps; [ ]; # missing inputs: intellifire4py "intent" = ps: with ps; [ aiohttp-cors ]; "intent_script" = ps: with ps; [ ]; "intesishome" = ps: with ps; [ pyintesishome ]; @@ -482,7 +489,7 @@ "luftdaten" = ps: with ps; [ luftdaten ]; "lupusec" = ps: with ps; [ lupupy ]; "lutron" = ps: with ps; [ pylutron ]; - "lutron_caseta" = ps: with ps; [ aiolip pylutron-caseta ]; + "lutron_caseta" = ps: with ps; [ pylutron-caseta ]; "lw12wifi" = ps: with ps; [ ]; # missing inputs: lw12 "lyric" = ps: with ps; [ aiohttp-cors aiolyric ]; "magicseaweed" = ps: with ps; [ ]; # missing inputs: magicseaweed @@ -574,6 +581,7 @@ "nightscout" = ps: with ps; [ py-nightscout ]; "niko_home_control" = ps: with ps; [ niko-home-control ]; "nilu" = ps: with ps; [ niluclient ]; + "nina" = ps: with ps; [ pynina ]; "nissan_leaf" = ps: with ps; [ pycarwings2 ]; "nmap_tracker" = ps: with ps; [ aiohttp-cors getmac ifaddr netmap ]; # missing inputs: mac-vendor-lookup "nmbs" = ps: with ps; [ ]; # missing inputs: pyrail @@ -601,10 +609,12 @@ "ombi" = ps: with ps; [ pyombi ]; "omnilogic" = ps: with ps; [ omnilogic ]; "onboarding" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow sqlalchemy ]; + "oncue" = ps: with ps; [ ]; # missing inputs: aiooncue "ondilo_ico" = ps: with ps; [ aiohttp-cors ondilo ]; "onewire" = ps: with ps; [ ]; # missing inputs: pi1wire pyownet "onkyo" = ps: with ps; [ onkyo-eiscp ]; "onvif" = ps: with ps; [ ha-ffmpeg ]; # missing inputs: WSDiscovery onvif-zeep-async + "open_meteo" = ps: with ps; [ open-meteo ]; "openalpr_cloud" = ps: with ps; [ ]; "openalpr_local" = ps: with ps; [ ]; "opencv" = ps: with ps; [ numpy ]; # missing inputs: opencv-python-headless @@ -626,6 +636,7 @@ "orvibo" = ps: with ps; [ orvibo ]; "osramlightify" = ps: with ps; [ ]; # missing inputs: lightify "otp" = ps: with ps; [ pyotp ]; + "overkiz" = ps: with ps; [ ]; # missing inputs: pyoverkiz "ovo_energy" = ps: with ps; [ ovoenergy ]; "owntracks" = ps: with ps; [ pynacl pyturbojpeg aiohttp-cors hass-nabucasa paho-mqtt ]; "ozw" = ps: with ps; [ aiohttp-cors paho-mqtt python-openzwave-mqtt ]; @@ -673,7 +684,7 @@ "pushbullet" = ps: with ps; [ pushbullet ]; "pushover" = ps: with ps; [ pushover-complete ]; "pushsafer" = ps: with ps; [ ]; - "pvoutput" = ps: with ps; [ jsonpath xmltodict ]; + "pvoutput" = ps: with ps; [ pvo ]; "pvpc_hourly_pricing" = ps: with ps; [ aiopvpc ]; "pyload" = ps: with ps; [ ]; "python_script" = ps: with ps; [ restrictedpython ]; @@ -729,6 +740,7 @@ "rpi_rf" = ps: with ps; [ ]; # missing inputs: RPi.GPIO rpi-rf "rss_feed_template" = ps: with ps; [ aiohttp-cors ]; "rtorrent" = ps: with ps; [ ]; + "rtsp_to_webrtc" = ps: with ps; [ pyturbojpeg aiohttp-cors ]; # missing inputs: rtsp-to-webrtc "ruckus_unleashed" = ps: with ps; [ pyruckus ]; "russound_rio" = ps: with ps; [ ]; # missing inputs: russound_rio "russound_rnet" = ps: with ps; [ ]; # missing inputs: russound @@ -749,6 +761,7 @@ "sendgrid" = ps: with ps; [ sendgrid ]; "sense" = ps: with ps; [ sense-energy ]; "sensehat" = ps: with ps; [ ]; # missing inputs: sense-hat + "senseme" = ps: with ps; [ ]; # missing inputs: aiosenseme "sensibo" = ps: with ps; [ ]; # missing inputs: pysensibo "sensor" = ps: with ps; [ sqlalchemy ]; "sentry" = ps: with ps; [ sentry-sdk ]; @@ -803,7 +816,7 @@ "somfy_mylink" = ps: with ps; [ somfy-mylink-synergy ]; "sonarr" = ps: with ps; [ sonarr ]; "songpal" = ps: with ps; [ python-songpal ]; - "sonos" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr plexapi plexauth plexwebsocket soco zeroconf ]; + "sonos" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr plexapi plexauth plexwebsocket soco spotipy zeroconf ]; "sony_projector" = ps: with ps; [ pysdcp ]; "soundtouch" = ps: with ps; [ aiohttp-cors ifaddr libsoundtouch zeroconf ]; "spaceapi" = ps: with ps; [ aiohttp-cors ]; @@ -822,9 +835,10 @@ "statistics" = ps: with ps; [ sqlalchemy ]; "statsd" = ps: with ps; [ statsd ]; "steam_online" = ps: with ps; [ ]; # missing inputs: steamodd + "steamist" = ps: with ps; [ aiohttp-cors ifaddr ]; # missing inputs: aiosteamist discovery30303 "stiebel_eltron" = ps: with ps; [ pymodbus ]; # missing inputs: pystiebeleltron "stookalert" = ps: with ps; [ ]; # missing inputs: stookalert - "stream" = ps: with ps; [ aiohttp-cors ha-av ]; + "stream" = ps: with ps; [ pyturbojpeg aiohttp-cors av ]; "streamlabswater" = ps: with ps; [ streamlabswater ]; "stt" = ps: with ps; [ aiohttp-cors ]; "subaru" = ps: with ps; [ subarulink ]; @@ -848,11 +862,10 @@ "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 ]; + "system_log" = ps: with ps; [ ]; "systemmonitor" = ps: with ps; [ psutil ]; "tado" = ps: with ps; [ python-tado ]; "tag" = ps: with ps; [ ]; - "tahoma" = ps: with ps; [ tahoma-api ]; "tailscale" = ps: with ps; [ tailscale ]; "tank_utility" = ps: with ps; [ ]; # missing inputs: tank_utility "tankerkoenig" = ps: with ps; [ pytankerkoenig ]; @@ -877,7 +890,7 @@ "thinkingcleaner" = ps: with ps; [ ]; # missing inputs: pythinkingcleaner "thomson" = ps: with ps; [ ]; "threshold" = ps: with ps; [ ]; - "tibber" = ps: with ps; [ pytibber ]; + "tibber" = ps: with ps; [ pytibber sqlalchemy ]; "tikteck" = ps: with ps; [ ]; # missing inputs: tikteck "tile" = ps: with ps; [ pytile ]; "time_date" = ps: with ps; [ ]; @@ -910,7 +923,7 @@ "twilio" = ps: with ps; [ aiohttp-cors twilio ]; "twilio_call" = ps: with ps; [ aiohttp-cors twilio ]; "twilio_sms" = ps: with ps; [ aiohttp-cors twilio ]; - "twinkly" = ps: with ps; [ twinkly-client ]; + "twinkly" = ps: with ps; [ ]; # missing inputs: ttls "twitch" = ps: with ps; [ python-twitch-client ]; "twitter" = ps: with ps; [ twitterapi ]; "ubus" = ps: with ps; [ openwrt-ubus-rpc ]; @@ -919,6 +932,7 @@ "unifi" = ps: with ps; [ aiounifi ]; "unifi_direct" = ps: with ps; [ pexpect ]; "unifiled" = ps: with ps; [ unifiled ]; + "unifiprotect" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pyunifiprotect unifi-discovery "universal" = ps: with ps; [ ]; "upb" = ps: with ps; [ upb-lib ]; "upc_connect" = ps: with ps; [ connect-box ]; @@ -935,7 +949,7 @@ "vacuum" = ps: with ps; [ ]; "vallox" = ps: with ps; [ ]; # missing inputs: vallox-websocket-api "vasttrafik" = ps: with ps; [ ]; # missing inputs: vtjp - "velbus" = ps: with ps; [ velbus-aio ]; + "velbus" = ps: with ps; [ aiohttp-cors pyserial pyudev velbus-aio ]; "velux" = ps: with ps; [ pyvlx ]; "venstar" = ps: with ps; [ venstarcolortouch ]; "vera" = ps: with ps; [ pyvera ]; @@ -967,11 +981,11 @@ "waze_travel_time" = ps: with ps; [ wazeroutecalculator ]; "weather" = ps: with ps; [ ]; "webhook" = ps: with ps; [ aiohttp-cors ]; - "webostv" = ps: with ps; [ aiopylgtv ]; + "webostv" = ps: with ps; [ sqlalchemy ]; # missing inputs: aiowebostv "websocket_api" = ps: with ps; [ aiohttp-cors ]; "wemo" = ps: with ps; [ pywemo ]; "whirlpool" = ps: with ps; [ whirlpool-sixth-sense ]; - "whois" = ps: with ps; [ python-whois ]; + "whois" = ps: with ps; [ whois ]; "wiffi" = ps: with ps; [ wiffi ]; "wilight" = ps: with ps; [ pywilight ]; "wirelesstag" = ps: with ps; [ ]; # missing inputs: wirelesstagpy @@ -1023,7 +1037,6 @@ "abode" "accuweather" "acmeda" - "adax" "adguard" "advantage_air" "aemet" @@ -1103,6 +1116,7 @@ "coronavirus" "counter" "cover" + "cpuspeed" "crownstone" "daikin" "darksky" @@ -1120,10 +1134,12 @@ "devolo_home_network" "dexcom" "dhcp" + "diagnostics" "dialogflow" "directv" "discovery" "dlna_dmr" + "dnsip" "doorbird" "dsmr" "dte_energy_bridge" @@ -1135,6 +1151,7 @@ "efergy" "elgato" "elkm1" + "elmax" "emonitor" "emulated_hue" "emulated_kasa" @@ -1162,6 +1179,7 @@ "fireservicerota" "firmata" "fjaraskupan" + "flic" "flick_electric" "flipr" "flo" @@ -1194,9 +1212,11 @@ "geonetnz_quakes" "geonetnz_volcano" "gios" + "github" "glances" "goalzero" "gogogate2" + "goodwe" "google" "google_assistant" "google_domains" @@ -1229,6 +1249,7 @@ "homekit_controller" "homematic" "homematicip_cloud" + "homewizard" "honeywell" "html5" "http" @@ -1249,6 +1270,7 @@ "imap_email_content" "influxdb" "input_boolean" + "input_button" "input_datetime" "input_number" "input_select" @@ -1277,6 +1299,7 @@ "kraken" "kulersky" "lastfm" + "launch_library" "lcn" "light" "litterrobot" @@ -1343,6 +1366,7 @@ "network" "nexia" "nightscout" + "nina" "no_ip" "notify" "notion" @@ -1356,6 +1380,7 @@ "omnilogic" "onboarding" "ondilo_ico" + "open_meteo" "openalpr_cloud" "openalpr_local" "openerz" @@ -1389,6 +1414,7 @@ "proximity" "push" "pushbullet" + "pvoutput" "pvpc_hourly_pricing" "python_script" "qld_bushfire" @@ -1453,6 +1479,7 @@ "snips" "solaredge" "solarlog" + "solax" "soma" "somfy" "somfy_mylink" @@ -1519,7 +1546,6 @@ "tuya" "twentemilieu" "twilio" - "twinkly" "twitch" "uk_transport" "unifi" @@ -1556,10 +1582,10 @@ "waze_travel_time" "weather" "webhook" - "webostv" "websocket_api" "wemo" "whirlpool" + "whois" "wiffi" "wilight" "wled" diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index e26c38bc87f39..6890311255cbb 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -25,19 +25,6 @@ let defaultOverrides = [ - # aiounify 29 breaks integration tests - (self: super: { - aiounifi = super.aiounifi.overridePythonAttrs (oldAttrs: rec { - version = "28"; - src = fetchFromGitHub { - owner = "Kane610"; - repo = "aiounifi"; - rev = "v${version}"; - sha256 = "1r86pk80sa1la2s7c6v9svh5cpkci6jcw1xziz0h09jdvv5j5iff"; - }; - }); - }) - # Override the version of some packages pinned in Home Assistant's setup.py and requirements_all.txt (mkOverride "python-slugify" "4.0.1" "69a517766e00c1268e5bbfc0d010a0a8508de0b18d30ad5a1ff357f8ae724270") @@ -54,36 +41,6 @@ let }); }) - # Pinned due to API changes in iaqualink>=2.0, remove after - # https://github.com/home-assistant/core/pull/48137 was merged - (self: super: { - iaqualink = super.iaqualink.overridePythonAttrs (oldAttrs: rec { - version = "0.3.90"; - src = fetchFromGitHub { - owner = "flz"; - repo = "iaqualink-py"; - rev = "v${version}"; - sha256 = "0c8ckbbr1n8gx5k63ymgyfkbz3d0rbdvghg8fqdvbg4nrigrs5v0"; - }; - checkInputs = oldAttrs.checkInputs ++ [ python3.pkgs.asynctest ]; - }); - }) - - # Pinned due to API changes in influxdb-client>1.21.0 - (self: super: { - influxdb-client = super.influxdb-client.overridePythonAttrs (oldAttrs: rec { - version = "1.21.0"; - src = fetchFromGitHub { - owner = "influxdata"; - repo = "influxdb-client-python"; - rev = "v${version}"; - sha256 = "081pwd3aa7kbgxqcl1hfi2ny4iapnxkcp9ypsfslr69d0khvfc4s"; - }; - }); - }) - - (mkOverride "jinja2" "3.0.3" "1mvwr02s86zck5wsmd9wjxxb9iaqr17hdi5xza9vkwv8rmrv46v1") - # Pinned due to API changes in pyruckus>0.12 (self: super: { pyruckus = super.pyruckus.overridePythonAttrs (oldAttrs: rec { @@ -97,24 +54,11 @@ 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"; - }; - }); - }) - # Pinned due to API changes in 0.1.0 (mkOverride "poolsense" "0.0.8" "09y4fq0gdvgkfsykpxnvmfv92dpbknnq5v82spz43ak6hjnhgcyp") # Requirements for recorder not found: ['sqlalchemy==1.4.27']. - (mkOverride "sqlalchemy" "1.4.27" "031jbd0svrvwr3n52iibp9mkwsj9wicnck45yd26da5kmsfkas6p") + #(mkOverride "sqlalchemy" "1.4.27" "031jbd0svrvwr3n52iibp9mkwsj9wicnck45yd26da5kmsfkas6p") # Pinned due to API changes in 0.4.0 (self: super: { @@ -177,14 +121,15 @@ let extraBuildInputs = extraPackages python.pkgs; # Don't forget to run parse-requirements.py after updating - hassVersion = "2021.12.10"; + hassVersion = "2022.2.0"; in python.pkgs.buildPythonApplication rec { pname = "homeassistant"; version = assert (componentPackages.version == hassVersion); hassVersion; + format = "pyproject"; # check REQUIRED_PYTHON_VER in homeassistant/const.py - disabled = python.pythonOlder "3.8"; + disabled = python.pythonOlder "3.9"; # don't try and fail to strip 6600+ python files, it takes minutes! dontStrip = true; @@ -194,7 +139,7 @@ in python.pkgs.buildPythonApplication rec { owner = "home-assistant"; repo = "core"; rev = version; - hash = "sha256:0nyddcjy4diq5bakpb76frax44i0jraj2vvpfxrj50h9l5pdwsaf"; + hash = "sha256:01gx6i147h7amj41mv46x6j9aah4qd1zjybv5px5y9p5cbhjccms"; }; # leave this in, so users don't have to constantly update their downstream patch handling @@ -223,9 +168,9 @@ in python.pkgs.buildPythonApplication rec { in '' sed -r -i \ ${lib.concatStringsSep "\n" (map (package: - ''-e 's@${package}[<>=]+.*@${package}",@g' \'' + ''-e 's@${package}[<>=]+.*@${package}@g' \'' ) relaxedConstraints)} - setup.py + setup.cfg substituteInPlace tests/test_config.py --replace '"/usr"' '"/build/media"' ''; @@ -256,8 +201,6 @@ in python.pkgs.buildPythonApplication rec { yarl # Not in setup.py, but used in homeassistant/util/package.py setuptools - ] ++ lib.optionals (pythonOlder "3.9") [ - backports-zoneinfo ] ++ componentBuildInputs ++ extraBuildInputs; makeWrapperArgs = lib.optional skipPip "--add-flags --skip-pip"; @@ -280,6 +223,9 @@ in python.pkgs.buildPythonApplication rec { respx stdlib-list tqdm + # required by tests/pylint + astroid + pylint # required by tests/auth/mfa_modules pyotp ] ++ lib.concatMap (component: getPackages component python.pkgs) [ diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix index cdb60172fa8fa..cda024cd1beee 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 = "20211229.1"; + version = "20220202.0"; src = fetchPypi { inherit pname version; - sha256 = "sha256-glVjJ9iOmhAIGD65PHQu9l7Wc/lr5XRya2mi20/UVgs="; + sha256 = "sha256-O5oDDptQmwM02SESSS314YlvCqrOcEHNBSKlYE/qrTc="; }; # there is nothing to strip in this package diff --git a/pkgs/servers/home-assistant/tests.nix b/pkgs/servers/home-assistant/tests.nix index 8e552ed15e0b3..25bd411b76f69 100644 --- a/pkgs/servers/home-assistant/tests.nix +++ b/pkgs/servers/home-assistant/tests.nix @@ -50,17 +50,14 @@ in lib.listToAttrs (map (component: lib.nameValuePair component ( ++ extraPytestFlagsArray.${component} or [ ] ++ [ "tests/components/${component}" ]; - preCheck = old.preCheck + lib.optionalString (component != "network") '' + preCheck = old.preCheck + lib.optionalString (builtins.elem component [ "emulated_hue" "songpal" "system_log" ]) '' patch -p1 < ${./patches/tests-mock-source-ip.patch} ''; meta = old.meta // { broken = lib.elem component [ "airtouch4" - "glances" - "ridwell" - "venstar" - "yamaha_musiccast" + "dnsip" ]; # upstream only tests on Linux, so do we. platforms = lib.platforms.linux; |