about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/home-assistant
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/home-assistant')
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/appdaemon.nix30
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/component-packages.nix178
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/custom-components/default.nix2
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/custom-components/waste_collection_schedule/default.nix47
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/light-entity-card/default.nix4
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/mini-media-player/default.nix6
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/default.nix8
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/package.json2
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/default.nix57
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/frontend.nix4
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/intents.nix4
-rwxr-xr-xnixpkgs/pkgs/servers/home-assistant/parse-requirements.py1
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/stubs.nix4
-rw-r--r--nixpkgs/pkgs/servers/home-assistant/tests.nix6
14 files changed, 272 insertions, 81 deletions
diff --git a/nixpkgs/pkgs/servers/home-assistant/appdaemon.nix b/nixpkgs/pkgs/servers/home-assistant/appdaemon.nix
index b104bb15997d..89515fa265d3 100644
--- a/nixpkgs/pkgs/servers/home-assistant/appdaemon.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/appdaemon.nix
@@ -5,53 +5,47 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "appdaemon";
-  version = "4.2.1";
-  format = "setuptools";
+  version = "4.4.2";
+  pyproject = true;
 
-  disabled = python3.pythonOlder "3.7";
+  disabled = python3.pythonOlder "3.8";
 
   src = fetchFromGitHub {
     owner = "AppDaemon";
     repo = "appdaemon";
     rev = "refs/tags/${version}";
-    hash = "sha256-4sN0optkMmyWb5Cd3F7AhcXYHh7aidJE/bieYMEKgSY=";
+    hash = "sha256-T3InE4J4qYeFJTq6nrW8y5BOA7Z0n3t9eVpl641r/xk=";
   };
 
   postPatch = ''
     # relax dependencies
-    sed -i 's/==/>=/' requirements.txt
+    sed -i 's/~=/>=/' pyproject.toml
   '';
 
+  nativeBuildInputs = with python3.pkgs; [
+    setuptools
+  ];
+
   propagatedBuildInputs = with python3.pkgs; [
-    aiodns
     aiohttp
     aiohttp-jinja2
     astral
-    azure-keyvault-secrets
-    azure-mgmt-compute
-    azure-mgmt-resource
-    azure-mgmt-storage
-    azure-storage-blob
     bcrypt
-    faust-cchardet
     deepdiff
     feedparser
     iso8601
-    jinja2
     paho-mqtt
     pid
-    pygments
     python-dateutil
-    python-engineio
     python-socketio
     pytz
     pyyaml
     requests
     sockjs
     uvloop
-    voluptuous
     websocket-client
-    yarl
+    tomli
+    tomli-w
   ];
 
   # no tests implemented
@@ -62,7 +56,7 @@ python3.pkgs.buildPythonApplication rec {
   meta = with lib; {
     description = "Sandboxed Python execution environment for writing automation apps for Home Assistant";
     homepage = "https://github.com/AppDaemon/appdaemon";
-    changelog = "https://github.com/AppDaemon/appdaemon/blob/${version}/docs/HISTORY.rst";
+    changelog = "https://github.com/AppDaemon/appdaemon/blob/${version}/docs/HISTORY.md";
     license = licenses.mit;
     maintainers = teams.home-assistant.members;
   };
diff --git a/nixpkgs/pkgs/servers/home-assistant/component-packages.nix b/nixpkgs/pkgs/servers/home-assistant/component-packages.nix
index 31a389b98200..3a1ca7a707b0 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 = "2023.12.3";
+  version = "2024.1.0";
   components = {
     "3_day_blinds" = ps: with ps; [
     ];
@@ -37,6 +37,10 @@
     "aemet" = ps: with ps; [
       aemet-opendata
     ];
+    "aep_ohio" = ps: with ps; [
+    ];
+    "aep_texas" = ps: with ps; [
+    ];
     "aftership" = ps: with ps; [
       pyaftership
     ];
@@ -66,6 +70,7 @@
       aioshelly
       airthings-ble
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -74,6 +79,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -169,23 +175,27 @@
       anel-pwrctrl-homeassistant
     ];
     "anova" = ps: with ps; [
-    ]; # missing inputs: anova-wifi
+      anova-wifi
+    ];
     "anthemav" = ps: with ps; [
       anthemav
     ];
     "anwb_energie" = ps: with ps; [
     ];
