2175 Commits

Author SHA1 Message Date
dependabot[bot]
e5e0f99d52
Bump actions/stale from 6.0.0 to 6.0.1 (#2179)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-10 16:42:00 +02:00
Stefan Agner
340cbc4c6b
Yellow: Support wipeing boot files on NVMe (#2173) 2022-10-06 23:49:47 +02:00
Stefan Agner
2870e04586
Linux: Update kernel 5.15.72 (#2171) 2022-10-06 13:38:41 +02:00
Pascal Vizeli
a3cc15f11f
Streamline CONFIG_RT_GROUP_SCHED (#2169)
* Disable RT_GROUP_SCHED
2022-10-03 15:41:13 +02:00
Stefan Agner
ce86be7632
Remove HDMI fix applied in Linux 5.15.68 (#2166) 2022-10-02 23:23:58 +02:00
Stefan Agner
c28d913a7e
Linux: Update kernel 5.15.71 (#2165) 2022-10-02 10:15:22 +02:00
Bryan York
2ac9dc1c75
Add LXD VM Guest Agent Support (#2145)
* Add LXD VM Guest Agent Support

* Add systemd patch, remove udev rules, change to kernel modules, fix linter

* Remove systemd patch, add conditionals to qemu-guest and lxd-agent

* Update buildroot-external/package/qemu-guest-agent/qemu-guest.service

Co-authored-by: Stefan Agner <stefan@agner.ch>
2022-10-02 10:06:56 +02:00
Carsten Hiort
e53196d176
Allow multicast forwarding for IPv4 (#2160)
* Allow multicast forwarding for IPv4

* Move MCast fordwarding to seperate group

* Remove whitespace
2022-09-30 13:50:53 +02:00
Pascal Vizeli
a0bc73903c
Add OS-Agent 1.4.1 support (#2157)
* Add OS-Agent 1.4.0 support

* Update OS-Agent 1.4.1
2022-09-27 11:06:01 +02:00
dependabot[bot]
a82edf718b
Bump actions/stale from 5 to 6.0.0 (#2158)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-09-26 19:20:13 +02:00
ioctl2
d698d0e9d2
Add comments, ignore vscode* (#2152) 2022-09-24 08:25:44 +02:00
Stefan Agner
6e5dbc0792
Linux: Update kernel 5.15.69 (#2150) 2022-09-21 10:47:42 +02:00
ioctl2
9eb95cbbdb
Enable .config via /proc/config.gz + zcat via busybox (#2149) 2022-09-21 10:47:30 +02:00
Stefan Agner
b2925966a8
Linux: Update kernel 5.15.68 (#2146) 2022-09-19 12:28:08 +02:00
ioctl2
eafbf6159d
Fix proxmox mem hotplug/improve virtual hw support (#2138) 2022-09-19 12:25:23 +02:00
Stefan Agner
1a7daf4844
Remove UI reference from configuration USB flash drive docs (#2129) (#2131) 2022-09-14 11:48:29 +02:00
Stefan Agner
c1a767695d
Backport patch to fix ODROID-N2 HDMI (#2128) 2022-09-12 22:16:29 +02:00
Mike Degatano
0404657e74
Connectivity check interval to 10 minutes (#2127) 2022-09-12 22:16:17 +02:00
Stefan Agner
0af0905b2e
Linux: Update kernel 5.15.67 (#2126) 2022-09-12 22:16:09 +02:00
Stefan Agner
41b452ff48
Fix Docker key.json corruption check (#2125)
* Fix Docker key.json corruption check

Since /etc/docker does not get bind mounted anymore (see #2116),
key.json from the overlay partition is used directly.

* Use -e flag for jq to get useful exit code
2022-09-12 22:16:00 +02:00
Stefan Agner
bd7a32fd3e
Drop unused cgroup_enable=memory kernel parameter (#2124)
The cgroup_enable parameter is a Raspberry Pi kernel specific kernel
parameter. Upstream based kernel do not have the parameter, and hence
do not do anything.

This gets rid of the following message during boot:
Unknown kernel command line parameters "cgroup_enable=memory", will be passed to user space.
2022-09-12 22:15:34 +02:00
Stefan Agner
c6f51db4ed
Add Qualcomm QCA6174/QCA6174A Bluetooth support (#2122) (#2123)
* Add Qualcomm QCA6174/QCA6174A Bluetooth support (#2122)
2022-09-12 22:15:21 +02:00
Stefan Agner
a6445af712
Remvoe image name from journald tag/identifier (#2118)
The image name is stored in a separate field IMAGE_NAME as well. This
allows to use the container name (e.g. `hassio_supervisor`) to get logs
of all Supervisors independent of the image name (which differs for
every version).
2022-09-08 12:20:02 +02:00
Stefan Agner
cb58b14e06
Bump Raspberry Pi kernel and firmware to 1.20220830 (#2117)
* RaspberryPi: Update kernel 5.15.61 - 1.20220830

* Add Yellow to the Raspberry Pi kernel update script

* Bump Yellow to kernel 5.15.61 - 1.20220830

Also drop the work around for the LED polarity as the new firmware
has been fixed.

* Explicitly select no kernel module compression

Home Assistant OS uses a compressed rootfs already, no compression for
kernel modules necessary.

* Bump buildroot

* buildroot d7e4c223e5...5468d36a26 (1):
  > package/rpi-firmware: bump version to 1.20220830
2022-09-07 19:21:30 +02:00
Stefan Agner
66c15adbbf
Move Docker configuration to daemon.json (#2116)
This is more readable than passing arguments to the daemon directly. It
also shortens the ExecStart command significantly, which is stored in
every log entry in systemd-journald.
2022-09-07 19:13:47 +02:00
Stefan Agner
b7f8e22fbf
Linux: Update kernel 5.15.65 (#2114) 2022-09-06 20:28:31 +02:00
Stefan Agner
cf11b5a745
Try using old image name of the Supervisor image (#2111) (#2113)
* Try using old image name of the Supervisor image

* Tag the old image with the new name so recreation works
2022-09-06 20:28:24 +02:00
Stefan Agner
30a0bb6d85
Try booting up to 3 times on GRUB2 based systems (#2112)
* Retry up to 3 times

By default, HAOS used to retry 3 times. That is still true for U-Boot
based boards. Apply the same logic for GRUB2 based systems for
consistency.

This can help to remedy intermittent internet/connectivity issuese.
Altough hacky, in practise it makes sense to give the newly installed OS
another go.

* Also apply to generic-aarch64
2022-09-06 20:28:14 +02:00
Stefan Agner
f4defcedfd
Bump buildroot (#2109)
* buildroot 9dbf8d5e86...d7e4c223e5 (1):
  > Merge tag '2022.02.5' into 2022.02.x-haos
2022-09-03 13:06:21 +02:00
Stefan Agner
e51b9bf29e
Bump OS release version to 10 2022-09-02 23:49:49 +02:00
Stefan Agner
c1e2d655bc
ODROID-XU4: Reset Ethernet properly on reboot (#1488) (#2108) 9.0.rc1 2022-09-02 23:34:16 +02:00
Stefan Agner
79c9e208ca
Enable dependencies for IPv6 NAT support (#2106)
* Enable dependencies for IPv6 NAT support

This makes the ODROID-XU4 kernel to build properly with IPv6 NAT enabled
as well.
2022-09-02 23:29:48 +02:00
Stefan Agner
fbbc0075ea
Remove dev from release drafter (#2107)
It seems not to work as intended.
2022-09-02 23:27:40 +02:00
Stefan Agner
3708b2fe72
Linux: Update kernel 5.15.64 (#2104) 2022-09-02 15:33:49 +02:00
Stefan Agner
b1df44421b
Bump commit interval to 30s (#2103)
A higher file system commit interval can help to decrease the amount of
writes. In tests, a commit interval of higher than 30s seems not to help
much in practice. Settle with 30s for now.
2022-09-02 15:23:38 +02:00
Stefan Agner
303f63c222
Add access to containerd for Supervisor (#2102)
Add direct access to Docker's containerd instance by passing in its GRCP
socket. This can be useful to talk to the containerd GRPC API directly,
which exposes more information than the Docker API (e.g. OOM kill
events).
2022-09-02 14:49:25 +02:00
Stefan Agner
53818a1325
Do not send excessive DNS queries for online checks (#2100) (#2101)
* Do not send excessive DNS queries for online checks (#2100)
2022-08-31 23:35:41 +02:00
Stefan Agner
ed554f2a39
Check free disk space before starting Docker (#2097)
It seems that Docker can fail to start if there is no space left on the
device. Try to free up some space in that case by asking journald to
limit its size to 256MiB.

This should work for any storage larger than ~2.5GiB (as the journals
maximum size is 10% of the disk size). It still should leave enough
logs to diagnose problems if necessary.

Note: We could also limit the size of the journal in first place, but
that isn't sustainable: Once that space is used up, we run into the
same problem again.

By only asking journalctl to free up if necessary, we kinda (miss)use
the journal as way to "reserve" some space which we can free up at boot
if necessary.
2022-08-31 23:04:23 +02:00
Stefan Agner
ba5de20ba8
Add GRUB2 boot entry to boot into rescue shell (#2096) 2022-08-31 23:02:47 +02:00
Michael Haas
b0674713a7
rpi4: Enable arm_boost=1 to unlock 1.8GHz CPU clock (#2073)
* rpi4: Enable arm_boost=1 to unlock 1.8Ghz CPU

The official Raspberry Pi OS enables a "boosted" 1.8GHz
mode since their Debian bullseye based release [source]. This
commit brings this feature to HA OS.
2022-08-31 15:52:23 +02:00
Stefan Agner
4edc71b005
Enable k10temp kernel module (#2094)
The k10temp module allows to monitor CPU temperature on AMD systems.
2022-08-31 08:29:13 +02:00
Stefan Agner
4af2c880ed
Linux: Update kernel 5.15.63 (#2093) 2022-08-31 08:29:05 +02:00
Stefan Agner
e64e97cedf
Linux: Update kernel 5.15.62 (#2084) 2022-08-25 00:09:21 +02:00
Stefan Agner
cd5e42341d
Start dropbear earlier (#2083)
This can be helpful when debugging HAOS issues. Dropbear is only started
for users which actually enabled it by configuring a SSH key, so this
change won't have an effect for most people.
2022-08-25 00:09:13 +02:00
Stefan Agner
ea5acb0950
Fix delaying systemd-timesyncd start correctly (#2082)
Unfortunately, orderings like Before= cannot be overriden by vendor
settings. This is mentioned in "Example 2. Overriding vendor settings"
on https://www.freedesktop.org/software/systemd/man/systemd.unit.html.

Correctly fix ordering by overriding the entire unit.
2022-08-24 23:02:09 +02:00
Stefan Agner
a16354276f
Bump buildroot (#2072)
* buildroot 2083b57930...9dbf8d5e86 (3):
  > package/brcmfmac_sdio-firmware-rpi: bump to latest version
  > package/linux-firmware: Deploy fewer Intel WiFi 22000 series variants
  > package/linux-firmware: bump version to 20220815
2022-08-18 15:55:15 +02:00
Stefan Agner
19c5d45734
Linux: Update kernel 5.15.61 (#2070) 2022-08-18 15:51:16 +02:00
Stefan Agner
f8c8198bb9
Fix delaying systemd-timesyncd start (#2069)
* Fix delaying systemd-timesyncd

Setting WantedBy=time-sync.target in a service.d config file does not
clear previous assignments of WantedBy. This caused the services to still
be pulled in by the sysinit.target, causing a ordering cycle and the
system to not start essential services.

* Remove sysinit.target from Before ordering
2022-08-18 15:51:07 +02:00
Stefan Agner
7a693bed46
Delay systemd-timesyncd start after network is deemed online (#2068)
With commit 2d3119ef2201 ("Delay Supervisor start until time has been
sychronized (#1360)") systemd-time-wait-sync.service got enabled, which
waits until systemd-timesyncd synchronizes time with a NTP server.

By default systemd-timesyncd.service and systemd-time-wait-sync.service
are pulled in by sysinit.target. This starts the services before full
network connectivity is established. The first sychronization fails and
systemd-timesyncd only retries after a ratelimit mechanism times out.
This causes a dealy of 30s during startup. While systemd-timesyncd has
a mechanism to (re)try time synchronization when network becomes
online, it seems that those only work properly when systemd-networkd
is used, see also https://github.com/systemd/systemd/issues/24298.

Simply reordering systemd-timesyncd.service after network-online.target
does not work as it causes circular dependencies (NetworkManager itself
depends ultimately on the sysinit.target).

With this change, the services are only pulled in by time-sync.target.
That allows to order the service after network-online.target. With that
the first synchronization succeeds.

This mechanism also works when a NTP server is provided through DHCP.
In that case, a the systemd-timesyncd service is started by the dispatch
script /usr/lib/NetworkManager/dispatcher.d/10-ntp before the systemd
even considers starting the service. Tests show that the default
fallback NTP is not contacted, only the DHCP provided service.
2022-08-17 18:51:35 +02:00
Stefan Agner
c3bfa2e64a
Kernel config tweaks for Bluetooth and OverlayFS (#2067)
* Move Bluetooth protocol configuration to hassos.config

Enable a couple of potential useful Bluetooth protocol drivers.
Also enable Bluetooth Network Encapsulation Protocol since the BlueZ
plug-in seems to be enabled.

* Drop OverlayFS configuration not liked by Docker
2022-08-16 22:26:39 +02:00