Repository navigation
Releases: tinkerologie/ha-unraid
Release list
v2026.10.5
Security
- Update the development lockfile to filelock 4.2.4, fixing GHSA-v4x8-3wr5-3wq8, GHSA-567q-5qvw-pf92, and GHSA-9vhv-jxww-xfm5 in the pre-commit/virtualenv dependency chain (#374).
- Audit all Python extras, including test and development dependencies, in the existing pre-commit vulnerability check.
Added
-
Show cached Docker image, installed tag, update status and available project/registry/support links in Home Assistant's release-notes panel. Avoid referring to a missing link in update summaries. Actual target versions and changelogs remain dependent on upstream metadata (#258, client #132).
-
Optional Docker Pause and Unpause buttons, disabled by default, with state-aware Pause/Resume dashboard controls and a Paused filter in Docker and unified card editors (#380).
-
Align all eight dashboard cards and editors with Home Assistant theme and design tokens, readable light/dark/custom-theme colours, keyboard and screen-reader semantics, 40px/48px touch targets, reduced motion, and responsive RTL layouts. Keep Sections heights content-driven and show only relevant editor fields (#370).
-
Discover hardware temperature entities when valid readings first arrive after setup, retaining entity identities through missing and restored readings, including prolonged telemetry gaps (#203).
-
Docker and VM cards show actual workload names, support optional YAML label overrides, and retain full-name tooltips. VM cards now offer running/stopped filters; both card types support a persisted default filter through the visual editor (#370).
Fixed
-
Show paused Docker containers separately from running and stopped containers, including counts, sorting and status labels. Refresh state when unpausing succeeds but Stop fails (#380).
-
Correct dashboard RAM subtitles to use native used-memory readings, populate array capacities from current attributes, and join suffixed disk metrics into one row per physical or boot device. Exclude aggregate parity rows and network interfaces owned by other integrations or servers, and respect Home Assistant traffic display units and formatting (#378).
-
Normalize Docker aggregate CPU and memory percentages to 0–100% of host capacity: use logical CPU threads for CPU and actual container bytes divided by host RAM for memory. Require complete readings, preserve zero, and keep entity IDs unchanged. Automations using the previous aggregate percentage scales may need threshold adjustments (#202).
-
Compute Docker total memory used from actual running-container byte readings instead of percentages multiplied by host RAM; exclude stopped or stale containers and retain unknown when readings are missing. Document the five existing host/Docker summary sensors. ZFS ARC metrics remain dependent on upstream API support (#202).
-
Restore hardware temperature metrics on Unraid API 4.37.6 and later using standby-aware collection, while keeping older or unknown API versions on polling that omits temperature queries to avoid waking disks (#369, #203, #211). Polling intervals are unchanged. Reload the integration after upgrading the server API to discover temperature entities.
Changed
-
Keep Docker container switches on while paused; Stop unpauses before stopping. Disable dashboard Restart while paused (#380).
-
Require unraid-api 1.14.0, including native Docker restart support with an older-API fallback. Expose optional VM UUID attributes and include redacted VM UUIDs in diagnostics without changing entity identities.
-
Update the development lockfile to Pillow 13.0.0 to clear the dependency audit's decoder security advisories.
Known limitations
- ZFS ARC metrics (#202), host reboot/shutdown (#176), and VM hibernation (#284) require additional official Unraid GraphQL API support. These issues remain open.
- Target image versions and genuine Docker release changelogs (#258) also require upstream metadata. Cached image details and general project links are available in this release; the issue remains open.
See CHANGELOG.md for details.
📦 Installation
Via HACS (Recommended)
- Open HACS in Home Assistant
- Go to Integrations
- Click the ⋮ menu → Custom repositories
- Add this repository:
https://github.com/tinkerologie/ha-unraid - Category: Integration
- Click Add
- Search for Unraid
- Click Download
- Restart Home Assistant
Manual Installation
- Download
unraid-2026.10.5.zip - Extract to
config/custom_components/ - Restart Home Assistant
- Add the integration via Settings → Devices & Services → Add Integration
SHA256 Checksum:
01ac968e7efeb9593345283400798b2058d8e22bf70bdee484c4302776c4555b unraid-2026.10.5.zip
v2026.10.4
Fixed
- WebSocket errors logged every few minutes on quiet servers (tinkerologie/unraid-api#118): subscriptions that see no events for 5 minutes (notifications, UPS, array and container stats on an idle server) logged
Unexpected error in ... WebSocketwith aTimeoutErrortraceback each time they timed out and reconnected. unraid-api 1.13.2 raises its ownUnraidTimeoutErrorfor these idle timeouts, which the integration already treats as a normal reconnect, so they are now logged at debug level only. Entity data was never affected.
Changed
- unraid-api bumped to 1.13.2: also closes the WebSocket when a subscription handshake fails (tinkerologie/unraid-api#119).
See CHANGELOG.md for details.
📦 Installation
Via HACS (Recommended)
- Open HACS in Home Assistant
- Go to Integrations
- Click the ⋮ menu → Custom repositories
- Add this repository:
https://github.com/tinkerologie/ha-unraid - Category: Integration
- Click Add
- Search for Unraid
- Click Download
- Restart Home Assistant
Manual Installation
- Download
unraid-2026.10.4.zip - Extract to
config/custom_components/ - Restart Home Assistant
- Add the integration via Settings → Devices & Services → Add Integration
SHA256 Checksum:
4cbd7c912f5eab6e1d11467b5c2c793f567340360d0efd7282067ad5327ecfce unraid-2026.10.4.zip
v2026.10.3
Fixed
- Duplicate entity IDs with multiple servers sharing a placeholder SMBIOS UUID (#351): Servers whose firmware reports a known placeholder UUID (for example
03000200-0400-0500-0006-000700080009on TerraMaster and other AMI-based units) could be added twice thanks to the hostname-qualified config entry unique ID introduced in #183, but entities and the server device were still keyed on the raw UUID, so the second server's entities were rejected withPlatform unraid does not generate unique IDs. The runtime server identity now follows the config entry's hostname-qualified unique ID for placeholder servers. Entities, the server device, stale-entity cleanup, device removal and diagnostics all use that one resolved identity. Servers with a real UUID, host-fallback entries and legacy entries are unchanged.- Automatic migration: on setup, entity unique IDs and the server device identifier that belong to the config entry are re-keyed from the raw placeholder prefix to the hostname-qualified prefix. Entity IDs, names, areas and other customisations are kept. The migration is idempotent and never deletes records.
- If you applied the workaround from the issue (replacing
server_info["uuid"]withentry.unique_idlocally) and already re-added the servers, nothing changes. If stale raw-prefixed entities remain from before the workaround, setup logs aCannot migrate ... already uses itwarning naming both entities; remove the stale one under Settings > Devices & services > Entities and reload the integration.
Changed
- Deprecated Home Assistant patterns removed (#358): percentage sensors use
UnitOfRatio.PERCENTAGEand storage sensors suggestUnitOfInformation.GIBIBYTESinstead of string literals (identical values, no state or statistics change); the config and repair flows import the Probatio validation engine that Home Assistant 2026.9+ ships instead of thevoluptuousalias; repair flow steps are typed withRepairsFlowResult; tooling targets Python 3.14 (ruffpy314, CI 3.14.2), which clears the schema and flow-result pyright errors the type check previously reported.
See CHANGELOG.md for details.
📦 Installation
Via HACS (Recommended)
- Open HACS in Home Assistant
- Go to Integrations
- Click the ⋮ menu → Custom repositories
- Add this repository:
https://github.com/tinkerologie/ha-unraid - Category: Integration
- Click Add
- Search for Unraid
- Click Download
- Restart Home Assistant
Manual Installation
- Download
unraid-2026.10.3.zip - Extract to
config/custom_components/ - Restart Home Assistant
- Add the integration via Settings → Devices & Services → Add Integration
SHA256 Checksum:
db8edab414bd4db5346ac20bfcefdd9eb818367bcd89840975080c41d4ffcc28 unraid-2026.10.3.zip
v2026.10.2
Fixed
- Duplicate Entity Unique IDs Across Storage Inventories (#327): Fixed
Platform unraid does not generate unique IDs. ID ... already exists - ignoring ...errors when a drive (such as a partitioned SSD used for both boot and pool/cache, or disks reported in multiple inventory lists) appears acrossdisks,parities,caches, orboot. Disks are now deduplicated by ID preserving first-precedence inventory order, ensuring unique entity registration across disk usage, temperature, error count, disk health binary sensors, disk spin switches, and disk spin-down buttons. - Parity Status and Activity Accuracy in Storage Card (#328): Fixed inverted parity status and incorrect active check states in
unraid-storage-card:- Corrected polarity evaluation for
binary_sensor.*_parity_valid(Problemdevice class:offindicates valid/healthy,onindicates a problem/check needed). - Decoupled active check detection from progress percentage so finished checks at 100% no longer remain stuck as "In Progress", and checks starting at 0% correctly show "In Progress".
- Correctly reflect running, paused, and idle states for parity checks and parity switches.
- Guarded against missing, disabled, or unavailable
sensor.*_last_parity_checkentities to avoid displaying invalid or unparsed date strings.
- Corrected polarity evaluation for
See CHANGELOG.md for details.
📦 Installation
Via HACS (Recommended)
- Open HACS in Home Assistant
- Go to Integrations
- Click the ⋮ menu → Custom repositories
- Add this repository:
https://github.com/ruaan-deysel/ha-unraid - Category: Integration
- Click Add
- Search for Unraid
- Click Download
- Restart Home Assistant
Manual Installation
- Download
unraid-2026.10.2.zip - Extract to
config/custom_components/ - Restart Home Assistant
- Add the integration via Settings → Devices & Services → Add Integration
SHA256 Checksum:
1b0abf981305c9cffae7df82bb673b6fd550c8524fdd12466193bc3cab3b8ead unraid-2026.10.2.zip
v2026.10.1
Added
- Boot Device (Flash USB) Support: Added integration entities (
DiskUsageSensor,DiskHealthBinarySensor,DiskTemperatureSensor,DiskErrorCountSensor) for the Unraid USB boot disk (data.boot), enabling monitoring of flash drive capacity, filesystem, device path, temperature, error counts, and operational health. - Dedicated User Shares Card (
unraid-shares-card): Created a dedicated Lovelace card displaying user shares with disk usage progress bars, used/free/total capacity, share protection states (Protectedvs.Unprotected), and direct filtering. - Dedicated Network Interfaces Card (
unraid-network-card): Created a dedicated Lovelace card visualizing physical NICs, bonds, and bridges with real-time throughput metrics (inbound/outbound rates and lifetime totals), link speed badges (e.g. 10 Gbps, 1 Gbps), active link state chips, MTU, MAC addresses, and clickable LAN/FQDN WebGUI links. - Unified Control Center Dashboard Enhancements (
unraid-dashboard-card): Added dedicatedSharesandNetworktabs tounraid-dashboard-cardwith custom SVG icons, providing unified one-click navigation across Server Overview, Storage & Disks, Shares, Network, Docker, VMs, and UPS. - Server Card System Information Expansion (
unraid-server-card): Enhancedunraid-server-cardwith:- System Uptime: Robust human-readable uptime parser supporting both ISO 8601 timestamps (
sensor.*_up_since) and epoch seconds (sensor.*_uptime), formatting down to days, hours, and minutes. - Primary Network: Primary network interface name and IP address (e.g.
br0: 192.168.20.21). - Network Traffic: Active link speed and real-time live transfer rates (
↓ rx • ↑ tx). - Boot Device: Drive name and used/total space (e.g.
Flash (2.5 GB / 29.3 GB)).
- System Uptime: Robust human-readable uptime parser supporting both ISO 8601 timestamps (
- Storage Card Boot Device Display (
unraid-storage-card): AddedFlash (Boot)device at the bottom of the disk tray with dedicated USB flash drive badge,--temperature placeholder,Healthystatus badge, and usage percentage bar. - End-to-End Playwright Browser Testing & Single-Bundle CI: Added Playwright browser test suite (
npm run test:browser) verifying element registration, template rendering without DOM corruption, card styling, and tab switching against a live browser fixture; added GitHub Actions workflow validating frontend build integrity and browser test suites. - Native Subviews & Interactive More-Info Dialogs: Added a
navigate()navigation helper inBaseUnraidCardfor seamless drill-down into Home Assistant native subviews (subview: true); added interactive click triggers across server and UPS gauge rings and detail items to open Home Assistant's nativemore-infodialogs with full historical charts and attributes.
Fixed
- Obsolete Lovelace Resource Cleanup: Automatically delete stale Lovelace module resources pointing to retired standalone card bundles during integration setup/upgrade.
- Frontend Card Metrics & Safety: Fixed unit conversion and zero threshold in network data rates, excluded disconnected/placeholder states (
unavailable,unknown,--) from connected interface counts, guarded share parity protection against missing color attributes, and clamped share percentage bars to 0–100%. - UPS Runtime Remaining Formatting (
unraid-ups-card): Fixed redundant units (e.g.1 hour 41 minutes min) by introducing a duration formatter that preserves already-humanized runtime strings, strips accidental duplicate suffixes, and cleanly converts raw numeric minutes/seconds into readable hours and minutes. - Disk Error Display in Storage Card: Replaced plain
0 errtext with status badges reflecting healthy, warning, or error states. - Lit Minification and Trailing Whitespace Template Leaks: Fixed template compilation issues in minified production bundles and updated pre-commit hooks to avoid corrupting JavaScript templates.
See CHANGELOG.md for details.
📦 Installation
Via HACS (Recommended)
- Open HACS in Home Assistant
- Go to Integrations
- Click the ⋮ menu → Custom repositories
- Add this repository:
https://github.com/ruaan-deysel/ha-unraid - Category: Integration
- Click Add
- Search for Unraid
- Click Download
- Restart Home Assistant
Manual Installation
- Download
unraid-2026.10.1.zip - Extract to
config/custom_components/ - Restart Home Assistant
- Add the integration via Settings → Devices & Services → Add Integration
SHA256 Checksum:
e64d7a3c0927096c457fa27ebe3a035f5b965f00d17a2023603dd145d0aed3d9 unraid-2026.10.1.zip
v2026.10.0
Added
- Custom Lovelace Dashboard Cards Suite (#317): Added an official, modular Lovelace dashboard cards suite bundled directly into the integration:
unraid-server-card: System uptime, Unraid OS version, registration badge, CPU/RAM utilization progress rings and gradient bars, motherboard/CPU temperatures, and network throughput.unraid-storage-card: Storage matrix showing array status, parity sync status and history, capacity progress rings, and individual disk health (temperatures, spin states, and read/write I/O).unraid-docker-card: Container manager displaying active containers, status badges, CPU/memory footprints, autostart toggles, and start/stop/restart actions, with configurable grid and list views.unraid-ups-card: Power & UPS monitor with battery charge rings, electrical load, AC voltages, estimated runtime, and adaptive status coloring.unraid-vm-card: Virtual machine manager with state pills, memory allocation, CPU assignments, and lifecycle controls.unraid-dashboard-card: Unified tabbed container providing single-card access to all specialized views with borderless embedded styling.
See CHANGELOG.md for details.
📦 Installation
Via HACS (Recommended)
- Open HACS in Home Assistant
- Go to Integrations
- Click the ⋮ menu → Custom repositories
- Add this repository:
https://github.com/ruaan-deysel/ha-unraid - Category: Integration
- Click Add
- Search for Unraid
- Click Download
- Restart Home Assistant
Manual Installation
- Download
unraid-2026.10.0.zip - Extract to
config/custom_components/ - Restart Home Assistant
- Add the integration via Settings → Devices & Services → Add Integration
SHA256 Checksum:
532ccb8f93c7011d404240ef5739d861f4b7ab3daaf7a2f807072f8236c8aa9e unraid-2026.10.0.zip
v2026.9.2
Added
- VM Status Sensors (#268): Added dedicated sensor entities (
sensor.*_vm_status_*) for virtual machines reporting their current state (e.g.running,paused,shutoff,pmsuspended,crashed,idle,blocked) along withvm_idandraw_stateattributes. - Docker Container Memory Used and Limit Sensors (#283): Added numeric memory sensors (
sensor.*_container_*_memory_usedandsensor.*_container_*_memory_limit, disabled by default) for Docker containers reporting exact memory usage and limit in bytes (with suggested unit MB) parsed from container WebSocket statistics, enabling numeric threshold automations (such as restarting leaking containers).
Fixed
- Share Entity Cleanup on Transient API Failures: Optional share queries now
retain the last known-good snapshot and tell entity cleanup when the query
failed, preventing healthy share entities from being pruned after temporary
API errors.
See CHANGELOG.md for details.
📦 Installation
Via HACS (Recommended)
- Open HACS in Home Assistant
- Go to Integrations
- Click the ⋮ menu → Custom repositories
- Add this repository:
https://github.com/ruaan-deysel/ha-unraid - Category: Integration
- Click Add
- Search for Unraid
- Click Download
- Restart Home Assistant
Manual Installation
- Download
unraid-2026.9.2.zip - Extract to
config/custom_components/ - Restart Home Assistant
- Add the integration via Settings → Devices & Services → Add Integration
SHA256 Checksum:
1201c2b1061935c9b4dc5d882090501b6668f677ccc17d6b6ff7b454a17c6a8b unraid-2026.9.2.zip
v2026.9.1
Added
- Docker Container Autostart Switch: Added a configuration switch (
switch.*_container_*_autostart, disabled by default) for each Docker container allowing users to toggle whether a container starts automatically on Unraid array start, powered byunraid-apiv1.13.1'supdate_container_autostartmutation. - Network Interface Link Binary Sensors: Added connectivity diagnostic binary sensors (
binary_sensor.*_network_*_link) for monitorable network interfaces (physical NICs, bonds, bridges, and VLANs) reporting operational link state (up/down) along with MAC address, IP address, duplex, MTU, speed, and interface type. - Network Interface Speed & IP Sensors: Added diagnostic sensors (
sensor.*_network_*_speedin Mbit/s andsensor.*_network_*_ip) reporting negotiated link speeds and network IP addressing with IPv4/IPv6 details. - Plugin Installation Status Binary Sensor: Added diagnostic binary sensor (
binary_sensor.*_plugin_installation_in_progress) reporting whether plugin installation or update operations are actively running on the Unraid server. - Recalculate Notifications Button: Added diagnostic button (
button.*_recalculate_notifications) to trigger immediate recalculation of the notification overview counts on the Unraid server. - Clear Disk Statistics Button: Added per-disk button (
button.*_disk_*_clear_statistics, disabled by default) allowing users to clear read, write, and error statistics on individual array disks directly from Home Assistant.
Changed
- Upgrade
unraid-apito v1.13.1: Upgraded dependency tounraid-api>=1.13.1which brings Unraid OS 7.3.x and GraphQL API 4.37.x schema compatibility, network interface queries, Docker organizer models, container autostart configuration mutations (with GraphQL input type fix), individual array disk mount/unmount and statistics reset mutations, and server identity queries. - Refactor Plugin Query to use Typed Client Method: Replaced direct GraphQL query
query { installedUnraidPlugins }inUnraidInfraCoordinatorwith the official typedapi_client.get_installed_unraid_plugins()method provided inunraid-apiv1.13.1, eliminating direct GraphQL usage and ensuring full adherence to the API boundary architecture.
See CHANGELOG.md for details.
📦 Installation
Via HACS (Recommended)
- Open HACS in Home Assistant
- Go to Integrations
- Click the ⋮ menu → Custom repositories
- Add this repository:
https://github.com/ruaan-deysel/ha-unraid - Category: Integration
- Click Add
- Search for Unraid
- Click Download
- Restart Home Assistant
Manual Installation
- Download
unraid-2026.9.1.zip - Extract to
config/custom_components/ - Restart Home Assistant
- Add the integration via Settings → Devices & Services → Add Integration
SHA256 Checksum:
929e04d534d6f79b9ed73da85eac9d80e9c077de3a13766374a7a74fab5c021b unraid-2026.9.1.zip
v2026.9.0
Fixed
- Sensors Do Not Round Correctly in Templates and External Dashboards (#296, #302): Numeric sensor values (CPU, RAM, Swap, Temperatures, Array usage, Share usage, Docker stats, UPS metrics) are now cleanly rounded in
native_valueto match their natural resolution andsuggested_display_precision. Templates (e.g.{{ states('sensor.tower_cpu_usage') }}), external dashboards (Homarr, MQTT, Node-RED, REST), and automations now receive clean, expected numerical values matching the Home Assistant frontend display without requiring manual| round(...)filters in YAML. - Dynamic Entity Pruning on Optional Query Failures (#297, #302): Optional queries for Docker containers, VMs, UPS devices, and network metrics now return
Noneon caught network/API errors rather than an empty list, allowingUnraidSystemCoordinatorto retain last known-good cached data and preventing entity cleanup from incorrectly pruning active entities when an optional query fails.
See CHANGELOG.md for details.
📦 Installation
Via HACS (Recommended)
- Open HACS in Home Assistant
- Go to Integrations
- Click the ⋮ menu → Custom repositories
- Add this repository:
https://github.com/ruaan-deysel/ha-unraid - Category: Integration
- Click Add
- Search for Unraid
- Click Download
- Restart Home Assistant
Manual Installation
- Download
unraid-2026.9.0.zip - Extract to
config/custom_components/ - Restart Home Assistant
- Add the integration via Settings → Devices & Services → Add Integration
SHA256 Checksum:
6d0ce9204798abac408b6661b70e2848daf29d570dd87a7cea0d8718c9693e01 unraid-2026.9.0.zip
v2026.8.1
Fixed
- CPU usage unavailable when GraphQL returns a local URL without a host (#299, #300) Huge thanks to @sephirothx for this contribution! 🎉
See CHANGELOG.md for details.
📦 Installation
Via HACS (Recommended)
- Open HACS in Home Assistant
- Go to Integrations
- Click the ⋮ menu → Custom repositories
- Add this repository:
https://github.com/ruaan-deysel/ha-unraid - Category: Integration
- Click Add
- Search for Unraid
- Click Download
- Restart Home Assistant
Manual Installation
- Download
unraid-2026.8.1.zip - Extract to
config/custom_components/ - Restart Home Assistant
- Add the integration via Settings → Devices & Services → Add Integration
SHA256 Checksum:
f7a6c26f1ca6e6516867a0b668a0f6660e13b838bd14f882c7665e738f595dac unraid-2026.8.1.zip