+    "aosmith" = ps: with ps; [
+    ]; # missing inputs: py-aosmith
     "apache_kafka" = ps: with ps; [
       aiokafka
     ];
     "apcupsd" = ps: with ps; [
-      apcaccess
-    ];
+    ]; # missing inputs: aioapcaccess
     "api" = ps: with ps; [
       aiohttp-cors
       aiohttp-fast-url-dispatcher
       aiohttp-zlib-ng
     ];
+    "appalachianpower" = ps: with ps; [
+    ];
     "apple_tv" = ps: with ps; [
       aiohttp-cors
       aiohttp-fast-url-dispatcher
@@ -226,6 +236,7 @@
       aioshelly
       aranet4
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -234,6 +245,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -404,6 +416,8 @@
     ]; # missing inputs: python-blockchain-api
     "bloomsky" = ps: with ps; [
     ];
+    "blue_current" = ps: with ps; [
+    ]; # missing inputs: bluecurrent-api
     "bluemaestro" = ps: with ps; [
       aioesphomeapi
       aiohttp-cors
@@ -412,6 +426,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluemaestro-ble
       bluetooth-adapters
@@ -421,6 +436,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -448,6 +464,7 @@
       bluetooth-data-tools
       dbus-fast
       fnv-hash-fast
+      habluetooth
       psutil-home-assistant
       pyserial
       pyudev
@@ -461,6 +478,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -469,6 +487,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -488,6 +507,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -496,6 +516,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -558,7 +579,7 @@
     "bt_home_hub_5" = ps: with ps; [
     ]; # missing inputs: bthomehub5-devicelist
     "bt_smarthub" = ps: with ps; [
-      btsmarthub_devicelist
+      btsmarthub-devicelist
     ];
     "bthome" = ps: with ps; [
       aioesphomeapi
@@ -568,6 +589,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -577,6 +599,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -637,6 +660,8 @@
       webrtc-noise-gain
       zeroconf
     ];
+    "ccm15" = ps: with ps; [
+    ]; # missing inputs: py-ccm15
     "cert_expiry" = ps: with ps; [
     ];
     "channels" = ps: with ps; [
@@ -804,10 +829,12 @@
       bluetooth-adapters
       bluetooth-auto-recovery
       bluetooth-data-tools
+      cached-ipaddress
       dbus-fast
       fnv-hash-fast
       ha-av
       ha-ffmpeg
+      habluetooth
       hass-nabucasa
       hassil
       home-assistant-frontend
@@ -891,6 +918,7 @@
     ];
     "dhcp" = ps: with ps; [
       aiodiscover
+      cached-ipaddress
       scapy
     ];
     "diagnostics" = ps: with ps; [
@@ -981,6 +1009,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -989,6 +1018,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -1008,6 +1038,13 @@
     "dremel_3d_printer" = ps: with ps; [
       dremel3dpy
     ];
+    "drop_connect" = ps: with ps; [
+      aiohttp-cors
+      aiohttp-fast-url-dispatcher
+      aiohttp-zlib-ng
+      janus
+      paho-mqtt
+    ]; # missing inputs: dropmqttapi
     "dsmr" = ps: with ps; [
       dsmr-parser
     ];
@@ -1040,13 +1077,14 @@
       aiohttp-fast-url-dispatcher
       aiohttp-zlib-ng
       dynalite-devices
+      dynalite-panel
       fnv-hash-fast
       home-assistant-frontend
       janus
       pillow
       psutil-home-assistant
       sqlalchemy
-    ]; # missing inputs: dynalite-panel
+    ];
     "eafm" = ps: with ps; [
       aioeafm
     ];
@@ -1211,6 +1249,7 @@
       aiohttp-fast-url-dispatcher
       aiohttp-zlib-ng
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -1219,6 +1258,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -1243,6 +1283,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -1252,6 +1293,7 @@
       eufylife-ble-client
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -1364,6 +1406,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -1373,6 +1416,7 @@
       fjaraskupan
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -1390,6 +1434,8 @@
     "flexit" = ps: with ps; [
       pymodbus
     ];
