diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 3342c488c935..7fd6e91e87a1 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 = "0.114.4"; + version = "0.115.6"; components = { "abode" = ps: with ps; [ ]; # missing inputs: abodepy "accuweather" = ps: with ps; [ ]; # missing inputs: accuweather "acer_projector" = ps: with ps; [ pyserial ]; "acmeda" = ps: with ps; [ ]; # missing inputs: aiopulse "actiontec" = ps: with ps; [ ]; - "adguard" = ps: with ps; [ ]; # missing inputs: adguardhome + "adguard" = ps: with ps; [ adguardhome ]; "ads" = ps: with ps; [ ]; # missing inputs: pyads "aftership" = ps: with ps; [ ]; # missing inputs: pyaftership "agent_dvr" = ps: with ps; [ ]; # missing inputs: agent-py @@ -29,7 +29,7 @@ "amcrest" = ps: with ps; [ ha-ffmpeg ]; # missing inputs: amcrest "ampio" = ps: with ps; [ ]; # missing inputs: asmog "android_ip_webcam" = ps: with ps; [ ]; # missing inputs: pydroid-ipcam - "androidtv" = ps: with ps; [ ]; # missing inputs: adb-shell[async] androidtv[async] pure-python-adb + "androidtv" = ps: with ps; [ ]; # missing inputs: adb-shell[async] androidtv[async] pure-python-adb[async] "anel_pwrctrl" = ps: with ps; [ ]; # missing inputs: anel_pwrctrl-homeassistant "anthemav" = ps: with ps; [ ]; # missing inputs: anthemav "apache_kafka" = ps: with ps; [ aiokafka ]; @@ -107,7 +107,7 @@ "calendar" = ps: with ps; [ aiohttp-cors ]; "camera" = ps: with ps; [ aiohttp-cors ]; "canary" = ps: with ps; [ ha-ffmpeg ]; # missing inputs: py-canary - "cast" = ps: with ps; [ aiohttp-cors hass-nabucasa PyChromecast zeroconf ]; + "cast" = ps: with ps; [ aiohttp-cors hass-nabucasa mutagen PyChromecast zeroconf ]; "cert_expiry" = ps: with ps; [ ]; "channels" = ps: with ps; [ ]; # missing inputs: pychannels "circuit" = ps: with ps; [ ]; # missing inputs: circuit-webhook @@ -134,7 +134,7 @@ "configurator" = ps: with ps; [ ]; "control4" = ps: with ps; [ ]; # missing inputs: pyControl4 "conversation" = ps: with ps; [ aiohttp-cors ]; - "coolmaster" = ps: with ps; [ ]; # missing inputs: pycoolmasternet + "coolmaster" = ps: with ps; [ ]; # missing inputs: pycoolmasternet-async "coronavirus" = ps: with ps; [ ]; # missing inputs: coronavirus "counter" = ps: with ps; [ ]; "cover" = ps: with ps; [ ]; @@ -152,7 +152,7 @@ "deconz" = ps: with ps; [ ]; # missing inputs: pydeconz "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 emoji hass-nabucasa netdisco sqlalchemy zeroconf ]; # missing inputs: home-assistant-frontend + "default_config" = ps: with ps; [ pynacl aiohttp-cors defusedxml distro emoji hass-nabucasa netdisco pillow sqlalchemy zeroconf ]; # missing inputs: home-assistant-frontend "delijn" = ps: with ps; [ ]; # missing inputs: pydelijn "deluge" = ps: with ps; [ deluge-client ]; "demo" = ps: with ps; [ aiohttp-cors ]; @@ -161,7 +161,7 @@ "derivative" = ps: with ps; [ ]; "deutsche_bahn" = ps: with ps; [ ]; # missing inputs: schiene "device_automation" = ps: with ps; [ ]; - "device_sun_light_trigger" = ps: with ps; [ ]; + "device_sun_light_trigger" = ps: with ps; [ aiohttp-cors pillow ]; "device_tracker" = ps: with ps; [ ]; "devolo_home_control" = ps: with ps; [ ]; # missing inputs: devolo-home-control-api "dexcom" = ps: with ps; [ ]; # missing inputs: pydexcom @@ -189,10 +189,11 @@ "dublin_bus_transport" = ps: with ps; [ ]; "duckdns" = ps: with ps; [ ]; "dunehd" = ps: with ps; [ ]; # missing inputs: pdunehd - "dwd_weather_warnings" = ps: with ps; [ jsonpath xmltodict ]; + "dwd_weather_warnings" = ps: with ps; [ ]; # missing inputs: dwdwfsapi "dweet" = ps: with ps; [ ]; # missing inputs: dweepy "dynalite" = ps: with ps; [ ]; # missing inputs: dynalite_devices "dyson" = ps: with ps; [ aiohttp-cors zeroconf ]; # missing inputs: libpurecool + "eafm" = ps: with ps; [ ]; # missing inputs: aioeafm "ebox" = ps: with ps; [ ]; # missing inputs: pyebox "ebusd" = ps: with ps; [ ]; # missing inputs: ebusdpy "ecoal_boiler" = ps: with ps; [ ]; # missing inputs: ecoaliface @@ -214,6 +215,7 @@ "emoncms" = ps: with ps; [ ]; "emoncms_history" = ps: with ps; [ ]; "emulated_hue" = ps: with ps; [ aiohttp-cors ]; + "emulated_kasa" = ps: with ps; [ ]; # missing inputs: sense_energy "emulated_roku" = ps: with ps; [ ]; # missing inputs: emulated_roku "enigma2" = ps: with ps; [ openwebifpy ]; "enocean" = ps: with ps; [ ]; # missing inputs: enocean @@ -226,7 +228,7 @@ "epson" = ps: with ps; [ ]; # missing inputs: epson-projector "epsonworkforce" = ps: with ps; [ ]; # missing inputs: epsonprinter "eq3btsmart" = ps: with ps; [ construct ]; # missing inputs: python-eq3bt - "esphome" = ps: with ps; [ aioesphomeapi ]; + "esphome" = ps: with ps; [ aioesphomeapi aiohttp-cors zeroconf ]; "essent" = ps: with ps; [ ]; # missing inputs: PyEssent "etherscan" = ps: with ps; [ ]; # missing inputs: python-etherscan-api "eufy" = ps: with ps; [ ]; # missing inputs: lakeside @@ -256,6 +258,7 @@ "flexit" = ps: with ps; [ ]; # missing inputs: pyflexit pymodbus "flic" = ps: with ps; [ ]; # missing inputs: pyflic-homeassistant "flick_electric" = ps: with ps; [ ]; # missing inputs: PyFlick + "flo" = ps: with ps; [ ]; # missing inputs: aioflo "flock" = ps: with ps; [ ]; "flume" = ps: with ps; [ ]; # missing inputs: pyflume "flunearyou" = ps: with ps; [ ]; # missing inputs: pyflunearyou @@ -276,7 +279,7 @@ "fritzbox_callmonitor" = ps: with ps; [ fritzconnection ]; "fritzbox_netmonitor" = ps: with ps; [ fritzconnection ]; "fronius" = ps: with ps; [ ]; # missing inputs: pyfronius - "frontend" = ps: with ps; [ aiohttp-cors ]; # missing inputs: home-assistant-frontend + "frontend" = ps: with ps; [ aiohttp-cors pillow ]; # missing inputs: home-assistant-frontend "frontier_silicon" = ps: with ps; [ ]; # missing inputs: afsapi "futurenow" = ps: with ps; [ ]; # missing inputs: pyfnip "garadget" = ps: with ps; [ ]; @@ -326,7 +329,7 @@ "hangouts" = ps: with ps; [ ]; # missing inputs: hangups "harman_kardon_avr" = ps: with ps; [ ]; # missing inputs: hkavr "harmony" = ps: with ps; [ aioharmony ]; - "hassio" = ps: with ps; [ aiohttp-cors ]; # missing inputs: home-assistant-frontend + "hassio" = ps: with ps; [ aiohttp-cors pillow ]; # missing inputs: home-assistant-frontend "haveibeenpwned" = ps: with ps; [ ]; "hddtemp" = ps: with ps; [ ]; "hdmi_cec" = ps: with ps; [ ]; # missing inputs: pyCEC @@ -344,7 +347,7 @@ "home_connect" = ps: with ps; [ aiohttp-cors ]; # missing inputs: homeconnect "homeassistant" = ps: with ps; [ ]; "homekit" = ps: with ps; [ HAP-python pyqrcode aiohttp-cors ha-ffmpeg zeroconf ]; # missing inputs: PyTurboJPEG base36 fnvhash - "homekit_controller" = ps: with ps; [ aiohttp-cors zeroconf ]; # missing inputs: aiohomekit[IP] + "homekit_controller" = ps: with ps; [ aiohttp-cors zeroconf ]; # missing inputs: aiohomekit "homematic" = ps: with ps; [ pyhomematic ]; "homematicip_cloud" = ps: with ps; [ ]; # missing inputs: homematicip "homeworks" = ps: with ps; [ ]; # missing inputs: pyhomeworks @@ -371,6 +374,7 @@ "iglo" = ps: with ps; [ ]; # missing inputs: iglo "ign_sismologia" = ps: with ps; [ ]; # missing inputs: georss_ign_sismologia_client "ihc" = ps: with ps; [ defusedxml ]; # missing inputs: ihcsdk + "image" = ps: with ps; [ aiohttp-cors pillow ]; "image_processing" = ps: with ps; [ aiohttp-cors ]; "imap" = ps: with ps; [ ]; # missing inputs: aioimaplib "imap_email_content" = ps: with ps; [ ]; @@ -408,11 +412,11 @@ "keenetic_ndms2" = ps: with ps; [ ]; # missing inputs: ndms2_client "kef" = ps: with ps; [ getmac ]; # missing inputs: aiokef "keyboard" = ps: with ps; [ ]; # missing inputs: pyuserinput - "keyboard_remote" = ps: with ps; [ evdev ]; # missing inputs: aionotify + "keyboard_remote" = ps: with ps; [ aionotify evdev ]; "kira" = ps: with ps; [ ]; # missing inputs: pykira "kiwi" = ps: with ps; [ ]; # missing inputs: kiwiki-client "knx" = ps: with ps; [ ]; # missing inputs: xknx - "kodi" = ps: with ps; [ jsonrpc-async jsonrpc-websocket ]; + "kodi" = ps: with ps; [ ]; # missing inputs: pykodi "konnected" = ps: with ps; [ aiohttp-cors ]; # missing inputs: konnected "kwb" = ps: with ps; [ ]; # missing inputs: pykwb "lacrosse" = ps: with ps; [ ]; # missing inputs: pylacrosse @@ -440,7 +444,7 @@ "local_ip" = ps: with ps; [ ]; "locative" = ps: with ps; [ aiohttp-cors ]; "lock" = ps: with ps; [ ]; - "logbook" = ps: with ps; [ aiohttp-cors sqlalchemy ]; # missing inputs: home-assistant-frontend + "logbook" = ps: with ps; [ aiohttp-cors pillow sqlalchemy ]; # missing inputs: home-assistant-frontend "logentries" = ps: with ps; [ ]; "logger" = ps: with ps; [ ]; "logi_circle" = ps: with ps; [ aiohttp-cors ha-ffmpeg ]; # missing inputs: logi_circle @@ -460,7 +464,7 @@ "mailgun" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pymailgunner "manual" = ps: with ps; [ ]; "manual_mqtt" = ps: with ps; [ aiohttp-cors paho-mqtt ]; - "map" = ps: with ps; [ aiohttp-cors ]; # missing inputs: home-assistant-frontend + "map" = ps: with ps; [ aiohttp-cors pillow ]; # missing inputs: home-assistant-frontend "marytts" = ps: with ps; [ ]; # missing inputs: speak2mary "mastodon" = ps: with ps; [ ]; # missing inputs: Mastodon.py "matrix" = ps: with ps; [ matrix-client ]; @@ -468,6 +472,7 @@ "mcp23017" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-blinka adafruit-circuitpython-mcp230xx "media_extractor" = ps: with ps; [ aiohttp-cors youtube-dl-light ]; "media_player" = ps: with ps; [ aiohttp-cors ]; + "media_source" = ps: with ps; [ aiohttp-cors ]; "mediaroom" = ps: with ps; [ ]; # missing inputs: pymediaroom "melcloud" = ps: with ps; [ ]; # missing inputs: pymelcloud "melissa" = ps: with ps; [ ]; # missing inputs: py-melissa-climate @@ -491,7 +496,7 @@ "minio" = ps: with ps; [ minio ]; "mitemp_bt" = ps: with ps; [ ]; # missing inputs: mitemp_bt "mjpeg" = ps: with ps; [ ]; - "mobile_app" = ps: with ps; [ pynacl aiohttp-cors emoji hass-nabucasa ]; + "mobile_app" = ps: with ps; [ pynacl aiohttp-cors emoji hass-nabucasa pillow ]; "mochad" = ps: with ps; [ ]; # missing inputs: pymochad "modbus" = ps: with ps; [ ]; # missing inputs: pymodbus "modem_callerid" = ps: with ps; [ ]; # missing inputs: basicmodem @@ -532,13 +537,14 @@ "nextbus" = ps: with ps; [ ]; # missing inputs: py_nextbusnext "nextcloud" = ps: with ps; [ ]; # missing inputs: nextcloudmonitor "nfandroidtv" = ps: with ps; [ ]; + "nightscout" = ps: with ps; [ ]; # missing inputs: py-nightscout "niko_home_control" = ps: with ps; [ ]; # missing inputs: niko-home-control "nilu" = ps: with ps; [ ]; # missing inputs: niluclient "nissan_leaf" = ps: with ps; [ ]; # missing inputs: pycarwings2 "nmap_tracker" = ps: with ps; [ getmac ]; # missing inputs: python-nmap "nmbs" = ps: with ps; [ ]; # missing inputs: pyrail "no_ip" = ps: with ps; [ ]; - "noaa_tides" = ps: with ps; [ ]; # missing inputs: py_noaa + "noaa_tides" = ps: with ps; [ ]; # missing inputs: noaa-coops "norway_air" = ps: with ps; [ pymetno ]; "notify" = ps: with ps; [ ]; "notify_events" = ps: with ps; [ ]; # missing inputs: notify-events @@ -559,7 +565,7 @@ "oem" = ps: with ps; [ ]; # missing inputs: oemthermostat "ohmconnect" = ps: with ps; [ defusedxml ]; "ombi" = ps: with ps; [ ]; # missing inputs: pyombi - "onboarding" = ps: with ps; [ aiohttp-cors ]; + "onboarding" = ps: with ps; [ aiohttp-cors pillow ]; "onewire" = ps: with ps; [ ]; # missing inputs: pyownet "onkyo" = ps: with ps; [ onkyo-eiscp ]; "onvif" = ps: with ps; [ ha-ffmpeg ]; # missing inputs: WSDiscovery onvif-zeep-async @@ -590,19 +596,19 @@ "panasonic_bluray" = ps: with ps; [ ]; # missing inputs: panacotta "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 + "panel_custom" = ps: with ps; [ aiohttp-cors pillow ]; # missing inputs: home-assistant-frontend + "panel_iframe" = ps: with ps; [ aiohttp-cors pillow ]; # missing inputs: home-assistant-frontend "pcal9535a" = ps: with ps; [ ]; # missing inputs: pcal9535a "pencom" = ps: with ps; [ ]; # missing inputs: pencompy "persistent_notification" = ps: with ps; [ ]; - "person" = ps: with ps; [ ]; + "person" = ps: with ps; [ aiohttp-cors pillow ]; "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 "pilight" = ps: with ps; [ ]; # missing inputs: pilight - "ping" = ps: with ps; [ ]; + "ping" = ps: with ps; [ ]; # missing inputs: icmplib "pioneer" = ps: with ps; [ ]; "pjlink" = ps: with ps; [ ]; # missing inputs: pypjlink2 "plaato" = ps: with ps; [ aiohttp-cors ]; @@ -614,7 +620,7 @@ "point" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pypoint "poolsense" = ps: with ps; [ ]; # missing inputs: poolsense "powerwall" = ps: with ps; [ ]; # missing inputs: tesla-powerwall - "prezzibenzina" = ps: with ps; [ ]; # missing inputs: prezzibenzina-py + "progettihwsw" = ps: with ps; [ ]; # missing inputs: progettihwsw "proliphix" = ps: with ps; [ ]; # missing inputs: proliphix "prometheus" = ps: with ps; [ aiohttp-cors prometheus_client ]; "prowl" = ps: with ps; [ ]; @@ -664,10 +670,12 @@ "rfxtrx" = ps: with ps; [ ]; # missing inputs: pyRFXtrx "ring" = ps: with ps; [ ha-ffmpeg ]; # missing inputs: ring_doorbell "ripple" = ps: with ps; [ ]; # missing inputs: python-ripple-api + "risco" = ps: with ps; [ ]; # missing inputs: pyrisco "rmvtransport" = ps: with ps; [ PyRMVtransport ]; "rocketchat" = ps: with ps; [ ]; # missing inputs: rocketchat-API "roku" = ps: with ps; [ ]; # missing inputs: rokuecp "roomba" = ps: with ps; [ ]; # missing inputs: roombapy + "roon" = ps: with ps; [ ]; # missing inputs: roonapi "route53" = ps: with ps; [ boto3 ]; "rova" = ps: with ps; [ ]; # missing inputs: rova "rpi_camera" = ps: with ps; [ ]; @@ -680,7 +688,7 @@ "russound_rio" = ps: with ps; [ ]; # missing inputs: russound_rio "russound_rnet" = ps: with ps; [ ]; # missing inputs: russound "sabnzbd" = ps: with ps; [ aiohttp-cors netdisco zeroconf ]; # missing inputs: pysabnzbd - "safe_mode" = ps: with ps; [ aiohttp-cors hass-nabucasa ]; # missing inputs: home-assistant-frontend + "safe_mode" = ps: with ps; [ aiohttp-cors hass-nabucasa pillow ]; # missing inputs: home-assistant-frontend "saj" = ps: with ps; [ ]; # missing inputs: pysaj "salt" = ps: with ps; [ ]; # missing inputs: saltbox "samsungtv" = ps: with ps; [ samsungctl samsungtvws ]; @@ -703,7 +711,9 @@ "sesame" = ps: with ps; [ ]; # missing inputs: pysesame2 "seven_segments" = ps: with ps; [ pillow ]; "seventeentrack" = ps: with ps; [ ]; # missing inputs: py17track + "sharkiq" = ps: with ps; [ ]; # missing inputs: sharkiqpy "shell_command" = ps: with ps; [ ]; + "shelly" = ps: with ps; [ ]; # missing inputs: aioshelly "shiftr" = ps: with ps; [ paho-mqtt ]; "shodan" = ps: with ps; [ shodan ]; "shopping_list" = ps: with ps; [ aiohttp-cors ]; @@ -724,6 +734,7 @@ "slide" = ps: with ps; [ ]; # missing inputs: goslide-api "sma" = ps: with ps; [ ]; # missing inputs: pysma "smappee" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pysmappee + "smart_meter_texas" = ps: with ps; [ ]; # missing inputs: smart-meter-texas "smarthab" = ps: with ps; [ ]; # missing inputs: smarthab "smartthings" = ps: with ps; [ aiohttp-cors hass-nabucasa ]; # missing inputs: pysmartapp pysmartthings "smarty" = ps: with ps; [ ]; # missing inputs: pysmarty @@ -771,7 +782,7 @@ "suez_water" = ps: with ps; [ ]; # missing inputs: pysuez "sun" = ps: with ps; [ ]; "supervisord" = ps: with ps; [ ]; - "supla" = ps: with ps; [ ]; # missing inputs: pysupla + "supla" = ps: with ps; [ ]; # missing inputs: asyncpysupla "surepetcare" = ps: with ps; [ ]; # missing inputs: surepy "swiss_hydrological_data" = ps: with ps; [ ]; # missing inputs: swisshydrodata "swiss_public_transport" = ps: with ps; [ ]; # missing inputs: python_opendata_transport @@ -790,6 +801,7 @@ "system_log" = ps: with ps; [ aiohttp-cors ]; "systemmonitor" = ps: with ps; [ psutil ]; "tado" = ps: with ps; [ ]; # missing inputs: python-tado + "tag" = ps: with ps; [ ]; "tahoma" = ps: with ps; [ ]; # missing inputs: tahoma-api "tank_utility" = ps: with ps; [ ]; # missing inputs: tank_utility "tankerkoenig" = ps: with ps; [ ]; # missing inputs: pytankerkoenig @@ -805,7 +817,7 @@ "telnet" = ps: with ps; [ ]; "temper" = ps: with ps; [ ]; # missing inputs: temperusb "template" = ps: with ps; [ ]; - "tensorflow" = ps: with ps; [ numpy pillow protobuf ]; # missing inputs: pycocotools tensorflow tf-models-official tf-slim + "tensorflow" = ps: with ps; [ numpy pillow tensorflow-build_2 ]; # missing inputs: pycocotools tf-models-official "tesla" = ps: with ps; [ ]; # missing inputs: teslajsonpy "tfiac" = ps: with ps; [ ]; # missing inputs: pytfiac "thermoworks_smoke" = ps: with ps; [ stringcase ]; # missing inputs: thermoworks_smoke @@ -904,6 +916,7 @@ "wemo" = ps: with ps; [ ]; # missing inputs: pywemo "whois" = ps: with ps; [ ]; # missing inputs: python-whois "wiffi" = ps: with ps; [ ]; # missing inputs: wiffi + "wilight" = ps: with ps; [ ]; # missing inputs: pywilight "wink" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pubnubsub-handler python-wink "wirelesstag" = ps: with ps; [ ]; # missing inputs: wirelesstagpy "withings" = ps: with ps; [ aiohttp-cors ]; # missing inputs: withings-api @@ -931,18 +944,17 @@ "yamaha_musiccast" = ps: with ps; [ ]; # missing inputs: pymusiccast "yandex_transport" = ps: with ps; [ ]; # missing inputs: aioymaps "yandextts" = ps: with ps; [ ]; - "yeelight" = ps: with ps; [ aiohttp-cors netdisco yeelight zeroconf ]; + "yeelight" = ps: with ps; [ yeelight ]; "yeelightsunflower" = ps: with ps; [ ]; # missing inputs: yeelightsunflower "yessssms" = ps: with ps; [ ]; # missing inputs: YesssSMS "yi" = ps: with ps; [ aioftp ha-ffmpeg ]; - "yr" = ps: with ps; [ xmltodict ]; "zabbix" = ps: with ps; [ ]; # missing inputs: pyzabbix "zamg" = ps: with ps; [ ]; "zengge" = ps: with ps; [ ]; # missing inputs: zengge "zeroconf" = ps: with ps; [ aiohttp-cors zeroconf ]; "zerproc" = ps: with ps; [ ]; # missing inputs: pyzerproc "zestimate" = ps: with ps; [ xmltodict ]; - "zha" = ps: with ps; [ bellows pyserial zha-quirks zigpy-cc zigpy-deconz zigpy-xbee zigpy-zigate zigpy ]; + "zha" = ps: with ps; [ bellows pyserial zha-quirks zigpy-cc zigpy-deconz zigpy-xbee zigpy-zigate zigpy ]; # missing inputs: zigpy-znp "zhong_hong" = ps: with ps; [ ]; # missing inputs: zhong_hong_hvac "ziggo_mediabox_xl" = ps: with ps; [ ]; # missing inputs: ziggo-mediabox-xl "zone" = ps: with ps; [ ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 17ce095e3938..92fb7dffd29a 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -68,7 +68,7 @@ let extraBuildInputs = extraPackages py.pkgs; # Don't forget to run parse-requirements.py after updating - hassVersion = "0.114.4"; + hassVersion = "0.115.6"; in with py.pkgs; buildPythonApplication rec { pname = "homeassistant"; @@ -78,6 +78,7 @@ in with py.pkgs; buildPythonApplication rec { patches = [ ./relax-dependencies.patch + ./fix-media-path-test.patch ]; inherit availableComponents; @@ -87,7 +88,7 @@ in with py.pkgs; buildPythonApplication rec { owner = "home-assistant"; repo = "core"; rev = version; - sha256 = "0k9px4ny0b72d9ysr3x72idprgfgjab1z91ildr87629826bb4n7"; + sha256 = "07j54glcpa5ngkr0pwdg44f8gas3jz3nh653mr5sb5wg7xspgcr8"; }; postPatch = '' @@ -100,8 +101,8 @@ in with py.pkgs; buildPythonApplication rec { aiohttp astral async-timeout attrs bcrypt certifi importlib-metadata jinja2 pyjwt cryptography pip python-slugify pytz pyyaml requests ruamel_yaml setuptools voluptuous voluptuous-serialize - # From http, frontend and recorder components and auth.mfa_modules.totp - sqlalchemy aiohttp-cors hass-frontend pyotp pyqrcode ciso8601 + # From frontend, image, http and recorder components and auth.mfa_modules.totp + sqlalchemy aiohttp-cors hass-frontend pillow pyotp pyqrcode ciso8601 ] ++ componentBuildInputs ++ extraBuildInputs; # upstream only tests on Linux, so do we. @@ -112,6 +113,9 @@ in with py.pkgs; buildPythonApplication rec { ]; checkPhase = '' + # the tests require the existance of a media dir + mkdir /build/media + # - components' dependencies are not included, so they cannot be tested # - test_merge_id_schema requires pyqwikswitch # - test_loader.py tries to load not-packaged dependencies diff --git a/pkgs/servers/home-assistant/fix-media-path-test.patch b/pkgs/servers/home-assistant/fix-media-path-test.patch new file mode 100644 index 000000000000..558fabfe3440 --- /dev/null +++ b/pkgs/servers/home-assistant/fix-media-path-test.patch @@ -0,0 +1,24 @@ +diff --git a/tests/test_config.py b/tests/test_config.py +index fb22ee1118..1b87e32fe7 100644 +--- a/tests/test_config.py ++++ b/tests/test_config.py +@@ -440,7 +440,7 @@ async def test_loading_configuration(hass): + "allowlist_external_dirs": "/etc", + "external_url": "https://www.example.com", + "internal_url": "http://example.local", +- "media_dirs": {"mymedia": "/usr"}, ++ "media_dirs": {"mymedia": "/build/media"}, + }, + ) + +@@ -454,8 +454,8 @@ async def test_loading_configuration(hass): + assert hass.config.internal_url == "http://example.local" + assert len(hass.config.allowlist_external_dirs) == 3 + assert "/etc" in hass.config.allowlist_external_dirs +- assert "/usr" in hass.config.allowlist_external_dirs +- assert hass.config.media_dirs == {"mymedia": "/usr"} ++ assert "/build/media" in hass.config.allowlist_external_dirs ++ assert hass.config.media_dirs == {"mymedia": "/build/media"} + assert hass.config.config_source == config_util.SOURCE_YAML + + diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix index 5c7227dc4e01..493c1a441079 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 = "20200811.0"; + version = "20200918.2"; src = fetchPypi { inherit pname version; - sha256 = "0nrvfr4mw7h9py27hkak201jsfrvyxlgswfnda1l7k9ns9y4lpj8"; + sha256 = "1gmk5rbfyqanj30dinfphxrsji4l1yiya2p0ahybyjb9fbzz9cl4"; }; # no Python tests implemented diff --git a/pkgs/servers/home-assistant/test-timeout.patch b/pkgs/servers/home-assistant/test-timeout.patch deleted file mode 100644 index 01b0edae1d74..000000000000 --- a/pkgs/servers/home-assistant/test-timeout.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/tests/test_core.py b/tests/test_core.py -index a63f42af61..04b333868b 100644 ---- a/tests/test_core.py -+++ b/tests/test_core.py -@@ -1432,7 +1432,7 @@ async def test_chained_logging_hits_log_timeout(hass, caplog): - async def _task_chain_2(): - nonlocal created - created += 1 -- if created > 10: -+ if created > 1000: - return - hass.async_create_task(_task_chain_1()) -