From e306bcd9bcc83e7bac903577f4d55511643ad925 Mon Sep 17 00:00:00 2001
From: j1nx
Date: Mon, 22 Jan 2024 16:57:19 +0000
Subject: [PATCH 1/8] [All] Real messy commit with switch to NetworkManager,
kernel bump and countless fixes that came up
---
buildroot | 2 +-
.../board/ovos/raspberrypi/post-build.sh | 2 +-
.../AddDevice.conf | 2 +
.../AddDevice.conf | 0
.../AddDevice.conf | 2 +
.../home/ovos/ovos/config/phal.list | 12 +
.../usr/lib/udev/rules.d/99-com.rules | 8 +-
buildroot-external/configs/rpi4_64_defconfig | 22 +-
...001-vduse-Remove-include-of-rwlock.h.patch | 2 +-
...able-preemption-in-ptrace_stop-on-PR.patch | 2 +-
...ask_struct-saved_state-in-wait_task_.patch | 2 +-
...-obsolte-u64_stats_fetch_-_irq-users.patch | 4 +-
...bsolte-u64_stats_fetch_-_irq-users-d.patch | 18 +-
...bsolte-u64_stats_fetch_-_irq-users-n.patch | 12 +-
...-obsolte-u64_stats_fetch_-_irq-users.patch | 2 +-
...move-the-obsolete-fetch_irq-variants.patch | 2 +-
.../0009-net-Avoid-the-IPI-to-free-the.patch | 14 +-
.../linux/0010-x86-Allow-to-enable-RT.patch | 2 +-
.../0011-x86-Enable-RT-also-on-32bit.patch | 2 +-
...a-dedicated-thread-for-timer-wakeups.patch | 2 +-
...force-sched-priority-to-timersd-on-b.patch | 2 +-
...-storm-since-introduction-of-timersd.patch | 2 +-
...-Wake-ktimers-thread-also-in-softirq.patch | 2 +-
...16-tpm_tis-fix-stall-after-iowrite-s.patch | 2 +-
...-spinlocks-with-spinlock_t-for-PREEM.patch | 2 +-
...ep-Remove-lockdep_init_map_crosslock.patch | 2 +-
.../0019-printk-Bring-back-the-RT-bits.patch | 2 +-
...dd-infrastucture-for-atomic-consoles.patch | 2 +-
...1-serial-8250-implement-write_atomic.patch | 2 +-
...avoid-preempt_disable-for-PREEMPT_RT.patch | 2 +-
...empt_disable-enable_rt-where-recomme.patch | 2 +-
...isable-interrupts-on-PREEMPT_RT-duri.patch | 2 +-
...heck-for-atomic-context-on-PREEMPT_R.patch | 2 +-
...Disable-tracing-points-on-PREEMPT_RT.patch | 2 +-
...M_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch | 2 +-
...Queue-and-wait-for-the-irq_work-item.patch | 2 +-
...spin_lock_irq-instead-of-local_irq_d.patch | 2 +-
...rm-i915-Drop-the-irqs_disabled-check.patch | 2 +-
...Revert-drm-i915-Depend-on-PREEMPT_RT.patch | 2 +-
...ched-Add-support-for-lazy-preemption.patch | 10 +-
...ould_resched-in-idtentry_exit_cond_r.patch | 2 +-
...0034-x86-Support-for-lazy-preemption.patch | 2 +-
...5-entry-Fix-the-preempt-lazy-fallout.patch | 2 +-
...-arm-Add-support-for-lazy-preemption.patch | 2 +-
...erpc-Add-support-for-lazy-preemption.patch | 2 +-
...-arch-arm64-Add-lazy-preempt-support.patch | 2 +-
...arm-Disable-jump-label-on-PREEMPT_RT.patch | 2 +-
...n-translation-section-permission-fau.patch | 2 +-
...erial-omap-Make-the-locking-RT-aware.patch | 2 +-
...al-pl011-Make-the-locking-work-on-RT.patch | 2 +-
.../linux/0043-ARM-Allow-to-enable-RT.patch | 2 +-
.../linux/0044-ARM64-Allow-to-enable-RT.patch | 2 +-
.../0045-powerpc-traps-Use-PREEMPT_RT.patch | 2 +-
...iommu-Use-a-locallock-instead-local_.patch | 2 +-
...ble-in-kernel-MPIC-emulation-for-PRE.patch | 2 +-
...tector-work-around-stack-guard-init-.patch | 2 +-
.../0049-POWERPC-Allow-to-enable-RT.patch | 2 +-
...-sysfs-Add-sys-kernel-realtime-entry.patch | 2 +-
...0051-Add-localversion-for-RT-release.patch | 2 +-
.../linux/0052-Linux-6.1.46-rt13-REBASE.patch | 2 +-
...-disable-preempt-on-RT-in-io_mapping.patch | 2 +-
...itigate-indefinite-writer-starvation.patch | 2 +-
...ert-softirq-Let-ksoftirqd-do-its-job.patch | 2 +-
...king-Annotate-debug_object_fill_pool.patch | 2 +-
...lse-lockdep-splat-in-put_task_struct.patch | 2 +-
...e-write_seqlock_irqsave-instead-writ.patch | 2 +-
...f-Remove-in_atomic-from-bpf_link_put.patch | 2 +-
...ure-timer-ID-search-loop-limit-is-va.patch | 2 +-
...Do-not-disable-preemption-for-resets.patch | 2 +-
...ch => 0062-Linux-6.1.73-rt22-REBASE.patch} | 10 +-
...t-support-systemd-style-dropin-files.patch | 252 ------------------
...2-quadlet-support-healthy-for-notify.patch | 78 ------
.../etc/NetworkManager/NetworkManager.conf | 24 ++
.../etc/NetworkManager/conf.d/dns.conf | 2 +
.../conf.d/no-systemd-resolved.conf | 2 +
.../etc/NetworkManager/conf.d/polkit.conf | 2 +
.../conf.d/wifi-powersave-off.conf | 3 +
.../NetworkManager/system-connections/default | 11 +
.../etc/containers/storage.conf | 2 +-
.../rootfs-overlay/etc/pipewire/pipewire.conf | 2 +-
.../50-org.freedesktop.NetworkManager.rules | 8 +
.../rootfs-overlay/etc/systemd/journald.conf | 2 +-
.../etc/systemd/network/enp0s3.network | 4 -
.../ovos/.config/containers/containers.conf | 3 +
.../home/ovos/.config/containers/env | 1 +
.../containers/systemd/ovos-audio.container | 4 +-
.../ovos-audio.container.d/Enabled.conf | 2 +
.../systemd/ovos-audio.d/Enabled.conf | 2 -
.../systemd/ovos-cli.container.d/Enabled.conf | 2 +
.../systemd/ovos-cli.d/Enabled.conf | 2 -
.../containers/systemd/ovos-core.container | 4 +-
.../ovos-core.container.d/Enabled.conf | 2 +
.../systemd/ovos-core.d/Enabled.conf | 2 -
.../systemd/ovos-gui-shell.container | 12 +-
.../ovos-gui-shell.container.d/Enabled.conf | 2 +
.../systemd/ovos-gui-shell.d/Enabled.conf | 2 -
.../systemd/ovos-gui-websocket.container | 4 +-
.../Enabled.conf | 2 +
.../systemd/ovos-gui-websocket.d/Enabled.conf | 2 -
.../systemd/ovos-listener-dinkum.container | 4 +-
.../Enabled.conf | 2 +
.../ovos-listener-dinkum.d/Enabled.conf | 2 -
.../ovos-messagebus.container.d/Enabled.conf | 2 +
.../containers/systemd/ovos-phal.container | 6 +-
.../ovos-phal.container.d/Enabled.conf | 2 +
.../systemd/ovos-phal.d/Enabled.conf | 2 -
.../home/ovos/ovos/config/skills.list | 10 +-
.../lib/systemd/system-preset/10-ovos.preset | 18 +-
108 files changed, 229 insertions(+), 489 deletions(-)
rename buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/{ovos-core.d => ovos-core.container.d}/AddDevice.conf (53%)
rename buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/{ovos-gui-shell.d => ovos-gui-shell.container.d}/AddDevice.conf (100%)
rename buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/{ovos-phal.d => ovos-phal.container.d}/AddDevice.conf (53%)
rename buildroot-external/patches/linux/{0062-Linux-6.1.69-rt21-REBASE.patch => 0062-Linux-6.1.73-rt22-REBASE.patch} (61%)
delete mode 100644 buildroot-external/patches/podman/0001-quadlet-support-systemd-style-dropin-files.patch
delete mode 100644 buildroot-external/patches/podman/0002-quadlet-support-healthy-for-notify.patch
create mode 100644 buildroot-external/rootfs-overlay/etc/NetworkManager/NetworkManager.conf
create mode 100644 buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/dns.conf
create mode 100644 buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/no-systemd-resolved.conf
create mode 100644 buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/polkit.conf
create mode 100644 buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/wifi-powersave-off.conf
create mode 100644 buildroot-external/rootfs-overlay/etc/NetworkManager/system-connections/default
create mode 100644 buildroot-external/rootfs-overlay/etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules
delete mode 100644 buildroot-external/rootfs-overlay/etc/systemd/network/enp0s3.network
create mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.container.d/Enabled.conf
delete mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.d/Enabled.conf
create mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-cli.container.d/Enabled.conf
delete mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-cli.d/Enabled.conf
create mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container.d/Enabled.conf
delete mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.d/Enabled.conf
create mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.container.d/Enabled.conf
delete mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.d/Enabled.conf
create mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.container.d/Enabled.conf
delete mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.d/Enabled.conf
create mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.container.d/Enabled.conf
delete mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.d/Enabled.conf
create mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-messagebus.container.d/Enabled.conf
create mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container.d/Enabled.conf
delete mode 100644 buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.d/Enabled.conf
diff --git a/buildroot b/buildroot
index 16cc28ca..68dab30c 160000
--- a/buildroot
+++ b/buildroot
@@ -1 +1 @@
-Subproject commit 16cc28ca2c6e3f1c0848548877bd787e54ba78c3
+Subproject commit 68dab30c34f257a5cf1ff2baf41b77ace07d0113
diff --git a/buildroot-external/board/ovos/raspberrypi/post-build.sh b/buildroot-external/board/ovos/raspberrypi/post-build.sh
index 8246a28d..8a0bdd14 100755
--- a/buildroot-external/board/ovos/raspberrypi/post-build.sh
+++ b/buildroot-external/board/ovos/raspberrypi/post-build.sh
@@ -67,7 +67,7 @@ mkdir -p ${BINARIES_DIR}/home
sudo mount -o loop,discard ${BINARIES_DIR}/homefs.ext4 ${BINARIES_DIR}/home
# sync home folder
-sudo rsync -ah --progress ${TARGET_DIR}/home/* ${BINARIES_DIR}/home/
+sudo rsync -avPHSX ${TARGET_DIR}/home/* ${BINARIES_DIR}/home/
# Unmount home image
sudo umount ${BINARIES_DIR}/homefs.ext4
diff --git a/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.d/AddDevice.conf b/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container.d/AddDevice.conf
similarity index 53%
rename from buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.d/AddDevice.conf
rename to buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container.d/AddDevice.conf
index 7dc64783..1ab987dd 100644
--- a/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.d/AddDevice.conf
+++ b/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container.d/AddDevice.conf
@@ -1,3 +1,5 @@
[Container]
AddDevice=/dev/gpiomem
AddDevice=/dev/ttyAMA0
+AddDevice=/dev/spidev0.0
+AddDevice=/dev/spidev0.1
diff --git a/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.d/AddDevice.conf b/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.container.d/AddDevice.conf
similarity index 100%
rename from buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.d/AddDevice.conf
rename to buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.container.d/AddDevice.conf
diff --git a/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.d/AddDevice.conf b/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container.d/AddDevice.conf
similarity index 53%
rename from buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.d/AddDevice.conf
rename to buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container.d/AddDevice.conf
index 7dc64783..1ab987dd 100644
--- a/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.d/AddDevice.conf
+++ b/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container.d/AddDevice.conf
@@ -1,3 +1,5 @@
[Container]
AddDevice=/dev/gpiomem
AddDevice=/dev/ttyAMA0
+AddDevice=/dev/spidev0.0
+AddDevice=/dev/spidev0.1
diff --git a/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/ovos/config/phal.list b/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/ovos/config/phal.list
index c6fc2549..c743864a 100644
--- a/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/ovos/config/phal.list
+++ b/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/home/ovos/ovos/config/phal.list
@@ -1,2 +1,14 @@
git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-mk1.git
git+https://github.com/NeonGeckoCom/neon-phal-plugin-linear_led.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-gui-network-client.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-network-manager.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-wifi-setup.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-balena-wifi.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-sensors.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-connectivity-events.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-respeaker-2mic.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-respeaker-4mic.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-ipgeo.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-wallpaper-manager.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-oauth.git
+git+https://github.com/OpenVoiceOS/ovos-PHAL-plugin-homeassistant.git
diff --git a/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/usr/lib/udev/rules.d/99-com.rules b/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/usr/lib/udev/rules.d/99-com.rules
index bbb43c59..5a15f522 100644
--- a/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/usr/lib/udev/rules.d/99-com.rules
+++ b/buildroot-external/board/ovos/raspberrypi/rootfs-overlay/usr/lib/udev/rules.d/99-com.rules
@@ -1,15 +1,15 @@
SUBSYSTEM=="input", GROUP="input", MODE="0666"
SUBSYSTEM=="i2c-dev", GROUP="i2c", MODE="0660"
-SUBSYSTEM=="spidev", GROUP="spi", MODE="0660"
-SUBSYSTEM=="bcm2835-gpiomem", GROUP="gpio", MODE="0660"
-SUBSYSTEM=="bcm2835-gpiomem", GROUP="gpio", MODE="0660"
+SUBSYSTEM=="spidev", GROUP="spi", MODE="0666"
+SUBSYSTEM=="bcm2835-gpiomem", GROUP="gpio", MODE="0666"
+SUBSYSTEM=="bcm2835-gpiomem", GROUP="gpio", MODE="0666"
SUBSYSTEM=="rpivid-*", GROUP="video", MODE="0660"
KERNEL=="vcsm-cma", GROUP="video", MODE="0660"
SUBSYSTEM=="dma_heap", GROUP="video", MODE="0660"
SUBSYSTEM=="vchiq", GROUP="video", MODE="0660"
-SUBSYSTEM=="gpio", GROUP="gpio", MODE="0660"
+SUBSYSTEM=="gpio", GROUP="gpio", MODE="0666"
SUBSYSTEM=="gpio", KERNEL=="gpiochip*", ACTION=="add", PROGRAM="/bin/sh -c 'chgrp -R gpio /sys/class/gpio && chmod -R g=u /sys/class/gpio'"
SUBSYSTEM=="gpio", ACTION=="add", PROGRAM="/bin/sh -c 'chgrp -R gpio /sys%p && chmod -R g=u /sys%p'"
diff --git a/buildroot-external/configs/rpi4_64_defconfig b/buildroot-external/configs/rpi4_64_defconfig
index 3bc24cf2..aa0a4042 100644
--- a/buildroot-external/configs/rpi4_64_defconfig
+++ b/buildroot-external/configs/rpi4_64_defconfig
@@ -30,7 +30,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL)/board/ovos/raspberrypi/rpi4/post-i
BR2_ROOTFS_POST_SCRIPT_ARGS="--rpi4"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,342c7ee49e862edc30c893f141f55b9211b7a43b)/linux-342c7ee49e862edc30c893f141f55b9211b7a43b.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,3bb5880ab3dd31f75c07c3c33bf29c5d469b28f3)/linux-3bb5880ab3dd31f75c07c3c33bf29c5d469b28f3.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcm2711"
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/kernel/ovos.config $(BR2_EXTERNAL)/kernel/device-drivers.config $(BR2_EXTERNAL)/kernel/docker.config $(BR2_EXTERNAL)/board/ovos/raspberrypi/kernel.config"
BR2_LINUX_KERNEL_LZ4=y
@@ -169,7 +169,6 @@ BR2_PACKAGE_PIXMAN=y
BR2_PACKAGE_WEBP=y
BR2_PACKAGE_WIREPLUMBER=y
BR2_PACKAGE_ZBAR=y
-BR2_PACKAGE_LIBGUDEV=y
BR2_PACKAGE_LIBINPUT=y
BR2_PACKAGE_LIBV4L_UTILS=y
BR2_PACKAGE_JSON_GLIB=y
@@ -181,7 +180,7 @@ BR2_PACKAGE_LIBCAMERA_PIPELINE_VIMC=y
BR2_PACKAGE_LIBCAMERA_APPS=y
BR2_PACKAGE_LIBCURL=y
BR2_PACKAGE_LIBCURL_CURL=y
-BR2_PACKAGE_LIBNDP=y
+BR2_PACKAGE_LIBDNET=y
BR2_PACKAGE_LIBNICE=y
BR2_PACKAGE_LIBRSYNC=y
BR2_PACKAGE_LIBSOUP=y
@@ -195,6 +194,7 @@ BR2_PACKAGE_LIBCAP_TOOLS=y
BR2_PACKAGE_LIBNPTH=y
BR2_PACKAGE_LIBFRIBIDI=y
BR2_PACKAGE_PCRE2=y
+BR2_PACKAGE_AARDVARK_DNS=y
BR2_PACKAGE_AVAHI=y
BR2_PACKAGE_AVAHI_DAEMON=y
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
@@ -210,9 +210,17 @@ BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_NFC=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SAP=y
BR2_PACKAGE_BLUEZ5_UTILS_TOOLS_HID2HCI=y
BR2_PACKAGE_CRDA=y
+BR2_PACKAGE_DNSMASQ=y
+BR2_PACKAGE_IFUPDOWN=y
BR2_PACKAGE_IPROUTE2=y
+BR2_PACKAGE_IPUTILS=y
BR2_PACKAGE_IW=y
BR2_PACKAGE_NET_TOOLS=y
+BR2_PACKAGE_NETAVARK=y
+BR2_PACKAGE_NETWORK_MANAGER=y
+BR2_PACKAGE_NETWORK_MANAGER_TUI=y
+BR2_PACKAGE_NETWORK_MANAGER_CLI=y
+BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y
BR2_PACKAGE_OPENSSH=y
# BR2_PACKAGE_OPENSSH_SANDBOX is not set
BR2_PACKAGE_WGET=y
@@ -242,7 +250,6 @@ BR2_PACKAGE_COREUTILS=y
BR2_PACKAGE_COREUTILS_INDIVIDUAL_BINARIES=y
BR2_PACKAGE_EFIBOOTMGR=y
BR2_PACKAGE_HTOP=y
-BR2_PACKAGE_OPENVMTOOLS=y
BR2_PACKAGE_PODMAN=y
BR2_PACKAGE_PODMAN_DRIVER_BTRFS=y
BR2_PACKAGE_PODMAN_DRIVER_DEVICEMAPPER=y
@@ -258,19 +265,21 @@ BR2_PACKAGE_SWUPDATE=y
BR2_PACKAGE_SWUPDATE_CONFIG="$(BR2_EXTERNAL)/swupdate.config"
BR2_PACKAGE_SWUPDATE_USB=y
BR2_PACKAGE_SYSTEMD_ANALYZE=y
+BR2_PACKAGE_SYSTEMD_BACKLIGHT=y
# BR2_PACKAGE_SYSTEMD_PSTORE is not set
BR2_PACKAGE_SYSTEMD_FIRSTBOOT=y
BR2_PACKAGE_SYSTEMD_HIBERNATE=y
# BR2_PACKAGE_SYSTEMD_HWDB is not set
+BR2_PACKAGE_SYSTEMD_LOCALED=y
BR2_PACKAGE_SYSTEMD_LOGIND=y
-BR2_PACKAGE_SYSTEMD_MACHINED=y
+# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
BR2_PACKAGE_SYSTEMD_OOMD=y
BR2_PACKAGE_SYSTEMD_POLKIT=y
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
BR2_PACKAGE_SYSTEMD_REPART=y
+# BR2_PACKAGE_SYSTEMD_RESOLVED is not set
BR2_PACKAGE_SYSTEMD_RFKILL=y
# BR2_PACKAGE_SYSTEMD_VCONSOLE is not set
-BR2_PACKAGE_SYSTEMD_BOOTCHART=y
BR2_PACKAGE_TAR=y
BR2_PACKAGE_UTIL_LINUX_BINARIES=y
BR2_PACKAGE_UTIL_LINUX_HWCLOCK=y
@@ -316,4 +325,5 @@ BR2_PACKAGE_ROC_TOOLKIT=y
BR2_PACKAGE_RPI_EEPROM=y
BR2_PACKAGE_USERLAND_TOOLS=y
BR2_PACKAGE_VOCALFUSION=y
+BR2_PACKAGE_WIFI_CONNECT=y
BR2_PACKAGE_PYTHON_SMBUS2=y
diff --git a/buildroot-external/patches/linux/0001-vduse-Remove-include-of-rwlock.h.patch b/buildroot-external/patches/linux/0001-vduse-Remove-include-of-rwlock.h.patch
index 1a7c0321..3278ae66 100644
--- a/buildroot-external/patches/linux/0001-vduse-Remove-include-of-rwlock.h.patch
+++ b/buildroot-external/patches/linux/0001-vduse-Remove-include-of-rwlock.h.patch
@@ -1,4 +1,4 @@
-From 52072a197524e62baa4ac9a5f33d15cd8b27fb17 Mon Sep 17 00:00:00 2001
+From fad2ed9bfa2fce870133fadd15b4d12a26213096 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Tue, 16 Aug 2022 09:45:22 +0200
Subject: [PATCH 01/62] vduse: Remove include of rwlock.h
diff --git a/buildroot-external/patches/linux/0002-signal-Don-t-disable-preemption-in-ptrace_stop-on-PR.patch b/buildroot-external/patches/linux/0002-signal-Don-t-disable-preemption-in-ptrace_stop-on-PR.patch
index 88e352d5..ef409373 100644
--- a/buildroot-external/patches/linux/0002-signal-Don-t-disable-preemption-in-ptrace_stop-on-PR.patch
+++ b/buildroot-external/patches/linux/0002-signal-Don-t-disable-preemption-in-ptrace_stop-on-PR.patch
@@ -1,4 +1,4 @@
-From d5541b6ef4eccee650abfe3095b9e7365773494c Mon Sep 17 00:00:00 2001
+From 2defd6085e9803ba06f6b56f6f901309462761a6 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Wed, 22 Jun 2022 11:36:17 +0200
Subject: [PATCH 02/62] signal: Don't disable preemption in ptrace_stop() on
diff --git a/buildroot-external/patches/linux/0003-sched-Consider-task_struct-saved_state-in-wait_task_.patch b/buildroot-external/patches/linux/0003-sched-Consider-task_struct-saved_state-in-wait_task_.patch
index b5fa2ccd..208bd5bf 100644
--- a/buildroot-external/patches/linux/0003-sched-Consider-task_struct-saved_state-in-wait_task_.patch
+++ b/buildroot-external/patches/linux/0003-sched-Consider-task_struct-saved_state-in-wait_task_.patch
@@ -1,4 +1,4 @@
-From e4742fc784660e012dc23090a72614bf1f9a0ca1 Mon Sep 17 00:00:00 2001
+From af0232b0cb6d5afed7dab020d7dca4759ad93757 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Wed, 22 Jun 2022 12:27:05 +0200
Subject: [PATCH 03/62] sched: Consider task_struct::saved_state in
diff --git a/buildroot-external/patches/linux/0004-spi-Remove-the-obsolte-u64_stats_fetch_-_irq-users.patch b/buildroot-external/patches/linux/0004-spi-Remove-the-obsolte-u64_stats_fetch_-_irq-users.patch
index 02e2aa30..fa97e99e 100644
--- a/buildroot-external/patches/linux/0004-spi-Remove-the-obsolte-u64_stats_fetch_-_irq-users.patch
+++ b/buildroot-external/patches/linux/0004-spi-Remove-the-obsolte-u64_stats_fetch_-_irq-users.patch
@@ -1,4 +1,4 @@
-From 638117350cb3452dd5043156c7e394befe7d6eb9 Mon Sep 17 00:00:00 2001
+From 501df2b62fce3d3cea107bfc7c8c28283a62dc01 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Thu, 25 Aug 2022 16:15:32 +0200
Subject: [PATCH 04/62] spi: Remove the obsolte u64_stats_fetch_*_irq() users.
@@ -18,7 +18,7 @@ Acked-by: Peter Zijlstra (Intel)
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
-index 5d046be8b2dd..716e6d6ecf98 100644
+index 22d227878bc4..75cc8bbc2b14 100644
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
@@ -127,10 +127,10 @@ do { \
diff --git a/buildroot-external/patches/linux/0005-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-d.patch b/buildroot-external/patches/linux/0005-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-d.patch
index 88166a18..116c6f93 100644
--- a/buildroot-external/patches/linux/0005-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-d.patch
+++ b/buildroot-external/patches/linux/0005-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-d.patch
@@ -1,4 +1,4 @@
-From d1c3fb886c8b630c3a70f2f7192d53f545798283 Mon Sep 17 00:00:00 2001
+From 06b58043930deffafd35aacc0b3f2af41ea720b3 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Thu, 25 Aug 2022 16:15:44 +0200
Subject: [PATCH 05/62] net: Remove the obsolte u64_stats_fetch_*_irq() users
@@ -723,10 +723,10 @@ index 107bcca7db8c..8f36fe90180f 100644
/* Once we successfully copy the stats in, update the data pointer */
*data += size;
diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c
-index b4157ff370a3..3b1f912c4c2b 100644
+index 63d43ef86f9b..8003cf091eee 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_main.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_main.c
-@@ -419,10 +419,10 @@ static void i40e_get_netdev_stats_struct_tx(struct i40e_ring *ring,
+@@ -425,10 +425,10 @@ static void i40e_get_netdev_stats_struct_tx(struct i40e_ring *ring,
unsigned int start;
do {
@@ -739,7 +739,7 @@ index b4157ff370a3..3b1f912c4c2b 100644
stats->tx_packets += packets;
stats->tx_bytes += bytes;
-@@ -472,10 +472,10 @@ static void i40e_get_netdev_stats_struct(struct net_device *netdev,
+@@ -478,10 +478,10 @@ static void i40e_get_netdev_stats_struct(struct net_device *netdev,
if (!ring)
continue;
do {
@@ -752,7 +752,7 @@ index b4157ff370a3..3b1f912c4c2b 100644
stats->rx_packets += packets;
stats->rx_bytes += bytes;
-@@ -897,10 +897,10 @@ static void i40e_update_vsi_stats(struct i40e_vsi *vsi)
+@@ -903,10 +903,10 @@ static void i40e_update_vsi_stats(struct i40e_vsi *vsi)
continue;
do {
@@ -765,7 +765,7 @@ index b4157ff370a3..3b1f912c4c2b 100644
tx_b += bytes;
tx_p += packets;
tx_restart += p->tx_stats.restart_queue;
-@@ -915,10 +915,10 @@ static void i40e_update_vsi_stats(struct i40e_vsi *vsi)
+@@ -921,10 +921,10 @@ static void i40e_update_vsi_stats(struct i40e_vsi *vsi)
continue;
do {
@@ -778,7 +778,7 @@ index b4157ff370a3..3b1f912c4c2b 100644
rx_b += bytes;
rx_p += packets;
rx_buf += p->rx_stats.alloc_buff_failed;
-@@ -935,10 +935,10 @@ static void i40e_update_vsi_stats(struct i40e_vsi *vsi)
+@@ -941,10 +941,10 @@ static void i40e_update_vsi_stats(struct i40e_vsi *vsi)
continue;
do {
@@ -823,7 +823,7 @@ index f4ac2b164b3e..892c6a4f03bb 100644
/* Once we successfully copy the stats in, update the data pointer */
*data += size;
diff --git a/drivers/net/ethernet/intel/ice/ice_main.c b/drivers/net/ethernet/intel/ice/ice_main.c
-index f0f39364819a..f8d722339e89 100644
+index ab46cfca4028..aa74ce9afdf2 100644
--- a/drivers/net/ethernet/intel/ice/ice_main.c
+++ b/drivers/net/ethernet/intel/ice/ice_main.c
@@ -6419,10 +6419,10 @@ ice_fetch_u64_stats_per_ring(struct u64_stats_sync *syncp,
@@ -910,7 +910,7 @@ index 45ce4ed16146..9824f7cfaca4 100644
packets += _packets;
}
diff --git a/drivers/net/ethernet/intel/igc/igc_ethtool.c b/drivers/net/ethernet/intel/igc/igc_ethtool.c
-index 81897f7a90a9..dd8a9d27a167 100644
+index 2bee9cace598..f7284fa4324a 100644
--- a/drivers/net/ethernet/intel/igc/igc_ethtool.c
+++ b/drivers/net/ethernet/intel/igc/igc_ethtool.c
@@ -840,15 +840,15 @@ static void igc_ethtool_get_stats(struct net_device *netdev,
diff --git a/buildroot-external/patches/linux/0006-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-n.patch b/buildroot-external/patches/linux/0006-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-n.patch
index 6d229eb6..e0e4cbc3 100644
--- a/buildroot-external/patches/linux/0006-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-n.patch
+++ b/buildroot-external/patches/linux/0006-net-Remove-the-obsolte-u64_stats_fetch_-_irq-users-n.patch
@@ -1,4 +1,4 @@
-From a0c8ef7e6160582c71c0d8b1786d8e45dcc02132 Mon Sep 17 00:00:00 2001
+From 62269129168ade34b47e64d0c82c16ea665e2bfe Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Thu, 25 Aug 2022 16:17:37 +0200
Subject: [PATCH 06/62] net: Remove the obsolte u64_stats_fetch_*_irq() users
@@ -87,10 +87,10 @@ index 9ffd40b8270c..bc75fa1e4666 100644
u64_stats_add(&stats->rx_packets, rxpackets);
u64_stats_add(&stats->rx_bytes, rxbytes);
diff --git a/net/core/dev.c b/net/core/dev.c
-index 0d5aa820fd83..070039f9296c 100644
+index 0a5566b6f8a2..29ae6265a408 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -10505,12 +10505,12 @@ void dev_fetch_sw_netstats(struct rtnl_link_stats64 *s,
+@@ -10508,12 +10508,12 @@ void dev_fetch_sw_netstats(struct rtnl_link_stats64 *s,
stats = per_cpu_ptr(netstats, cpu);
do {
@@ -226,10 +226,10 @@ index 5fe075bf479e..28ee63ec1d1d 100644
data[1] += tx_bytes;
data[2] += rx_packets;
diff --git a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c
-index 5d379df90c82..312c730b725f 100644
+index 347c3768df6e..bc3d36463e32 100644
--- a/net/ipv4/af_inet.c
+++ b/net/ipv4/af_inet.c
-@@ -1708,9 +1708,9 @@ u64 snmp_get_cpu_field64(void __percpu *mib, int cpu, int offt,
+@@ -1726,9 +1726,9 @@ u64 snmp_get_cpu_field64(void __percpu *mib, int cpu, int offt,
bhptr = per_cpu_ptr(mib, cpu);
syncp = (struct u64_stats_sync *)(bhptr + syncp_offset);
do {
@@ -326,7 +326,7 @@ index 17a1b731a76b..2be696513629 100644
seq_printf(seq, "%3X %8LX %8LX %8LX %16LX %16LX\n",
i, (u64)conns, (u64)inpkts,
diff --git a/net/netfilter/nf_tables_api.c b/net/netfilter/nf_tables_api.c
-index 05fa5141af51..ab1888991ae5 100644
+index 3d6ebb9877a4..0e237f0356ae 100644
--- a/net/netfilter/nf_tables_api.c
+++ b/net/netfilter/nf_tables_api.c
@@ -1692,10 +1692,10 @@ static int nft_dump_stats(struct sk_buff *skb, struct nft_stats __percpu *stats)
diff --git a/buildroot-external/patches/linux/0007-bpf-Remove-the-obsolte-u64_stats_fetch_-_irq-users.patch b/buildroot-external/patches/linux/0007-bpf-Remove-the-obsolte-u64_stats_fetch_-_irq-users.patch
index b0cabc12..4b980926 100644
--- a/buildroot-external/patches/linux/0007-bpf-Remove-the-obsolte-u64_stats_fetch_-_irq-users.patch
+++ b/buildroot-external/patches/linux/0007-bpf-Remove-the-obsolte-u64_stats_fetch_-_irq-users.patch
@@ -1,4 +1,4 @@
-From b8cff7d0320e3b39f098d9562373e1c16c54c46c Mon Sep 17 00:00:00 2001
+From 9350167d72e9692f289b2569b6f24da0b894aac6 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Thu, 25 Aug 2022 16:17:57 +0200
Subject: [PATCH 07/62] bpf: Remove the obsolte u64_stats_fetch_*_irq() users.
diff --git a/buildroot-external/patches/linux/0008-u64_stat-Remove-the-obsolete-fetch_irq-variants.patch b/buildroot-external/patches/linux/0008-u64_stat-Remove-the-obsolete-fetch_irq-variants.patch
index 33d1f50e..854c3f66 100644
--- a/buildroot-external/patches/linux/0008-u64_stat-Remove-the-obsolete-fetch_irq-variants.patch
+++ b/buildroot-external/patches/linux/0008-u64_stat-Remove-the-obsolete-fetch_irq-variants.patch
@@ -1,4 +1,4 @@
-From b908a7b47d95003c498f2f575285f528148602d6 Mon Sep 17 00:00:00 2001
+From cf6d7ad80beb2d90140c212f8ccd32197e0eccdb Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Thu, 25 Aug 2022 16:43:46 +0200
Subject: [PATCH 08/62] u64_stat: Remove the obsolete fetch_irq() variants.
diff --git a/buildroot-external/patches/linux/0009-net-Avoid-the-IPI-to-free-the.patch b/buildroot-external/patches/linux/0009-net-Avoid-the-IPI-to-free-the.patch
index 8a8a0f00..b00d169f 100644
--- a/buildroot-external/patches/linux/0009-net-Avoid-the-IPI-to-free-the.patch
+++ b/buildroot-external/patches/linux/0009-net-Avoid-the-IPI-to-free-the.patch
@@ -1,4 +1,4 @@
-From c910f301d71266e18f63407ec6c65d19ae90e779 Mon Sep 17 00:00:00 2001
+From 37205f0ce3bef04671d958f03e1460dcaeed41b7 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Mon, 15 Aug 2022 17:29:50 +0200
Subject: [PATCH 09/62] net: Avoid the IPI to free the
@@ -40,10 +40,10 @@ index 0373e0935990..55d698367883 100644
static inline void input_queue_head_incr(struct softnet_data *sd)
diff --git a/net/core/dev.c b/net/core/dev.c
-index 070039f9296c..a3caa23be3cf 100644
+index 29ae6265a408..6a13043ff0f3 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -4618,15 +4618,6 @@ static void rps_trigger_softirq(void *data)
+@@ -4621,15 +4621,6 @@ static void rps_trigger_softirq(void *data)
#endif /* CONFIG_RPS */
@@ -59,7 +59,7 @@ index 070039f9296c..a3caa23be3cf 100644
/*
* Check if this softnet_data structure is another cpu one
* If yes, queue it to our IPI list and return 1
-@@ -6684,6 +6675,30 @@ static void skb_defer_free_flush(struct softnet_data *sd)
+@@ -6687,6 +6678,30 @@ static void skb_defer_free_flush(struct softnet_data *sd)
}
}
@@ -90,7 +90,7 @@ index 070039f9296c..a3caa23be3cf 100644
static __latent_entropy void net_rx_action(struct softirq_action *h)
{
struct softnet_data *sd = this_cpu_ptr(&softnet_data);
-@@ -11435,7 +11450,11 @@ static int __init net_dev_init(void)
+@@ -11438,7 +11453,11 @@ static int __init net_dev_init(void)
INIT_CSD(&sd->csd, rps_trigger_softirq, sd);
sd->cpu = i;
#endif
@@ -103,10 +103,10 @@ index 070039f9296c..a3caa23be3cf 100644
init_gro_hash(&sd->backlog);
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
-index 73b1e0e53534..a457a3445469 100644
+index 8a819d0a7bfb..424ad963fa0c 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
-@@ -6680,6 +6680,11 @@ nodefer: __kfree_skb(skb);
+@@ -6682,6 +6682,11 @@ nodefer: __kfree_skb(skb);
/* Make sure to trigger NET_RX_SOFTIRQ on the remote CPU
* if we are unlucky enough (this seems very unlikely).
*/
diff --git a/buildroot-external/patches/linux/0010-x86-Allow-to-enable-RT.patch b/buildroot-external/patches/linux/0010-x86-Allow-to-enable-RT.patch
index 174c2734..d4ba1c17 100644
--- a/buildroot-external/patches/linux/0010-x86-Allow-to-enable-RT.patch
+++ b/buildroot-external/patches/linux/0010-x86-Allow-to-enable-RT.patch
@@ -1,4 +1,4 @@
-From ce04e41eb149fcd93a71b63a605423d7f18ec8b4 Mon Sep 17 00:00:00 2001
+From bd3f264eeb33c0602b3f9d66a603e5a2e8f9d9ee Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Wed, 7 Aug 2019 18:15:38 +0200
Subject: [PATCH 10/62] x86: Allow to enable RT
diff --git a/buildroot-external/patches/linux/0011-x86-Enable-RT-also-on-32bit.patch b/buildroot-external/patches/linux/0011-x86-Enable-RT-also-on-32bit.patch
index a1ea1a49..f3fef621 100644
--- a/buildroot-external/patches/linux/0011-x86-Enable-RT-also-on-32bit.patch
+++ b/buildroot-external/patches/linux/0011-x86-Enable-RT-also-on-32bit.patch
@@ -1,4 +1,4 @@
-From 28dbe0fc30a2d3e519fac1ffe18fe7427f1f49b3 Mon Sep 17 00:00:00 2001
+From 4c22c4a6e79603a30f6b875c8fd65efdad35ac8f Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Thu, 7 Nov 2019 17:49:20 +0100
Subject: [PATCH 11/62] x86: Enable RT also on 32bit
diff --git a/buildroot-external/patches/linux/0012-softirq-Use-a-dedicated-thread-for-timer-wakeups.patch b/buildroot-external/patches/linux/0012-softirq-Use-a-dedicated-thread-for-timer-wakeups.patch
index 3a08c7ae..1443565e 100644
--- a/buildroot-external/patches/linux/0012-softirq-Use-a-dedicated-thread-for-timer-wakeups.patch
+++ b/buildroot-external/patches/linux/0012-softirq-Use-a-dedicated-thread-for-timer-wakeups.patch
@@ -1,4 +1,4 @@
-From 454343a4f08e5de772024588aec2bd396177ee89 Mon Sep 17 00:00:00 2001
+From d2864e2d892720940d5a3acb606abcc10089bd73 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Wed, 1 Dec 2021 17:41:09 +0100
Subject: [PATCH 12/62] softirq: Use a dedicated thread for timer wakeups.
diff --git a/buildroot-external/patches/linux/0013-rcutorture-Also-force-sched-priority-to-timersd-on-b.patch b/buildroot-external/patches/linux/0013-rcutorture-Also-force-sched-priority-to-timersd-on-b.patch
index 16b6a782..561de80d 100644
--- a/buildroot-external/patches/linux/0013-rcutorture-Also-force-sched-priority-to-timersd-on-b.patch
+++ b/buildroot-external/patches/linux/0013-rcutorture-Also-force-sched-priority-to-timersd-on-b.patch
@@ -1,4 +1,4 @@
-From a10aa54ef224bbd46ca1777e4b9fe960360961cc Mon Sep 17 00:00:00 2001
+From f760da57a984738f88b96dfa5edb89d0723901ca Mon Sep 17 00:00:00 2001
From: Frederic Weisbecker
Date: Tue, 5 Apr 2022 03:07:51 +0200
Subject: [PATCH 13/62] rcutorture: Also force sched priority to timersd on
diff --git a/buildroot-external/patches/linux/0014-tick-Fix-timer-storm-since-introduction-of-timersd.patch b/buildroot-external/patches/linux/0014-tick-Fix-timer-storm-since-introduction-of-timersd.patch
index 35035bbd..713e4d8c 100644
--- a/buildroot-external/patches/linux/0014-tick-Fix-timer-storm-since-introduction-of-timersd.patch
+++ b/buildroot-external/patches/linux/0014-tick-Fix-timer-storm-since-introduction-of-timersd.patch
@@ -1,4 +1,4 @@
-From ae3e63c4320c0c2d3865ba8ecff64a6d03948ce7 Mon Sep 17 00:00:00 2001
+From 9220b21155b9f55725886fb46c85df7ee0288ce0 Mon Sep 17 00:00:00 2001
From: Frederic Weisbecker
Date: Tue, 5 Apr 2022 03:07:52 +0200
Subject: [PATCH 14/62] tick: Fix timer storm since introduction of timersd
diff --git a/buildroot-external/patches/linux/0015-softirq-Wake-ktimers-thread-also-in-softirq.patch b/buildroot-external/patches/linux/0015-softirq-Wake-ktimers-thread-also-in-softirq.patch
index ea4830ab..955afe2b 100644
--- a/buildroot-external/patches/linux/0015-softirq-Wake-ktimers-thread-also-in-softirq.patch
+++ b/buildroot-external/patches/linux/0015-softirq-Wake-ktimers-thread-also-in-softirq.patch
@@ -1,4 +1,4 @@
-From ca98adaa69af0a5f3bb28cccb6543ee3e0c4a23f Mon Sep 17 00:00:00 2001
+From 7c8c231b4a43dd06e6c90d5c820342ee3f8e9130 Mon Sep 17 00:00:00 2001
From: Junxiao Chang
Date: Mon, 20 Feb 2023 09:12:20 +0100
Subject: [PATCH 15/62] softirq: Wake ktimers thread also in softirq.
diff --git a/buildroot-external/patches/linux/0016-tpm_tis-fix-stall-after-iowrite-s.patch b/buildroot-external/patches/linux/0016-tpm_tis-fix-stall-after-iowrite-s.patch
index a2596dc7..6bc373e1 100644
--- a/buildroot-external/patches/linux/0016-tpm_tis-fix-stall-after-iowrite-s.patch
+++ b/buildroot-external/patches/linux/0016-tpm_tis-fix-stall-after-iowrite-s.patch
@@ -1,4 +1,4 @@
-From 87e5c70f401b5230b5125dedc88e10f54909a37e Mon Sep 17 00:00:00 2001
+From a61678645efc9d4aa757b038d91bbef571c3ba17 Mon Sep 17 00:00:00 2001
From: Haris Okanovic
Date: Tue, 15 Aug 2017 15:13:08 -0500
Subject: [PATCH 16/62] tpm_tis: fix stall after iowrite*()s
diff --git a/buildroot-external/patches/linux/0017-zram-Replace-bit-spinlocks-with-spinlock_t-for-PREEM.patch b/buildroot-external/patches/linux/0017-zram-Replace-bit-spinlocks-with-spinlock_t-for-PREEM.patch
index e718577f..711d54c1 100644
--- a/buildroot-external/patches/linux/0017-zram-Replace-bit-spinlocks-with-spinlock_t-for-PREEM.patch
+++ b/buildroot-external/patches/linux/0017-zram-Replace-bit-spinlocks-with-spinlock_t-for-PREEM.patch
@@ -1,4 +1,4 @@
-From 8397109d43ef57d5e91d738354b9c30f49cb2f95 Mon Sep 17 00:00:00 2001
+From 5881f1272a6bf4dc4c7553942f95fa850416700c Mon Sep 17 00:00:00 2001
From: Mike Galbraith
Date: Thu, 31 Mar 2016 04:08:28 +0200
Subject: [PATCH 17/62] zram: Replace bit spinlocks with spinlock_t for
diff --git a/buildroot-external/patches/linux/0018-locking-lockdep-Remove-lockdep_init_map_crosslock.patch b/buildroot-external/patches/linux/0018-locking-lockdep-Remove-lockdep_init_map_crosslock.patch
index 7fa1a464..71ee0238 100644
--- a/buildroot-external/patches/linux/0018-locking-lockdep-Remove-lockdep_init_map_crosslock.patch
+++ b/buildroot-external/patches/linux/0018-locking-lockdep-Remove-lockdep_init_map_crosslock.patch
@@ -1,4 +1,4 @@
-From dd162e2589601c792a81a3c19ef4a87510ed6ce5 Mon Sep 17 00:00:00 2001
+From 0b833bd5bb0c55f681cf80dc6eaf59ab1cea7b51 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Fri, 11 Mar 2022 17:44:57 +0100
Subject: [PATCH 18/62] locking/lockdep: Remove lockdep_init_map_crosslock.
diff --git a/buildroot-external/patches/linux/0019-printk-Bring-back-the-RT-bits.patch b/buildroot-external/patches/linux/0019-printk-Bring-back-the-RT-bits.patch
index da32f2e9..762fe157 100644
--- a/buildroot-external/patches/linux/0019-printk-Bring-back-the-RT-bits.patch
+++ b/buildroot-external/patches/linux/0019-printk-Bring-back-the-RT-bits.patch
@@ -1,4 +1,4 @@
-From dd4e52ae061806da556008ca819481befcff0fd3 Mon Sep 17 00:00:00 2001
+From 353209a61511cccc1372d883ffe41fcff355055b Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Tue, 19 Jul 2022 20:08:01 +0200
Subject: [PATCH 19/62] printk: Bring back the RT bits.
diff --git a/buildroot-external/patches/linux/0020-printk-add-infrastucture-for-atomic-consoles.patch b/buildroot-external/patches/linux/0020-printk-add-infrastucture-for-atomic-consoles.patch
index bcb570d9..b3e7008c 100644
--- a/buildroot-external/patches/linux/0020-printk-add-infrastucture-for-atomic-consoles.patch
+++ b/buildroot-external/patches/linux/0020-printk-add-infrastucture-for-atomic-consoles.patch
@@ -1,4 +1,4 @@
-From 18343f23a5f1d466a0c74806983066efba932d5d Mon Sep 17 00:00:00 2001
+From 30f2ae30ddb074556a0f9a9a6bcc4bb071d7ea12 Mon Sep 17 00:00:00 2001
From: John Ogness
Date: Fri, 4 Feb 2022 16:01:17 +0106
Subject: [PATCH 20/62] printk: add infrastucture for atomic consoles
diff --git a/buildroot-external/patches/linux/0021-serial-8250-implement-write_atomic.patch b/buildroot-external/patches/linux/0021-serial-8250-implement-write_atomic.patch
index 38ff2448..8872dd8f 100644
--- a/buildroot-external/patches/linux/0021-serial-8250-implement-write_atomic.patch
+++ b/buildroot-external/patches/linux/0021-serial-8250-implement-write_atomic.patch
@@ -1,4 +1,4 @@
-From 08b8c0b589806331dc645a8ead6be51c174d93e0 Mon Sep 17 00:00:00 2001
+From eda5ed51c656510b41e8003537c4c101dd18e51f Mon Sep 17 00:00:00 2001
From: John Ogness
Date: Fri, 4 Feb 2022 16:01:17 +0106
Subject: [PATCH 21/62] serial: 8250: implement write_atomic
diff --git a/buildroot-external/patches/linux/0022-printk-avoid-preempt_disable-for-PREEMPT_RT.patch b/buildroot-external/patches/linux/0022-printk-avoid-preempt_disable-for-PREEMPT_RT.patch
index 79033968..7135a6cf 100644
--- a/buildroot-external/patches/linux/0022-printk-avoid-preempt_disable-for-PREEMPT_RT.patch
+++ b/buildroot-external/patches/linux/0022-printk-avoid-preempt_disable-for-PREEMPT_RT.patch
@@ -1,4 +1,4 @@
-From a549c0dff2a1a3b11b40abc969358d8cb367871d Mon Sep 17 00:00:00 2001
+From ca6770a982bcd5497cd057b5e0a8126c2e589a14 Mon Sep 17 00:00:00 2001
From: John Ogness
Date: Fri, 4 Feb 2022 16:01:17 +0106
Subject: [PATCH 22/62] printk: avoid preempt_disable() for PREEMPT_RT
diff --git a/buildroot-external/patches/linux/0023-drm-i915-Use-preempt_disable-enable_rt-where-recomme.patch b/buildroot-external/patches/linux/0023-drm-i915-Use-preempt_disable-enable_rt-where-recomme.patch
index e15b1601..01733a83 100644
--- a/buildroot-external/patches/linux/0023-drm-i915-Use-preempt_disable-enable_rt-where-recomme.patch
+++ b/buildroot-external/patches/linux/0023-drm-i915-Use-preempt_disable-enable_rt-where-recomme.patch
@@ -1,4 +1,4 @@
-From f99a0874dccc1ba9f9ead4473ba09603d10946b4 Mon Sep 17 00:00:00 2001
+From b309895649470ce9b30b47fb3e9e33e31adcc4b6 Mon Sep 17 00:00:00 2001
From: Mike Galbraith
Date: Sat, 27 Feb 2016 08:09:11 +0100
Subject: [PATCH 23/62] drm/i915: Use preempt_disable/enable_rt() where
diff --git a/buildroot-external/patches/linux/0024-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch b/buildroot-external/patches/linux/0024-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch
index a31eb34a..47310fd8 100644
--- a/buildroot-external/patches/linux/0024-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch
+++ b/buildroot-external/patches/linux/0024-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch
@@ -1,4 +1,4 @@
-From 7540de1a42a1a7409b4367b67c76480f7e96d25b Mon Sep 17 00:00:00 2001
+From 725cdc8f12a18ee15bbc8eb0f44927a324e78f93 Mon Sep 17 00:00:00 2001
From: Mike Galbraith
Date: Sat, 27 Feb 2016 09:01:42 +0100
Subject: [PATCH 24/62] drm/i915: Don't disable interrupts on PREEMPT_RT during
diff --git a/buildroot-external/patches/linux/0025-drm-i915-Don-t-check-for-atomic-context-on-PREEMPT_R.patch b/buildroot-external/patches/linux/0025-drm-i915-Don-t-check-for-atomic-context-on-PREEMPT_R.patch
index 511ee46a..700d696d 100644
--- a/buildroot-external/patches/linux/0025-drm-i915-Don-t-check-for-atomic-context-on-PREEMPT_R.patch
+++ b/buildroot-external/patches/linux/0025-drm-i915-Don-t-check-for-atomic-context-on-PREEMPT_R.patch
@@ -1,4 +1,4 @@
-From d9970290d810087f44a37de7ae6f3638ecddd3a0 Mon Sep 17 00:00:00 2001
+From d181bdd855737341003e6ac7db7567d90676ac22 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Mon, 25 Oct 2021 15:05:18 +0200
Subject: [PATCH 25/62] drm/i915: Don't check for atomic context on PREEMPT_RT
diff --git a/buildroot-external/patches/linux/0026-drm-i915-Disable-tracing-points-on-PREEMPT_RT.patch b/buildroot-external/patches/linux/0026-drm-i915-Disable-tracing-points-on-PREEMPT_RT.patch
index 9261a5f0..9d83b63b 100644
--- a/buildroot-external/patches/linux/0026-drm-i915-Disable-tracing-points-on-PREEMPT_RT.patch
+++ b/buildroot-external/patches/linux/0026-drm-i915-Disable-tracing-points-on-PREEMPT_RT.patch
@@ -1,4 +1,4 @@
-From 05b1ad300df55e576476a0dee533c90068480372 Mon Sep 17 00:00:00 2001
+From 208d88c07a8b47060be80f0961d6a053e6eb0431 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Thu, 6 Dec 2018 09:52:20 +0100
Subject: [PATCH 26/62] drm/i915: Disable tracing points on PREEMPT_RT
diff --git a/buildroot-external/patches/linux/0027-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch b/buildroot-external/patches/linux/0027-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch
index 15b86b50..cbc59e7a 100644
--- a/buildroot-external/patches/linux/0027-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch
+++ b/buildroot-external/patches/linux/0027-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch
@@ -1,4 +1,4 @@
-From 1fcbddeff5b9a56382a6ba0aba49578f8cdf9aa4 Mon Sep 17 00:00:00 2001
+From bbf258f5b754b9859e44f5ae0985d4b8909fa9ae Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Wed, 19 Dec 2018 10:47:02 +0100
Subject: [PATCH 27/62] drm/i915: skip DRM_I915_LOW_LEVEL_TRACEPOINTS with
diff --git a/buildroot-external/patches/linux/0028-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch b/buildroot-external/patches/linux/0028-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch
index 429d0355..59d5851a 100644
--- a/buildroot-external/patches/linux/0028-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch
+++ b/buildroot-external/patches/linux/0028-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch
@@ -1,4 +1,4 @@
-From 6dfc680fe2808eaf10a9feed7e3116df60b6032f Mon Sep 17 00:00:00 2001
+From 589f8c2efbc1aced239e26520595ec4badd2439a Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Wed, 8 Sep 2021 17:18:00 +0200
Subject: [PATCH 28/62] drm/i915/gt: Queue and wait for the irq_work item.
diff --git a/buildroot-external/patches/linux/0029-drm-i915-gt-Use-spin_lock_irq-instead-of-local_irq_d.patch b/buildroot-external/patches/linux/0029-drm-i915-gt-Use-spin_lock_irq-instead-of-local_irq_d.patch
index ced3444f..569c4672 100644
--- a/buildroot-external/patches/linux/0029-drm-i915-gt-Use-spin_lock_irq-instead-of-local_irq_d.patch
+++ b/buildroot-external/patches/linux/0029-drm-i915-gt-Use-spin_lock_irq-instead-of-local_irq_d.patch
@@ -1,4 +1,4 @@
-From 6ca6d59038e0a61a7bb4904310525b1df57a2867 Mon Sep 17 00:00:00 2001
+From 5ed1df3d31e740525b94136c575967e54b2f46b9 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Wed, 8 Sep 2021 19:03:41 +0200
Subject: [PATCH 29/62] drm/i915/gt: Use spin_lock_irq() instead of
diff --git a/buildroot-external/patches/linux/0030-drm-i915-Drop-the-irqs_disabled-check.patch b/buildroot-external/patches/linux/0030-drm-i915-Drop-the-irqs_disabled-check.patch
index 806907d1..eed1c387 100644
--- a/buildroot-external/patches/linux/0030-drm-i915-Drop-the-irqs_disabled-check.patch
+++ b/buildroot-external/patches/linux/0030-drm-i915-Drop-the-irqs_disabled-check.patch
@@ -1,4 +1,4 @@
-From 6779399c1acfc91f6e9b0bd4dc4abb4f3cb30c78 Mon Sep 17 00:00:00 2001
+From 2bc2145c2bb1269adaf808b2204542ef2f1ca602 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Fri, 1 Oct 2021 20:01:03 +0200
Subject: [PATCH 30/62] drm/i915: Drop the irqs_disabled() check
diff --git a/buildroot-external/patches/linux/0031-Revert-drm-i915-Depend-on-PREEMPT_RT.patch b/buildroot-external/patches/linux/0031-Revert-drm-i915-Depend-on-PREEMPT_RT.patch
index 79ae312b..765a52f2 100644
--- a/buildroot-external/patches/linux/0031-Revert-drm-i915-Depend-on-PREEMPT_RT.patch
+++ b/buildroot-external/patches/linux/0031-Revert-drm-i915-Depend-on-PREEMPT_RT.patch
@@ -1,4 +1,4 @@
-From fe8c8e1f1ec5c61814ee0c4c90a2cef9d35ecad6 Mon Sep 17 00:00:00 2001
+From 141420c658c028a9ead177b6313cdaad0eff61ab Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Mon, 21 Feb 2022 17:59:14 +0100
Subject: [PATCH 31/62] Revert "drm/i915: Depend on !PREEMPT_RT."
diff --git a/buildroot-external/patches/linux/0032-sched-Add-support-for-lazy-preemption.patch b/buildroot-external/patches/linux/0032-sched-Add-support-for-lazy-preemption.patch
index 3845c1c6..65c65f3b 100644
--- a/buildroot-external/patches/linux/0032-sched-Add-support-for-lazy-preemption.patch
+++ b/buildroot-external/patches/linux/0032-sched-Add-support-for-lazy-preemption.patch
@@ -1,4 +1,4 @@
-From 87194c420f8ef3b1a8b9b63ae640180e2414e8c4 Mon Sep 17 00:00:00 2001
+From fc4755c31f7adcf012556bfc2db7e84c78aa0ad2 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Fri, 26 Oct 2012 18:50:54 +0100
Subject: [PATCH 32/62] sched: Add support for lazy preemption
@@ -556,10 +556,10 @@ index b62d53d7c264..f2577f511a41 100644
extern void init_rt_bandwidth(struct rt_bandwidth *rt_b, u64 period, u64 runtime);
extern bool sched_rt_bandwidth_account(struct rt_rq *rt_rq);
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
-index 87eca95b57fb..462564d652be 100644
+index deae65af76ec..edf0407d5498 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
-@@ -2616,11 +2616,19 @@ unsigned int tracing_gen_ctx_irq_test(unsigned int irqs_status)
+@@ -2630,11 +2630,19 @@ unsigned int tracing_gen_ctx_irq_test(unsigned int irqs_status)
if (softirq_count() >> (SOFTIRQ_SHIFT + 1))
trace_flags |= TRACE_FLAG_BH_OFF;
@@ -581,7 +581,7 @@ index 87eca95b57fb..462564d652be 100644
(min_t(unsigned int, migration_disable_value(), 0xf)) << 4;
}
-@@ -4212,15 +4220,17 @@ unsigned long trace_total_entries(struct trace_array *tr)
+@@ -4226,15 +4234,17 @@ unsigned long trace_total_entries(struct trace_array *tr)
static void print_lat_help_header(struct seq_file *m)
{
@@ -608,7 +608,7 @@ index 87eca95b57fb..462564d652be 100644
}
static void print_event_info(struct array_buffer *buf, struct seq_file *m)
-@@ -4254,14 +4264,16 @@ static void print_func_help_header_irq(struct array_buffer *buf, struct seq_file
+@@ -4268,14 +4278,16 @@ static void print_func_help_header_irq(struct array_buffer *buf, struct seq_file
print_event_info(buf, m);
diff --git a/buildroot-external/patches/linux/0033-x86-entry-Use-should_resched-in-idtentry_exit_cond_r.patch b/buildroot-external/patches/linux/0033-x86-entry-Use-should_resched-in-idtentry_exit_cond_r.patch
index ac1bf438..ea493160 100644
--- a/buildroot-external/patches/linux/0033-x86-entry-Use-should_resched-in-idtentry_exit_cond_r.patch
+++ b/buildroot-external/patches/linux/0033-x86-entry-Use-should_resched-in-idtentry_exit_cond_r.patch
@@ -1,4 +1,4 @@
-From 37719a07083b68dad1449227e9fe66e8e6c9f2b6 Mon Sep 17 00:00:00 2001
+From 4a7f3d980fdfa78e88ce38e493b5d39384f35079 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Tue, 30 Jun 2020 11:45:14 +0200
Subject: [PATCH 33/62] x86/entry: Use should_resched() in
diff --git a/buildroot-external/patches/linux/0034-x86-Support-for-lazy-preemption.patch b/buildroot-external/patches/linux/0034-x86-Support-for-lazy-preemption.patch
index 23b811f8..0afc312d 100644
--- a/buildroot-external/patches/linux/0034-x86-Support-for-lazy-preemption.patch
+++ b/buildroot-external/patches/linux/0034-x86-Support-for-lazy-preemption.patch
@@ -1,4 +1,4 @@
-From 65ce5ba8ccb26e6de364e76228e645b2c02b921d Mon Sep 17 00:00:00 2001
+From b73c9a31ab7a5c00891726ff9d5da0297243d335 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Thu, 1 Nov 2012 11:03:47 +0100
Subject: [PATCH 34/62] x86: Support for lazy preemption
diff --git a/buildroot-external/patches/linux/0035-entry-Fix-the-preempt-lazy-fallout.patch b/buildroot-external/patches/linux/0035-entry-Fix-the-preempt-lazy-fallout.patch
index a7f13621..512f11fe 100644
--- a/buildroot-external/patches/linux/0035-entry-Fix-the-preempt-lazy-fallout.patch
+++ b/buildroot-external/patches/linux/0035-entry-Fix-the-preempt-lazy-fallout.patch
@@ -1,4 +1,4 @@
-From d37c604152cbded61a8e107918d3b9950725d897 Mon Sep 17 00:00:00 2001
+From a17c5b9f7e3fef4ab8b0a87fa33e6c89f6c89cba Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Tue, 13 Jul 2021 07:52:52 +0200
Subject: [PATCH 35/62] entry: Fix the preempt lazy fallout
diff --git a/buildroot-external/patches/linux/0036-arm-Add-support-for-lazy-preemption.patch b/buildroot-external/patches/linux/0036-arm-Add-support-for-lazy-preemption.patch
index bff3f33d..8363fd29 100644
--- a/buildroot-external/patches/linux/0036-arm-Add-support-for-lazy-preemption.patch
+++ b/buildroot-external/patches/linux/0036-arm-Add-support-for-lazy-preemption.patch
@@ -1,4 +1,4 @@
-From f242fbbb3f85d6b9c8c8fc06ddbc83b9ca5a0511 Mon Sep 17 00:00:00 2001
+From 93b892ee12b8eb43a72f308c981f3c68c6ae8b45 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Wed, 31 Oct 2012 12:04:11 +0100
Subject: [PATCH 36/62] arm: Add support for lazy preemption
diff --git a/buildroot-external/patches/linux/0037-powerpc-Add-support-for-lazy-preemption.patch b/buildroot-external/patches/linux/0037-powerpc-Add-support-for-lazy-preemption.patch
index 9e5d454c..89c86189 100644
--- a/buildroot-external/patches/linux/0037-powerpc-Add-support-for-lazy-preemption.patch
+++ b/buildroot-external/patches/linux/0037-powerpc-Add-support-for-lazy-preemption.patch
@@ -1,4 +1,4 @@
-From 65e31d7b980c1413f19fcb84234387f97b09588f Mon Sep 17 00:00:00 2001
+From 27570b59eda95f93f62c30d343f9c913a9d2a137 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Thu, 1 Nov 2012 10:14:11 +0100
Subject: [PATCH 37/62] powerpc: Add support for lazy preemption
diff --git a/buildroot-external/patches/linux/0038-arch-arm64-Add-lazy-preempt-support.patch b/buildroot-external/patches/linux/0038-arch-arm64-Add-lazy-preempt-support.patch
index 9ecbd6b8..b4b1b588 100644
--- a/buildroot-external/patches/linux/0038-arch-arm64-Add-lazy-preempt-support.patch
+++ b/buildroot-external/patches/linux/0038-arch-arm64-Add-lazy-preempt-support.patch
@@ -1,4 +1,4 @@
-From 12a36ad989490f5ae3ed6a50d764385e8e27e024 Mon Sep 17 00:00:00 2001
+From 87fb6813fa0a5ecff7fd2c657b37cfe97733ae90 Mon Sep 17 00:00:00 2001
From: Anders Roxell
Date: Thu, 14 May 2015 17:52:17 +0200
Subject: [PATCH 38/62] arch/arm64: Add lazy preempt support
diff --git a/buildroot-external/patches/linux/0039-arm-Disable-jump-label-on-PREEMPT_RT.patch b/buildroot-external/patches/linux/0039-arm-Disable-jump-label-on-PREEMPT_RT.patch
index 2bb2eca5..92733b37 100644
--- a/buildroot-external/patches/linux/0039-arm-Disable-jump-label-on-PREEMPT_RT.patch
+++ b/buildroot-external/patches/linux/0039-arm-Disable-jump-label-on-PREEMPT_RT.patch
@@ -1,4 +1,4 @@
-From f1c0950a69e46ee1d45192bfae026622da60bdc8 Mon Sep 17 00:00:00 2001
+From 16d22e88a2c9122e0cc5441e29a3b64bafb9c560 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Wed, 8 Jul 2015 17:14:48 +0200
Subject: [PATCH 39/62] arm: Disable jump-label on PREEMPT_RT.
diff --git a/buildroot-external/patches/linux/0040-ARM-enable-irq-in-translation-section-permission-fau.patch b/buildroot-external/patches/linux/0040-ARM-enable-irq-in-translation-section-permission-fau.patch
index fd4d6722..82f37f0a 100644
--- a/buildroot-external/patches/linux/0040-ARM-enable-irq-in-translation-section-permission-fau.patch
+++ b/buildroot-external/patches/linux/0040-ARM-enable-irq-in-translation-section-permission-fau.patch
@@ -1,4 +1,4 @@
-From 802d6978bf4ebdec28d2ba4e715c2e414d9c7d06 Mon Sep 17 00:00:00 2001
+From a376cccfd403c8321d9a03bb8749d805377434a5 Mon Sep 17 00:00:00 2001
From: "Yadi.hu"
Date: Wed, 10 Dec 2014 10:32:09 +0800
Subject: [PATCH 40/62] ARM: enable irq in translation/section permission fault
diff --git a/buildroot-external/patches/linux/0041-tty-serial-omap-Make-the-locking-RT-aware.patch b/buildroot-external/patches/linux/0041-tty-serial-omap-Make-the-locking-RT-aware.patch
index c0bc0343..9b3e9167 100644
--- a/buildroot-external/patches/linux/0041-tty-serial-omap-Make-the-locking-RT-aware.patch
+++ b/buildroot-external/patches/linux/0041-tty-serial-omap-Make-the-locking-RT-aware.patch
@@ -1,4 +1,4 @@
-From 2a89ee21ea5c408b560839cc06bd0c13580fb3a4 Mon Sep 17 00:00:00 2001
+From 3d0d89a1306c53973cc898d6e003e18826cee219 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Thu, 28 Jul 2011 13:32:57 +0200
Subject: [PATCH 41/62] tty/serial/omap: Make the locking RT aware
diff --git a/buildroot-external/patches/linux/0042-tty-serial-pl011-Make-the-locking-work-on-RT.patch b/buildroot-external/patches/linux/0042-tty-serial-pl011-Make-the-locking-work-on-RT.patch
index 6cabae55..960ed04c 100644
--- a/buildroot-external/patches/linux/0042-tty-serial-pl011-Make-the-locking-work-on-RT.patch
+++ b/buildroot-external/patches/linux/0042-tty-serial-pl011-Make-the-locking-work-on-RT.patch
@@ -1,4 +1,4 @@
-From 1db3dc8a6af68447b52efbbf8dbb4d210d23d57b Mon Sep 17 00:00:00 2001
+From 9d7551c43f81729a91f4b95812918e034efcbeb9 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Tue, 8 Jan 2013 21:36:51 +0100
Subject: [PATCH 42/62] tty/serial/pl011: Make the locking work on RT
diff --git a/buildroot-external/patches/linux/0043-ARM-Allow-to-enable-RT.patch b/buildroot-external/patches/linux/0043-ARM-Allow-to-enable-RT.patch
index 465c4ac1..1bbc301f 100644
--- a/buildroot-external/patches/linux/0043-ARM-Allow-to-enable-RT.patch
+++ b/buildroot-external/patches/linux/0043-ARM-Allow-to-enable-RT.patch
@@ -1,4 +1,4 @@
-From 47c9956482a592a16b58831ded27e3c0f62ec11d Mon Sep 17 00:00:00 2001
+From cc0f3bc0e7a996dcd926b3dd93321e450acc18a1 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Fri, 11 Oct 2019 13:14:29 +0200
Subject: [PATCH 43/62] ARM: Allow to enable RT
diff --git a/buildroot-external/patches/linux/0044-ARM64-Allow-to-enable-RT.patch b/buildroot-external/patches/linux/0044-ARM64-Allow-to-enable-RT.patch
index 2c8ba3b0..1ea42ba6 100644
--- a/buildroot-external/patches/linux/0044-ARM64-Allow-to-enable-RT.patch
+++ b/buildroot-external/patches/linux/0044-ARM64-Allow-to-enable-RT.patch
@@ -1,4 +1,4 @@
-From c71e1e0561e008bb2fe230ad7022c3e2483cd6c0 Mon Sep 17 00:00:00 2001
+From 9a9d2b06c531f9499ccce07ac714809c79ec09bd Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Fri, 11 Oct 2019 13:14:35 +0200
Subject: [PATCH 44/62] ARM64: Allow to enable RT
diff --git a/buildroot-external/patches/linux/0045-powerpc-traps-Use-PREEMPT_RT.patch b/buildroot-external/patches/linux/0045-powerpc-traps-Use-PREEMPT_RT.patch
index 25ffcb7d..8fddc53b 100644
--- a/buildroot-external/patches/linux/0045-powerpc-traps-Use-PREEMPT_RT.patch
+++ b/buildroot-external/patches/linux/0045-powerpc-traps-Use-PREEMPT_RT.patch
@@ -1,4 +1,4 @@
-From 4d7273bd07600b933e6d25807cd96df04e435cbe Mon Sep 17 00:00:00 2001
+From f2b6a46898eb5d854b8e1dfabbbc720dfb77c828 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Fri, 26 Jul 2019 11:30:49 +0200
Subject: [PATCH 45/62] powerpc: traps: Use PREEMPT_RT
diff --git a/buildroot-external/patches/linux/0046-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch b/buildroot-external/patches/linux/0046-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch
index dc62f72a..5f590a34 100644
--- a/buildroot-external/patches/linux/0046-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch
+++ b/buildroot-external/patches/linux/0046-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch
@@ -1,4 +1,4 @@
-From 1d20f49e62250211b43cbe18a087fdf19c313081 Mon Sep 17 00:00:00 2001
+From 568f517f60a2278ce951e4c406c2b1a23b023276 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Tue, 26 Mar 2019 18:31:54 +0100
Subject: [PATCH 46/62] powerpc/pseries/iommu: Use a locallock instead
diff --git a/buildroot-external/patches/linux/0047-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch b/buildroot-external/patches/linux/0047-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch
index e05e86cd..e650d51f 100644
--- a/buildroot-external/patches/linux/0047-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch
+++ b/buildroot-external/patches/linux/0047-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch
@@ -1,4 +1,4 @@
-From 34f52991170848510810b486dd6fe9a19cbe4c46 Mon Sep 17 00:00:00 2001
+From 25919ff22be6046704419c17a2a3ac3741966999 Mon Sep 17 00:00:00 2001
From: Bogdan Purcareata
Date: Fri, 24 Apr 2015 15:53:13 +0000
Subject: [PATCH 47/62] powerpc/kvm: Disable in-kernel MPIC emulation for
diff --git a/buildroot-external/patches/linux/0048-powerpc-stackprotector-work-around-stack-guard-init-.patch b/buildroot-external/patches/linux/0048-powerpc-stackprotector-work-around-stack-guard-init-.patch
index 7aa91365..2d3914f4 100644
--- a/buildroot-external/patches/linux/0048-powerpc-stackprotector-work-around-stack-guard-init-.patch
+++ b/buildroot-external/patches/linux/0048-powerpc-stackprotector-work-around-stack-guard-init-.patch
@@ -1,4 +1,4 @@
-From d2e9a96e5570459dd886f87bf81c7714fb0a2108 Mon Sep 17 00:00:00 2001
+From 0e1e4be3ae95cb72855c0223b4ff5f52adec395c Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Tue, 26 Mar 2019 18:31:29 +0100
Subject: [PATCH 48/62] powerpc/stackprotector: work around stack-guard init
diff --git a/buildroot-external/patches/linux/0049-POWERPC-Allow-to-enable-RT.patch b/buildroot-external/patches/linux/0049-POWERPC-Allow-to-enable-RT.patch
index 97e059e4..dbb6259a 100644
--- a/buildroot-external/patches/linux/0049-POWERPC-Allow-to-enable-RT.patch
+++ b/buildroot-external/patches/linux/0049-POWERPC-Allow-to-enable-RT.patch
@@ -1,4 +1,4 @@
-From 93941796079cb4515170adf454f9218adc89856d Mon Sep 17 00:00:00 2001
+From b7e6efc63764062b7a173464a382d773a08b0b65 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Fri, 11 Oct 2019 13:14:41 +0200
Subject: [PATCH 49/62] POWERPC: Allow to enable RT
diff --git a/buildroot-external/patches/linux/0050-sysfs-Add-sys-kernel-realtime-entry.patch b/buildroot-external/patches/linux/0050-sysfs-Add-sys-kernel-realtime-entry.patch
index 9be7c3cf..c7bd2de5 100644
--- a/buildroot-external/patches/linux/0050-sysfs-Add-sys-kernel-realtime-entry.patch
+++ b/buildroot-external/patches/linux/0050-sysfs-Add-sys-kernel-realtime-entry.patch
@@ -1,4 +1,4 @@
-From b2103f830327ab5d1e6f49134c22d3c5adfb52cc Mon Sep 17 00:00:00 2001
+From 1099e2c72fb3792fe5e5d04f99b0c7911ea66b73 Mon Sep 17 00:00:00 2001
From: Clark Williams
Date: Sat, 30 Jul 2011 21:55:53 -0500
Subject: [PATCH 50/62] sysfs: Add /sys/kernel/realtime entry
diff --git a/buildroot-external/patches/linux/0051-Add-localversion-for-RT-release.patch b/buildroot-external/patches/linux/0051-Add-localversion-for-RT-release.patch
index 7debf685..593c77d9 100644
--- a/buildroot-external/patches/linux/0051-Add-localversion-for-RT-release.patch
+++ b/buildroot-external/patches/linux/0051-Add-localversion-for-RT-release.patch
@@ -1,4 +1,4 @@
-From 9c7d6e723acbbc184d1dd04811863378699134fb Mon Sep 17 00:00:00 2001
+From 07e415a26d8241d7a40d9bdc7741f58dbd46d606 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Fri, 8 Jul 2011 20:25:16 +0200
Subject: [PATCH 51/62] Add localversion for -RT release
diff --git a/buildroot-external/patches/linux/0052-Linux-6.1.46-rt13-REBASE.patch b/buildroot-external/patches/linux/0052-Linux-6.1.46-rt13-REBASE.patch
index 5b032d60..c5857beb 100644
--- a/buildroot-external/patches/linux/0052-Linux-6.1.46-rt13-REBASE.patch
+++ b/buildroot-external/patches/linux/0052-Linux-6.1.46-rt13-REBASE.patch
@@ -1,4 +1,4 @@
-From 3f783498b292a814f8f364bbfd0efbfc1be6d30f Mon Sep 17 00:00:00 2001
+From cc2be4ec82b6c49240b861a11de8c4336501dc09 Mon Sep 17 00:00:00 2001
From: Clark Williams
Date: Fri, 18 Aug 2023 10:45:35 -0500
Subject: [PATCH 52/62] 'Linux 6.1.46-rt13 REBASE'
diff --git a/buildroot-external/patches/linux/0053-io-mapping-don-t-disable-preempt-on-RT-in-io_mapping.patch b/buildroot-external/patches/linux/0053-io-mapping-don-t-disable-preempt-on-RT-in-io_mapping.patch
index 29ccb3b1..79e8534e 100644
--- a/buildroot-external/patches/linux/0053-io-mapping-don-t-disable-preempt-on-RT-in-io_mapping.patch
+++ b/buildroot-external/patches/linux/0053-io-mapping-don-t-disable-preempt-on-RT-in-io_mapping.patch
@@ -1,4 +1,4 @@
-From 53c6a09e670e985d37ca05785a0155ab51b49cf4 Mon Sep 17 00:00:00 2001
+From be70bbd4d08f00c845633614925c0b126f11a30a Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Fri, 10 Mar 2023 17:29:05 +0100
Subject: [PATCH 53/62] io-mapping: don't disable preempt on RT in
diff --git a/buildroot-external/patches/linux/0054-locking-rwbase-Mitigate-indefinite-writer-starvation.patch b/buildroot-external/patches/linux/0054-locking-rwbase-Mitigate-indefinite-writer-starvation.patch
index 00cb40c3..fb46270c 100644
--- a/buildroot-external/patches/linux/0054-locking-rwbase-Mitigate-indefinite-writer-starvation.patch
+++ b/buildroot-external/patches/linux/0054-locking-rwbase-Mitigate-indefinite-writer-starvation.patch
@@ -1,4 +1,4 @@
-From 8785dde5198dc91cbb518044e1c6d301ef9a9857 Mon Sep 17 00:00:00 2001
+From 23249660cee29a01660c4518a3046dfba2b7199c Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Tue, 21 Mar 2023 17:11:40 +0100
Subject: [PATCH 54/62] locking/rwbase: Mitigate indefinite writer starvation
diff --git a/buildroot-external/patches/linux/0055-revert-softirq-Let-ksoftirqd-do-its-job.patch b/buildroot-external/patches/linux/0055-revert-softirq-Let-ksoftirqd-do-its-job.patch
index 3d3829c8..b563494e 100644
--- a/buildroot-external/patches/linux/0055-revert-softirq-Let-ksoftirqd-do-its-job.patch
+++ b/buildroot-external/patches/linux/0055-revert-softirq-Let-ksoftirqd-do-its-job.patch
@@ -1,4 +1,4 @@
-From fcdb9b29c6d58895a386ac23229564fad2c316b5 Mon Sep 17 00:00:00 2001
+From f30dbde350cc4692abd4d2cb48a88913d94edf7d Mon Sep 17 00:00:00 2001
From: Paolo Abeni
Date: Mon, 8 May 2023 08:17:44 +0200
Subject: [PATCH 55/62] revert: "softirq: Let ksoftirqd do its job"
diff --git a/buildroot-external/patches/linux/0056-debugobjects-locking-Annotate-debug_object_fill_pool.patch b/buildroot-external/patches/linux/0056-debugobjects-locking-Annotate-debug_object_fill_pool.patch
index 7415eb0d..6a154657 100644
--- a/buildroot-external/patches/linux/0056-debugobjects-locking-Annotate-debug_object_fill_pool.patch
+++ b/buildroot-external/patches/linux/0056-debugobjects-locking-Annotate-debug_object_fill_pool.patch
@@ -1,4 +1,4 @@
-From c082e5d28e56252dca01b53c553bba5cd152fec1 Mon Sep 17 00:00:00 2001
+From 4937a4dc4d39cff4badeb727c8d6c1ecf4422a0d Mon Sep 17 00:00:00 2001
From: Peter Zijlstra
Date: Tue, 25 Apr 2023 17:03:13 +0200
Subject: [PATCH 56/62] debugobjects,locking: Annotate debug_object_fill_pool()
diff --git a/buildroot-external/patches/linux/0057-sched-avoid-false-lockdep-splat-in-put_task_struct.patch b/buildroot-external/patches/linux/0057-sched-avoid-false-lockdep-splat-in-put_task_struct.patch
index 033a25ab..238c76b5 100644
--- a/buildroot-external/patches/linux/0057-sched-avoid-false-lockdep-splat-in-put_task_struct.patch
+++ b/buildroot-external/patches/linux/0057-sched-avoid-false-lockdep-splat-in-put_task_struct.patch
@@ -1,4 +1,4 @@
-From 5c27e6fdf46d68180a46fdf7944aa7e4668680c3 Mon Sep 17 00:00:00 2001
+From 65a646612737cf862237312fd88afc0b0b6954d8 Mon Sep 17 00:00:00 2001
From: Wander Lairson Costa
Date: Wed, 14 Jun 2023 09:23:22 -0300
Subject: [PATCH 57/62] sched: avoid false lockdep splat in put_task_struct()
diff --git a/buildroot-external/patches/linux/0058-mm-page_alloc-Use-write_seqlock_irqsave-instead-writ.patch b/buildroot-external/patches/linux/0058-mm-page_alloc-Use-write_seqlock_irqsave-instead-writ.patch
index 2c3b6c7e..786a7ff3 100644
--- a/buildroot-external/patches/linux/0058-mm-page_alloc-Use-write_seqlock_irqsave-instead-writ.patch
+++ b/buildroot-external/patches/linux/0058-mm-page_alloc-Use-write_seqlock_irqsave-instead-writ.patch
@@ -1,4 +1,4 @@
-From 9512a9467dec62e03f2df4f15af9a38332b8de58 Mon Sep 17 00:00:00 2001
+From 295da0c59de4794e746f56b1567e3188f9addc00 Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Fri, 23 Jun 2023 22:15:17 +0200
Subject: [PATCH 58/62] mm/page_alloc: Use write_seqlock_irqsave() instead
diff --git a/buildroot-external/patches/linux/0059-bpf-Remove-in_atomic-from-bpf_link_put.patch b/buildroot-external/patches/linux/0059-bpf-Remove-in_atomic-from-bpf_link_put.patch
index 51495379..a018dc46 100644
--- a/buildroot-external/patches/linux/0059-bpf-Remove-in_atomic-from-bpf_link_put.patch
+++ b/buildroot-external/patches/linux/0059-bpf-Remove-in_atomic-from-bpf_link_put.patch
@@ -1,4 +1,4 @@
-From 05999b640eb04be872e5491a040701fcddc73349 Mon Sep 17 00:00:00 2001
+From 88ec5664a42344c84c246d13dd726a4cbe2d9e8d Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior
Date: Wed, 14 Jun 2023 10:34:30 +0200
Subject: [PATCH 59/62] bpf: Remove in_atomic() from bpf_link_put().
diff --git a/buildroot-external/patches/linux/0060-posix-timers-Ensure-timer-ID-search-loop-limit-is-va.patch b/buildroot-external/patches/linux/0060-posix-timers-Ensure-timer-ID-search-loop-limit-is-va.patch
index f4fa0486..51054baf 100644
--- a/buildroot-external/patches/linux/0060-posix-timers-Ensure-timer-ID-search-loop-limit-is-va.patch
+++ b/buildroot-external/patches/linux/0060-posix-timers-Ensure-timer-ID-search-loop-limit-is-va.patch
@@ -1,4 +1,4 @@
-From a0d2c56749857956cb8ef1ccf2d982e2c1770f08 Mon Sep 17 00:00:00 2001
+From 9bd94469a4ea8355cd39603280261eeff2cd0579 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner
Date: Thu, 1 Jun 2023 20:58:47 +0200
Subject: [PATCH 60/62] posix-timers: Ensure timer ID search-loop limit is
diff --git a/buildroot-external/patches/linux/0061-drm-i915-Do-not-disable-preemption-for-resets.patch b/buildroot-external/patches/linux/0061-drm-i915-Do-not-disable-preemption-for-resets.patch
index 5e0b2603..5d02fd30 100644
--- a/buildroot-external/patches/linux/0061-drm-i915-Do-not-disable-preemption-for-resets.patch
+++ b/buildroot-external/patches/linux/0061-drm-i915-Do-not-disable-preemption-for-resets.patch
@@ -1,4 +1,4 @@
-From 1d651fe6c67cb3b355cc228f75289657496520ff Mon Sep 17 00:00:00 2001
+From e55c680ca3b29815a9cf95135011b72fb216b57b Mon Sep 17 00:00:00 2001
From: Tvrtko Ursulin
Date: Fri, 18 Aug 2023 22:45:25 -0400
Subject: [PATCH 61/62] drm/i915: Do not disable preemption for resets
diff --git a/buildroot-external/patches/linux/0062-Linux-6.1.69-rt21-REBASE.patch b/buildroot-external/patches/linux/0062-Linux-6.1.73-rt22-REBASE.patch
similarity index 61%
rename from buildroot-external/patches/linux/0062-Linux-6.1.69-rt21-REBASE.patch
rename to buildroot-external/patches/linux/0062-Linux-6.1.73-rt22-REBASE.patch
index c0bbd69d..d7005f72 100644
--- a/buildroot-external/patches/linux/0062-Linux-6.1.69-rt21-REBASE.patch
+++ b/buildroot-external/patches/linux/0062-Linux-6.1.73-rt22-REBASE.patch
@@ -1,7 +1,7 @@
-From 8aa6a280fc011cccf7cfcc0f5942e3ec6bdd73b4 Mon Sep 17 00:00:00 2001
+From 46b774fa9eeafe90be6439cda8a8fe7409ee6860 Mon Sep 17 00:00:00 2001
From: Clark Williams
-Date: Thu, 28 Dec 2023 23:45:11 -0600
-Subject: [PATCH 62/62] Linux 6.1.69-rt21 REBASE
+Date: Thu, 18 Jan 2024 14:01:50 -0600
+Subject: [PATCH 62/62] Linux 6.1.73-rt22 REBASE
Signed-off-by: Clark Williams
---
@@ -9,12 +9,12 @@ Signed-off-by: Clark Williams
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/localversion-rt b/localversion-rt
-index 9f7d0bdbffb1..6c6cde1c29e3 100644
+index 9f7d0bdbffb1..c29508d21914 100644
--- a/localversion-rt
+++ b/localversion-rt
@@ -1 +1 @@
--rt13
-+-rt21
++-rt22
--
2.43.0
diff --git a/buildroot-external/patches/podman/0001-quadlet-support-systemd-style-dropin-files.patch b/buildroot-external/patches/podman/0001-quadlet-support-systemd-style-dropin-files.patch
deleted file mode 100644
index 5ff4d9f6..00000000
--- a/buildroot-external/patches/podman/0001-quadlet-support-systemd-style-dropin-files.patch
+++ /dev/null
@@ -1,252 +0,0 @@
-From 8ee26220281bc5bbb6a2b72ab0cf5a2f120b1afa Mon Sep 17 00:00:00 2001
-From: Alexander Larsson
-Date: Wed, 29 Nov 2023 10:57:42 +0100
-Subject: [PATCH] quadlet: Support systemd style dropin files
-
-For a source file like `foo.container`, look for drop in named
-`foo.container.d/*.conf` and merged them into the main file. The
-dropins are applied in alphabetical order, and files in earlier
-diretories override later files with same name.
-
-This is similar to how systemd dropins work, see:
-https://www.freedesktop.org/software/systemd/man/latest/systemd.unit.html
-
-Also adds some tests for these
-
-Signed-off-by: Alexander Larsson
----
- cmd/quadlet/main.go | 67 +++++++++++++++++++
- docs/source/markdown/podman-systemd.unit.5.md | 7 ++
- pkg/systemd/parser/unitfile.go | 4 +-
- test/e2e/quadlet/merged-override.container | 8 +++
- .../merged-override.container.d/10-first.conf | 2 +
- .../20-second.conf | 4 ++
- test/e2e/quadlet/merged.container | 8 +++
- .../quadlet/merged.container.d/10-first.conf | 2 +
- .../quadlet/merged.container.d/20-second.conf | 2 +
- test/e2e/quadlet_test.go | 12 ++++
- 10 files changed, 114 insertions(+), 2 deletions(-)
- create mode 100644 test/e2e/quadlet/merged-override.container
- create mode 100644 test/e2e/quadlet/merged-override.container.d/10-first.conf
- create mode 100644 test/e2e/quadlet/merged-override.container.d/20-second.conf
- create mode 100644 test/e2e/quadlet/merged.container
- create mode 100644 test/e2e/quadlet/merged.container.d/10-first.conf
- create mode 100644 test/e2e/quadlet/merged.container.d/20-second.conf
-
-diff --git a/cmd/quadlet/main.go b/cmd/quadlet/main.go
-index b36997b32a73..9c032427b0a4 100644
---- a/cmd/quadlet/main.go
-+++ b/cmd/quadlet/main.go
-@@ -242,6 +242,67 @@ func loadUnitsFromDir(sourcePath string) ([]*parser.UnitFile, error) {
- return units, prevError
- }
-
-+func loadUnitDropins(unit *parser.UnitFile, sourcePaths []string) error {
-+ var prevError error
-+ reportError := func(err error) {
-+ if prevError != nil {
-+ err = fmt.Errorf("%s\n%s", prevError, err)
-+ }
-+ prevError = err
-+ }
-+
-+ var dropinPaths = make(map[string]string)
-+ for _, sourcePath := range sourcePaths {
-+ dropinDir := path.Join(sourcePath, unit.Filename+".d")
-+
-+ dropinFiles, err := os.ReadDir(dropinDir)
-+ if err != nil {
-+ if !errors.Is(err, os.ErrNotExist) {
-+ reportError(fmt.Errorf("error reading directory %q, %w", dropinDir, err))
-+ }
-+
-+ continue
-+ }
-+
-+ for _, dropinFile := range dropinFiles {
-+ dropinName := dropinFile.Name()
-+ if filepath.Ext(dropinName) != ".conf" {
-+ continue // Only *.conf supported
-+ }
-+
-+ if _, ok := dropinPaths[dropinName]; ok {
-+ continue // We already saw this name
-+ }
-+
-+ dropinPaths[dropinName] = path.Join(dropinDir, dropinName)
-+ }
-+ }
-+
-+ dropinFiles := make([]string, len(dropinPaths))
-+ i := 0
-+ for k := range dropinPaths {
-+ dropinFiles[i] = k
-+ i++
-+ }
-+
-+ // Merge in alpha-numerical order
-+ sort.Strings(dropinFiles)
-+
-+ for _, dropinFile := range dropinFiles {
-+ dropinPath := dropinPaths[dropinFile]
-+
-+ Debugf("Loading source drop-in file %s", dropinPath)
-+
-+ if f, err := parser.ParseUnitFile(dropinPath); err != nil {
-+ reportError(fmt.Errorf("error loading %q, %w", dropinPath, err))
-+ } else {
-+ unit.Merge(f)
-+ }
-+ }
-+
-+ return prevError
-+}
-+
- func generateServiceFile(service *parser.UnitFile) error {
- Debugf("writing %q", service.Path)
-
-@@ -456,6 +517,12 @@ func process() error {
- return prevError
- }
-
-+ for _, unit := range units {
-+ if err := loadUnitDropins(unit, sourcePaths); err != nil {
-+ reportError(err)
-+ }
-+ }
-+
- if !dryRunFlag {
- err := os.MkdirAll(outputPath, os.ModePerm)
- if err != nil {
-diff --git a/docs/source/markdown/podman-systemd.unit.5.md b/docs/source/markdown/podman-systemd.unit.5.md
-index 8101338a56b6..4969a84aca7b 100644
---- a/docs/source/markdown/podman-systemd.unit.5.md
-+++ b/docs/source/markdown/podman-systemd.unit.5.md
-@@ -47,6 +47,13 @@ Each file type has a custom section (for example, `[Container]`) that is handled
- other sections are passed on untouched, allowing the use of any normal systemd configuration options
- like dependencies or cgroup limits.
-
-+The source files also support drop-ins in the same [way systemd does](https://www.freedesktop.org/software/systemd/man/latest/systemd.unit.html).
-+For a given source file (say `foo.container`), the corresponding `.d`directory (in this
-+case `foo.container.d`) will be scanned for files with a `.conf` extension that are merged into
-+the base file in alphabetical order. The format of these drop-in files is the same as the base file.
-+This is useful to alter or add configuration settings for a unit, without having to modify unit
-+files.
-+
- For rootless containers, when administrators place Quadlet files in the
- /etc/containers/systemd/users directory, all users' sessions execute the
- Quadlet when the login session begins. If the administrator places a Quadlet
-diff --git a/pkg/systemd/parser/unitfile.go b/pkg/systemd/parser/unitfile.go
-index 963909f9d876..732daa2be4fb 100644
---- a/pkg/systemd/parser/unitfile.go
-+++ b/pkg/systemd/parser/unitfile.go
-@@ -182,7 +182,7 @@ func (f *UnitFile) ensureGroup(groupName string) *unitGroup {
- return g
- }
-
--func (f *UnitFile) merge(source *UnitFile) {
-+func (f *UnitFile) Merge(source *UnitFile) {
- for _, srcGroup := range source.groups {
- group := f.ensureGroup(srcGroup.name)
- group.merge(srcGroup)
-@@ -193,7 +193,7 @@ func (f *UnitFile) merge(source *UnitFile) {
- func (f *UnitFile) Dup() *UnitFile {
- copy := NewUnitFile()
-
-- copy.merge(f)
-+ copy.Merge(f)
- copy.Filename = f.Filename
- return copy
- }
-diff --git a/test/e2e/quadlet/merged-override.container b/test/e2e/quadlet/merged-override.container
-new file mode 100644
-index 000000000000..d93a53b340a9
---- /dev/null
-+++ b/test/e2e/quadlet/merged-override.container
-@@ -0,0 +1,8 @@
-+## assert-podman-final-args localhost/imagename
-+## !assert-podman-args --env "MAIN=mainvalue"
-+## !assert-podman-args --env "FIRST=value"
-+## assert-podman-args --env "SECOND=othervalue"
-+
-+[Container]
-+Image=localhost/imagename
-+Environment=MAIN=mainvalue
-diff --git a/test/e2e/quadlet/merged-override.container.d/10-first.conf b/test/e2e/quadlet/merged-override.container.d/10-first.conf
-new file mode 100644
-index 000000000000..f6164d631e05
---- /dev/null
-+++ b/test/e2e/quadlet/merged-override.container.d/10-first.conf
-@@ -0,0 +1,2 @@
-+[Container]
-+Environment=FIRST=value
-diff --git a/test/e2e/quadlet/merged-override.container.d/20-second.conf b/test/e2e/quadlet/merged-override.container.d/20-second.conf
-new file mode 100644
-index 000000000000..5bfcdd44dcc8
---- /dev/null
-+++ b/test/e2e/quadlet/merged-override.container.d/20-second.conf
-@@ -0,0 +1,4 @@
-+[Container]
-+# Empty previous
-+Environment=
-+Environment=SECOND=othervalue
-diff --git a/test/e2e/quadlet/merged.container b/test/e2e/quadlet/merged.container
-new file mode 100644
-index 000000000000..3d19987fd0ca
---- /dev/null
-+++ b/test/e2e/quadlet/merged.container
-@@ -0,0 +1,8 @@
-+## assert-podman-final-args localhost/imagename
-+## assert-podman-args --env "MAIN=mainvalue"
-+## assert-podman-args --env "FIRST=value"
-+## assert-podman-args --env "SECOND=othervalue"
-+
-+[Container]
-+Image=localhost/imagename
-+Environment=MAIN=mainvalue
-diff --git a/test/e2e/quadlet/merged.container.d/10-first.conf b/test/e2e/quadlet/merged.container.d/10-first.conf
-new file mode 100644
-index 000000000000..f6164d631e05
---- /dev/null
-+++ b/test/e2e/quadlet/merged.container.d/10-first.conf
-@@ -0,0 +1,2 @@
-+[Container]
-+Environment=FIRST=value
-diff --git a/test/e2e/quadlet/merged.container.d/20-second.conf b/test/e2e/quadlet/merged.container.d/20-second.conf
-new file mode 100644
-index 000000000000..f1dcaa61fc93
---- /dev/null
-+++ b/test/e2e/quadlet/merged.container.d/20-second.conf
-@@ -0,0 +1,2 @@
-+[Container]
-+Environment=SECOND=othervalue
-diff --git a/test/e2e/quadlet_test.go b/test/e2e/quadlet_test.go
-index ad3061f4cdd2..c9c43d284971 100644
---- a/test/e2e/quadlet_test.go
-+++ b/test/e2e/quadlet_test.go
-@@ -664,6 +664,16 @@ BOGUS=foo
- err = os.WriteFile(filepath.Join(quadletDir, fileName), testcase.data, 0644)
- Expect(err).ToNot(HaveOccurred())
-
-+ // Also copy any extra snippets
-+ dotdDir := filepath.Join("quadlet", fileName+".d")
-+ if s, err := os.Stat(dotdDir); err == nil && s.IsDir() {
-+ dotdDirDest := filepath.Join(quadletDir, fileName+".d")
-+ err = os.Mkdir(dotdDirDest, os.ModePerm)
-+ Expect(err).ToNot(HaveOccurred())
-+ err = CopyDirectory(dotdDir, dotdDirDest)
-+ Expect(err).ToNot(HaveOccurred())
-+ }
-+
- // Run quadlet to convert the file
- session := podmanTest.Quadlet([]string{"--user", "--no-kmsg-log", generatedDir}, quadletDir)
- session.WaitWithDefaultTimeout()
-@@ -748,6 +758,8 @@ BOGUS=foo
- Entry("workingdir.container", "workingdir.container", 0, ""),
- Entry("Container - global args", "globalargs.container", 0, ""),
- Entry("Container - Containers Conf Modules", "containersconfmodule.container", 0, ""),
-+ Entry("merged.container", "merged.container", 0, ""),
-+ Entry("merged-override.container", "merged-override.container", 0, ""),
-
- Entry("basic.volume", "basic.volume", 0, ""),
- Entry("device-copy.volume", "device-copy.volume", 0, ""),
diff --git a/buildroot-external/patches/podman/0002-quadlet-support-healthy-for-notify.patch b/buildroot-external/patches/podman/0002-quadlet-support-healthy-for-notify.patch
deleted file mode 100644
index 26805af2..00000000
--- a/buildroot-external/patches/podman/0002-quadlet-support-healthy-for-notify.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From 6cb2f9b1225ade1248ed954e5e03fea9ff279730 Mon Sep 17 00:00:00 2001
-From: Alex Palaistras
-Date: Sat, 18 Nov 2023 21:37:00 +0000
-Subject: [PATCH] quadlet: Support `healthy` for `Notify` directives
-
-This expands support for the (previously) boolean `Notify` directive, in
-support of healthcheck determined SD-NOTIFY event emission, as
-supported by Podman with the `--sdnotify=healthy` option.
-
-Closes: #18189
-Signed-off-by: Alex Palaistras
----
- docs/source/markdown/podman-systemd.unit.5.md | 4 ++++
- pkg/systemd/quadlet/quadlet.go | 9 ++++++---
- test/e2e/quadlet/notify-healthy.container | 5 +++++
- test/e2e/quadlet_test.go | 1 +
- 4 files changed, 16 insertions(+), 3 deletions(-)
- create mode 100644 test/e2e/quadlet/notify-healthy.container
-
-diff --git a/docs/source/markdown/podman-systemd.unit.5.md b/docs/source/markdown/podman-systemd.unit.5.md
-index 79659ded24fa..01ca6293a0f7 100644
---- a/docs/source/markdown/podman-systemd.unit.5.md
-+++ b/docs/source/markdown/podman-systemd.unit.5.md
-@@ -496,6 +496,10 @@ starts the child in the container. However, if the container application support
- `Notify` to true passes the notification details to the container allowing it to notify
- of startup on its own.
-
-+In addition, setting `Notify` to `healthy` will postpone startup notifications until such time as
-+the container is marked healthy, as determined by Podman healthchecks. Note that this requires
-+setting up a container healthcheck, see the `HealthCmd` option for more.
-+
- ### `PidsLimit=`
-
- Tune the container's pids limit.
-diff --git a/pkg/systemd/quadlet/quadlet.go b/pkg/systemd/quadlet/quadlet.go
-index 26e1745b1e98..3328087900d6 100644
---- a/pkg/systemd/quadlet/quadlet.go
-+++ b/pkg/systemd/quadlet/quadlet.go
-@@ -496,10 +496,13 @@ func ConvertContainer(container *parser.UnitFile, names map[string]string, isUse
- if serviceType != "oneshot" {
- // If we're not in oneshot mode always use some form of sd-notify, normally via conmon,
- // but we also allow passing it to the container by setting Notify=yes
-- notify := container.LookupBooleanWithDefault(ContainerGroup, KeyNotify, false)
-- if notify {
-+ notify, ok := container.Lookup(ContainerGroup, KeyNotify)
-+ switch {
-+ case ok && strings.EqualFold(notify, "healthy"):
-+ podman.add("--sdnotify=healthy")
-+ case container.LookupBooleanWithDefault(ContainerGroup, KeyNotify, false):
- podman.add("--sdnotify=container")
-- } else {
-+ default:
- podman.add("--sdnotify=conmon")
- }
- service.Setv(ServiceGroup,
-diff --git a/test/e2e/quadlet/notify-healthy.container b/test/e2e/quadlet/notify-healthy.container
-new file mode 100644
-index 000000000000..6dc3d8c09257
---- /dev/null
-+++ b/test/e2e/quadlet/notify-healthy.container
-@@ -0,0 +1,5 @@
-+## assert-podman-args "--sdnotify=healthy"
-+
-+[Container]
-+Image=localhost/imagename
-+Notify=healthy
-diff --git a/test/e2e/quadlet_test.go b/test/e2e/quadlet_test.go
-index 34de88293008..ad3061f4cdd2 100644
---- a/test/e2e/quadlet_test.go
-+++ b/test/e2e/quadlet_test.go
-@@ -712,6 +712,7 @@ BOGUS=foo
- Entry("network.quadlet.container", "network.quadlet.container", 0, ""),
- Entry("noimage.container", "noimage.container", 1, "converting \"noimage.container\": no Image or Rootfs key specified"),
- Entry("notify.container", "notify.container", 0, ""),
-+ Entry("notify-healthy.container", "notify-healthy.container", 0, ""),
- Entry("oneshot.container", "oneshot.container", 0, ""),
- Entry("other-sections.container", "other-sections.container", 0, ""),
- Entry("podmanargs.container", "podmanargs.container", 0, ""),
diff --git a/buildroot-external/rootfs-overlay/etc/NetworkManager/NetworkManager.conf b/buildroot-external/rootfs-overlay/etc/NetworkManager/NetworkManager.conf
new file mode 100644
index 00000000..a087f231
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/NetworkManager/NetworkManager.conf
@@ -0,0 +1,24 @@
+[main]
+plugins=ifupdown,keyfile
+autoconnect-retries-default=0
+rc-manager=file
+
+[ifupdown]
+managed=true
+
+[keyfile]
+unmanaged-devices=type:bridge;type:tun;type:veth
+
+[logging]
+backend=journal
+
+[connection]
+connection.mdns=2
+connection.llmnr=2
+
+[connectivity]
+uri=http://nmcheck.gnome.org/check_network_status.txt
+interval=300
+
+[device]
+wifi.scan-rand-mac-address=no
diff --git a/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/dns.conf b/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/dns.conf
new file mode 100644
index 00000000..53a8b172
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/dns.conf
@@ -0,0 +1,2 @@
+[main]
+dns=dnsmasq
diff --git a/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/no-systemd-resolved.conf b/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/no-systemd-resolved.conf
new file mode 100644
index 00000000..89743c95
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/no-systemd-resolved.conf
@@ -0,0 +1,2 @@
+[main]
+systemd-resolved=false
diff --git a/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/polkit.conf b/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/polkit.conf
new file mode 100644
index 00000000..11095ae0
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/polkit.conf
@@ -0,0 +1,2 @@
+[main]
+auth-polkit=true
diff --git a/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/wifi-powersave-off.conf b/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/wifi-powersave-off.conf
new file mode 100644
index 00000000..21aeabdd
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/NetworkManager/conf.d/wifi-powersave-off.conf
@@ -0,0 +1,3 @@
+[connection]
+# Values are 0 (use default), 1 (ignore/don't touch), 2 (disable) or 3 (enable).
+wifi.powersave = 2
diff --git a/buildroot-external/rootfs-overlay/etc/NetworkManager/system-connections/default b/buildroot-external/rootfs-overlay/etc/NetworkManager/system-connections/default
new file mode 100644
index 00000000..c80c0e77
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/NetworkManager/system-connections/default
@@ -0,0 +1,11 @@
+[connection]
+id=OpenVoiceOS default
+uuid=554628d6-8290-3dea-90c1-9b3b108dc19c
+type=802-3-ethernet
+
+[ipv4]
+method=auto
+
+[ipv6]
+addr-gen-mode=stable-privacy
+method=auto
diff --git a/buildroot-external/rootfs-overlay/etc/containers/storage.conf b/buildroot-external/rootfs-overlay/etc/containers/storage.conf
index 993ac5b9..72786252 100644
--- a/buildroot-external/rootfs-overlay/etc/containers/storage.conf
+++ b/buildroot-external/rootfs-overlay/etc/containers/storage.conf
@@ -118,7 +118,7 @@ pull_options = {enable_partial_images = "false", use_hard_links = "false", ostre
# Path to an helper program to use for mounting the file system instead of mounting it
# directly.
-mount_program = "/usr/bin/fuse-overlayfs"
+# mount_program = "/usr/bin/fuse-overlayfs"
# mountopt specifies comma separated list of extra mount options
mountopt = "nodev"
diff --git a/buildroot-external/rootfs-overlay/etc/pipewire/pipewire.conf b/buildroot-external/rootfs-overlay/etc/pipewire/pipewire.conf
index 71be58b1..5dbaec21 100644
--- a/buildroot-external/rootfs-overlay/etc/pipewire/pipewire.conf
+++ b/buildroot-external/rootfs-overlay/etc/pipewire/pipewire.conf
@@ -27,7 +27,7 @@ context.properties = {
## Properties for the DSP configuration.
default.clock.rate = 48000
- default.clock.allowed-rates = [ 16000 22050 44100 48000 88200 96000 ]
+ default.clock.allowed-rates = [ 48000 ]
default.clock.quantum = 256
default.clock.min-quantum = 64
default.clock.max-quantum = 512
diff --git a/buildroot-external/rootfs-overlay/etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules b/buildroot-external/rootfs-overlay/etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules
new file mode 100644
index 00000000..4b50cf88
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules
@@ -0,0 +1,8 @@
+/* give group 'network' rights to change settings */
+/* taken from https://wiki.archlinux.org/index.php/NetworkManager#Set_up_PolicyKit_permissions */
+
+polkit.addRule(function(action, subject) {
+ if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) {
+ return polkit.Result.YES;
+ }
+});
diff --git a/buildroot-external/rootfs-overlay/etc/systemd/journald.conf b/buildroot-external/rootfs-overlay/etc/systemd/journald.conf
index 62f2e772..f21e19c0 100644
--- a/buildroot-external/rootfs-overlay/etc/systemd/journald.conf
+++ b/buildroot-external/rootfs-overlay/etc/systemd/journald.conf
@@ -1,4 +1,4 @@
[Journal]
Storage=auto
Compress=yes
-SystemMaxUse=500M
+SystemMaxUse=256M
diff --git a/buildroot-external/rootfs-overlay/etc/systemd/network/enp0s3.network b/buildroot-external/rootfs-overlay/etc/systemd/network/enp0s3.network
deleted file mode 100644
index b43d1e78..00000000
--- a/buildroot-external/rootfs-overlay/etc/systemd/network/enp0s3.network
+++ /dev/null
@@ -1,4 +0,0 @@
-[Match]
-Name=enp0s3
-[Network]
-DHCP=ipv4
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/containers.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/containers.conf
index 7d9eb1c6..9826994c 100644
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/containers.conf
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/containers.conf
@@ -1,2 +1,5 @@
[engine]
env=["TMPDIR=/home/ovos/.local/share/containers/tmp"]
+
+[network]
+network_backend="netavark"
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/env b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/env
index a9d29539..3edf1a41 100644
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/env
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/env
@@ -14,3 +14,4 @@ QT_QUICK_CONTROLS_STYLE=OpenVoiceStyle
XDG_CURRENT_DESKTOP=kde
QML2_IMPORT_PATH=/usr/lib/qml
#QT_LOGGING_RULES=*=false
+MYCROFT_LOOSE_REQUIREMENT=true
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.container b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.container
index 265d90ff..910c42a0 100644
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.container
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.container
@@ -5,8 +5,8 @@ After=network-online.target
Wants=network-online.target
Wants=pipewire.service
After=pipewire.service
-Wants=ovos-bus-server.service
-After=ovos-bus-server.service
+Wants=ovos-messagebus.service
+After=ovos-messagebus.service
Wants=ovos-phal.service
After=ovos-phal.service
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.container.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.container.d/Enabled.conf
new file mode 100644
index 00000000..979447d0
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.container.d/Enabled.conf
@@ -0,0 +1,2 @@
+[Install]
+WantedBy=multi-user.target default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.d/Enabled.conf
deleted file mode 100644
index 323bfa22..00000000
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-audio.d/Enabled.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-[Install]
-WantedBy=default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-cli.container.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-cli.container.d/Enabled.conf
new file mode 100644
index 00000000..979447d0
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-cli.container.d/Enabled.conf
@@ -0,0 +1,2 @@
+[Install]
+WantedBy=multi-user.target default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-cli.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-cli.d/Enabled.conf
deleted file mode 100644
index 323bfa22..00000000
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-cli.d/Enabled.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-[Install]
-WantedBy=default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container
index 70763a8a..95c4c54f 100644
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container
@@ -5,8 +5,8 @@ After=network-online.target
Wants=network-online.target
Wants=pipewire.service
After=pipewire.service
-Wants=ovos-bus-server.service
-After=ovos-bus-server.service
+Wants=ovos-messagebus.service
+After=ovos-messagebus.service
Wants=ovos-phal.service
After=ovos-phal.service
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container.d/Enabled.conf
new file mode 100644
index 00000000..979447d0
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.container.d/Enabled.conf
@@ -0,0 +1,2 @@
+[Install]
+WantedBy=multi-user.target default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.d/Enabled.conf
deleted file mode 100644
index 323bfa22..00000000
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-core.d/Enabled.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-[Install]
-WantedBy=default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.container b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.container
index 89147e83..c1f4be0c 100644
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.container
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.container
@@ -5,12 +5,12 @@ After=network-online.target
Wants=network-online.target
Wants=pipewire.service
After=pipewire.service
-Wants=ovos-bus-server.service
-After=ovos-bus-server.service
-Wants=ovos-phal.service
-After=ovos-phal.service
-Wants=ovos-gui-websocket.service
-After=ovos-gui-websocket.service
+#Wants=ovos-messagebus.service
+#After=ovos-messagebus.service
+#Wants=ovos-phal.service
+#After=ovos-phal.service
+#Wants=ovos-gui-websocket.service
+#After=ovos-gui-websocket.service
[Container]
ContainerName=ovos-gui-shell
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.container.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.container.d/Enabled.conf
new file mode 100644
index 00000000..979447d0
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.container.d/Enabled.conf
@@ -0,0 +1,2 @@
+[Install]
+WantedBy=multi-user.target default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.d/Enabled.conf
deleted file mode 100644
index 323bfa22..00000000
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-shell.d/Enabled.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-[Install]
-WantedBy=default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.container b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.container
index 4b08d70d..8840f915 100644
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.container
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.container
@@ -3,8 +3,8 @@ Description=OpenVoiceOS GUI Websocket Service
After=local-fs.target
After=network-online.target
Wants=network-online.target
-Wants=ovos-bus-server.service
-After=ovos-bus-server.service
+Wants=ovos-messagebus.service
+After=ovos-messagebus.service
[Container]
ContainerName=ovos-gui-websocket
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.container.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.container.d/Enabled.conf
new file mode 100644
index 00000000..979447d0
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.container.d/Enabled.conf
@@ -0,0 +1,2 @@
+[Install]
+WantedBy=multi-user.target default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.d/Enabled.conf
deleted file mode 100644
index 323bfa22..00000000
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-gui-websocket.d/Enabled.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-[Install]
-WantedBy=default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.container b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.container
index 1921866a..10b03204 100644
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.container
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.container
@@ -5,8 +5,8 @@ After=network-online.target
Wants=network-online.target
Wants=pipewire.service
After=pipewire.service
-Wants=ovos-bus-server.service
-After=ovos-bus-server.service
+Wants=ovos-messagebus.service
+After=ovos-messagebus.service
Wants=ovos-phal.service
After=ovos-phal.service
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.container.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.container.d/Enabled.conf
new file mode 100644
index 00000000..979447d0
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.container.d/Enabled.conf
@@ -0,0 +1,2 @@
+[Install]
+WantedBy=multi-user.target default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.d/Enabled.conf
deleted file mode 100644
index 323bfa22..00000000
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-listener-dinkum.d/Enabled.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-[Install]
-WantedBy=default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-messagebus.container.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-messagebus.container.d/Enabled.conf
new file mode 100644
index 00000000..979447d0
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-messagebus.container.d/Enabled.conf
@@ -0,0 +1,2 @@
+[Install]
+WantedBy=multi-user.target default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container
index 5a1fe29e..38798e18 100644
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container
@@ -5,8 +5,8 @@ After=network-online.target
Wants=network-online.target
Wants=pipewire.service
After=pipewire.service
-Wants=ovos-bus-server.service
-After=ovos-bus-server.service
+Wants=ovos-messagebus.service
+After=ovos-messagebus.service
[Container]
ContainerName=ovos-phal
@@ -24,8 +24,6 @@ Volume=%h/ovos/config:/home/ovos/.config/mycroft
Volume=%h/ovos/tmp:/tmp
Volume=%t/pipewire-0:/run/user/1000/pipewire-0:ro
Volume=ovos_venv_phal:/home/ovos/.venv
-Volume=/sys:/sys:ro
-Volume=/dev:/dev:ro
[Service]
TimeoutStartSec=900
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container.d/Enabled.conf
new file mode 100644
index 00000000..979447d0
--- /dev/null
+++ b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.container.d/Enabled.conf
@@ -0,0 +1,2 @@
+[Install]
+WantedBy=multi-user.target default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.d/Enabled.conf b/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.d/Enabled.conf
deleted file mode 100644
index 323bfa22..00000000
--- a/buildroot-external/rootfs-overlay/home/ovos/.config/containers/systemd/ovos-phal.d/Enabled.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-[Install]
-WantedBy=default.target
diff --git a/buildroot-external/rootfs-overlay/home/ovos/ovos/config/skills.list b/buildroot-external/rootfs-overlay/home/ovos/ovos/config/skills.list
index ee5abc56..7670d882 100644
--- a/buildroot-external/rootfs-overlay/home/ovos/ovos/config/skills.list
+++ b/buildroot-external/rootfs-overlay/home/ovos/ovos/config/skills.list
@@ -1,8 +1,7 @@
git+https://github.com/OpenVoiceOS/skill-ovos-homescreen.git
git+https://github.com/openVoiceOS/skill-ovos-date-time.git
-git+https://github.com/openVoiceOS/skill-ovos-naptime.git
+git+https://github.com/OpenVoiceOS/skill-ovos-naptime.git
git+https://github.com/OpenVoiceOS/skill-ovos-personal.git
-git+https://github.com/OpenVoiceOS/skill-ovos-stop.git
git+https://github.com/OpenVoiceOS/skill-ovos-volume.git
git+https://github.com/OpenVoiceOS/skill-ovos-weather.git
git+https://github.com/OpenVoiceOS/skill-ovos-fallback-unknown.git
@@ -11,5 +10,8 @@ git+https://github.com/OpenVoiceOS/skill-ovos-wolfie.git
git+https://github.com/OpenVoiceOS/ovos-skill-alerts.git
git+https://github.com/OpenVoiceOS/skill-ovos-tunein.git
git+https://github.com/OpenVoiceOS/skill-ovos-ddg.git
-git+https://github.com/NeonJarbas/skill-ovos-youtube-music
-git+https://github.com/NeonJarbas/skill-ovos-news
+git+https://github.com/OpenVoiceOS/skill-ovos-youtube-music.git
+git+https://github.com/OpenVoiceOS/skill-ovos-news.git
+git+https://github.com/OpenVoiceOS/skill-ovos-fallback-chatgpt.git@fix/not_loading_without_key
+git+https://github.com/OpenVoiceOS/ovos-bus-client.git
+git+https://github.com/OpenVoiceOS/skill-ovos-parrot
diff --git a/buildroot-external/rootfs-overlay/usr/lib/systemd/system-preset/10-ovos.preset b/buildroot-external/rootfs-overlay/usr/lib/systemd/system-preset/10-ovos.preset
index 99ab2c1c..e25bb439 100644
--- a/buildroot-external/rootfs-overlay/usr/lib/systemd/system-preset/10-ovos.preset
+++ b/buildroot-external/rootfs-overlay/usr/lib/systemd/system-preset/10-ovos.preset
@@ -6,24 +6,14 @@ enable NetworkManager.service
enable getty@tty1.service
enable ovos-splash-start.service
enable ovos-splash-systemd.service
-enable ovos-splash-quit.service
-enable smb.service
-enable nmb.service
enable mglru.service
enable connectivity-check.service
-enable ovos-bus-server.service
+disable ovos-splash-quit.service
+disable ovos-bus-server.service
disable pipewire.service
+disable pipewire-pulse.service
disable wireplumber.service
-disable mosquitto.service
-disable motion.service
-disable mpd.service
-disable shairport-sync.service
-disable snapclient.service
-disable snapserver.service
-disable spotifyd.service
-disable nodered.service
disable btspeaker.service
disable telnetd.service
-disable samba.service
-disable winbind.service
+disable network.service
From 4ce75256d35bc04e335374f9666248eedbe3be42 Mon Sep 17 00:00:00 2001
From: j1nx
Date: Wed, 24 Jan 2024 15:43:33 +0000
Subject: [PATCH 2/8] [RPI] Get the Raspberry Pi3 and 4 back in sync again.
With a possible fix for the RT kernel not booting on the rpi3
---
.../board/ovos/raspberrypi/cmdline.txt | 2 +-
.../board/ovos/raspberrypi/rpi3/config.txt | 11 ++++-----
.../board/ovos/raspberrypi/rpi4/config.txt | 6 -----
buildroot-external/configs/rpi3_64_defconfig | 23 +++++++++++++------
buildroot-external/configs/rpi4_64_defconfig | 1 -
5 files changed, 21 insertions(+), 22 deletions(-)
diff --git a/buildroot-external/board/ovos/raspberrypi/cmdline.txt b/buildroot-external/board/ovos/raspberrypi/cmdline.txt
index fbf6d8b9..c56bf478 100644
--- a/buildroot-external/board/ovos/raspberrypi/cmdline.txt
+++ b/buildroot-external/board/ovos/raspberrypi/cmdline.txt
@@ -1 +1 @@
-mitigations=off snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_compat_alsa=0 dwc_otg.lpm_enable=0 acpi=off cgroup_enable=memory psi=1 usb-storage.quirks=174c:55aa:u,2109:0715:u,152d:0578:u,152d:0579:u,152d:1561:u,174c:0829:u,14b0:0206:u
+cma=384M mitigations=off snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_compat_alsa=0 dwc_otg.lpm_enable=0 acpi=off cgroup_enable=memory psi=1 usb-storage.quirks=174c:55aa:u,2109:0715:u,152d:0578:u,152d:0579:u,152d:1561:u,174c:0829:u,14b0:0206:u
diff --git a/buildroot-external/board/ovos/raspberrypi/rpi3/config.txt b/buildroot-external/board/ovos/raspberrypi/rpi3/config.txt
index d407c0dc..13977d83 100644
--- a/buildroot-external/board/ovos/raspberrypi/rpi3/config.txt
+++ b/buildroot-external/board/ovos/raspberrypi/rpi3/config.txt
@@ -42,10 +42,7 @@ max_framebuffers=2
# How much memory in MB to assign to the GPU on Pi models having
# 256, 512 or 1024 MB total memory
-gpu_mem=128
-gpu_mem_256=128
-gpu_mem_512=128
-gpu_mem_1024=128
+gpu_mem=256
# fixes rpi (3B, 3B+, 3A+, 4B and Zero W) ttyAMA0 serial console
dtoverlay=miniuart-bt
@@ -74,8 +71,8 @@ dtoverlay=i2s-mmap
dtparam=i2s=on
dtparam=spi=on
+# Use DWC2 instead of XHCI on the rpi3 to prevent issues with te RealTime kernel
+dtoverlay=dwc2
+
# Enable boost from 1.5Ghz to 1.8Ghz on compatible models
arm_boost=1
-
-# enable 64bits support
-#arm_64bit=1
diff --git a/buildroot-external/board/ovos/raspberrypi/rpi4/config.txt b/buildroot-external/board/ovos/raspberrypi/rpi4/config.txt
index 03e2b670..2eac508c 100644
--- a/buildroot-external/board/ovos/raspberrypi/rpi4/config.txt
+++ b/buildroot-external/board/ovos/raspberrypi/rpi4/config.txt
@@ -41,9 +41,6 @@ max_framebuffers=2
# How much memory in MB to assign to the GPU on Pi models having
# 256, 512 or 1024 MB total memory
gpu_mem=256
-gpu_mem_256=128
-gpu_mem_512=128
-gpu_mem_1024=128
# fixes rpi (3B, 3B+, 3A+, 4B and Zero W) ttyAMA0 serial console
dtoverlay=miniuart-bt
@@ -74,6 +71,3 @@ dtparam=spi=on
# Enable boost from 1.5Ghz to 1.8Ghz on compatible models
arm_boost=1
-
-# enable 64bits support
-#arm_64bit=1
diff --git a/buildroot-external/configs/rpi3_64_defconfig b/buildroot-external/configs/rpi3_64_defconfig
index 8c2d18a1..e4f95a14 100644
--- a/buildroot-external/configs/rpi3_64_defconfig
+++ b/buildroot-external/configs/rpi3_64_defconfig
@@ -29,7 +29,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL)/board/ovos/raspberrypi/rpi3/post-i
BR2_ROOTFS_POST_SCRIPT_ARGS="--rpi3"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,342c7ee49e862edc30c893f141f55b9211b7a43b)/linux-342c7ee49e862edc30c893f141f55b9211b7a43b.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,3bb5880ab3dd31f75c07c3c33bf29c5d469b28f3)/linux-3bb5880ab3dd31f75c07c3c33bf29c5d469b28f3.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi3"
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/kernel/ovos.config $(BR2_EXTERNAL)/kernel/device-drivers.config $(BR2_EXTERNAL)/kernel/docker.config $(BR2_EXTERNAL)/board/ovos/raspberrypi/kernel.config"
BR2_LINUX_KERNEL_LZ4=y
@@ -170,7 +170,6 @@ BR2_PACKAGE_PIXMAN=y
BR2_PACKAGE_WEBP=y
BR2_PACKAGE_WIREPLUMBER=y
BR2_PACKAGE_ZBAR=y
-BR2_PACKAGE_LIBGUDEV=y
BR2_PACKAGE_LIBINPUT=y
BR2_PACKAGE_LIBV4L_UTILS=y
BR2_PACKAGE_JSON_GLIB=y
@@ -182,7 +181,7 @@ BR2_PACKAGE_LIBCAMERA_PIPELINE_VIMC=y
BR2_PACKAGE_LIBCAMERA_APPS=y
BR2_PACKAGE_LIBCURL=y
BR2_PACKAGE_LIBCURL_CURL=y
-BR2_PACKAGE_LIBNDP=y
+BR2_PACKAGE_LIBDNET=y
BR2_PACKAGE_LIBNICE=y
BR2_PACKAGE_LIBRSYNC=y
BR2_PACKAGE_LIBSOUP=y
@@ -196,6 +195,7 @@ BR2_PACKAGE_LIBCAP_TOOLS=y
BR2_PACKAGE_LIBNPTH=y
BR2_PACKAGE_LIBFRIBIDI=y
BR2_PACKAGE_PCRE2=y
+BR2_PACKAGE_AARDVARK_DNS=y
BR2_PACKAGE_AVAHI=y
BR2_PACKAGE_AVAHI_DAEMON=y
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
@@ -211,9 +211,17 @@ BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_NFC=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SAP=y
BR2_PACKAGE_BLUEZ5_UTILS_TOOLS_HID2HCI=y
BR2_PACKAGE_CRDA=y
+BR2_PACKAGE_DNSMASQ=y
+BR2_PACKAGE_IFUPDOWN=y
BR2_PACKAGE_IPROUTE2=y
+BR2_PACKAGE_IPUTILS=y
BR2_PACKAGE_IW=y
BR2_PACKAGE_NET_TOOLS=y
+BR2_PACKAGE_NETAVARK=y
+BR2_PACKAGE_NETWORK_MANAGER=y
+BR2_PACKAGE_NETWORK_MANAGER_TUI=y
+BR2_PACKAGE_NETWORK_MANAGER_CLI=y
+BR2_PACKAGE_NETWORK_MANAGER_MODEM_MANAGER=y
BR2_PACKAGE_OPENSSH=y
# BR2_PACKAGE_OPENSSH_SANDBOX is not set
BR2_PACKAGE_WGET=y
@@ -243,7 +251,6 @@ BR2_PACKAGE_COREUTILS=y
BR2_PACKAGE_COREUTILS_INDIVIDUAL_BINARIES=y
BR2_PACKAGE_EFIBOOTMGR=y
BR2_PACKAGE_HTOP=y
-BR2_PACKAGE_OPENVMTOOLS=y
BR2_PACKAGE_PODMAN=y
BR2_PACKAGE_PODMAN_DRIVER_BTRFS=y
BR2_PACKAGE_PODMAN_DRIVER_DEVICEMAPPER=y
@@ -259,19 +266,21 @@ BR2_PACKAGE_SWUPDATE=y
BR2_PACKAGE_SWUPDATE_CONFIG="$(BR2_EXTERNAL)/swupdate.config"
BR2_PACKAGE_SWUPDATE_USB=y
BR2_PACKAGE_SYSTEMD_ANALYZE=y
+BR2_PACKAGE_SYSTEMD_BACKLIGHT=y
# BR2_PACKAGE_SYSTEMD_PSTORE is not set
BR2_PACKAGE_SYSTEMD_FIRSTBOOT=y
BR2_PACKAGE_SYSTEMD_HIBERNATE=y
# BR2_PACKAGE_SYSTEMD_HWDB is not set
+BR2_PACKAGE_SYSTEMD_LOCALED=y
BR2_PACKAGE_SYSTEMD_LOGIND=y
-BR2_PACKAGE_SYSTEMD_MACHINED=y
+# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
BR2_PACKAGE_SYSTEMD_OOMD=y
BR2_PACKAGE_SYSTEMD_POLKIT=y
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
BR2_PACKAGE_SYSTEMD_REPART=y
+# BR2_PACKAGE_SYSTEMD_RESOLVED is not set
BR2_PACKAGE_SYSTEMD_RFKILL=y
# BR2_PACKAGE_SYSTEMD_VCONSOLE is not set
-BR2_PACKAGE_SYSTEMD_BOOTCHART=y
BR2_PACKAGE_TAR=y
BR2_PACKAGE_UTIL_LINUX_BINARIES=y
BR2_PACKAGE_UTIL_LINUX_HWCLOCK=y
@@ -313,7 +322,7 @@ BR2_PACKAGE_OVOS_SPLASH=y
BR2_PACKAGE_RESPEAKER=y
BR2_PACKAGE_RNNNOISE_LADSPA=y
BR2_PACKAGE_ROC_TOOLKIT=y
-BR2_PACKAGE_RPI_EEPROM=y
BR2_PACKAGE_USERLAND_TOOLS=y
BR2_PACKAGE_VOCALFUSION=y
+BR2_PACKAGE_WIFI_CONNECT=y
BR2_PACKAGE_PYTHON_SMBUS2=y
diff --git a/buildroot-external/configs/rpi4_64_defconfig b/buildroot-external/configs/rpi4_64_defconfig
index aa0a4042..f88d166d 100644
--- a/buildroot-external/configs/rpi4_64_defconfig
+++ b/buildroot-external/configs/rpi4_64_defconfig
@@ -4,7 +4,6 @@ BR2_PACKAGE_GLIBC_UTILS=y
BR2_BINUTILS_VERSION_2_39_X=y
BR2_GCC_VERSION_12_X=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
-BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_COPY=y
BR2_DL_DIR="../../downloads"
BR2_CCACHE=y
BR2_CCACHE_DIR="ccache"
From 5087df097100a75bd47f7aa2a41e0fb0f60caa2a Mon Sep 17 00:00:00 2001
From: j1nx
Date: Thu, 25 Jan 2024 20:35:57 +0000
Subject: [PATCH 3/8] [RPI] Small changes to defconfig. - enable dbus_python -
install both py and pyc files - disable root login
---
buildroot-external/configs/rpi3_64_defconfig | 3 +++
buildroot-external/configs/rpi4_64_defconfig | 3 +++
2 files changed, 6 insertions(+)
diff --git a/buildroot-external/configs/rpi3_64_defconfig b/buildroot-external/configs/rpi3_64_defconfig
index e4f95a14..6ef636e3 100644
--- a/buildroot-external/configs/rpi3_64_defconfig
+++ b/buildroot-external/configs/rpi3_64_defconfig
@@ -16,6 +16,7 @@ BR2_TARGET_GENERIC_HOSTNAME="OpenVoiceOS"
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenVoiceOS"
BR2_TARGET_GENERIC_PASSWD_SHA512=y
BR2_INIT_SYSTEMD=y
+# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
BR2_SYSTEM_BIN_SH_BASH=y
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_SYSTEM_DHCP="eth0"
@@ -124,6 +125,7 @@ BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI_DB=y
BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE="$(BR2_EXTERNAL)/board/ovos/raspberrypi/rpi3/config.txt"
BR2_PACKAGE_AVRDUDE=y
BR2_PACKAGE_CRYPTSETUP=y
+BR2_PACKAGE_DBUS_PYTHON=y
BR2_PACKAGE_GPTFDISK=y
BR2_PACKAGE_GPTFDISK_GDISK=y
BR2_PACKAGE_GPTFDISK_SGDISK=y
@@ -137,6 +139,7 @@ BR2_PACKAGE_SPI_TOOLS=y
BR2_PACKAGE_USB_MODESWITCH_DATA=y
BR2_PACKAGE_LUA=y
BR2_PACKAGE_PYTHON3=y
+BR2_PACKAGE_PYTHON3_PY_PYC=y
BR2_PACKAGE_PYTHON_GOBJECT=y
BR2_PACKAGE_PYTHON_PIP=y
BR2_PACKAGE_PYTHON_PODMAN_COMPOSE=y
diff --git a/buildroot-external/configs/rpi4_64_defconfig b/buildroot-external/configs/rpi4_64_defconfig
index f88d166d..4363c14c 100644
--- a/buildroot-external/configs/rpi4_64_defconfig
+++ b/buildroot-external/configs/rpi4_64_defconfig
@@ -16,6 +16,7 @@ BR2_TARGET_GENERIC_HOSTNAME="OpenVoiceOS"
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenVoiceOS"
BR2_TARGET_GENERIC_PASSWD_SHA512=y
BR2_INIT_SYSTEMD=y
+# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
BR2_SYSTEM_BIN_SH_BASH=y
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_SYSTEM_DHCP="eth0"
@@ -122,6 +123,7 @@ BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4_CD=y
BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE="$(BR2_EXTERNAL)/board/ovos/raspberrypi/rpi4/config.txt"
BR2_PACKAGE_AVRDUDE=y
BR2_PACKAGE_CRYPTSETUP=y
+BR2_PACKAGE_DBUS_PYTHON=y
BR2_PACKAGE_GPTFDISK=y
BR2_PACKAGE_GPTFDISK_GDISK=y
BR2_PACKAGE_GPTFDISK_SGDISK=y
@@ -135,6 +137,7 @@ BR2_PACKAGE_SPI_TOOLS=y
BR2_PACKAGE_USB_MODESWITCH_DATA=y
BR2_PACKAGE_LUA=y
BR2_PACKAGE_PYTHON3=y
+BR2_PACKAGE_PYTHON3_PY_PYC=y
BR2_PACKAGE_PYTHON_GOBJECT=y
BR2_PACKAGE_PYTHON_PIP=y
BR2_PACKAGE_PYTHON_PODMAN_COMPOSE=y
From 5e7fd2e185ba723c1f5a50c871d5e4f9ceb78d06 Mon Sep 17 00:00:00 2001
From: j1nx
Date: Fri, 26 Jan 2024 11:51:18 +0000
Subject: [PATCH 4/8] [X86] Get the X86 defconfig inline. Build completes,
however needs extensive testing.
---
.../base/.empty => cmdline.txt} | 0
.../board/ovos/pc/genimage-pc.cfg | 32 +-
buildroot-external/board/ovos/pc/grub-efi.cfg | 38 +-
.../board/ovos/pc/post-build.sh | 25 +
.../board/ovos/pc/post-image.sh | 7 +
.../ovos/pc/rootfs-overlay/etc/hwrevision | 1 +
.../board/ovos/pc/sw-description | 21 +
.../configs/x86_64-base_defconfig | 707 ------------------
buildroot-external/configs/x86_64_defconfig | 370 +++++++++
9 files changed, 484 insertions(+), 717 deletions(-)
rename buildroot-external/board/ovos/pc/{rootfs-overlay/base/.empty => cmdline.txt} (100%)
create mode 100644 buildroot-external/board/ovos/pc/rootfs-overlay/etc/hwrevision
create mode 100644 buildroot-external/board/ovos/pc/sw-description
delete mode 100644 buildroot-external/configs/x86_64-base_defconfig
create mode 100644 buildroot-external/configs/x86_64_defconfig
diff --git a/buildroot-external/board/ovos/pc/rootfs-overlay/base/.empty b/buildroot-external/board/ovos/pc/cmdline.txt
similarity index 100%
rename from buildroot-external/board/ovos/pc/rootfs-overlay/base/.empty
rename to buildroot-external/board/ovos/pc/cmdline.txt
diff --git a/buildroot-external/board/ovos/pc/genimage-pc.cfg b/buildroot-external/board/ovos/pc/genimage-pc.cfg
index 733af577..268eec36 100644
--- a/buildroot-external/board/ovos/pc/genimage-pc.cfg
+++ b/buildroot-external/board/ovos/pc/genimage-pc.cfg
@@ -1,5 +1,8 @@
-image boot.vfat {
+image esp.vfat {
vfat {
+ files = {
+ "cmdline.txt"
+ }
file EFI {
image = "efi-part/EFI"
}
@@ -16,7 +19,7 @@ image overlayfs.ext4 {
ext4 {
use-mke2fs = "true"
}
- size = 64M
+ size = 256M
}
image disk.img {
@@ -24,18 +27,27 @@ image disk.img {
partition-table-type = "gpt"
}
- partition boot {
+ partition esp {
+ align = 1M
partition-uuid = 9262aee5-2d23-4e09-baac-280591e2e834
partition-type-uuid = c12a7328-f81f-11d2-ba4b-00a0c93ec93b
bootable = "true"
- image = "boot.vfat"
- offset = 32K
+ image = "esp.vfat"
+ #offset = 32K
}
- partition rootfs {
+ partition rootfs-1 {
partition-uuid = c0932a41-44cf-463b-8152-d43188553ed4
- partition-type-uuid = b921b045-1df0-41c3-af44-4c6f280d3fae
+ partition-type-uuid = 0fc63daf-8483-4772-8e79-3d69d8477de4
image = "rootfs.squashfs"
+ size = 512M
+ }
+
+ partition rootfs-2 {
+ partition-uuid = 3adea996-45ad-4928-920e-ffb5aedd00cb
+ partition-type-uuid = 0fc63daf-8483-4772-8e79-3d69d8477de4
+ image = "rootfs.squashfs"
+ size = 512M
}
partition overlayfs {
@@ -43,4 +55,10 @@ image disk.img {
partition-type-uuid = 0fc63daf-8483-4772-8e79-3d69d8477de4
image = "overlayfs.ext4"
}
+
+ partition homefs {
+ partition-uuid = ba3c2691-cce9-4963-b773-42c440c235ec
+ partition-type-uuid = 0fc63daf-8483-4772-8e79-3d69d8477de4
+ image = "homefs.ext4"
+ }
}
diff --git a/buildroot-external/board/ovos/pc/grub-efi.cfg b/buildroot-external/board/ovos/pc/grub-efi.cfg
index 0ae14672..5f021f1f 100644
--- a/buildroot-external/board/ovos/pc/grub-efi.cfg
+++ b/buildroot-external/board/ovos/pc/grub-efi.cfg
@@ -1,6 +1,38 @@
set default="0"
-set timeout="3"
+set fallback="1"
+set timeout="1"
+set MACHINE_ID=""
-menuentry "OpenVoiceOS" {
- linux /bzImage root=PARTUUID=c0932a41-44cf-463b-8152-d43188553ed4 rootfstype=squashfs ro init=/sbin/pre-init fsck.repair=yes zram.enabled=1 zram.num_devices=4 console=ttyS0 console=tty1 rootwait
+if [ "$MACHINE_ID" == "" ]; then
+ boot_condition="systemd.condition-first-boot=true"
+fi
+
+set menu_color_normal=white/black
+set menu_color_highlight=white/red
+
+load_env
+
+default_cmdline="rootfstype=squashfs systemd.machine_id=$MACHINE_ID fsck.repair=yes zram.enabled=1 zram.num_devices=3 console=console consoleblank=0 loglevel=0 vt.global_cursor_default=0 logo.nologo systemd.show_status=0 systemd.unified_cgroup_hierarchy=1 cgroup_enable=cpuset cgroup_memory=1 $boot_condition rootwait quiet splash"
+file_env -f ($root)/cmdline.txt cmdline
+
+regexp --set 1:boothd (.+),.+ ${root}
+
+menuentry "OpenVoiceOS - Slot A" {
+ set default="0"
+ set fallback="1"
+ linux (${boothd},gpt2)/boot/kernel root=PARTUUID=c0932a41-44cf-463b-8152-d43188553ed4 ro $default_cmdline $cmdline
+}
+
+menuentry "OpenVoiceOS - Slot B" {
+ set default="1"
+ set fallback="0"
+ linux (${boothd},gpt3)/boot/kernel root=PARTUUID=3adea996-45ad-4928-920e-ffb5aedd00cb ro $default_cmdline $cmdline
+}
+
+menuentry "OpenVoiceOS - Slot A (Rescue shell)" {
+ linux (${boothd},gpt2)/boot/kernel root=PARTUUID=c0932a41-44cf-463b-8152-d43188553ed4 ro $default_cmdline $cmdline systemd.unit=rescue.target
+}
+
+menuentry "OpenVoiceOS - Slot B (Rescue shell)" {
+ linux (${boothd},gpt3)/boot/kernel root=PARTUUID=3adea996-45ad-4928-920e-ffb5aedd00cb ro $default_cmdline $cmdline systemd.unit=rescue.target
}
diff --git a/buildroot-external/board/ovos/pc/post-build.sh b/buildroot-external/board/ovos/pc/post-build.sh
index 13ecb32f..f6c73e13 100755
--- a/buildroot-external/board/ovos/pc/post-build.sh
+++ b/buildroot-external/board/ovos/pc/post-build.sh
@@ -30,3 +30,28 @@ BOARD_DIR="$(dirname $0)"
} > "${TARGET_DIR}/etc/machine-info"
cp -f ../buildroot-external/board/ovos/ova/grub-efi.cfg ${BINARIES_DIR}/efi-part/EFI/BOOT/grub.cfg
+cp -f ../buildroot-external/board/ovos/ova/cmdline.txt ${BINARIES_DIR}
+cp -f ../buildroot-external/board/ovos/ova/sw-description ${BINARIES_DIR}
+
+grub-editenv "${BINARIES_DIR}/efi-part/EFI/BOOT/grubenv" create
+
+echo "Check for compressed kernel in ${TARGET_DIR}"
+if [ -f "${TARGET_DIR}/boot/bzImage" ]; then
+ echo "Found bzImage, renaming to kernel"
+ mv ${TARGET_DIR}/boot/bzImage ${TARGET_DIR}/boot/kernel
+fi
+
+# Prepare home data
+rm -f ${BINARIES_DIR}/homefs.ext4
+truncate --size="6890M" ${BINARIES_DIR}/homefs.ext4
+mkfs.ext4 -L "homefs" -E lazy_itable_init=0,lazy_journal_init=0 ${BINARIES_DIR}/homefs.ext4
+
+# Mount home image
+mkdir -p ${BINARIES_DIR}/home
+sudo mount -o loop,discard ${BINARIES_DIR}/homefs.ext4 ${BINARIES_DIR}/home
+
+# sync home folder
+sudo rsync -ah --progress ${TARGET_DIR}/home/* ${BINARIES_DIR}/home/
+
+# Unmount home image
+sudo umount ${BINARIES_DIR}/homefs.ext4
diff --git a/buildroot-external/board/ovos/pc/post-image.sh b/buildroot-external/board/ovos/pc/post-image.sh
index 6cad20fb..0a93ef16 100755
--- a/buildroot-external/board/ovos/pc/post-image.sh
+++ b/buildroot-external/board/ovos/pc/post-image.sh
@@ -6,6 +6,7 @@ BOARD_DIR="$(dirname $0)"
BOARD_NAME="$(basename ${BOARD_DIR})"
GENIMAGE_CFG="${BOARD_DIR}/genimage-${BOARD_NAME}.cfg"
GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
+SWUPDATE_FILES="sw-description rootfs.squashfs"
# Pass an empty rootpath. genimage makes a full copy of the given rootpath to
# ${GENIMAGE_TMP}/root so passing TARGET_DIR would be a waste of time and disk
@@ -24,4 +25,10 @@ genimage \
--outputpath "${BINARIES_DIR}" \
--config "${GENIMAGE_CFG}"
+pushd ${BINARIES_DIR}
+for f in ${SWUPDATE_FILES} ; do
+ echo ${f}
+done | cpio -ov -H crc > rootfs.swu
+popd
+
exit $?
diff --git a/buildroot-external/board/ovos/pc/rootfs-overlay/etc/hwrevision b/buildroot-external/board/ovos/pc/rootfs-overlay/etc/hwrevision
new file mode 100644
index 00000000..f968b95e
--- /dev/null
+++ b/buildroot-external/board/ovos/pc/rootfs-overlay/etc/hwrevision
@@ -0,0 +1 @@
+x86 1.0
diff --git a/buildroot-external/board/ovos/pc/sw-description b/buildroot-external/board/ovos/pc/sw-description
new file mode 100644
index 00000000..14757228
--- /dev/null
+++ b/buildroot-external/board/ovos/pc/sw-description
@@ -0,0 +1,21 @@
+software =
+{
+ name = "OpenVoiceOS";
+ description = "Firmware update for OpenVoiceOS";
+ version = "0.1.1";
+ bootloader_transaction_marker = false;
+ bootloader_state_marker = false;
+ ova = {
+ hardware-compatibility: ["1.0"];
+ update: {
+ rootfs: {
+ images: ({
+ filename = "rootfs.squashfs";
+ device = "/dev/update";
+ installed-directly = true;
+ type = "raw";
+ });
+ };
+ };
+ }
+}
diff --git a/buildroot-external/configs/x86_64-base_defconfig b/buildroot-external/configs/x86_64-base_defconfig
deleted file mode 100644
index 1f44341e..00000000
--- a/buildroot-external/configs/x86_64-base_defconfig
+++ /dev/null
@@ -1,707 +0,0 @@
-BR2_x86_64=y
-BR2_PACKAGE_GLIBC_UTILS=y
-BR2_BINUTILS_VERSION_2_39_X=y
-BR2_GCC_VERSION_12_X=y
-BR2_TOOLCHAIN_BUILDROOT_CXX=y
-BR2_TOOLCHAIN_BUILDROOT_FORTRAN=y
-BR2_GCC_ENABLE_OPENMP=y
-BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_COPY=y
-BR2_DL_DIR="../../downloads"
-BR2_CCACHE=y
-BR2_CCACHE_DIR="../ccache"
-BR2_OPTIMIZE_3=y
-BR2_ENABLE_LTO=y
-BR2_FORCE_HOST_BUILD=y
-BR2_SSP_REGULAR=y
-BR2_TARGET_GENERIC_HOSTNAME="OpenVoiceOS"
-BR2_TARGET_GENERIC_ISSUE="Welcome to OpenVoiceOS"
-BR2_INIT_SYSTEMD=y
-# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
-BR2_SYSTEM_BIN_SH_BASH=y
-# BR2_TARGET_GENERIC_GETTY is not set
-# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
-BR2_SYSTEM_DHCP="eth0"
-# BR2_ENABLE_LOCALE_PURGE is not set
-BR2_GENERATE_LOCALE="en_US.UTF-8"
-BR2_SYSTEM_ENABLE_NLS=y
-BR2_ROOTFS_USERS_TABLES="$(BR2_EXTERNAL)/user_table.txt"
-BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL)/rootfs-overlay/base $(BR2_EXTERNAL)/board/ovos/pc/rootfs-overlay/base"
-BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL)/board/ovos/pc/post-build.sh"
-BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL)/board/ovos/pc/post-image.sh"
-BR2_ROOTFS_POST_SCRIPT_ARGS="--x86"
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.25"
-BR2_LINUX_KERNEL_DEFCONFIG="x86_64"
-BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/kernel/ovos.config $(BR2_EXTERNAL)/kernel/device-drivers.config $(BR2_EXTERNAL)/board/ovos/pc/kernel.config"
-BR2_LINUX_KERNEL_LZ4=y
-BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
-BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
-BR2_PACKAGE_LINUX_TOOLS_HV=y
-BR2_PACKAGE_LINUX_TOOLS_HV_KVP_DAEMON=y
-BR2_PACKAGE_LINUX_TOOLS_HV_FCOPY_DAEMON=y
-BR2_PACKAGE_LINUX_TOOLS_HV_VSS_DAEMON=y
-BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/busybox.config"
-BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
-BR2_PACKAGE_ALSA_UTILS=y
-BR2_PACKAGE_ALSA_UTILS_ALSACONF=y
-BR2_PACKAGE_ALSA_UTILS_ACONNECT=y
-BR2_PACKAGE_ALSA_UTILS_ALSALOOP=y
-BR2_PACKAGE_ALSA_UTILS_ALSAUCM=y
-BR2_PACKAGE_ALSA_UTILS_ALSATPLG=y
-BR2_PACKAGE_ALSA_UTILS_AMIDI=y
-BR2_PACKAGE_ALSA_UTILS_AMIXER=y
-BR2_PACKAGE_ALSA_UTILS_APLAY=y
-BR2_PACKAGE_ALSA_UTILS_APLAYMIDI=y
-BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI=y
-BR2_PACKAGE_ALSA_UTILS_ASEQDUMP=y
-BR2_PACKAGE_ALSA_UTILS_ASEQNET=y
-BR2_PACKAGE_ALSA_UTILS_BAT=y
-BR2_PACKAGE_ALSA_UTILS_IECSET=y
-BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST=y
-BR2_PACKAGE_ESPEAK=y
-BR2_PACKAGE_ESPEAK_AUDIO_BACKEND_PULSEAUDIO=y
-BR2_PACKAGE_FFMPEG_GPL=y
-BR2_PACKAGE_FFMPEG_NONFREE=y
-BR2_PACKAGE_FFMPEG_FFPLAY=y
-BR2_PACKAGE_FFMPEG_FFPROBE=y
-BR2_PACKAGE_FFMPEG_AVRESAMPLE=y
-BR2_PACKAGE_FFMPEG_POSTPROC=y
-BR2_PACKAGE_FLUIDSYNTH_PULSEAUDIO=y
-BR2_PACKAGE_GSTREAMER1=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_INSTALL_TOOLS=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ADDER=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIOMIXER=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIORATE=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_COMPOSITOR=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ENCODING=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_GIO=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_OVERLAYCOMPOSITION=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_RAWPARSE=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_SUBPARSE=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_TCP=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEORATE=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_TREMOR=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_OGG=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_OPUS=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_PANGO=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_THEORA=y
-BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VORBIS=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_JPEG=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PNG=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_BZ2=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ALPHA=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_APETAG=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUDIOFX=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUDIOPARSERS=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUPARSE=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUTODETECT=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_CUTTER=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_DEBUGUTILS=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_DEINTERLACE=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_DTMF=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_EFFECTV=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_EQUALIZER=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_FLV=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_FLX=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_GOOM=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_GOOM2K1=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ICYDEMUX=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ID3DEMUX=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_IMAGEFREEZE=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_INTERLEAVE=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_LAW=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_LEVEL=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MATROSKA=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MONOSCOPE=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MULTIFILE=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MULTIPART=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_REPLAYGAIN=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTP=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTPMANAGER=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTSP=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SHAPEWIPE=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SMPTE=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SPECTRUM=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_UDP=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOBOX=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOCROP=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOFILTER=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VIDEOMIXER=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_WAVENC=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_XINGMUX=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_Y4M=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_LAME=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MPG123=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_OSS=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_OSS4=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2_PROBE=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_CAIRO=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_FLAC=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_PULSE=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SOUPHTTPSRC=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SPEEX=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_TAGLIB=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_TWOLAME=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VPX=y
-BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_WAVPACK=y
-BR2_PACKAGE_GST1_PLUGINS_BAD=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ADPCMDEC=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ADPCMENC=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_AIFF=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_AUDIOBUFFERSPLIT=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_AUDIOFXBAD=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_AUDIOLATENCY=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_AUDIOMIXMATRIX=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_AUDIOVISUALIZERS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_AUTOCONVERT=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_BAYER=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_CAMERABIN2=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_COLOREFFECTS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DEBUGUTILS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVBSUBENC=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVBSUBOVERLAY=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVDSPU=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FACEOVERLAY=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FESTIVAL=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FREEVERB=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GAUDIEFFECTS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GDP=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ID3TAG=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_INTERLACE=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_JPEGFORMAT=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MIDI=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGDEMUX=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGTSDEMUX=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGTSMUX=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGPSMUX=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ONVIF=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_PROXY=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_RAWPARSE=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_RTMP2=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_RTP2=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_RTMP=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SDP=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SEGMENTCLIP=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SUBENC=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SWITCHBIN=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_TIMECODE=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VIDEOFILTERS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VIDEOFRAME_AUDIOLEVEL=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VIDEOPARSERS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VIDEOSIGNAL=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VMNC=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_Y4M=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ASSRENDER=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_BLUEZ=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_BZ2=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_CURL=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DASH=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DECKLINK=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVB=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FAAD=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FBDEV=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FDK_AAC=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FLUIDSYNTH=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_HLS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_KMS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DTLS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEG2ENC=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENH264=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENJPEG=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPUS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SHM=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SNDFILE=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SRTP=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_UVCH264=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VOAACENC=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBP=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBRTC=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBRTCDSP=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_V4L2CODECS=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_X265=y
-BR2_PACKAGE_GST1_PLUGINS_BAD_ZBAR=y
-BR2_PACKAGE_GST1_PLUGINS_UGLY=y
-BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_ASFDEMUX=y
-BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_DVDLPCMDEC=y
-BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_DVDSUB=y
-BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_REALMEDIA=y
-BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_DVDREAD=y
-BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_MPEG2DEC=y
-BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_X264=y
-BR2_PACKAGE_GST1_DEVTOOLS=y
-BR2_PACKAGE_GST1_INTERPIPE=y
-BR2_PACKAGE_GST1_PYTHON=y
-BR2_PACKAGE_MPV=y
-BR2_PACKAGE_PULSEAUDIO_DAEMON=y
-BR2_PACKAGE_SOX=y
-BR2_PACKAGE_SQUEEZELITE=y
-BR2_PACKAGE_SQUEEZELITE_RESAMPLE=y
-BR2_PACKAGE_VLC=y
-BR2_PACKAGE_GZIP=y
-BR2_PACKAGE_LZIP=y
-BR2_PACKAGE_LZOP=y
-BR2_PACKAGE_P7ZIP=y
-BR2_PACKAGE_UNRAR=y
-BR2_PACKAGE_UNZIP=y
-BR2_PACKAGE_ZIP=y
-BR2_PACKAGE_NMON=y
-BR2_PACKAGE_BINUTILS=y
-BR2_PACKAGE_BINUTILS_TARGET=y
-BR2_PACKAGE_CHECK=y
-BR2_PACKAGE_DIFFUTILS=y
-BR2_PACKAGE_FINDUTILS=y
-BR2_PACKAGE_GIT_CRYPT=y
-BR2_PACKAGE_GREP=y
-BR2_PACKAGE_JO=y
-BR2_PACKAGE_JQ=y
-BR2_PACKAGE_MAKE=y
-BR2_PACKAGE_PATCH=y
-BR2_PACKAGE_PKGCONF=y
-BR2_PACKAGE_CIFS_UTILS=y
-BR2_PACKAGE_CPIO=y
-BR2_PACKAGE_DOSFSTOOLS=y
-BR2_PACKAGE_DOSFSTOOLS_FATLABEL=y
-BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y
-BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
-BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
-BR2_PACKAGE_NFS_UTILS=y
-BR2_PACKAGE_NTFS_3G=y
-BR2_PACKAGE_SQUASHFS=y
-BR2_PACKAGE_SQUASHFS_LZ4=y
-BR2_PACKAGE_SQUASHFS_LZMA=y
-BR2_PACKAGE_SQUASHFS_LZO=y
-BR2_PACKAGE_SQUASHFS_XZ=y
-BR2_PACKAGE_LINUX_FIRMWARE=y
-BR2_PACKAGE_LINUX_FIRMWARE_INTEL_SST_DSP=y
-BR2_PACKAGE_LINUX_FIRMWARE_I915=y
-BR2_PACKAGE_LINUX_FIRMWARE_IBT=y
-BR2_PACKAGE_LINUX_FIRMWARE_QUALCOMM_6174A_BT=y
-BR2_PACKAGE_LINUX_FIRMWARE_RTL_87XX_BT=y
-BR2_PACKAGE_LINUX_FIRMWARE_RTL_88XX_BT=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_22000=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_22260=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_3160=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_3168=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_3945=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_4965=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_5000=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_6000G2A=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_6000G2B=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_7260=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_7265D=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_8000C=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_8265=y
-BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_9XXX=y
-BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
-BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
-BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
-BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
-BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
-BR2_PACKAGE_LINUX_FIRMWARE_RTL_8169=y
-BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
-BR2_PACKAGE_DBUS_CPP=y
-BR2_PACKAGE_GPTFDISK=y
-BR2_PACKAGE_GPTFDISK_GDISK=y
-BR2_PACKAGE_GPTFDISK_SGDISK=y
-BR2_PACKAGE_GPTFDISK_CGDISK=y
-BR2_PACKAGE_KBD=y
-BR2_PACKAGE_PARTED=y
-BR2_PACKAGE_RNG_TOOLS=y
-BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
-BR2_PACKAGE_USBMOUNT=y
-BR2_PACKAGE_USBUTILS=y
-BR2_PACKAGE_PYTHON3=y
-BR2_PACKAGE_PYTHON3_PY_PYC=y
-BR2_PACKAGE_PYTHON3_2TO3=y
-BR2_PACKAGE_PYTHON3_BZIP2=y
-BR2_PACKAGE_PYTHON3_CODECSCJK=y
-BR2_PACKAGE_PYTHON3_CURSES=y
-BR2_PACKAGE_PYTHON3_DECIMAL=y
-BR2_PACKAGE_PYTHON3_OSSAUDIODEV=y
-BR2_PACKAGE_PYTHON3_SQLITE=y
-BR2_PACKAGE_PYTHON3_XZ=y
-BR2_PACKAGE_PYTHON_ALSAAUDIO=y
-BR2_PACKAGE_PYTHON_ARROW=y
-BR2_PACKAGE_PYTHON_AUTOBAHN=y
-BR2_PACKAGE_PYTHON_CHERRYPY=y
-BR2_PACKAGE_PYTHON_COLORAMA=y
-BR2_PACKAGE_PYTHON_CONFIGSHELL_FB=y
-BR2_PACKAGE_PYTHON_DAEMONIZE=y
-BR2_PACKAGE_PYTHON_DBUS_NEXT=y
-BR2_PACKAGE_PYTHON_FILELOCK=y
-BR2_PACKAGE_PYTHON_FLASK_BABEL=y
-BR2_PACKAGE_PYTHON_FLASK_CORS=y
-BR2_PACKAGE_PYTHON_FLASK_JSONRPC=y
-BR2_PACKAGE_PYTHON_FLASK_LOGIN=y
-BR2_PACKAGE_PYTHON_FLASK_SQLALCHEMY=y
-BR2_PACKAGE_PYTHON_FLATBUFFERS=y
-BR2_PACKAGE_PYTHON_HUMANIZE=y
-BR2_PACKAGE_PYTHON_JSON_SCHEMA_VALIDATOR=y
-BR2_PACKAGE_PYTHON_JSONMODELS=y
-BR2_PACKAGE_PYTHON_JSONSCHEMA=y
-BR2_PACKAGE_PYTHON_NETADDR=y
-BR2_PACKAGE_PYTHON_NETIFACES=y
-BR2_PACKAGE_PYTHON_NETWORKMANAGER=y
-BR2_PACKAGE_PYTHON_OAUTHLIB=y
-BR2_PACKAGE_PYTHON_PACKAGING=y
-BR2_PACKAGE_PYTHON_PAHO_MQTT=y
-BR2_PACKAGE_PYTHON_PEXPECT=y
-BR2_PACKAGE_PYTHON_PILLOW=y
-BR2_PACKAGE_PYTHON_PIP=y
-BR2_PACKAGE_PYTHON_PLY=y
-BR2_PACKAGE_PYTHON_PSUTIL=y
-BR2_PACKAGE_PYTHON_PYJWT=y
-BR2_PACKAGE_PYTHON_PYUDEV=y
-BR2_PACKAGE_PYTHON_RPI_WS281X=y
-BR2_PACKAGE_PYTHON_RUAMEL_YAML=y
-BR2_PACKAGE_PYTHON_SDNOTIFY=y
-BR2_PACKAGE_PYTHON_SERIAL=y
-BR2_PACKAGE_PYTHON_SMBUS_CFFI=y
-BR2_PACKAGE_PYTHON_SMMAP2=y
-BR2_PACKAGE_PYTHON_SOCKETIO=y
-BR2_PACKAGE_PYTHON_SPIDEV=y
-BR2_PACKAGE_PYTHON_SYSTEMD=y
-BR2_PACKAGE_PYTHON_TEXTTABLE=y
-BR2_PACKAGE_PYTHON_TWISTED=y
-BR2_PACKAGE_PYTHON_TWISTED_HTTP2=y
-BR2_PACKAGE_PYTHON_TWISTED_TLS=y
-BR2_PACKAGE_PYTHON_VALIDATORS=y
-BR2_PACKAGE_PYTHON_WATCHDOG=y
-BR2_PACKAGE_PYTHON_WEBSOCKET_CLIENT=y
-BR2_PACKAGE_PYTHON_ZC_LOCKFILE=y
-BR2_PACKAGE_ALSA_LIB_PYTHON=y
-BR2_PACKAGE_ALSA_PLUGINS=y
-BR2_PACKAGE_LIBAO=y
-BR2_PACKAGE_LIBSAMPLERATE=y
-BR2_PACKAGE_OPUS_FIXED_POINT=y
-BR2_PACKAGE_OPUSFILE=y
-BR2_PACKAGE_PORTAUDIO=y
-BR2_PACKAGE_PORTAUDIO_OSS=y
-BR2_PACKAGE_LIBARCHIVE=y
-BR2_PACKAGE_LIBARCHIVE_BSDTAR=y
-BR2_PACKAGE_LIBARCHIVE_BSDCPIO=y
-BR2_PACKAGE_LIBARCHIVE_BSDCAT=y
-BR2_PACKAGE_LIBZIP=y
-BR2_PACKAGE_MINIZIP=y
-BR2_PACKAGE_SNAPPY=y
-BR2_PACKAGE_CA_CERTIFICATES=y
-BR2_PACKAGE_GNUTLS_OPENSSL=y
-BR2_PACKAGE_GNUTLS_TOOLS=y
-BR2_PACKAGE_LIBNSS=y
-BR2_PACKAGE_LIBSSH2=y
-BR2_PACKAGE_LIBOPENSSL_BIN=y
-BR2_PACKAGE_LIBOPENSSL_ENGINES=y
-BR2_PACKAGE_LIBNFS=y
-BR2_PACKAGE_DTC=y
-BR2_PACKAGE_DTC_PROGRAMS=y
-BR2_PACKAGE_LIBUSB_COMPAT=y
-BR2_PACKAGE_LIBV4L_UTILS=y
-BR2_PACKAGE_MTDEV=y
-BR2_PACKAGE_LIBFASTJSON=y
-BR2_PACKAGE_YAJL=y
-BR2_PACKAGE_LIBCAMERA_V4L2=y
-BR2_PACKAGE_LIBCAMERA_PIPELINE_SIMPLE=y
-BR2_PACKAGE_LIBCAMERA_PIPELINE_UVCVIDEO=y
-BR2_PACKAGE_LIBCAMERA_PIPELINE_VIMC=y
-BR2_PACKAGE_LIBCAMERA_APPS=y
-BR2_PACKAGE_LIBEBML=y
-BR2_PACKAGE_LIBOPUSENC=y
-BR2_PACKAGE_C_ARES=y
-BR2_PACKAGE_GLIB_NETWORKING=y
-BR2_PACKAGE_LIBCURL_CURL=y
-BR2_PACKAGE_LIBDNET=y
-BR2_PACKAGE_LIBHTTPPARSER=y
-BR2_PACKAGE_LIBIDN=y
-BR2_PACKAGE_LIBMICROHTTPD=y
-BR2_PACKAGE_LIBSHAIRPLAY=y
-BR2_PACKAGE_NGHTTP2=y
-BR2_PACKAGE_BOOST_SYSTEM=y
-BR2_PACKAGE_ELFUTILS=y
-BR2_PACKAGE_ELL=y
-BR2_PACKAGE_GTEST=y
-BR2_PACKAGE_LIBCAP_NG=y
-BR2_PACKAGE_LIBEVDEV=y
-BR2_PACKAGE_LIBSECCOMP=y
-BR2_PACKAGE_LIBUV=y
-BR2_PACKAGE_PROTOBUF=y
-BR2_PACKAGE_ICU=y
-BR2_PACKAGE_LIBESTR=y
-BR2_PACKAGE_NCURSES_TARGET_PROGS=y
-BR2_PACKAGE_PCRE_16=y
-BR2_PACKAGE_PCRE_32=y
-BR2_PACKAGE_PCRE2=y
-BR2_PACKAGE_RE2=y
-BR2_PACKAGE_XUTIL_UTIL_MACROS=y
-BR2_PACKAGE_BLUEZ_TOOLS=y
-BR2_PACKAGE_BLUEZ5_UTILS_OBEX=y
-BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
-BR2_PACKAGE_BLUEZ5_UTILS_MONITOR=y
-BR2_PACKAGE_BLUEZ5_UTILS_TOOLS=y
-BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED=y
-BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HID=y
-BR2_PACKAGE_CRDA=y
-BR2_PACKAGE_DNSMASQ=y
-BR2_PACKAGE_DNSMASQ_DNSSEC=y
-BR2_PACKAGE_DNSMASQ_IDN=y
-BR2_PACKAGE_DNSMASQ_CONNTRACK=y
-BR2_PACKAGE_IPTABLES=y
-BR2_PACKAGE_IW=y
-BR2_PACKAGE_MODEM_MANAGER=y
-BR2_PACKAGE_NETWORK_MANAGER=y
-BR2_PACKAGE_NETWORK_MANAGER_TUI=y
-BR2_PACKAGE_NETWORK_MANAGER_CLI=y
-BR2_PACKAGE_NTP=y
-BR2_PACKAGE_NTP_NTPDATE=y
-BR2_PACKAGE_NTP_NTPTIME=y
-BR2_PACKAGE_OPENSSH=y
-BR2_PACKAGE_SAMBA4=y
-BR2_PACKAGE_SHAIRPORT_SYNC=y
-BR2_PACKAGE_SHAIRPORT_SYNC_CONVOLUTION=y
-BR2_PACKAGE_SHAIRPORT_SYNC_DBUS=y
-BR2_PACKAGE_SHAIRPORT_SYNC_LIBSOXR=y
-BR2_PACKAGE_WGET=y
-BR2_PACKAGE_WIRELESS_TOOLS=y
-BR2_PACKAGE_WPA_SUPPLICANT=y
-BR2_PACKAGE_WPA_SUPPLICANT_WEXT=y
-BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
-BR2_PACKAGE_WPA_SUPPLICANT_MESH_NETWORKING=y
-BR2_PACKAGE_WPA_SUPPLICANT_EAP=y
-BR2_PACKAGE_WPA_SUPPLICANT_DEBUG_SYSLOG=y
-BR2_PACKAGE_WPA_SUPPLICANT_WPA3=y
-BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
-BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO=y
-BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
-BR2_PACKAGE_WPA_SUPPLICANT_DBUS=y
-BR2_PACKAGE_FILE=y
-BR2_PACKAGE_LOGROTATE=y
-BR2_PACKAGE_SCREEN=y
-BR2_PACKAGE_SUDO=y
-BR2_PACKAGE_TIME=y
-BR2_PACKAGE_WHICH=y
-BR2_PACKAGE_EFIBOOTMGR=y
-BR2_PACKAGE_HTOP=y
-BR2_PACKAGE_PROCPS_NG=y
-BR2_PACKAGE_SYSTEMD_ANALYZE=y
-BR2_PACKAGE_SYSTEMD_BACKLIGHT=y
-BR2_PACKAGE_SYSTEMD_FIRSTBOOT=y
-BR2_PACKAGE_SYSTEMD_HIBERNATE=y
-BR2_PACKAGE_SYSTEMD_LOCALED=y
-BR2_PACKAGE_SYSTEMD_LOGIND=y
-# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
-BR2_PACKAGE_SYSTEMD_OOMD=y
-BR2_PACKAGE_SYSTEMD_POLKIT=y
-BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
-BR2_PACKAGE_SYSTEMD_REPART=y
-BR2_PACKAGE_SYSTEMD_RFKILL=y
-BR2_PACKAGE_TAR=y
-BR2_PACKAGE_UTIL_LINUX_BINARIES=y
-BR2_PACKAGE_UTIL_LINUX_HWCLOCK=y
-BR2_PACKAGE_UTIL_LINUX_KILL=y
-BR2_PACKAGE_UTIL_LINUX_LOGGER=y
-BR2_PACKAGE_UTIL_LINUX_LOGIN=y
-BR2_PACKAGE_UTIL_LINUX_MESG=y
-BR2_PACKAGE_UTIL_LINUX_MORE=y
-BR2_PACKAGE_UTIL_LINUX_NOLOGIN=y
-BR2_PACKAGE_UTIL_LINUX_PARTX=y
-BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT=y
-BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
-BR2_PACKAGE_NANO=y
-BR2_PACKAGE_VIM=y
-BR2_TARGET_ROOTFS_SQUASHFS=y
-BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
-# BR2_TARGET_ROOTFS_TAR is not set
-BR2_TARGET_GRUB2=y
-BR2_TARGET_GRUB2_X86_64_EFI=y
-BR2_TARGET_GRUB2_BUILTIN_MODULES_EFI="boot linux ext2 fat squash4 part_msdos part_gpt normal efi_gop regexp loadenv echo cat test configfile"
-BR2_TARGET_GRUB2_INSTALL_TOOLS=y
-BR2_PACKAGE_HOST_CMAKE=y
-BR2_PACKAGE_HOST_DOSFSTOOLS=y
-BR2_PACKAGE_HOST_E2FSPROGS=y
-BR2_PACKAGE_HOST_GENIMAGE=y
-BR2_PACKAGE_HOST_MKPASSWD=y
-BR2_PACKAGE_HOST_MTOOLS=y
-BR2_PACKAGE_HOST_NODEJS=y
-BR2_PACKAGE_HOST_PKGCONF=y
-BR2_PACKAGE_HOST_PYTHON_CYTHON=y
-BR2_PACKAGE_HOST_PYTHON_LXML=y
-BR2_PACKAGE_HOST_PYTHON_SIX=y
-BR2_PACKAGE_HOST_PYTHON_XLRD=y
-BR2_PACKAGE_HOST_SWIG=y
-BR2_PACKAGE_BTSPEAKER=y
-BR2_PACKAGE_DEEPFILTERNET_LADSPA=y
-BR2_PACKAGE_FANN=y
-BR2_PACKAGE_GROWDISK_SERVICE=y
-BR2_PACKAGE_HOSTNAME_SERVICE=y
-BR2_PACKAGE_KSM_PRELOAD=y
-BR2_PACKAGE_NCPAMIXER=y
-BR2_PACKAGE_OVOS_BUS_SERVER=y
-BR2_PACKAGE_OVOS_DASHBOARD=y
-BR2_PACKAGE_PICOTTS=y
-BR2_PACKAGE_RNNNOISE_LADSPA=y
-BR2_PACKAGE_ROC_TOOLKIT=y
-BR2_PACKAGE_SNAPCAST=y
-BR2_PACKAGE_SNAPCAST_SERVER=y
-BR2_PACKAGE_SPOTIFYD=y
-BR2_PACKAGE_TENSORFLOW_LITE=y
-BR2_PACKAGE_WHISPERCPP=y
-BR2_PACKAGE_WIFI_CONNECT=y
-BR2_PACKAGE_PYTHON_ADAPT_PARSER=y
-BR2_PACKAGE_PYTHON_ASTRAL=y
-BR2_PACKAGE_PYTHON_AUDIO_METADATA=y
-BR2_PACKAGE_PYTHON_BOARD=y
-BR2_PACKAGE_PYTHON_CLICK_DEFAULT_GROUP=y
-BR2_PACKAGE_PYTHON_COMBO_LOCK=y
-BR2_PACKAGE_PYTHON_COVERALLS=y
-BR2_PACKAGE_PYTHON_CUTECHARTS=y
-BR2_PACKAGE_PYTHON_DATACLASSES=y
-BR2_PACKAGE_PYTHON_DEPRECATED=y
-BR2_PACKAGE_PYTHON_FEEDPARSER=y
-BR2_PACKAGE_PYTHON_FLASK_FONTAWESOME=y
-BR2_PACKAGE_PYTHON_FLASK_SIMPLELOGIN=y
-BR2_PACKAGE_PYTHON_FLASK_SOCKETIO=y
-BR2_PACKAGE_PYTHON_GEOIP_GEOLITE2=y
-BR2_PACKAGE_PYTHON_GOOGLE_API_PYTHON_CLIENT=y
-BR2_PACKAGE_PYTHON_GOOGLE_TRANS_NEW=y
-BR2_PACKAGE_PYTHON_GPSDCLIENT=y
-BR2_PACKAGE_PYTHON_GTTS=y
-BR2_PACKAGE_PYTHON_HIJRI_CONVERTER=y
-BR2_PACKAGE_PYTHON_HOLIDAYS=y
-BR2_PACKAGE_PYTHON_HUMANHASH3=y
-BR2_PACKAGE_PYTHON_KTHREAD=y
-BR2_PACKAGE_PYTHON_LANGCODES=y
-BR2_PACKAGE_PYTHON_LAZY=y
-BR2_PACKAGE_PYTHON_LEVENSHTEIN=y
-BR2_PACKAGE_PYTHON_MEMORY_TEMPFILE=y
-BR2_PACKAGE_PYTHON_MOCK_MSM=y
-BR2_PACKAGE_PYTHON_MSM=y
-BR2_PACKAGE_PYTHON_MULTI_KEY_DICT=y
-BR2_PACKAGE_PYTHON_MYCROFT_MESSAGEBUS_CLIENT=y
-BR2_PACKAGE_PYTHON_NEON_LANG_PLUGIN_LIBRETRANSLATE=y
-BR2_PACKAGE_PYTHON_NEON_SOLVER_PLUGIN_DDG=y
-BR2_PACKAGE_PYTHON_NEON_SOLVER_PLUGIN_WIKIPEDIA=y
-BR2_PACKAGE_PYTHON_NEON_SOLVER_PLUGIN_WOLFRAM_ALPHA=y
-BR2_PACKAGE_PYTHON_NEON_SOLVERS=y
-BR2_PACKAGE_PYTHON_NEON_TRANSFORMERS=y
-BR2_PACKAGE_PYTHON_NEON_UTTERANCE_PLUGIN_RAKE=y
-BR2_PACKAGE_PYTHON_OAUTH2CLIENT=y
-BR2_PACKAGE_PYTHON_OLEFILE=y
-BR2_PACKAGE_PYTHON_PADACIOSO=y
-BR2_PACKAGE_PYTHON_PADATIOUS=y
-BR2_PACKAGE_PYTHON_PAFY=y
-BR2_PACKAGE_PYTHON_PAKO=y
-BR2_PACKAGE_PYTHON_PEP8=y
-BR2_PACKAGE_PYTHON_PETACT=y
-BR2_PACKAGE_PYTHON_PHONEME_GUESSER=y
-BR2_PACKAGE_PYTHON_POCKETSPHINX=y
-BR2_PACKAGE_PYTHON_PRECISE_LITE_RUNNER=y
-BR2_PACKAGE_PYTHON_PULSECTL=y
-BR2_PACKAGE_PYTHON_PYAUDIO=y
-BR2_PACKAGE_PYTHON_PYCHROMECAST=y
-BR2_PACKAGE_PYTHON_PYCPUINFO=y
-BR2_PACKAGE_PYTHON_PYEE=y
-BR2_PACKAGE_PYTHON_PYFTDI=y
-BR2_PACKAGE_PYTHON_PYJOKES=y
-BR2_PACKAGE_PYTHON_PYMPLAYER=y
-BR2_PACKAGE_PYTHON_PYOWM=y
-BR2_PACKAGE_PYTHON_PYTZDATA=y
-BR2_PACKAGE_PYTHON_PYWEBIO=y
-BR2_PACKAGE_PYTHON_QUANTULUM3=y
-BR2_PACKAGE_PYTHON_RAKEKEYWORDS=y
-BR2_PACKAGE_PYTHON_RAPIDFUZZ=y
-BR2_PACKAGE_PYTHON_REQUESTS_FUTURES=y
-BR2_PACKAGE_PYTHON_REVERSE_GEOCODER=y
-BR2_PACKAGE_PYTHON_SGMLLIB3K=y
-BR2_PACKAGE_PYTHON_SMBUS2=y
-BR2_PACKAGE_PYTHON_SMMAP=y
-BR2_PACKAGE_PYTHON_SONOPY=y
-BR2_PACKAGE_PYTHON_SOURCE=y
-BR2_PACKAGE_PYTHON_SYSV_IPC=y
-BR2_PACKAGE_PYTHON_TAILHEAD=y
-BR2_PACKAGE_PYTHON_TFLIT=y
-BR2_PACKAGE_PYTHON_TUTUBO=y
-BR2_PACKAGE_PYTHON_TZLOCAL=y
-BR2_PACKAGE_PYTHON_URL_NORMALIZE=y
-BR2_PACKAGE_PYTHON_VLC=y
-BR2_PACKAGE_PYTHON_VOSK_API=y
-BR2_PACKAGE_PYTHON_WEBRTCVAD=y
-BR2_PACKAGE_PYTHON_WHEEL=y
-BR2_PACKAGE_PYTHON_WIKIPEDIA_FOR_HUMANS=y
-BR2_PACKAGE_PYTHON_XMLRUNNER=y
-BR2_PACKAGE_PYTHON_YAGMAIL=y
-BR2_PACKAGE_PYTHON_YOUTUBE_DL=y
-BR2_PACKAGE_PYTHON_YOUTUBE_SEARCHER=y
-BR2_PACKAGE_PYTHON_YT_DLP=y
-BR2_PACKAGE_PYTHON_OVOS_CLI_CLIENT=y
-BR2_PACKAGE_PYTHON_OVOS_CONFIG=y
-BR2_PACKAGE_PYTHON_OVOS_CORE=y
-BR2_PACKAGE_PYTHON_OVOS_AUDIO_PLUGIN_SIMPLE=y
-BR2_PACKAGE_PYTHON_OVOS_BACKEND_CLIENT=y
-BR2_PACKAGE_PYTHON_OVOS_BACKEND_MANAGER=y
-BR2_PACKAGE_PYTHON_OVOS_CONFIG_ASSISTANT=y
-BR2_PACKAGE_PYTHON_OVOS_LINGUA_FRANCA=y
-BR2_PACKAGE_PYTHON_OVOS_LOCAL_BACKEND=y
-BR2_PACKAGE_PYTHON_OVOS_NOTIFICATIONS_SERVICE=y
-BR2_PACKAGE_PYTHON_OVOS_OCP_AUDIO_PLUGIN=y
-BR2_PACKAGE_PYTHON_OVOS_OCP_BANDCAMP_PLUGIN=y
-BR2_PACKAGE_PYTHON_OVOS_OCP_DEEZER_PLUGIN=y
-BR2_PACKAGE_PYTHON_OVOS_OCP_FILES_PLUGIN=y
-BR2_PACKAGE_PYTHON_OVOS_OCP_M3U_PLUGIN=y
-BR2_PACKAGE_PYTHON_OVOS_OCP_NEWS_PLUGIN=y
-BR2_PACKAGE_PYTHON_OVOS_OCP_RSS_PLUGIN=y
-BR2_PACKAGE_PYTHON_OVOS_OCP_YOUTUBE_PLUGIN=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_ALSA=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_BALENA_WIFI=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_CONFIGURATION_PROVIDER=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_CONNECTIVITY_EVENTS=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_DASHBOARD=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_GUI_NETWORK_CLIENT=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_HOMEASSISTANT=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_IPGEO=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_NETWORK_MANAGER=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_SYSTEM=y
-BR2_PACKAGE_PYTHON_OVOS_PHAL_PLUGIN_WIFI_SETUP=y
-BR2_PACKAGE_PYTHON_OVOS_SKILL_INSTALLER=y
-BR2_PACKAGE_PYTHON_OVOS_SKILL_MANAGER=y
-BR2_PACKAGE_PYTHON_OVOS_STT_HTTP_SERVER=y
-BR2_PACKAGE_PYTHON_OVOS_STT_PLUGIN_CHROMIUM=y
-BR2_PACKAGE_PYTHON_OVOS_STT_PLUGIN_SELENE=y
-BR2_PACKAGE_PYTHON_OVOS_STT_PLUGIN_VOSK=y
-BR2_PACKAGE_PYTHON_OVOS_STT_SERVER_PLUGIN=y
-BR2_PACKAGE_PYTHON_NEON_TTS_PLUGIN_LARYNX_SERVER=y
-BR2_PACKAGE_PYTHON_OVOS_TTS_PLUGIN_MARYTTS=y
-BR2_PACKAGE_PYTHON_OVOS_TTS_PLUGIN_MIMIC=y
-BR2_PACKAGE_PYTHON_OVOS_TTS_PLUGIN_MIMIC2=y
-BR2_PACKAGE_PYTHON_OVOS_TTS_PLUGIN_MIMIC3_SERVER=y
-BR2_PACKAGE_PYTHON_OVOS_TTS_PLUGIN_PICO=y
-BR2_PACKAGE_PYTHON_OVOS_TTS_SERVER=y
-BR2_PACKAGE_PYTHON_OVOS_TTS_SERVER_PLUGIN=y
-BR2_PACKAGE_PYTHON_OVOS_UTILS=y
-BR2_PACKAGE_PYTHON_OVOS_VAD_PLUGIN_WEBRTCVAD=y
-BR2_PACKAGE_PYTHON_OVOS_VLC_PLUGIN=y
-BR2_PACKAGE_PYTHON_OVOS_WORKSHOP=y
-BR2_PACKAGE_PYTHON_OVOS_WW_PLUGIN_POCKETSPHINX=y
-BR2_PACKAGE_PYTHON_OVOS_WW_PLUGIN_PRECISE_LITE=y
-BR2_PACKAGE_PYTHON_OVOS_WW_PLUGIN_VOSK=y
-BR2_PACKAGE_SKILL_ALERTS=y
-BR2_PACKAGE_SKILL_LOCAL_MUSIC=y
-BR2_PACKAGE_SKILL_OVOS_DATE_TIME=y
-BR2_PACKAGE_SKILL_OVOS_DDG=y
-BR2_PACKAGE_SKILL_OVOS_FALLBACK_UNKNOWN=y
-BR2_PACKAGE_SKILL_OVOS_FILEBROWSER=y
-BR2_PACKAGE_SKILL_OVOS_HOMESCREEN=y
-BR2_PACKAGE_SKILL_OVOS_NAPTIME=y
-BR2_PACKAGE_SKILL_OVOS_NEWS=y
-BR2_PACKAGE_SKILL_OVOS_NOTES=y
-BR2_PACKAGE_SKILL_OVOS_SETTINGS=y
-BR2_PACKAGE_SKILL_OVOS_SETUP=y
-BR2_PACKAGE_SKILL_OVOS_STOP=y
-BR2_PACKAGE_SKILL_OVOS_VOLUME=y
-BR2_PACKAGE_SKILL_OVOS_PERSONAL=y
-BR2_PACKAGE_SKILL_OVOS_WEATHER=y
-BR2_PACKAGE_SKILL_OVOS_WOLFIE=y
-BR2_PACKAGE_SKILL_YOUTUBE_MUSIC=y
diff --git a/buildroot-external/configs/x86_64_defconfig b/buildroot-external/configs/x86_64_defconfig
new file mode 100644
index 00000000..371d190a
--- /dev/null
+++ b/buildroot-external/configs/x86_64_defconfig
@@ -0,0 +1,370 @@
+BR2_x86_64=y
+BR2_PACKAGE_GLIBC_UTILS=y
+BR2_BINUTILS_VERSION_2_39_X=y
+BR2_GCC_VERSION_12_X=y
+BR2_TOOLCHAIN_BUILDROOT_CXX=y
+BR2_DL_DIR="../../downloads"
+BR2_CCACHE=y
+BR2_CCACHE_DIR="ccache"
+BR2_OPTIMIZE_2=y
+BR2_ENABLE_LTO=y
+BR2_FORCE_HOST_BUILD=y
+BR2_SSP_REGULAR=y
+BR2_TARGET_GENERIC_HOSTNAME="OpenVoiceOS"
+BR2_TARGET_GENERIC_ISSUE="Welcome to OpenVoiceOS"
+BR2_TARGET_GENERIC_PASSWD_SHA512=y
+BR2_INIT_SYSTEMD=y
+# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
+BR2_SYSTEM_BIN_SH_BASH=y
+# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
+BR2_SYSTEM_DHCP="eth0"
+# BR2_ENABLE_LOCALE_PURGE is not set
+BR2_GENERATE_LOCALE="en_US.UTF-8"
+BR2_SYSTEM_ENABLE_NLS=y
+BR2_ROOTFS_USERS_TABLES="$(BR2_EXTERNAL)/user_table.txt"
+BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL)/rootfs-overlay $(BR2_EXTERNAL)/board/ovos/pc/rootfs-overlay"
+BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL)/board/ovos/pc/post-build.sh"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL)/board/ovos/pc/post-image.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="--x86"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.73"
+BR2_LINUX_KERNEL_DEFCONFIG="x86_64"
+BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/kernel/ovos.config $(BR2_EXTERNAL)/kernel/device-drivers.config $(BR2_EXTERNAL)/board/ovos/pc/kernel.config"
+BR2_LINUX_KERNEL_LZ4=y
+BR2_LINUX_KERNEL_INSTALL_TARGET=y
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
+BR2_PACKAGE_LINUX_TOOLS_GPIO=y
+BR2_PACKAGE_LINUX_TOOLS_HV=y
+BR2_PACKAGE_LINUX_TOOLS_HV_KVP_DAEMON=y
+BR2_PACKAGE_LINUX_TOOLS_HV_FCOPY_DAEMON=y
+BR2_PACKAGE_LINUX_TOOLS_HV_VSS_DAEMON=y
+BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/busybox.config"
+BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
+BR2_PACKAGE_ALSA_UTILS=y
+BR2_PACKAGE_ALSA_UTILS_ALSACONF=y
+BR2_PACKAGE_ALSA_UTILS_ACONNECT=y
+BR2_PACKAGE_ALSA_UTILS_ALSALOOP=y
+BR2_PACKAGE_ALSA_UTILS_ALSAUCM=y
+BR2_PACKAGE_ALSA_UTILS_ALSATPLG=y
+BR2_PACKAGE_ALSA_UTILS_AMIDI=y
+BR2_PACKAGE_ALSA_UTILS_AMIXER=y
+BR2_PACKAGE_ALSA_UTILS_APLAY=y
+BR2_PACKAGE_ALSA_UTILS_APLAYMIDI=y
+BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI=y
+BR2_PACKAGE_ALSA_UTILS_ASEQDUMP=y
+BR2_PACKAGE_ALSA_UTILS_ASEQNET=y
+BR2_PACKAGE_ALSA_UTILS_BAT=y
+BR2_PACKAGE_ALSA_UTILS_IECSET=y
+BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST=y
+BR2_PACKAGE_FFMPEG_GPL=y
+BR2_PACKAGE_FFMPEG_NONFREE=y
+BR2_PACKAGE_FFMPEG_FFPLAY=y
+BR2_PACKAGE_FFMPEG_FFPROBE=y
+BR2_PACKAGE_FFMPEG_AVRESAMPLE=y
+BR2_PACKAGE_FFMPEG_POSTPROC=y
+BR2_PACKAGE_FLAC=y
+BR2_PACKAGE_PIPEWIRE=y
+BR2_PACKAGE_PIPEWIRE_COMPRESS_OFFLOAD=y
+BR2_PACKAGE_PIPEWIRE_EXAMPLES=y
+BR2_PACKAGE_PIPEWIRE_GSTREAMER=y
+BR2_PACKAGE_PIPEWIRE_V4L2=y
+BR2_PACKAGE_PULSEAUDIO=y
+BR2_PACKAGE_TWOLAME=y
+BR2_PACKAGE_V4L2GRAB=y
+BR2_PACKAGE_V4L2LOOPBACK=y
+BR2_PACKAGE_V4L2LOOPBACK_UTILS=y
+BR2_PACKAGE_GZIP=y
+BR2_PACKAGE_LZIP=y
+BR2_PACKAGE_P7ZIP=y
+BR2_PACKAGE_UNRAR=y
+BR2_PACKAGE_UNZIP=y
+BR2_PACKAGE_ZIP=y
+BR2_PACKAGE_LSOF=y
+BR2_PACKAGE_MEMSTAT=y
+BR2_PACKAGE_NMON=y
+BR2_PACKAGE_BINUTILS=y
+BR2_PACKAGE_CHECK=y
+BR2_PACKAGE_DIFFUTILS=y
+BR2_PACKAGE_FINDUTILS=y
+BR2_PACKAGE_GIT_CRYPT=y
+BR2_PACKAGE_GREP=y
+BR2_PACKAGE_JO=y
+BR2_PACKAGE_JQ=y
+BR2_PACKAGE_PATCH=y
+BR2_PACKAGE_CIFS_UTILS=y
+BR2_PACKAGE_CPIO=y
+BR2_PACKAGE_DOSFSTOOLS=y
+BR2_PACKAGE_DOSFSTOOLS_FATLABEL=y
+BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y
+BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
+BR2_PACKAGE_E2FSPROGS=y
+BR2_PACKAGE_E2FSPROGS_RESIZE2FS=y
+BR2_PACKAGE_FUSE_OVERLAYFS=y
+BR2_PACKAGE_MTD=y
+BR2_PACKAGE_NFS_UTILS=y
+BR2_PACKAGE_NTFS_3G=y
+BR2_PACKAGE_SQUASHFS=y
+BR2_PACKAGE_SQUASHFS_LZ4=y
+BR2_PACKAGE_SQUASHFS_LZMA=y
+BR2_PACKAGE_SQUASHFS_LZO=y
+BR2_PACKAGE_SQUASHFS_XZ=y
+BR2_PACKAGE_SQUASHFS_ZSTD=y
+BR2_PACKAGE_MESA3D=y
+BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_CROCUS=y
+BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_I915=y
+BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_IRIS=y
+BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU=y
+BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R300=y
+BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600=y
+BR2_PACKAGE_MESA3D_OPENGL_EGL=y
+BR2_PACKAGE_MESA3D_OPENGL_ES=y
+BR2_PACKAGE_LINUX_FIRMWARE=y
+BR2_PACKAGE_LINUX_FIRMWARE_INTEL_SST_DSP=y
+BR2_PACKAGE_LINUX_FIRMWARE_AMDGPU=y
+BR2_PACKAGE_LINUX_FIRMWARE_I915=y
+BR2_PACKAGE_LINUX_FIRMWARE_NVIDIA=y
+BR2_PACKAGE_LINUX_FIRMWARE_RADEON=y
+BR2_PACKAGE_LINUX_FIRMWARE_IBT=y
+BR2_PACKAGE_LINUX_FIRMWARE_QUALCOMM_6174A_BT=y
+BR2_PACKAGE_LINUX_FIRMWARE_RTL_87XX_BT=y
+BR2_PACKAGE_LINUX_FIRMWARE_RTL_88XX_BT=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_22000=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_22260=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_3160=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_3168=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_3945=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_4965=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_5000=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_6000G2A=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_6000G2B=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_7260=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_7265D=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_8000C=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_8265=y
+BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_9XXX=y
+BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
+BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
+BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
+BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
+BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
+BR2_PACKAGE_LINUX_FIRMWARE_RTL_8169=y
+BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
+BR2_PACKAGE_CRYPTSETUP=y
+BR2_PACKAGE_DBUS_PYTHON=y
+BR2_PACKAGE_GPTFDISK=y
+BR2_PACKAGE_GPTFDISK_GDISK=y
+BR2_PACKAGE_GPTFDISK_SGDISK=y
+BR2_PACKAGE_GPTFDISK_CGDISK=y
+BR2_PACKAGE_KBD=y
+BR2_PACKAGE_PARTED=y
+BR2_PACKAGE_READ_EDID=y
+BR2_PACKAGE_RNG_TOOLS=y
+BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
+BR2_PACKAGE_USB_MODESWITCH_DATA=y
+BR2_PACKAGE_LUA=y
+BR2_PACKAGE_PYTHON3=y
+BR2_PACKAGE_PYTHON3_PY_PYC=y
+BR2_PACKAGE_PYTHON_DOTENV=y
+BR2_PACKAGE_PYTHON_GOBJECT=y
+BR2_PACKAGE_PYTHON_PIP=y
+BR2_PACKAGE_PYTHON_PYYAML=y
+BR2_PACKAGE_LIBSOXR=y
+BR2_PACKAGE_LIBVORBIS=y
+BR2_PACKAGE_LILV=y
+BR2_PACKAGE_OPUS=y
+BR2_PACKAGE_PORTAUDIO=y
+BR2_PACKAGE_PORTAUDIO_OSS=y
+BR2_PACKAGE_SBC=y
+BR2_PACKAGE_SBC_TOOLS=y
+BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING=y
+BR2_PACKAGE_LIBARCHIVE=y
+BR2_PACKAGE_LIBDEFLATE=y
+BR2_PACKAGE_LZ4_PROGS=y
+BR2_PACKAGE_MINIZIP=y
+BR2_PACKAGE_CA_CERTIFICATES=y
+BR2_PACKAGE_LIBSSH2=y
+BR2_PACKAGE_LIBOPENSSL_BIN=y
+BR2_PACKAGE_LIBOPENSSL_ENGINES=y
+BR2_PACKAGE_LIBCONFIG=y
+BR2_PACKAGE_LIBLOCKFILE=y
+BR2_PACKAGE_LIBNFS=y
+BR2_PACKAGE_LIBSYSFS=y
+BR2_PACKAGE_LOCKDEV=y
+BR2_PACKAGE_PHYSFS=y
+BR2_PACKAGE_FONTCONFIG=y
+BR2_PACKAGE_HARFBUZZ=y
+BR2_PACKAGE_LIBDRM_AMDGPU=y
+BR2_PACKAGE_OPENJPEG=y
+BR2_PACKAGE_PIXMAN=y
+BR2_PACKAGE_WEBP=y
+BR2_PACKAGE_WIREPLUMBER=y
+BR2_PACKAGE_ZBAR=y
+BR2_PACKAGE_DTC=y
+BR2_PACKAGE_DTC_PROGRAMS=y
+BR2_PACKAGE_LIBINPUT=y
+BR2_PACKAGE_LIBUSB_COMPAT=y
+BR2_PACKAGE_LIBV4L_UTILS=y
+BR2_PACKAGE_JSON_GLIB=y
+BR2_PACKAGE_LIBCAMERA_V4L2=y
+BR2_PACKAGE_LIBCAMERA_PIPELINE_SIMPLE=y
+BR2_PACKAGE_LIBCAMERA_PIPELINE_UVCVIDEO=y
+BR2_PACKAGE_LIBCAMERA_PIPELINE_VIMC=y
+BR2_PACKAGE_LIBCAMERA_APPS=y
+BR2_PACKAGE_LIBCURL=y
+BR2_PACKAGE_LIBCURL_CURL=y
+BR2_PACKAGE_LIBDNET=y
+BR2_PACKAGE_LIBIDN=y
+BR2_PACKAGE_LIBNETFILTER_CONNTRACK=y
+BR2_PACKAGE_LIBRSYNC=y
+BR2_PACKAGE_LIBSOUP=y
+BR2_PACKAGE_LIBSRTP=y
+BR2_PACKAGE_LIBURIPARSER=y
+BR2_PACKAGE_LIBWEBSOCKETS=y
+BR2_PACKAGE_RTMPDUMP=y
+BR2_PACKAGE_SLIRP4NETNS=y
+BR2_PACKAGE_ZEROMQ=y
+BR2_PACKAGE_ZEROMQ_WEBSOCKET=y
+BR2_PACKAGE_CMOCKA=y
+BR2_PACKAGE_EIGEN=y
+BR2_PACKAGE_ELFUTILS=y
+BR2_PACKAGE_FLATBUFFERS=y
+BR2_PACKAGE_FXDIV=y
+BR2_PACKAGE_LIBABSEIL_CPP=y
+BR2_PACKAGE_LIBCAP_TOOLS=y
+BR2_PACKAGE_LIBEVENT=y
+BR2_PACKAGE_NEON_2_SSE=y
+BR2_PACKAGE_PROTOBUF=y
+BR2_PACKAGE_LIBFRIBIDI=y
+BR2_PACKAGE_PCRE2=y
+BR2_PACKAGE_MOBILE_BROADBAND_PROVIDER_INFO=y
+BR2_PACKAGE_AARDVARK_DNS=y
+BR2_PACKAGE_AVAHI=y
+BR2_PACKAGE_AVAHI_DAEMON=y
+BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
+BR2_PACKAGE_BLUEZ_TOOLS=y
+BR2_PACKAGE_BLUEZ5_UTILS=y
+BR2_PACKAGE_BLUEZ5_UTILS_OBEX=y
+BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
+BR2_PACKAGE_BLUEZ5_UTILS_MONITOR=y
+BR2_PACKAGE_BLUEZ5_UTILS_EXPERIMENTAL=y
+BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HEALTH=y
+BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_NFC=y
+BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SAP=y
+BR2_PACKAGE_BLUEZ5_UTILS_TOOLS_HID2HCI=y
+BR2_PACKAGE_CRDA=y
+BR2_PACKAGE_DNSMASQ=y
+BR2_PACKAGE_IFUPDOWN=y
+BR2_PACKAGE_IPROUTE2=y
+BR2_PACKAGE_IPUTILS=y
+BR2_PACKAGE_IW=y
+BR2_PACKAGE_MODEM_MANAGER=y
+BR2_PACKAGE_NETWORK_MANAGER=y
+BR2_PACKAGE_NETWORK_MANAGER_TUI=y
+BR2_PACKAGE_NETWORK_MANAGER_CLI=y
+BR2_PACKAGE_OPENSSH=y
+# BR2_PACKAGE_OPENSSH_SANDBOX is not set
+BR2_PACKAGE_WGET=y
+BR2_PACKAGE_WIRELESS_TOOLS=y
+BR2_PACKAGE_WPA_SUPPLICANT=y
+BR2_PACKAGE_WPA_SUPPLICANT_WEXT=y
+BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
+BR2_PACKAGE_WPA_SUPPLICANT_MESH_NETWORKING=y
+BR2_PACKAGE_WPA_SUPPLICANT_HOTSPOT=y
+BR2_PACKAGE_WPA_SUPPLICANT_DEBUG_SYSLOG=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPA3=y
+BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
+BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO=y
+BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
+BR2_PACKAGE_WPA_SUPPLICANT_DBUS=y
+BR2_PACKAGE_CATATONIT=y
+BR2_PACKAGE_FILE=y
+BR2_PACKAGE_GNUPG=y
+BR2_PACKAGE_SCREEN=y
+BR2_PACKAGE_TIME=y
+BR2_PACKAGE_TINI=y
+BR2_PACKAGE_WHICH=y
+BR2_PACKAGE_ACL=y
+BR2_PACKAGE_AUDIT=y
+BR2_PACKAGE_COREUTILS=y
+BR2_PACKAGE_COREUTILS_INDIVIDUAL_BINARIES=y
+BR2_PACKAGE_EFIBOOTMGR=y
+BR2_PACKAGE_HTOP=y
+BR2_PACKAGE_PODMAN=y
+BR2_PACKAGE_PODMAN_DRIVER_BTRFS=y
+BR2_PACKAGE_PODMAN_DRIVER_DEVICEMAPPER=y
+BR2_PACKAGE_PODMAN_DRIVER_VFS=y
+BR2_PACKAGE_RSYSLOG=y
+BR2_PACKAGE_SHADOW=y
+BR2_PACKAGE_SHADOW_SHADOWGRP=y
+BR2_PACKAGE_SHADOW_ACCOUNT_TOOLS_SETUID=y
+BR2_PACKAGE_SHADOW_UTMPX=y
+BR2_PACKAGE_SHADOW_SUBORDINATE_IDS=y
+BR2_PACKAGE_SWUPDATE=y
+BR2_PACKAGE_SWUPDATE_CONFIG="$(BR2_EXTERNAL)/swupdate.config"
+BR2_PACKAGE_SWUPDATE_USB=y
+BR2_PACKAGE_SYSTEMD_ANALYZE=y
+BR2_PACKAGE_SYSTEMD_BACKLIGHT=y
+# BR2_PACKAGE_SYSTEMD_PSTORE is not set
+BR2_PACKAGE_SYSTEMD_FIRSTBOOT=y
+BR2_PACKAGE_SYSTEMD_HIBERNATE=y
+BR2_PACKAGE_SYSTEMD_LOCALED=y
+BR2_PACKAGE_SYSTEMD_LOGIND=y
+# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
+BR2_PACKAGE_SYSTEMD_OOMD=y
+BR2_PACKAGE_SYSTEMD_POLKIT=y
+BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
+BR2_PACKAGE_SYSTEMD_REPART=y
+# BR2_PACKAGE_SYSTEMD_RESOLVED is not set
+BR2_PACKAGE_SYSTEMD_RFKILL=y
+# BR2_PACKAGE_SYSTEMD_VCONSOLE is not set
+BR2_PACKAGE_TAR=y
+BR2_PACKAGE_UTIL_LINUX_BINARIES=y
+BR2_PACKAGE_UTIL_LINUX_HWCLOCK=y
+BR2_PACKAGE_UTIL_LINUX_KILL=y
+BR2_PACKAGE_UTIL_LINUX_LOGGER=y
+BR2_PACKAGE_UTIL_LINUX_LOGIN=y
+BR2_PACKAGE_UTIL_LINUX_LSMEM=y
+BR2_PACKAGE_UTIL_LINUX_MESG=y
+BR2_PACKAGE_UTIL_LINUX_MORE=y
+BR2_PACKAGE_UTIL_LINUX_PARTX=y
+BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT=y
+BR2_PACKAGE_UTIL_LINUX_SU=y
+BR2_PACKAGE_UTIL_LINUX_SULOGIN=y
+BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT=y
+BR2_PACKAGE_LESS=y
+BR2_PACKAGE_NANO=y
+BR2_PACKAGE_VIM=y
+BR2_TARGET_ROOTFS_SQUASHFS=y
+BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
+# BR2_TARGET_ROOTFS_TAR is not set
+BR2_TARGET_GRUB2=y
+BR2_TARGET_GRUB2_X86_64_EFI=y
+BR2_TARGET_GRUB2_BUILTIN_MODULES_EFI="boot linux ext2 fat squash4 part_msdos part_gpt normal efi_gop regexp loadenv echo cat test configfile"
+BR2_TARGET_GRUB2_INSTALL_TOOLS=y
+BR2_PACKAGE_HOST_CMAKE=y
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_E2FSPROGS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MKPASSWD=y
+BR2_PACKAGE_HOST_MTOOLS=y
+BR2_PACKAGE_HOST_NODEJS=y
+BR2_PACKAGE_HOST_PKGCONF=y
+BR2_PACKAGE_HOST_PYTHON_CYTHON=y
+BR2_PACKAGE_HOST_PYTHON_LXML=y
+BR2_PACKAGE_HOST_PYTHON_SIX=y
+BR2_PACKAGE_HOST_PYTHON_XLRD=y
+BR2_PACKAGE_HOST_SWIG=y
+BR2_PACKAGE_BTSPEAKER=y
+BR2_PACKAGE_HOSTNAME_SERVICE=y
+BR2_PACKAGE_NCPAMIXER=y
+BR2_PACKAGE_OVOS_BUS_SERVER=y
+BR2_PACKAGE_OVOS_CONTAINERS=y
+BR2_PACKAGE_OVOS_CONTAINERS_ARCH="amd64"
+BR2_PACKAGE_OVOS_CONTAINERS_GUI=y
+BR2_PACKAGE_OVOS_SPLASH=y
+BR2_PACKAGE_RNNNOISE_LADSPA=y
+BR2_PACKAGE_ROC_TOOLKIT=y
+BR2_PACKAGE_WIFI_CONNECT=y
+BR2_PACKAGE_PYTHON_SMBUS2=y
From 29a4ad16904997368e2faa1b03ffb3fe2ec5e767 Mon Sep 17 00:00:00 2001
From: j1nx
Date: Fri, 26 Jan 2024 11:56:39 +0000
Subject: [PATCH 5/8] Merge branch 'develop' of
github.com:OpenVoiceOS/ovos-buildroot into develop
---
buildroot-external/configs/rpi3_64_defconfig | 3 +++
buildroot-external/configs/rpi4_64_defconfig | 3 +++
2 files changed, 6 insertions(+)
diff --git a/buildroot-external/configs/rpi3_64_defconfig b/buildroot-external/configs/rpi3_64_defconfig
index e4f95a14..6ef636e3 100644
--- a/buildroot-external/configs/rpi3_64_defconfig
+++ b/buildroot-external/configs/rpi3_64_defconfig
@@ -16,6 +16,7 @@ BR2_TARGET_GENERIC_HOSTNAME="OpenVoiceOS"
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenVoiceOS"
BR2_TARGET_GENERIC_PASSWD_SHA512=y
BR2_INIT_SYSTEMD=y
+# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
BR2_SYSTEM_BIN_SH_BASH=y
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_SYSTEM_DHCP="eth0"
@@ -124,6 +125,7 @@ BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI_DB=y
BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE="$(BR2_EXTERNAL)/board/ovos/raspberrypi/rpi3/config.txt"
BR2_PACKAGE_AVRDUDE=y
BR2_PACKAGE_CRYPTSETUP=y
+BR2_PACKAGE_DBUS_PYTHON=y
BR2_PACKAGE_GPTFDISK=y
BR2_PACKAGE_GPTFDISK_GDISK=y
BR2_PACKAGE_GPTFDISK_SGDISK=y
@@ -137,6 +139,7 @@ BR2_PACKAGE_SPI_TOOLS=y
BR2_PACKAGE_USB_MODESWITCH_DATA=y
BR2_PACKAGE_LUA=y
BR2_PACKAGE_PYTHON3=y
+BR2_PACKAGE_PYTHON3_PY_PYC=y
BR2_PACKAGE_PYTHON_GOBJECT=y
BR2_PACKAGE_PYTHON_PIP=y
BR2_PACKAGE_PYTHON_PODMAN_COMPOSE=y
diff --git a/buildroot-external/configs/rpi4_64_defconfig b/buildroot-external/configs/rpi4_64_defconfig
index f88d166d..4363c14c 100644
--- a/buildroot-external/configs/rpi4_64_defconfig
+++ b/buildroot-external/configs/rpi4_64_defconfig
@@ -16,6 +16,7 @@ BR2_TARGET_GENERIC_HOSTNAME="OpenVoiceOS"
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenVoiceOS"
BR2_TARGET_GENERIC_PASSWD_SHA512=y
BR2_INIT_SYSTEMD=y
+# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
BR2_SYSTEM_BIN_SH_BASH=y
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_SYSTEM_DHCP="eth0"
@@ -122,6 +123,7 @@ BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4_CD=y
BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE="$(BR2_EXTERNAL)/board/ovos/raspberrypi/rpi4/config.txt"
BR2_PACKAGE_AVRDUDE=y
BR2_PACKAGE_CRYPTSETUP=y
+BR2_PACKAGE_DBUS_PYTHON=y
BR2_PACKAGE_GPTFDISK=y
BR2_PACKAGE_GPTFDISK_GDISK=y
BR2_PACKAGE_GPTFDISK_SGDISK=y
@@ -135,6 +137,7 @@ BR2_PACKAGE_SPI_TOOLS=y
BR2_PACKAGE_USB_MODESWITCH_DATA=y
BR2_PACKAGE_LUA=y
BR2_PACKAGE_PYTHON3=y
+BR2_PACKAGE_PYTHON3_PY_PYC=y
BR2_PACKAGE_PYTHON_GOBJECT=y
BR2_PACKAGE_PYTHON_PIP=y
BR2_PACKAGE_PYTHON_PODMAN_COMPOSE=y
From cee0325418c05fb25ad0d74b97a99329d4e38159 Mon Sep 17 00:00:00 2001
From: j1nx
Date: Fri, 26 Jan 2024 13:06:58 +0000
Subject: [PATCH 6/8] [OVA] Get defconfig inline with the rest
---
buildroot-external/configs/ova_64_defconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/buildroot-external/configs/ova_64_defconfig b/buildroot-external/configs/ova_64_defconfig
index 47b6ef0d..ae076b9e 100644
--- a/buildroot-external/configs/ova_64_defconfig
+++ b/buildroot-external/configs/ova_64_defconfig
@@ -3,7 +3,6 @@ BR2_PACKAGE_GLIBC_UTILS=y
BR2_BINUTILS_VERSION_2_39_X=y
BR2_GCC_VERSION_12_X=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
-BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_COPY=y
BR2_DL_DIR="../../downloads"
BR2_CCACHE=y
BR2_CCACHE_DIR="ccache"
@@ -16,6 +15,7 @@ BR2_TARGET_GENERIC_HOSTNAME="OpenVoiceOS"
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenVoiceOS"
BR2_TARGET_GENERIC_PASSWD_SHA512=y
BR2_INIT_SYSTEMD=y
+# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
BR2_SYSTEM_BIN_SH_BASH=y
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
BR2_SYSTEM_DHCP="eth0"
From 5a327ef218cd7a4ef887498d913392db9fb743eb Mon Sep 17 00:00:00 2001
From: j1nx
Date: Fri, 26 Jan 2024 14:43:39 +0000
Subject: [PATCH 7/8] [X86] Defconfig clean up
---
buildroot-external/configs/x86_64_defconfig | 53 +++++++--------------
1 file changed, 16 insertions(+), 37 deletions(-)
diff --git a/buildroot-external/configs/x86_64_defconfig b/buildroot-external/configs/x86_64_defconfig
index 371d190a..d7088cfe 100644
--- a/buildroot-external/configs/x86_64_defconfig
+++ b/buildroot-external/configs/x86_64_defconfig
@@ -8,6 +8,7 @@ BR2_CCACHE=y
BR2_CCACHE_DIR="ccache"
BR2_OPTIMIZE_2=y
BR2_ENABLE_LTO=y
+BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/patches"
BR2_FORCE_HOST_BUILD=y
BR2_SSP_REGULAR=y
BR2_TARGET_GENERIC_HOSTNAME="OpenVoiceOS"
@@ -30,7 +31,7 @@ BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.73"
BR2_LINUX_KERNEL_DEFCONFIG="x86_64"
-BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/kernel/ovos.config $(BR2_EXTERNAL)/kernel/device-drivers.config $(BR2_EXTERNAL)/board/ovos/pc/kernel.config"
+BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/kernel/ovos.config $(BR2_EXTERNAL)/kernel/device-drivers.config $(BR2_EXTERNAL)/kernel/docker.config $(BR2_EXTERNAL)/board/ovos/pc/kernel.config"
BR2_LINUX_KERNEL_LZ4=y
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
@@ -41,7 +42,6 @@ BR2_PACKAGE_LINUX_TOOLS_HV_KVP_DAEMON=y
BR2_PACKAGE_LINUX_TOOLS_HV_FCOPY_DAEMON=y
BR2_PACKAGE_LINUX_TOOLS_HV_VSS_DAEMON=y
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/busybox.config"
-BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
BR2_PACKAGE_ALSA_UTILS=y
BR2_PACKAGE_ALSA_UTILS_ALSACONF=y
BR2_PACKAGE_ALSA_UTILS_ACONNECT=y
@@ -75,6 +75,7 @@ BR2_PACKAGE_TWOLAME=y
BR2_PACKAGE_V4L2GRAB=y
BR2_PACKAGE_V4L2LOOPBACK=y
BR2_PACKAGE_V4L2LOOPBACK_UTILS=y
+BR2_PACKAGE_BZIP2=y
BR2_PACKAGE_GZIP=y
BR2_PACKAGE_LZIP=y
BR2_PACKAGE_P7ZIP=y
@@ -166,18 +167,15 @@ BR2_PACKAGE_USB_MODESWITCH_DATA=y
BR2_PACKAGE_LUA=y
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON3_PY_PYC=y
-BR2_PACKAGE_PYTHON_DOTENV=y
BR2_PACKAGE_PYTHON_GOBJECT=y
BR2_PACKAGE_PYTHON_PIP=y
-BR2_PACKAGE_PYTHON_PYYAML=y
-BR2_PACKAGE_LIBSOXR=y
-BR2_PACKAGE_LIBVORBIS=y
-BR2_PACKAGE_LILV=y
+BR2_PACKAGE_LV2=y
BR2_PACKAGE_OPUS=y
BR2_PACKAGE_PORTAUDIO=y
BR2_PACKAGE_PORTAUDIO_OSS=y
BR2_PACKAGE_SBC=y
BR2_PACKAGE_SBC_TOOLS=y
+BR2_PACKAGE_SPEEX=y
BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING=y
BR2_PACKAGE_LIBARCHIVE=y
BR2_PACKAGE_LIBDEFLATE=y
@@ -187,26 +185,20 @@ BR2_PACKAGE_CA_CERTIFICATES=y
BR2_PACKAGE_LIBSSH2=y
BR2_PACKAGE_LIBOPENSSL_BIN=y
BR2_PACKAGE_LIBOPENSSL_ENGINES=y
+BR2_PACKAGE_SQLITE=y
BR2_PACKAGE_LIBCONFIG=y
+BR2_PACKAGE_LIBFUSE=y
BR2_PACKAGE_LIBLOCKFILE=y
BR2_PACKAGE_LIBNFS=y
BR2_PACKAGE_LIBSYSFS=y
BR2_PACKAGE_LOCKDEV=y
BR2_PACKAGE_PHYSFS=y
-BR2_PACKAGE_FONTCONFIG=y
-BR2_PACKAGE_HARFBUZZ=y
BR2_PACKAGE_LIBDRM_AMDGPU=y
-BR2_PACKAGE_OPENJPEG=y
-BR2_PACKAGE_PIXMAN=y
-BR2_PACKAGE_WEBP=y
BR2_PACKAGE_WIREPLUMBER=y
-BR2_PACKAGE_ZBAR=y
-BR2_PACKAGE_DTC=y
-BR2_PACKAGE_DTC_PROGRAMS=y
BR2_PACKAGE_LIBINPUT=y
-BR2_PACKAGE_LIBUSB_COMPAT=y
BR2_PACKAGE_LIBV4L_UTILS=y
BR2_PACKAGE_JSON_GLIB=y
+BR2_PACKAGE_SORD=y
BR2_PACKAGE_LIBCAMERA_V4L2=y
BR2_PACKAGE_LIBCAMERA_PIPELINE_SIMPLE=y
BR2_PACKAGE_LIBCAMERA_PIPELINE_UVCVIDEO=y
@@ -216,29 +208,12 @@ BR2_PACKAGE_LIBCURL=y
BR2_PACKAGE_LIBCURL_CURL=y
BR2_PACKAGE_LIBDNET=y
BR2_PACKAGE_LIBIDN=y
-BR2_PACKAGE_LIBNETFILTER_CONNTRACK=y
-BR2_PACKAGE_LIBRSYNC=y
-BR2_PACKAGE_LIBSOUP=y
-BR2_PACKAGE_LIBSRTP=y
BR2_PACKAGE_LIBURIPARSER=y
-BR2_PACKAGE_LIBWEBSOCKETS=y
-BR2_PACKAGE_RTMPDUMP=y
BR2_PACKAGE_SLIRP4NETNS=y
-BR2_PACKAGE_ZEROMQ=y
-BR2_PACKAGE_ZEROMQ_WEBSOCKET=y
-BR2_PACKAGE_CMOCKA=y
-BR2_PACKAGE_EIGEN=y
-BR2_PACKAGE_ELFUTILS=y
-BR2_PACKAGE_FLATBUFFERS=y
-BR2_PACKAGE_FXDIV=y
-BR2_PACKAGE_LIBABSEIL_CPP=y
BR2_PACKAGE_LIBCAP_TOOLS=y
BR2_PACKAGE_LIBEVENT=y
-BR2_PACKAGE_NEON_2_SSE=y
-BR2_PACKAGE_PROTOBUF=y
BR2_PACKAGE_LIBFRIBIDI=y
BR2_PACKAGE_PCRE2=y
-BR2_PACKAGE_MOBILE_BROADBAND_PROVIDER_INFO=y
BR2_PACKAGE_AARDVARK_DNS=y
BR2_PACKAGE_AVAHI=y
BR2_PACKAGE_AVAHI_DAEMON=y
@@ -255,11 +230,11 @@ BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SAP=y
BR2_PACKAGE_BLUEZ5_UTILS_TOOLS_HID2HCI=y
BR2_PACKAGE_CRDA=y
BR2_PACKAGE_DNSMASQ=y
-BR2_PACKAGE_IFUPDOWN=y
+# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
BR2_PACKAGE_IPROUTE2=y
BR2_PACKAGE_IPUTILS=y
BR2_PACKAGE_IW=y
-BR2_PACKAGE_MODEM_MANAGER=y
+BR2_PACKAGE_NETAVARK=y
BR2_PACKAGE_NETWORK_MANAGER=y
BR2_PACKAGE_NETWORK_MANAGER_TUI=y
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
@@ -271,6 +246,7 @@ BR2_PACKAGE_WPA_SUPPLICANT=y
BR2_PACKAGE_WPA_SUPPLICANT_WEXT=y
BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
BR2_PACKAGE_WPA_SUPPLICANT_MESH_NETWORKING=y
+BR2_PACKAGE_WPA_SUPPLICANT_AUTOSCAN=y
BR2_PACKAGE_WPA_SUPPLICANT_HOTSPOT=y
BR2_PACKAGE_WPA_SUPPLICANT_DEBUG_SYSLOG=y
BR2_PACKAGE_WPA_SUPPLICANT_WPA3=y
@@ -309,6 +285,7 @@ BR2_PACKAGE_SYSTEMD_BACKLIGHT=y
# BR2_PACKAGE_SYSTEMD_PSTORE is not set
BR2_PACKAGE_SYSTEMD_FIRSTBOOT=y
BR2_PACKAGE_SYSTEMD_HIBERNATE=y
+# BR2_PACKAGE_SYSTEMD_HWDB is not set
BR2_PACKAGE_SYSTEMD_LOCALED=y
BR2_PACKAGE_SYSTEMD_LOGIND=y
# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
@@ -333,15 +310,17 @@ BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT=y
BR2_PACKAGE_UTIL_LINUX_SU=y
BR2_PACKAGE_UTIL_LINUX_SULOGIN=y
BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT=y
+BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
BR2_PACKAGE_LESS=y
BR2_PACKAGE_NANO=y
BR2_PACKAGE_VIM=y
BR2_TARGET_ROOTFS_SQUASHFS=y
-BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
+BR2_TARGET_ROOTFS_SQUASHFS4_LZO=y
+BR2_TARGET_ROOTFS_SQUASHFS_EXTREME_COMP=y
# BR2_TARGET_ROOTFS_TAR is not set
BR2_TARGET_GRUB2=y
BR2_TARGET_GRUB2_X86_64_EFI=y
-BR2_TARGET_GRUB2_BUILTIN_MODULES_EFI="boot linux ext2 fat squash4 part_msdos part_gpt normal efi_gop regexp loadenv echo cat test configfile"
+BR2_TARGET_GRUB2_BUILTIN_MODULES_EFI="boot linux ext2 fat squash4 part_msdos part_gpt normal efi_gop regexp loadenv echo cat test configfile search search_fs_uuid all_video video font gfxmenu gfxterm gzio xzio"
BR2_TARGET_GRUB2_INSTALL_TOOLS=y
BR2_PACKAGE_HOST_CMAKE=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
From 4b2daa49805c3702661eb98a72d802116d1c3194 Mon Sep 17 00:00:00 2001
From: j1nx
Date: Fri, 26 Jan 2024 14:44:25 +0000
Subject: [PATCH 8/8] [OVA] Defconfig clean up
---
buildroot-external/configs/ova_64_defconfig | 36 +++++++++++----------
1 file changed, 19 insertions(+), 17 deletions(-)
diff --git a/buildroot-external/configs/ova_64_defconfig b/buildroot-external/configs/ova_64_defconfig
index ae076b9e..29d56d8d 100644
--- a/buildroot-external/configs/ova_64_defconfig
+++ b/buildroot-external/configs/ova_64_defconfig
@@ -67,6 +67,7 @@ BR2_PACKAGE_PULSEAUDIO=y
BR2_PACKAGE_V4L2GRAB=y
BR2_PACKAGE_V4L2LOOPBACK=y
BR2_PACKAGE_V4L2LOOPBACK_UTILS=y
+BR2_PACKAGE_BZIP2=y
BR2_PACKAGE_GZIP=y
BR2_PACKAGE_LZIP=y
BR2_PACKAGE_P7ZIP=y
@@ -139,24 +140,26 @@ BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
BR2_PACKAGE_LINUX_FIRMWARE_RTL_8169=y
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
BR2_PACKAGE_CRYPTSETUP=y
+BR2_PACKAGE_DBUS_PYTHON=y
BR2_PACKAGE_GPTFDISK=y
BR2_PACKAGE_GPTFDISK_GDISK=y
BR2_PACKAGE_GPTFDISK_SGDISK=y
BR2_PACKAGE_GPTFDISK_CGDISK=y
+BR2_PACKAGE_KBD=y
BR2_PACKAGE_PARTED=y
BR2_PACKAGE_READ_EDID=y
BR2_PACKAGE_RNG_TOOLS=y
BR2_PACKAGE_USB_MODESWITCH_DATA=y
BR2_PACKAGE_LUA=y
BR2_PACKAGE_PYTHON3=y
-BR2_PACKAGE_PYTHON3_PYEXPAT=y
BR2_PACKAGE_PYTHON_GOBJECT=y
-BR2_PACKAGE_PYTHON_PODMAN_COMPOSE=y
+BR2_PACKAGE_PYTHON_PIP=y
+BR2_PACKAGE_LV2=y
BR2_PACKAGE_OPUS=y
BR2_PACKAGE_PORTAUDIO=y
BR2_PACKAGE_SBC=y
BR2_PACKAGE_SBC_TOOLS=y
-BR2_PACKAGE_SRATOM=y
+BR2_PACKAGE_SPEEX=y
BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING=y
BR2_PACKAGE_LIBARCHIVE=y
BR2_PACKAGE_LIBDEFLATE=y
@@ -166,18 +169,18 @@ BR2_PACKAGE_LIBKSBA=y
BR2_PACKAGE_LIBSSH2=y
BR2_PACKAGE_LIBOPENSSL_BIN=y
BR2_PACKAGE_LIBOPENSSL_ENGINES=y
+BR2_PACKAGE_SQLITE=y
BR2_PACKAGE_LIBCONFIG=y
BR2_PACKAGE_LIBLOCKFILE=y
BR2_PACKAGE_LIBNFS=y
BR2_PACKAGE_LIBSYSFS=y
BR2_PACKAGE_LOCKDEV=y
BR2_PACKAGE_PHYSFS=y
-BR2_PACKAGE_FREETYPE=y
BR2_PACKAGE_WIREPLUMBER=y
-BR2_PACKAGE_LIBGUDEV=y
BR2_PACKAGE_LIBINPUT=y
BR2_PACKAGE_LIBV4L_UTILS=y
BR2_PACKAGE_JSON_GLIB=y
+BR2_PACKAGE_SORD=y
BR2_PACKAGE_LIBCAMERA_V4L2=y
BR2_PACKAGE_LIBCAMERA_PIPELINE_IPU3=y
BR2_PACKAGE_LIBCAMERA_PIPELINE_SIMPLE=y
@@ -186,24 +189,17 @@ BR2_PACKAGE_LIBCAMERA_PIPELINE_VIMC=y
BR2_PACKAGE_LIBCAMERA_APPS=y
BR2_PACKAGE_LIBCURL=y
BR2_PACKAGE_LIBCURL_CURL=y
-BR2_PACKAGE_LIBNDP=y
-BR2_PACKAGE_LIBNICE=y
-BR2_PACKAGE_LIBRSYNC=y
-BR2_PACKAGE_LIBSOUP=y
-BR2_PACKAGE_LIBSRTP=y
+BR2_PACKAGE_LIBIDN2=y
BR2_PACKAGE_LIBURIPARSER=y
-BR2_PACKAGE_LIBWEBSOCKETS=y
BR2_PACKAGE_SLIRP4NETNS=y
-BR2_PACKAGE_ZEROMQ=y
-BR2_PACKAGE_ZEROMQ_WEBSOCKET=y
BR2_PACKAGE_LIBCAP_TOOLS=y
BR2_PACKAGE_LIBNPTH=y
BR2_PACKAGE_LIBFRIBIDI=y
BR2_PACKAGE_PCRE2=y
+BR2_PACKAGE_AARDVARK_DNS=y
BR2_PACKAGE_AVAHI=y
BR2_PACKAGE_AVAHI_DAEMON=y
BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY=y
-BR2_PACKAGE_AVAHI_DEFAULT_SERVICES=y
BR2_PACKAGE_BLUEZ_TOOLS=y
BR2_PACKAGE_BLUEZ5_UTILS=y
BR2_PACKAGE_BLUEZ5_UTILS_OBEX=y
@@ -215,9 +211,14 @@ BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_NFC=y
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_SAP=y
BR2_PACKAGE_BLUEZ5_UTILS_TOOLS_HID2HCI=y
BR2_PACKAGE_CRDA=y
+BR2_PACKAGE_DNSMASQ=y
BR2_PACKAGE_IPROUTE2=y
+BR2_PACKAGE_IPUTILS=y
BR2_PACKAGE_IW=y
-BR2_PACKAGE_NET_TOOLS=y
+BR2_PACKAGE_NETAVARK=y
+BR2_PACKAGE_NETWORK_MANAGER=y
+BR2_PACKAGE_NETWORK_MANAGER_TUI=y
+BR2_PACKAGE_NETWORK_MANAGER_CLI=y
BR2_PACKAGE_OPENSSH=y
# BR2_PACKAGE_OPENSSH_SANDBOX is not set
BR2_PACKAGE_WGET=y
@@ -267,15 +268,16 @@ BR2_PACKAGE_SYSTEMD_ANALYZE=y
BR2_PACKAGE_SYSTEMD_FIRSTBOOT=y
BR2_PACKAGE_SYSTEMD_HIBERNATE=y
# BR2_PACKAGE_SYSTEMD_HWDB is not set
+BR2_PACKAGE_SYSTEMD_LOCALED=y
BR2_PACKAGE_SYSTEMD_LOGIND=y
-BR2_PACKAGE_SYSTEMD_MACHINED=y
+# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
BR2_PACKAGE_SYSTEMD_OOMD=y
BR2_PACKAGE_SYSTEMD_POLKIT=y
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
BR2_PACKAGE_SYSTEMD_REPART=y
+# BR2_PACKAGE_SYSTEMD_RESOLVED is not set
BR2_PACKAGE_SYSTEMD_RFKILL=y
# BR2_PACKAGE_SYSTEMD_VCONSOLE is not set
-BR2_PACKAGE_SYSTEMD_BOOTCHART=y
BR2_PACKAGE_TAR=y
BR2_PACKAGE_UTIL_LINUX_BINARIES=y
BR2_PACKAGE_UTIL_LINUX_HWCLOCK=y