+    "flexit_bacnet" = ps: with ps; [
+    ]; # missing inputs: flexit_bacnet
     "flexom" = ps: with ps; [
     ];
     "flic" = ps: with ps; [
@@ -1499,6 +1545,8 @@
     "frontier_silicon" = ps: with ps; [
       afsapi
     ];
+    "fujitsu_anywair" = ps: with ps; [
+    ];
     "fully_kiosk" = ps: with ps; [
       aiohttp-cors
       aiohttp-fast-url-dispatcher
@@ -1523,6 +1571,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -1531,6 +1580,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -1708,6 +1758,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -1717,6 +1768,7 @@
       fnv-hash-fast
       govee-ble
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -1842,6 +1894,10 @@
     "hlk_sw16" = ps: with ps; [
       hlk-sw16
     ];
+    "holiday" = ps: with ps; [
+      babel
+      holidays
+    ];
     "home_connect" = ps: with ps; [
       aiohttp-cors
       aiohttp-fast-url-dispatcher
@@ -1973,6 +2029,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -1981,6 +2038,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -2070,6 +2128,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2078,6 +2137,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ibeacon-ble
@@ -2101,6 +2161,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2109,6 +2170,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -2167,6 +2229,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2175,6 +2238,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -2189,6 +2253,8 @@
     "incomfort" = ps: with ps; [
       incomfort-client
     ];
+    "indianamichiganpower" = ps: with ps; [
+    ];
     "influxdb" = ps: with ps; [
       influxdb
       influxdb-client
@@ -2201,6 +2267,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2209,6 +2276,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -2349,6 +2417,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2357,6 +2426,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -2369,6 +2439,8 @@
       webrtc-noise-gain
       zeroconf
     ];
+    "kentuckypower" = ps: with ps; [
+    ];
     "keyboard" = ps: with ps; [
     ]; # missing inputs: pyuserinput
     "keyboard_remote" = ps: with ps; [
@@ -2383,6 +2455,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2391,6 +2464,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -2505,6 +2579,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2513,6 +2588,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -2533,6 +2609,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2541,6 +2618,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -2780,6 +2858,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2788,6 +2867,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -2831,6 +2911,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2839,6 +2920,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -2925,6 +3007,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -2933,6 +3016,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -3000,6 +3084,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -3008,6 +3093,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -3036,6 +3122,8 @@
       aiohttp-zlib-ng
       motioneye-client
     ];
+    "motionmount" = ps: with ps; [
+    ]; # missing inputs: python-MotionMount
     "mpd" = ps: with ps; [
       mpd2
     ];
@@ -3410,6 +3498,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -3418,6 +3507,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -3437,6 +3527,8 @@
     "orvibo" = ps: with ps; [
       orvibo
     ];
+    "osoenergy" = ps: with ps; [
+    ]; # missing inputs: pyosoenergyapi
     "osramlightify" = ps: with ps; [
     ]; # missing inputs: lightify
     "otbr" = ps: with ps; [
@@ -3638,6 +3730,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -3646,6 +3739,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -3692,6 +3786,8 @@
     ]; # missing inputs: pyps4-2ndscreen
     "pse" = ps: with ps; [
     ];
+    "psoklahoma" = ps: with ps; [
+    ];
     "pulseaudio_loopback" = ps: with ps; [
       pulsectl
     ];
@@ -3735,6 +3831,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -3743,6 +3840,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -3828,6 +3926,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -3836,6 +3935,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -3893,6 +3993,8 @@
     "reddit" = ps: with ps; [
       praw
     ];
+    "refoss" = ps: with ps; [
+    ]; # missing inputs: refoss-ha
     "rejseplanen" = ps: with ps; [
       rjpl
     ];
@@ -3963,7 +4065,8 @@
     ];
     "roborock" = ps: with ps; [
       python-roborock
-    ]; # missing inputs: vacuum-map-parser-roborock
+      vacuum-map-parser-roborock
+    ];
     "rocketchat" = ps: with ps; [
     ]; # missing inputs: rocketchat-API
     "roku" = ps: with ps; [
@@ -4019,6 +4122,7 @@
       bluetooth-data-tools
       dbus-fast
       fnv-hash-fast
+      habluetooth
       psutil-home-assistant
       pyserial
       pyudev
@@ -4032,6 +4136,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -4040,6 +4145,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -4089,6 +4195,8 @@
     ];
     "schluter" = ps: with ps; [
     ]; # missing inputs: py-schluter
+    "scl" = ps: with ps; [
+    ];
     "scrape" = ps: with ps; [
       beautifulsoup4
       jsonpath
@@ -4134,6 +4242,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -4142,6 +4251,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -4169,6 +4279,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -4177,6 +4288,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -4197,6 +4309,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -4205,6 +4318,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -4263,6 +4377,7 @@
       bluetooth-data-tools
       dbus-fast
       fnv-hash-fast
+      habluetooth
       psutil-home-assistant
       pyserial
       pyudev
@@ -4390,8 +4505,7 @@
       paho-mqtt
     ];
     "snmp" = ps: with ps; [
-      pysnmplib
-    ];
+    ]; # missing inputs: pysnmp-lextudio
     "snooz" = ps: with ps; [
       aioesphomeapi
       aiohttp-cors
@@ -4400,6 +4514,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -4408,6 +4523,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -4496,6 +4612,7 @@
     ];
     "sql" = ps: with ps; [
       sqlalchemy
+      sqlparse
     ];
     "squeezebox" = ps: with ps; [
       pysqueezebox
@@ -4578,6 +4695,9 @@
     ];
     "sun" = ps: with ps; [
     ];
