1
0
mirror of https://github.com/home-assistant/operating-system.git synced 2025-12-24 20:35:31 +00:00
Commit Graph

1725 Commits

Author SHA1 Message Date
Stefan Agner
c1e4758399 Bump version to 9.3 9.3 2022-10-20 23:14:20 +02:00
Stefan Agner
7eed8d594f Bump buildroot (#2199)
* buildroot 8c952a2d00...48c0c35f09 (1):
  > boot/grub2: fix GRUB2 patch merge error
2022-10-20 21:49:39 +02:00
Stefan Agner
a9f4399a62 Bump buildroot (#2198)
* buildroot 325737ba29...8c952a2d00 (2):
  > package/containerd: bump to version 1.6.8
  > Merge tag '2022.02.6' into 2022.02.x-haos
2022-10-20 21:49:39 +02:00
Stefan Agner
925aea5e2c Bump buildroot (#2195)
* buildroot 5468d36a26...325737ba29 (1):
  > package/openvmtools: fix local privilege escalation vulnerability
2022-10-20 14:47:30 +02:00
Stefan Agner
77898b30f9 Fix S-ATA on ODROID-HC1 (#2194)
The ODROID-XU4 is largely compatible with the ODROID-HC1. It seems that
the image used to work until recently, where a stable kernel update
broke access to the S-ATA disk.

Revert the offending stable kernel patch to fix S-ATA disk on
ODROID-HC1.
2022-10-20 14:47:25 +02:00
Stefan Agner
3b8d6886f8 Linux: Update kernel 5.15.74 (#2191) 2022-10-20 14:47:08 +02:00
Stefan Agner
98a9c96834 Bump version to 9.2 9.2 2022-10-07 10:11:25 +02:00
Stefan Agner
95c9a28ed0 Revert "Fix proxmox mem hotplug/improve virtual hw support (#2138)"
This reverts commit ad1befbe07.
2022-10-07 10:10:34 +02:00
Stefan Agner
e3cd6e8a82 Bump version to 9.1 9.1 2022-10-06 23:58:51 +02:00
Stefan Agner
f25a44160a Yellow: Support wipeing boot files on NVMe (#2173) 2022-10-06 23:57:57 +02:00
Stefan Agner
e1236751b6 Linux: Update kernel 5.15.72 (#2171) 2022-10-06 23:57:18 +02:00
Pascal Vizeli
1219e80a3d Streamline CONFIG_RT_GROUP_SCHED (#2169)
* Disable RT_GROUP_SCHED
2022-10-06 23:55:33 +02:00
Stefan Agner
81874b61d3 Remove HDMI fix applied in Linux 5.15.68 (#2166) 2022-10-06 23:55:27 +02:00
Carsten Hiort
5b478090a7 Allow multicast forwarding for IPv4 (#2160)
* Allow multicast forwarding for IPv4

* Move MCast fordwarding to seperate group

* Remove whitespace
2022-10-06 23:54:01 +02:00
Pascal Vizeli
371ab7520e Add OS-Agent 1.4.1 support (#2157)
* Add OS-Agent 1.4.0 support

* Update OS-Agent 1.4.1
2022-10-06 23:53:46 +02:00
ioctl2
ad1befbe07 Fix proxmox mem hotplug/improve virtual hw support (#2138) 2022-10-06 23:52:33 +02:00
Stefan Agner
f1beaa5669 Set deployment type to production 9.0 2022-09-13 14:32:14 +02:00
Stefan Agner
7da1cdf074 Backport patch to fix ODROID-N2 HDMI (#2128) 2022-09-13 14:24:35 +02:00
Mike Degatano
a2d1cae069 Connectivity check interval to 10 minutes (#2127) 2022-09-13 14:24:35 +02:00
Stefan Agner
a85d1959ec Linux: Update kernel 5.15.67 (#2126) 2022-09-13 14:24:35 +02:00
Stefan Agner
78b5aeb82d 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-13 14:24:35 +02:00
Stefan Agner
cdf1110f42 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-13 14:24:35 +02:00
Stefan Agner
5a3aaa46f4 Add Qualcomm QCA6174/QCA6174A Bluetooth support (#2122) (#2123)
* Add Qualcomm QCA6174/QCA6174A Bluetooth support (#2122)
2022-09-13 14:24:34 +02:00
Stefan Agner
786dd75a15 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).
9.0.rc2
2022-09-08 12:20:37 +02:00
Stefan Agner
b614ceb2ba 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-08 12:00:23 +02:00
Stefan Agner
366087cf97 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-08 12:00:23 +02:00
Stefan Agner
c63968dfc0 Linux: Update kernel 5.15.65 (#2114) 2022-09-08 12:00:23 +02:00
Stefan Agner
ba64be61b3 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-08 12:00:23 +02:00
Stefan Agner
2726547bf6 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-08 12:00:23 +02:00
Stefan Agner
ddd472896a Bump buildroot (#2109)
* buildroot 9dbf8d5e86...d7e4c223e5 (1):
  > Merge tag '2022.02.5' into 2022.02.x-haos
2022-09-08 12:00:20 +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 2d3119ef22 ("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