3135 Commits
Author SHA1 Message Date
Jan ČermákandGitHub 0c4fa6a3a9 Linux: Update kernel to 6.18.46 (#4978)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.18.46
2026-08-24 15:52:13 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
5425e7d0d4 Bump docker/setup-buildx-action from 4.2.0 to 4.3.0 (#4980)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 4.2.0 to 4.3.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/bb05f3f5519dd87d3ba754cc423b652a5edd6d2c...37fe631027851001ddb9b187196cc803df7f5f0e)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: 4.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-24 15:34:59 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
42adf2ef2b Bump shogo82148/actions-upload-release-asset from 1.10.3 to 1.10.4 (#4979)
Bumps [shogo82148/actions-upload-release-asset](https://github.com/shogo82148/actions-upload-release-asset) from 1.10.3 to 1.10.4.
- [Release notes](https://github.com/shogo82148/actions-upload-release-asset/releases)
- [Commits](https://github.com/shogo82148/actions-upload-release-asset/compare/d0cb37bb764791e72e64e643cd7056f74f1e77d7...aaba0f56bdbc1071f4af234d5cb16055e8a400de)

---
updated-dependencies:
- dependency-name: shogo82148/actions-upload-release-asset
  dependency-version: 1.10.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-24 15:34:47 +02:00
Jan ČermákandGitHub f567d92378 Re-add rootfstype to kernel command line (#4976)
The rootfstype parameter was removed in HAOS 13.0 when the root
filesystem switched from SquashFS to EROFS in #3456, because during the
transition one slot could still contain a SquashFS rootfs. The enforced
upgrade path now only allows upgrading from 15.2 or newer, so after an
update both slots are guaranteed to contain an EROFS rootfs and the
parameter can be added back. Specifying rootfstype avoids probing other
filesystem types when mounting the rootfs.

For U-Boot boards add rootfstype=erofs to the boot scripts and to the
grub.cfg on UEFI targets. On Raspberry Pi 5 the cmdline.txt on the boot
partition persists across updates, so adjust it in a targeted migration
in the RAUC hook. The migration replaces the obsolete removal of
rootfstype=squashfs, which is already handled on all systems the update
can be installed from.
2026-08-24 14:34:52 +02:00
Jan ČermákandGitHub 8fc6503d2c Enable F2FS on all targets (#4977)
Move the F2FS configuration to the shared haos.config kernel fragment
so it is enabled on every board. Until now only the Rockchip boards
(built-in) and Khadas VIM3 (module) had F2FS support. Build it in with
security xattrs enabled, so Docker layers containing files with
security.* attributes work on an F2FS data disk, and with compression
support to keep feature parity with the Rockchip kernels.

Remove the F2FS options from the Rockchip and Khadas VIM kernel configs
superseded by the shared fragment. CONFIG_F2FS_CHECK_FS previously
enabled on Rockchip is intentionally not carried over, as it is a
development option adding runtime consistency checks.

Refs #4969
2026-08-24 14:34:39 +02:00
Jan ČermákandGitHub 56e1e1e0d7 Bump erofs-utils to v1.8.10 and add multithreading support (#4974)
* buildroot 31f3962adb...7b12acaaf5 (3):
  > fs/erofs: add option for multithreaded compression
  > package/erofs-utils: add option for enabling multithreading support
  > package/erofs-utils: bump to version 1.8.10
2026-08-24 00:05:27 +02:00
Jan ČermákandGitHub 67052583e9 Use rootfs compression hints also for OVA, LZMA-compress large binaries (#4973)
Some recent features (e.g. #4809, #4816, #4837) increased the rootfs
bloat between 18.0 and 18.1, bringing the rootfs size on OVA and
generic-x86-64 just 0.5 MiB below the 256 MiB cap, blocking us from
adding new features that require space in the rootfs. To gain some
space, also start compressing large daemon binaries using the LZMA
algorithm. The selected binaries are normally invoked only once per
boot, so the runtime cost of the more expensive decompression is
minimal.

The same compression hints are now used for OVA, where it brings us
around 45 MiB in the rootfs partition image
2026-08-20 16:10:23 +02:00
Jan ČermákandGitHub 9f8af503d8 Linux: Update kernel to 6.18.45 (#4972)
* Linux: Update kernel to 6.18.45

* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.18.45

* Remove stmmac patch included in 6.18.45
2026-08-20 13:11:49 +02:00
Jan ČermákandGitHub 8694b5f28d Test landing page on port 80 and redirect from port 8123 (#4970)
Since 2026.08.0 landingpage uses port 80 as the default and redirects
there from port 8123. Check this behavior in tests.

Refs #4949
2026-08-18 20:45:31 +02:00
Jan ČermákandGitHub 149042c837 Avoid polling for SD card on CM5 Lite on Yellow (#4968)
On CM5 Lite, kernel keeps polling the mmc0 interface indefinitely as it
doesn't indicate the non-removable property while it has no SD card
slot. Patch the BCM2712 Yellow device tree to poll only once.

Fixes #4961
2026-08-18 18:30:58 +02:00
Jan ČermákandGitHub 9b63905ecb Update to Docker v29.7.2, runC v1.4.3, containerd v2.3.3 (#4960)
* buildroot f4f1427609...31f3962adb (4):
  > package/docker-cli: bump version to v29.7.2
  > package/docker-engine: bump version to v29.7.2
  > package/containerd: bump version to v2.3.3
  > package/runc: bump version to v1.4.3
2026-08-12 13:31:43 +02:00
Jan ČermákandGitHub 7db41f2864 Update Go to v1.26.5 (#4959)
* buildroot a2aa1edac1...f4f1427609 (1):
  > package/go: security bump to version 1.26.5
2026-08-11 14:06:30 +02:00
Jan ČermákandGitHub a191eb5d14 Bump OS Agent to v1.11.0 (#4958)
This release adds ListSSHAuthKeys method to the D-Bus API.

Full changelog:
* https://github.com/home-assistant/os-agent/releases/tag/1.11.0
2026-08-11 14:06:19 +02:00
Jan ČermákandGitHub 6538e48673 Enable HW flow control on Yellow's mini UART to stabilize Bluetooth (#4957)
Apply patch implementing HW flow control in BCM2835's mini UART and
indicate the RTS/CTS is wired in Yellow's device tree to enable using
the flow control for the Bluetooth interface. This greatly improves
stability of the Bluetooth interface, which started to be unstable with
kernel update to 6.18 in OS 18.0 and newer.

Fixes #4898
2026-08-10 20:35:17 +02:00
Jan ČermákandGitHub 673f701846 RaspberryPi: Update kernel to 6.18.39 - stable_20260724 (#4956)
* RaspberryPi: Update kernel to 6.18.39 - stable_20260724

* Bump package/rpi-firmware to 78e81e2

* buildroot dfa1d775aa...a2aa1edac1 (1):
  > package/rpi-firmware: update to 78e81e2 (for stable_20260724)
2026-08-10 20:35:08 +02:00
Jan ČermákandGitHub 237ac9b028 Relocate Rasberry Pi FDT out of the CMA alloc-range (#4954)
U-Boot's default bootm_size (512 MiB) makes booti relocate the FDT to
just below 0x20000000. This is fragmenting the linux,cma alloc-range
(first 768 MiB on BCM2711) so the default 512 MiB CMA allocation can't
be made and falls back to 8 MiB. The framebuffer console then fails to
allocate and HDMI output stays blank on displays larger than 1920x1080.

Set fdt_high to the firmware-provided FDT address so U-Boot places its
copy right below it, above the CMA alloc-range.

Fixes #4924
2026-08-10 20:29:44 +02:00
Jan ČermákandGitHub ee5177b997 Linux: Update kernel to 6.18.44 (#4953)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.18.43
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.18.44
2026-08-10 17:55:30 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
e6c322174b Bump shogo82148/actions-upload-release-asset from 1.10.2 to 1.10.3 (#4955)
Bumps [shogo82148/actions-upload-release-asset](https://github.com/shogo82148/actions-upload-release-asset) from 1.10.2 to 1.10.3.
- [Release notes](https://github.com/shogo82148/actions-upload-release-asset/releases)
- [Commits](https://github.com/shogo82148/actions-upload-release-asset/compare/394b3c11c3cfc038b5396ad265c074065cf875c3...d0cb37bb764791e72e64e643cd7056f74f1e77d7)

---
updated-dependencies:
- dependency-name: shogo82148/actions-upload-release-asset
  dependency-version: 1.10.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-10 17:11:03 +02:00
Jan ČermákandGitHub 6930145f96 Make Yellow CM4 DTS less confusing, drop invalid property (#4947)
Add patches reordering uartX nodes in the device tree to be less
confusing and remove the hardware flow control indication property for
UART0 which is not in effect, but invalid.
2026-08-06 13:51:42 +02:00
1328ed1178 raspberrypi: Increase USB hub debounce timeout to fix USB SSD boot on RPi 3 (#4940)
Co-authored-by: dlxmax <dlxmax@users.noreply.github.com>
2026-08-06 13:51:02 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
27693d84f6 Bump actions/stale from 10.4.0 to 11.0.0 (#4945)
Bumps [actions/stale](https://github.com/actions/stale) from 10.4.0 to 11.0.0.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/1e223db275d687790206a7acac4d1a11bd6fe629...4391f3da665fdf50b6810c1a66712fb9ba21aa93)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-version: 11.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-03 15:52:55 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
70cbc3ba1b Bump release-drafter/release-drafter from 7.6.0 to 7.7.0 (#4944)
Bumps [release-drafter/release-drafter](https://github.com/release-drafter/release-drafter) from 7.6.0 to 7.7.0.
- [Release notes](https://github.com/release-drafter/release-drafter/releases)
- [Commits](https://github.com/release-drafter/release-drafter/compare/eada3c96a64734dd381cfbda23511034e328ddb0...34d80673e067bdc0c24568d3af899c216adcfaa9)

---
updated-dependencies:
- dependency-name: release-drafter/release-drafter
  dependency-version: 7.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-03 15:52:25 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
f2f937a015 Bump docker/login-action from 4.5.1 to 4.6.0 (#4943)
Bumps [docker/login-action](https://github.com/docker/login-action) from 4.5.1 to 4.6.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/abd2ef45e78c5afb21d64d4ca52ee8550d9572c7...dbcb813823bdd20940b903addbd779551569679f)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-03 15:51:57 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
ceb900b9cb Bump hadolint/hadolint-action from 3.3.0 to 3.4.0 (#4942)
Bumps [hadolint/hadolint-action](https://github.com/hadolint/hadolint-action) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/hadolint/hadolint-action/releases)
- [Commits](https://github.com/hadolint/hadolint-action/compare/2332a7b74a6de0dda2e2221d575162eba76ba5e5...2a66e89f53d0771bb131a7fa31f3136336094aa6)

---
updated-dependencies:
- dependency-name: hadolint/hadolint-action
  dependency-version: 3.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-03 15:51:15 +02:00
Jan ČermákandGitHub c13cd7603e Linux: Update kernel to 6.18.42 (#4941)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.18.42
2026-08-03 15:50:19 +02:00
7df94580e5 Enable Goodix touchscreen driver for GDIX1002 panels (#4933)
On Intel N150 panel PCs, HAOS already binds Intel LPSS + DesignWare I2C
so ACPI device GDIX1002 appears on the bus, but no input device is
created because i2c-hid-acpi does not match GDIX1002 (no PNP0C50 CID)
and CONFIG_TOUCHSCREEN_GOODIX is disabled.

Enable the Goodix driver as a module so GDIX1002 can bind.

Co-authored-by: angelolsantos <angelolsantos@users.noreply.github.com>
2026-08-03 14:19:00 +02:00
Stefan AgnerandGitHub c6de5b243a Linux: Update kernel to 6.18.41 (#4930)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.18.41
2026-07-30 15:36:58 +02:00
d587877457 Move Apple SMC option to generic-x86-64 kernel config (#4928)
SENSORS_APPLESMC depends on X86 && ACPI, so requesting it in the shared
device-support.config fragment has no effect on non-x86 boards and
causes a config check warning on generic-aarch64:

  SENSORS_APPLESMC=m requested, actual = n

Move it to the generic-x86-64 board kernel config next to the other
x86-only hwmon drivers. The Apple SMC is only present on bare-metal
Intel Macs, which use the generic-x86-64 image.

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-30 15:18:39 +02:00
Stefan Agner 24fcd4b6a7 Merge branch 'main' into dev 2026-07-30 12:50:55 +02:00
Stefan Agner 3c196f5144 Bump OS to release version 18.2 18.2 2026-07-30 09:35:40 +02:00
Stefan AgnerandClaude Opus 5 13e73122ac Keep Dropbear alive during Supervisor and Docker shutdown (#4923)
Dropbear has no ordering relationship to haos-supervisor.service or
docker.service, so systemd schedules all three stop jobs in the same
batch and runs them concurrently. Dropbear exits within milliseconds
while the Supervisor gets up to 450s to stop containers, which means an
SSH session is dropped right when the interesting part of shutdown
starts. That makes it needlessly hard to debug slow shutdowns.

Order Dropbear before both units. Since stop order is the reverse of
start order, systemd now stops it only once the Supervisor and Docker are
gone. This is an ordering-only dependency: if Dropbear fails, is masked
or is skipped by its ConditionFileNotEmpty=, the ordering counts as
satisfied and both units start as before. It adds no boot latency
either, as docker.service already waits for the overlay partition that
Dropbear needs for /etc/dropbear.

Verified on a generic-x86-64 VM: an SSH session now survives the full
22.4s Supervisor teardown, and systemd stops Dropbear last, 3ms after
docker.service is gone.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-30 09:34:13 +02:00
6f55637270 Keep Dropbear alive during Supervisor and Docker shutdown (#4923)
Dropbear has no ordering relationship to haos-supervisor.service or
docker.service, so systemd schedules all three stop jobs in the same
batch and runs them concurrently. Dropbear exits within milliseconds
while the Supervisor gets up to 450s to stop containers, which means an
SSH session is dropped right when the interesting part of shutdown
starts. That makes it needlessly hard to debug slow shutdowns.

Order Dropbear before both units. Since stop order is the reverse of
start order, systemd now stops it only once the Supervisor and Docker are
gone. This is an ordering-only dependency: if Dropbear fails, is masked
or is skipped by its ConditionFileNotEmpty=, the ordering counts as
satisfied and both units start as before. It adds no boot latency
either, as docker.service already waits for the overlay partition that
Dropbear needs for /etc/dropbear.

Verified on a generic-x86-64 VM: an SSH session now survives the full
22.4s Supervisor teardown, and systemd stops Dropbear last, 3ms after
docker.service is gone.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-28 17:02:34 +02:00
Stefan AgnerandGitHub a69129bdd7 Linux: Update kernel to 6.18.40 (#4922)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.18.40
2026-07-28 11:01:43 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
9c172e1225 Bump docker/login-action from 4.4.0 to 4.5.1 (#4921)
Bumps [docker/login-action](https://github.com/docker/login-action) from 4.4.0 to 4.5.1.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/af1e73f918a031802d376d3c8bbc3fe56130a9b0...abd2ef45e78c5afb21d64d4ca52ee8550d9572c7)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.5.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-27 15:56:50 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1020348fe7 Bump actions/checkout from 7.0.0 to 7.0.1 (#4920)
Bumps [actions/checkout](https://github.com/actions/checkout) from 7.0.0 to 7.0.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0...3d3c42e5aac5ba805825da76410c181273ba90b1)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 7.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-27 15:56:40 +02:00
Stefan Agner a8e489b437 Bump OS to development version 18.3.dev0 2026-07-27 15:54:18 +02:00
Stefan Agner 42c2803f47 Bump OS to pre-release version 18.2.rc1 18.2.rc1 2026-07-27 15:04:33 +02:00
60d79134ea Do not start Supervisor from HA CLI and serial getty units (#4918)
The HA CLI unit (and the serial getty drop-in) pulled in
haos-supervisor.service via Wants=. Since #4326 the CLI unit is
configured to never reach its start limit (RestartSec=100ms,
RestartMaxDelaySec=3s, StartLimitIntervalSec=3s), so it restarts
indefinitely - and every restart starts the Supervisor again.

This makes it impossible to stop the Supervisor for debugging: stopping
haos-supervisor.service and removing the containers terminates
hassio_cli, which makes ha-cli@tty1.service exit and restart, which
immediately starts the Supervisor back up.

The Wants= is not needed: haos-supervisor.service is
WantedBy=multi-user.target and gets started on boot regardless. Drop it
and keep only the After= ordering.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-27 14:46:55 +02:00
joelmansfordandGitHub 5b182e4a11 Enable MaxLinear/Exar USB-to-serial driver (CONFIG_USB_SERIAL_XR) (#4915)
The APC Easy UPS On-Line SRV series uses a MaxLinear/Exar USB-UART bridge
(04e2:1410) for its USB interface. Without xr_serial it binds to cdc_acm
and NUT cannot communicate with it. The same UPS works on Linux where
xr_serial is available.

The driver is already in mainline, so this is a config-only change
alongside the USB-serial drivers already enabled here.
2026-07-27 14:04:10 +02:00
KingKaomandGitHub 72cbd339fb Enable Apple SMC hardware monitoring support (#4912)
* Enable Apple SMC hardware monitoring support

* Update device-support.config

comment removed
2026-07-21 17:07:03 +02:00
Franck NijhofandGitHub 2723703746 Add the Open Home Foundation AI Policy (#4911) 2026-07-21 13:12:33 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
7444f828c9 Bump release-drafter/release-drafter from 7.5.1 to 7.6.0 (#4909)
Bumps [release-drafter/release-drafter](https://github.com/release-drafter/release-drafter) from 7.5.1 to 7.6.0.
- [Release notes](https://github.com/release-drafter/release-drafter/releases)
- [Commits](https://github.com/release-drafter/release-drafter/compare/4d75298e00d9e34c483e5ff8c68d0ea1c1940c1e...eada3c96a64734dd381cfbda23511034e328ddb0)

---
updated-dependencies:
- dependency-name: release-drafter/release-drafter
  dependency-version: 7.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-20 16:59:25 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
157e146c78 Bump actions/setup-python from 6.3.0 to 7.0.0 (#4910)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 6.3.0 to 7.0.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/ece7cb06caefa5fff74198d8649806c4678c61a1...5fda3b95a4ea91299a34e894583c3862153e4b97)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-20 16:59:15 +02:00
aacd5f74f5 Enable Intel RAPL / powercap on generic-x86-64 (#4908)
* Enable Intel RAPL / powercap on generic-x86-64

Enable the powercap framework and the Intel RAPL driver so that CPU and
package energy counters are exposed via /sys/class/powercap. This allows
Home Assistant to monitor the power consumption of the host it runs on
(e.g. via a command_line sensor reading energy_uj) without external
hardware. The intel_rapl_msr driver also covers modern AMD (Zen) CPUs.

energy_uj has been root-readable only since kernel 5.10, so this does not
reintroduce the PLATYPUS side-channel concern.

Closes #4907

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* Update buildroot-external/board/pc/generic-x86-64/kernel.config

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 14:19:30 +02:00
777638ae05 Adapt OS update test to Supervisor no longer auto-rebooting (#4906)
* Adapt OS update test to Supervisor no longer auto-rebooting

Since Supervisor 2026.07 (home-assistant/supervisor#6982) a successful
/os/update no longer reboots the host automatically. It installs the
bundle to the other slot, marks it as the pending boot slot (exposed as
"version_pending", see home-assistant/supervisor#7006) and raises a
reboot-required repair issue, leaving the actual reboot to the user.

test_os_update still waited for an immediate "Booting `Slot " right after
`ha os update`, so when run against a 2026.07+ Supervisor it timed out and
failed (cascading into test_supervisor). This is why the QEMU test job
started failing on the dev builds built after 2026-06-30.

Adapt the test to the new flow:
- run `ha os update` and wait until the update is installed as pending
  (version_pending == target), retrying only while the OTA URL is not
  available yet; re-requesting an already-installed version is rejected.
- apply the pending update with `ha host reboot` and wait for the new
  slot to boot.
- assert the new version is running and nothing is pending anymore.

Verified end-to-end in QEMU against the current dev image with the latest
Supervisor: the update stages to slot B (version_pending=18.1, still
booted on A), `ha host reboot` boots slot B, and afterwards version=18.1
with version_pending cleared.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* test_os_update: address review feedback on the update poll loop

- Bound the retry loop and fail with the last `ha os update` output instead
  of relying on the global test timeout when the update never installs.
- Tolerate a transient `ha os info` CLI failure (|| true + defensive JSON
  parse), matching the pattern already used in test_init.
- Use dict.get() for the post-reboot version_pending assertion.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* test_os_update: harden update poll against null data and timeout budget

- `ha os info --raw-json` returns "data": null on an error result; coerce it
  to an empty dict so the version_pending lookup can't raise AttributeError.
- Lower the per-attempt timeout to 120s and the retry count to 4 so the
  loop's worst case stays within the test's 600s timeout budget.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-18 20:05:31 +02:00
7c1099f9dd Fix offline connectivity test for fancy busybox ping (#4905)
CONFIG_FEATURE_FANCY_PING (enabled in #4854, HAOS 18.2) turns `ping HOST`
into a continuous ping that never returns without an explicit count. The
offline smoke test's connectivity helper ran a bare `ping 1.1.1.1`, so on
18.2+ it blocked until the pytest timeout instead of doing a single probe,
failing test_ha_runs_offline (and cascading into the following test modules).

Detect the applet at runtime and adapt: use `ping -c 1 -W 2` when the fancy
applet is available (which bounds the run), and fall back to the minimal
one-shot `ping HOST` otherwise. Match both output styles ("HOST is alive!"
vs. ping statistics) and accept "100% packet loss" as a disconnected result.

Runtime capability detection keeps the test working on both pre- and
post-18.2 images without hard-coding version numbers.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-18 19:37:05 +02:00
Stefan AgnerandGitHub ef7db16197 Linux: Update kernel to 6.18.39 (#4904)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.18.39
2026-07-18 19:03:58 +02:00
Stefan AgnerandGitHub 91254758dd Bump Buildroot to 2025.02.16 and Docker to 29.6.2 (#4903)
* buildroot c1438cf214...dfa1d775aa (5):
  > package/runc: bump version to v1.3.6
  > package/containerd: bump version to v2.2.6
  > package/docker-cli: bump version to v29.6.2
  > package/docker-engine: bump version to v29.6.2
  > Merge tag '2025.02.16' into 2025.02.x-haos-merge-buildroot-2025.02.16
2026-07-18 18:57:01 +02:00
Stefan AgnerandGitHub 8a3df11427 Bump OS Agent to v1.10.0 (#4897)
This release improves the reason evaluation when  RPi firmware update
isn't available and improves SSH authorization key support.

Full changelog:
- https://github.com/home-assistant/os-agent/releases/tag/1.10.0
2026-07-18 18:42:44 +02:00
b303728439 Enable Intel LPSS I2C for integrated touchscreens (#4900)
* Enable Intel LPSS DesignWare I2C for integrated touchscreens

CONFIG_I2C_HID_ACPI alone cannot bind Goodix (and similar) panels on
Intel N-series machines because the Serial IO I2C controller
(PCI 00:15.x) never comes up without MFD_INTEL_LPSS_PCI and
I2C_DESIGNWARE_*. Also enable PINCTRL_ALDERLAKE for Twin Lake / ADL-N
pinmux (e.g. Intel N150 panel PCs).

Co-authored-by: Cursor <cursoragent@cursor.com>

* Apply suggestion from @agners

Co-authored-by: Stefan Agner <stefan@agner.ch>

* Apply suggestion from @agners

Co-authored-by: Stefan Agner <stefan@agner.ch>

---------

Co-authored-by: angelolsantos <3864987+angelolsantos@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Stefan Agner <stefan@agner.ch>
2026-07-17 15:29:14 +02:00