+    "sunweg" = ps: with ps; [
+      sunweg
+    ];
     "supervisord" = ps: with ps; [
     ];
     "supla" = ps: with ps; [
@@ -4585,6 +4705,8 @@
     "surepetcare" = ps: with ps; [
       surepy
     ];
+    "swepco" = ps: with ps; [
+    ];
     "swiss_hydrological_data" = ps: with ps; [
       swisshydrodata
     ];
@@ -4608,6 +4730,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -4616,6 +4739,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -4684,6 +4808,9 @@
     "tailscale" = ps: with ps; [
       tailscale
     ];
+    "tailwind" = ps: with ps; [
+      gotailwind
+    ];
     "tami4" = ps: with ps; [
     ]; # missing inputs: Tami4EdgeAPI
     "tank_utility" = ps: with ps; [
@@ -4745,6 +4872,8 @@
     "tesla_wall_connector" = ps: with ps; [
       tesla-wall-connector
     ];
+    "tessie" = ps: with ps; [
+    ]; # missing inputs: tessie-api
     "text" = ps: with ps; [
     ];
     "tfiac" = ps: with ps; [
@@ -4757,6 +4886,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -4765,6 +4895,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -4787,6 +4918,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -4795,6 +4927,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -4851,6 +4984,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -4859,6 +4993,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -5044,8 +5179,7 @@
       aiounifi
     ];
     "unifi_direct" = ps: with ps; [
-      pexpect
-    ];
+    ]; # missing inputs: unifi_ap
     "unifiled" = ps: with ps; [
       unifiled
     ];
@@ -5115,6 +5249,8 @@
     "vallox" = ps: with ps; [
       vallox-websocket-api
     ];
+    "valve" = ps: with ps; [
+    ];
     "vasttrafik" = ps: with ps; [
     ]; # missing inputs: vtjp
     "velbus" = ps: with ps; [
@@ -5355,6 +5491,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -5363,6 +5500,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -5402,6 +5540,7 @@
       aioruuvigateway
       aioshelly
       bleak
+      bleak-esphome
       bleak-retry-connector
       bluetooth-adapters
       bluetooth-auto-recovery
@@ -5410,6 +5549,7 @@
       esphome-dashboard-api
       fnv-hash-fast
       ha-ffmpeg
+      habluetooth
       hassil
       home-assistant-intents
       ifaddr
@@ -5601,9 +5741,9 @@
     "android_ip_webcam"
     "androidtv"
     "androidtv_remote"
+    "anova"
     "anthemav"
     "apache_kafka"
-    "apcupsd"
     "api"
     "apple_tv"
     "application_credentials"
@@ -5713,6 +5853,7 @@
     "dunehd"
     "duotecno"
     "dwd_weather_warnings"
+    "dynalite"
     "eafm"
     "easyenergy"
     "ecobee"
@@ -5755,6 +5896,7 @@
     "file_upload"
     "filesize"
     "filter"
+    "fints"
     "fireservicerota"
     "firmata"
     "fitbit"
@@ -5834,6 +5976,7 @@
     "history_stats"
     "hive"
     "hlk_sw16"
+    "holiday"
     "home_connect"
     "home_plus_control"
     "homeassistant"
@@ -5996,6 +6139,7 @@
     "nest"
     "netatmo"
     "netgear"
+    "netgear_lte"
     "network"
     "nexia"
     "nextbus"
@@ -6113,6 +6257,7 @@
     "risco"
     "rituals_perfume_genie"
     "rmvtransport"
+    "roborock"
     "roku"
     "roomba"
     "roon"
@@ -6168,7 +6313,6 @@
     "smtp"
     "snapcast"
     "snips"
-    "snmp"
     "snooz"
     "solaredge"
     "solarlog"
@@ -6196,10 +6340,14 @@
     "steamist"
     "stookalert"
     "stream"
+    "streamlabswater"
     "stt"
     "subaru"
+    "suez_water"
     "sun"
+    "sunweg"
     "surepetcare"
+    "swiss_public_transport"
     "switch"
     "switch_as_x"
     "switchbee"
@@ -6210,9 +6358,11 @@
     "synology_dsm"
     "system_health"
     "system_log"
+    "systemmonitor"
     "tado"
     "tag"
     "tailscale"
+    "tailwind"
     "tankerkoenig"
     "tasmota"
     "tautulli"
@@ -6263,7 +6413,6 @@
     "uk_transport"
     "ukraine_alarm"
     "unifi"
-    "unifi_direct"
     "unifiprotect"
     "universal"
     "upb"
@@ -6279,6 +6428,7 @@
     "v2c"
     "vacuum"
     "vallox"
+    "valve"
     "velbus"
     "venstar"
     "vera"
diff --git a/nixpkgs/pkgs/servers/home-assistant/custom-components/default.nix b/nixpkgs/pkgs/servers/home-assistant/custom-components/default.nix
index fe1c39487903..310b4592b20f 100644
--- a/nixpkgs/pkgs/servers/home-assistant/custom-components/default.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/custom-components/default.nix
@@ -9,4 +9,6 @@
   miele = callPackage ./miele {};
 
   prometheus_sensor = callPackage ./prometheus_sensor {};
+
+  waste_collection_schedule = callPackage ./waste_collection_schedule {};
 }
diff --git a/nixpkgs/pkgs/servers/home-assistant/custom-components/waste_collection_schedule/default.nix b/nixpkgs/pkgs/servers/home-assistant/custom-components/waste_collection_schedule/default.nix
new file mode 100644
index 000000000000..513d593ce51d
--- /dev/null
+++ b/nixpkgs/pkgs/servers/home-assistant/custom-components/waste_collection_schedule/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, buildHomeAssistantComponent
+, fetchFromGitHub
+, fetchpatch
+, beautifulsoup4
+, icalendar
+, icalevents
+, lxml
+, recurring-ical-events
+}:
+
+buildHomeAssistantComponent rec {
+  owner = "mampfes";
+  domain = "waste_collection_schedule";
+  version = "1.44.0";
+
+  src = fetchFromGitHub {
+    inherit owner;
+    repo = "hacs_${domain}";
+    rev = "refs/tags/${version}";
+    hash = "sha256-G1x7HtgdtK+IaPAfxT+7xsDJi5FnXN4Pg3q7T5Xr8lA=";
+  };
+
+  patches = [
+    # Corrects a dependency on beautifulsoup4
+    (fetchpatch {
+      url = "https://github.com/mampfes/hacs_waste_collection_schedule/pull/1515.patch";
+      hash = "sha256-dvmicKTjolEcCrKRtZfpN0M/9RQCEQkFk+M6E+qCqfQ=";
+    })
+  ];
+
+  propagatedBuildInputs = [
+    beautifulsoup4
+    icalendar
+    icalevents
+    lxml
+    recurring-ical-events
+  ];
+
+  meta = with lib; {
+    changelog = "https://github.com/mampfes/hacs_waste_collection_schedule/releases/tag/${version}";
+    description = "Home Assistant integration framework for (garbage collection) schedules";
+    homepage = "https://github.com/mampfes/hacs_waste_collection_schedule";
+    maintainers = with maintainers; [jamiemagee];
+    license = licenses.mit;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/light-entity-card/default.nix b/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/light-entity-card/default.nix
index 9c1e97b0f8ed..38b071f16564 100644
--- a/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/light-entity-card/default.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/light-entity-card/default.nix
@@ -5,13 +5,13 @@
 
 buildNpmPackage rec {
   pname = "light-entity-card";
-  version = "6.1.0";
+  version = "6.1.1";
 
   src = fetchFromGitHub {
     owner = "ljmerza";
     repo = "light-entity-card";
     rev = "refs/tags/${version}";
-    hash = "sha256-CJpRvgPf7+v9m/8/O2R+nut3PnyDPC8OTipyE+Brp9U=";
+    hash = "sha256-LoZt65oAw52NxVFgV9kVDr65CX5G6Xek2zDafDIxXmw=";
   };
 
   npmDepsHash = "sha256-EZDTWtn3joikwiC5Kfn94+tXRDpBhMDHqHozfIkfbJ0=";
diff --git a/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/mini-media-player/default.nix b/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/mini-media-player/default.nix
index 749b15398f4b..96decc53eeb4 100644
--- a/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/mini-media-player/default.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/mini-media-player/default.nix
@@ -5,16 +5,16 @@
 
 buildNpmPackage rec {
   pname = "mini-media-player";
-  version = "1.16.6";
+  version = "1.16.8";
 
   src = fetchFromGitHub {
     owner = "kalkih";
     repo = "mini-media-player";
     rev = "v${version}";
-    hash = "sha256-1cC9dyZ9+7dXSL/dmFD0HV7SgsBW2zA7a+eOKVwbzg8=";
+    hash = "sha256-mBxK/Y+gesaJwPYHB4P8FCkyfoV9lwC8jAzPZJV+B+M=";
   };
 
-  npmDepsHash = "sha256-/7roW1xkZmGuB/8nFaQz0Yeuai6yJ+cH7Uqa/zxfa5w=";
+  npmDepsHash = "sha256-kuEgX5PX7RKhaJPzx+GW37TiSISvz+51tKGacvAMlfg=";
 
   installPhase = ''
     runHook preInstall
diff --git a/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/default.nix b/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/default.nix
index ef412801bfe9..f8e75ede0156 100644
--- a/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/default.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/default.nix
@@ -6,20 +6,20 @@
 
 mkYarnPackage rec {
   pname = "zigbee2mqtt-networkmap";
-  version = "unstable-2023-12-06";
+  version = "unstable-2023-12-16";
 
   src = fetchFromGitHub {
     owner = "azuwis";
     repo = "zigbee2mqtt-networkmap";
-    rev = "d5f1002118ba5881c6bdc27cb0f67642575c414f";
-    hash = "sha256-ITqzMjom2XN7+ICDH0Z5YJWY5GNUXzaqSuEzXekhw9I=";
+    rev = "7851357d78ebc0d1cc3cb5c661267a1e8b4c09e3";
+    hash = "sha256-x7RVy0stWT6+8f0/0VORVBgGpBbsbyJBC38xIxXhzos=";
   };
 
   packageJSON = ./package.json;
 
   offlineCache = fetchYarnDeps {
     yarnLock = "${src}/yarn.lock";
-    hash = "sha256-uPhD6UQ1KI7y6bqqQF7InT9eKU9VWGf2D60Lo5Mwcf8=";
+    hash = "sha256-s+vnyUeJKkkA5G0AmsfIG0Zh4bYdDc2B5MSNvdwhjgs=";
   };
 
   configurePhase = ''
diff --git a/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/package.json b/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/package.json
index b989bfde28e4..3ab2dbb933ae 100644
--- a/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/package.json
+++ b/nixpkgs/pkgs/servers/home-assistant/custom-lovelace-modules/zigbee2mqtt-networkmap/package.json
@@ -8,7 +8,7 @@
     "lint": "vue-cli-service lint"
   },
   "dependencies": {
-    "vue": "^3.3.4"
+    "vue": "^2.7.15"
   },
   "devDependencies": {
     "@material/mwc-button": "^0.27.0",
diff --git a/nixpkgs/pkgs/servers/home-assistant/default.nix b/nixpkgs/pkgs/servers/home-assistant/default.nix
index 29427a31c1be..e10dfba0ea06 100644
--- a/nixpkgs/pkgs/servers/home-assistant/default.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/default.nix
@@ -30,16 +30,6 @@ let
     # Override the version of some packages pinned in Home Assistant's setup.py and requirements_all.txt
 
     (self: super: {
-      aioesphomeapi = super.aioesphomeapi.overridePythonAttrs (oldAttrs: rec {
-        version = "19.2.1";
-        src = fetchFromGitHub {
-          owner = "esphome";
-          repo = "aioesphomeapi";
-          rev = "refs/tags/v${version}";
-          hash = "sha256-WSWGO0kI1m6oaImUYZ6m5WKJ+xPs/rtn5wVq1bDr+bE=";
-        };
-      });
-
       # https://github.com/home-assistant/core/pull/101913
       aiohttp = super.aiohttp.overridePythonAttrs (old: rec {
         version = "3.9.1";
@@ -52,6 +42,16 @@ let
         doCheck = false;
       });
 
+      aioskybell = super.aioskybell.overridePythonAttrs (oldAttrs: rec {
+        version = "22.7.0";
+        src = fetchFromGitHub {
+          owner = "tkdrob";
+          repo = "aioskybell";
+          rev = "refs/tags/${version}";
+          hash = "sha256-aBT1fDFtq1vasTvCnAXKV2vmZ6LBLZqRCiepv1HDJ+Q=";
+        };
+      });
+
       aiowatttime = super.aiowatttime.overridePythonAttrs (oldAttrs: rec {
         version = "0.1.1";
         src = fetchFromGitHub {
@@ -189,15 +189,6 @@ let
         };
       });
 
-      psutil = super.psutil.overridePythonAttrs (oldAttrs: rec {
-        version = "5.9.6";
-        src = fetchPypi {
-          pname = "psutil";
-          inherit version;
-          hash = "sha256-5Lkt3NfdTN0/kAGA6h4QSTLHvOI0+4iXbio7KWRBIlo=";
-        };
-      });
-
       py-synologydsm-api = super.py-synologydsm-api.overridePythonAttrs (oldAttrs: rec {
         version = "2.1.4";
         src = fetchFromGitHub {
@@ -238,6 +229,16 @@ let
         };
       });
 
+      pydrawise = super.pydrawise.overridePythonAttrs (oldAttrs: rec {
+        version = "2023.11.0";
+        src = fetchFromGitHub {
+          owner = "dknowles2";
+          repo = "pydrawise";
+          rev = "refs/tags/${version}";
+          hash = "sha256-gKOyTvdETGzKlpU67UKaHYTIvnAX9znHIynP3BiVbt4=";
+        };
+      });
+
       pykaleidescape = super.pykaleidescape.overridePythonAttrs (oldAttrs: rec {
         version = "1.0.1";
         src = fetchFromGitHub {
@@ -266,16 +267,6 @@ let
         };
       });
 
-      python-tado = super.python-tado.overridePythonAttrs (oldAttrs: rec {
-        version = "0.15.0";
-        src = fetchFromGitHub {
-          owner = "wmalgadey";
-          repo = "PyTado";
-          rev = "refs/tags/${version}";
-          hash = "sha256-gduqQVw/a64aDzTHFmgZu7OVB53jZb7L5vofzL3Ho6s=";
-        };
-      });
-
       pytradfri = super.pytradfri.overridePythonAttrs (oldAttrs: rec {
         version = "9.0.1";
         src = fetchFromGitHub {
@@ -321,7 +312,7 @@ let
   extraBuildInputs = extraPackages python.pkgs;
 
   # Don't forget to run parse-requirements.py after updating
-  hassVersion = "2023.12.3";
+  hassVersion = "2024.1.0";
 
 in python.pkgs.buildPythonApplication rec {
   pname = "homeassistant";
@@ -329,7 +320,7 @@ in python.pkgs.buildPythonApplication rec {
   format = "pyproject";
 
   # check REQUIRED_PYTHON_VER in homeassistant/const.py
-  disabled = python.pythonOlder "3.10";
+  disabled = python.pythonOlder "3.11";
 
   # don't try and fail to strip 6600+ python files, it takes minutes!
   dontStrip = true;
@@ -339,13 +330,13 @@ in python.pkgs.buildPythonApplication rec {
     owner = "home-assistant";
     repo = "core";
     rev = "refs/tags/${version}";
-    hash = "sha256-pTDYiy9Ux7Rgsf9rXXF3GbaiJkTX5FA/7K2hJtiNOkQ=";
+    hash = "sha256-aNSyBr4QEK4pmYnRGW1LNuCSU5EpZtLEGQUtYL+CvUg=";
   };
 
   # Secondary source is pypi sdist for translations
   sdist = fetchPypi {
     inherit pname version;
-    hash = "sha256-cvsYkuQG4i3GG8VGJ+HGSjdvpSBLzh0BFYQQpoVq4FY=";
+    hash = "sha256-szlvSfkcPG6DGGHZ5iNtz0EBa8DVYaoGZWSlc7AEG1I=";
   };
 
   nativeBuildInputs = with python.pkgs; [
diff --git a/nixpkgs/pkgs/servers/home-assistant/frontend.nix b/nixpkgs/pkgs/servers/home-assistant/frontend.nix
index 367db0bad900..3e7f58c42116 100644
--- a/nixpkgs/pkgs/servers/home-assistant/frontend.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/frontend.nix
@@ -4,7 +4,7 @@ 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 = "20231208.2";
+  version = "20240103.3";
   format = "wheel";
 
   src = fetchPypi {
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     pname = "home_assistant_frontend";
     dist = "py3";
     python = "py3";
-    hash = "sha256-JTYZPku5UdnMOllnzyI9tbYgxcewx5tklDooQKJA6p8=";
+    hash = "sha256-xCYAGig8sKZHa2Ix+XhR33xcKPucwvQFikuYjXpqzNM=";
   };
 
   # there is nothing to strip in this package
diff --git a/nixpkgs/pkgs/servers/home-assistant/intents.nix b/nixpkgs/pkgs/servers/home-assistant/intents.nix
index e88520bb883b..8e5921ceb2ff 100644
--- a/nixpkgs/pkgs/servers/home-assistant/intents.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/intents.nix
@@ -20,7 +20,7 @@
 
 buildPythonPackage rec {
   pname = "home-assistant-intents";
-  version = "2023.12.05";
+  version = "2024.1.2";
   format = "pyproject";
 
   disabled = pythonOlder "3.9";
@@ -29,7 +29,7 @@ buildPythonPackage rec {
     owner = "home-assistant";
     repo = "intents-package";
     rev = "refs/tags/${version}";
-    hash = "sha256-BVcvlmX5+w7b9uNHA4ZP6Ebj+7ROUgEaAmXAGQrby+s=";
+    hash = "sha256-uOrSvkzymG31nRmAgrn6z1IDJWahxqXHcPDflLPRVT4=";
     fetchSubmodules = true;
   };
 
diff --git a/nixpkgs/pkgs/servers/home-assistant/parse-requirements.py b/nixpkgs/pkgs/servers/home-assistant/parse-requirements.py
index bb5e70994320..436d1105b10d 100755
--- a/nixpkgs/pkgs/servers/home-assistant/parse-requirements.py
+++ b/nixpkgs/pkgs/servers/home-assistant/parse-requirements.py
@@ -41,6 +41,7 @@ PKG_SET = "home-assistant.python.pkgs"
 PKG_PREFERENCES = {
     "fiblary3": "fiblary3-fork",  # https://github.com/home-assistant/core/issues/66466
     "HAP-python": "hap-python",
+    "SQLAlchemy": "sqlalchemy",
     "tensorflow": "tensorflow",
     "yt-dlp": "yt-dlp",
 }
diff --git a/nixpkgs/pkgs/servers/home-assistant/stubs.nix b/nixpkgs/pkgs/servers/home-assistant/stubs.nix
index e31c587258b7..0bdac4977ab4 100644
--- a/nixpkgs/pkgs/servers/home-assistant/stubs.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/stubs.nix
@@ -8,7 +8,7 @@
 
 buildPythonPackage rec {
   pname = "homeassistant-stubs";
-  version = "2023.12.3";
+  version = "2023.12.4";
   format = "pyproject";
 
   disabled = python.version != home-assistant.python.version;
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     owner = "KapJI";
     repo = "homeassistant-stubs";
     rev = "refs/tags/${version}";
-    hash = "sha256-PQZsesdGqeZgQUgO7DkKDcBrWRM/CY8giPx8cK3531s=";
+    hash = "sha256-a27PeLEArT87+DOrKZ5rLM5o2T3swzLwY+mBhOtd9dQ=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/servers/home-assistant/tests.nix b/nixpkgs/pkgs/servers/home-assistant/tests.nix
index 63cd9558a69d..15f1cd6f2904 100644
--- a/nixpkgs/pkgs/servers/home-assistant/tests.nix
+++ b/nixpkgs/pkgs/servers/home-assistant/tests.nix
@@ -64,6 +64,10 @@ let
     conversation = [
       "--deselect tests/components/conversation/test_init.py::test_get_agent_list"
     ];
+    cloud = [
+      # Tries to connect to alexa-api.nabucasa.com:443
+      "--deselect tests/components/cloud/test_http_api.py::test_websocket_update_preferences_alexa_report_state"
+    ];
     dnsip = [
       # Tries to resolve DNS entries
       "--deselect tests/components/dnsip/test_config_flow.py::test_options_flow"
@@ -134,6 +138,8 @@ in lib.listToAttrs (map (component: lib.nameValuePair component (
       broken = lib.elem component [
         # pinned version incompatible with urllib3>=2.0
         "telegram_bot"
+        # depends on telegram_bot
+        "telegram"
       ];
       # upstream only tests on Linux, so do we.
       platforms = lib.platforms.linux;