From: Roland Hieber <rhi@pengutronix.de>
To: distrokit@pengutronix.de
Cc: Roland Hieber <rhi@pengutronix.de>
Subject: [DistroKit] [PATCH v5 2/7] rauc: add initial support
Date: Fri, 25 Aug 2023 13:03:05 +0200 [thread overview]
Message-ID: <20230825110310.2948272-3-rhi@pengutronix.de> (raw)
In-Reply-To: <20230825110310.2948272-1-rhi@pengutronix.de>
Set up RAUC with a shared system.conf that uses the /dev symlinks which
the rauc-udev package creates based on the Device Tree compatible. Also
add a unit file that marks the booted partition as good after systemd
startup has finished successfully.
The key material for signing the RAUC bundles is provided by the
ptx-code-signing provider used for development, which is a build
dependency of RAUC. Since we can enable RAUC in the ptxconfig for all
platforms, all platforms also need a code signing provider.
Signed-off-by: Roland Hieber <rhi@pengutronix.de>
---
configs/platform-mips/platformconfig | 27 ++++++-
configs/platform-mipsel/platformconfig | 27 ++++++-
configs/platform-rpi1/platformconfig | 25 +++++-
configs/platform-v7a/platformconfig | 25 +++++-
configs/platform-v7a_noneon/platformconfig | 27 ++++++-
configs/platform-v8a/platformconfig | 24 +++++-
configs/platform-x86_64/platformconfig | 27 ++++++-
configs/ptxconfig | 80 ++++++++++++++++---
projectroot/etc/rauc/system.conf | 17 ++++
.../lib/systemd/system/rauc-mark-good.service | 14 ++++
10 files changed, 277 insertions(+), 16 deletions(-)
create mode 100644 projectroot/etc/rauc/system.conf
create mode 100644 projectroot/usr/lib/systemd/system/rauc-mark-good.service
diff --git a/configs/platform-mips/platformconfig b/configs/platform-mips/platformconfig
index 9ffabc8c5ad3..9aabaa98f30e 100644
--- a/configs/platform-mips/platformconfig
+++ b/configs/platform-mips/platformconfig
@@ -19,6 +19,7 @@ PTXCONF_PLATFORM="mips"
PTXCONF_PLATFORM_VERSION="-${PTXDIST_BSP_AUTOVERSION}"
PTXCONF_RUNTIME=y
PTXCONF_BUILDTIME=y
+PTXCONF_VIRTUAL=y
PTXCONF_PLATFORMCONFIG_VERSION="2023.08.0"
#
@@ -204,16 +205,40 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
# PTXCONF_KERNEL_FIT is not set
# end of image creation options
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
PTXCONF_HOST_FLEX=y
PTXCONF_HOST_GENEXT2FS=y
PTXCONF_HOST_GENIMAGE=y
PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
PTXCONF_HOST_LIBKMOD=y
PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
PTXCONF_HOST_LZOP=y
PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
+PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
PTXCONF_HOST_UTIL_LINUX=y
#
diff --git a/configs/platform-mipsel/platformconfig b/configs/platform-mipsel/platformconfig
index 5325f3b22f30..45653062acbd 100644
--- a/configs/platform-mipsel/platformconfig
+++ b/configs/platform-mipsel/platformconfig
@@ -19,6 +19,7 @@ PTXCONF_PLATFORM="mipsel"
PTXCONF_PLATFORM_VERSION="-${PTXDIST_BSP_AUTOVERSION}"
PTXCONF_RUNTIME=y
PTXCONF_BUILDTIME=y
+PTXCONF_VIRTUAL=y
PTXCONF_PLATFORMCONFIG_VERSION="2023.08.0"
#
@@ -200,16 +201,40 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
# PTXCONF_KERNEL_FIT is not set
# end of image creation options
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
PTXCONF_HOST_FLEX=y
PTXCONF_HOST_GENEXT2FS=y
PTXCONF_HOST_GENIMAGE=y
PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
PTXCONF_HOST_LIBKMOD=y
PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
PTXCONF_HOST_LZOP=y
PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
+PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
PTXCONF_HOST_UTIL_LINUX=y
#
diff --git a/configs/platform-rpi1/platformconfig b/configs/platform-rpi1/platformconfig
index 9cb75b2c9ac0..d082725fce08 100644
--- a/configs/platform-rpi1/platformconfig
+++ b/configs/platform-rpi1/platformconfig
@@ -273,20 +273,43 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
# PTXCONF_KERNEL_FIT is not set
# end of image creation options
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
PTXCONF_HOST_DOSFSTOOLS=y
PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
PTXCONF_HOST_FLEX=y
PTXCONF_HOST_GENEXT2FS=y
PTXCONF_HOST_GENIMAGE=y
PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
PTXCONF_HOST_LIBKMOD=y
PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
PTXCONF_HOST_LZOP=y
PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
PTXCONF_HOST_MTOOLS=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
PTXCONF_HOST_SYSTEM_BC=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
PTXCONF_HOST_UTIL_LINUX=y
#
diff --git a/configs/platform-v7a/platformconfig b/configs/platform-v7a/platformconfig
index 1ecbda0bdfdf..a04d1eca59b2 100644
--- a/configs/platform-v7a/platformconfig
+++ b/configs/platform-v7a/platformconfig
@@ -19,6 +19,7 @@ PTXCONF_PLATFORM="v7a"
PTXCONF_PLATFORM_VERSION="-${PTXDIST_BSP_AUTOVERSION}"
PTXCONF_RUNTIME=y
PTXCONF_BUILDTIME=y
+PTXCONF_VIRTUAL=y
PTXCONF_PLATFORMCONFIG_VERSION="2023.08.0"
#
@@ -296,21 +297,43 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
# PTXCONF_KERNEL_FIT is not set
# end of image creation options
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
PTXCONF_HOST_DOSFSTOOLS=y
PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
PTXCONF_HOST_FLEX=y
PTXCONF_HOST_GENEXT2FS=y
PTXCONF_HOST_GENIMAGE=y
PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
PTXCONF_HOST_LIBKMOD=y
PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
PTXCONF_HOST_LZOP=y
PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
PTXCONF_HOST_MTOOLS=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
PTXCONF_HOST_SYSTEM_BC=y
PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
PTXCONF_HOST_UTIL_LINUX=y
PTXCONF_HOST_TF_A=y
diff --git a/configs/platform-v7a_noneon/platformconfig b/configs/platform-v7a_noneon/platformconfig
index a70d388ff848..6dc800832bb8 100644
--- a/configs/platform-v7a_noneon/platformconfig
+++ b/configs/platform-v7a_noneon/platformconfig
@@ -19,6 +19,7 @@ PTXCONF_PLATFORM="v7a_noneon"
PTXCONF_PLATFORM_VERSION="-${PTXDIST_BSP_AUTOVERSION}"
PTXCONF_RUNTIME=y
PTXCONF_BUILDTIME=y
+PTXCONF_VIRTUAL=y
PTXCONF_PLATFORMCONFIG_VERSION="2023.08.0"
#
@@ -256,19 +257,43 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
# PTXCONF_KERNEL_FIT is not set
# end of image creation options
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
PTXCONF_HOST_DOSFSTOOLS=y
PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
PTXCONF_HOST_FLEX=y
PTXCONF_HOST_GENEXT2FS=y
PTXCONF_HOST_GENIMAGE=y
PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
PTXCONF_HOST_LIBKMOD=y
PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
PTXCONF_HOST_LZOP=y
PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
PTXCONF_HOST_MTOOLS=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
+PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
PTXCONF_HOST_SYSTEM_BC=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
PTXCONF_HOST_UTIL_LINUX=y
#
diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
index 2ed0d2afb50d..c627529435a0 100644
--- a/configs/platform-v8a/platformconfig
+++ b/configs/platform-v8a/platformconfig
@@ -296,21 +296,43 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
# PTXCONF_KERNEL_FIT is not set
# end of image creation options
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
PTXCONF_HOST_CMAKE=y
PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
PTXCONF_HOST_FLEX=y
PTXCONF_HOST_GENEXT2FS=y
PTXCONF_HOST_GENIMAGE=y
PTXCONF_HOST_LIBCONFUSE=y
+PTXCONF_HOST_LIBFFI=y
PTXCONF_HOST_LIBKMOD=y
PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
PTXCONF_HOST_LIBUSB=y
PTXCONF_HOST_LZ4=y
PTXCONF_HOST_LZOP=y
PTXCONF_HOST_M4=y
+PTXCONF_HOST_MESON=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
PTXCONF_HOST_SYSTEM_BC=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
PTXCONF_HOST_UTIL_LINUX=y
PTXCONF_HOST_ZSTD=y
diff --git a/configs/platform-x86_64/platformconfig b/configs/platform-x86_64/platformconfig
index c8bf5fdcc7a8..9c9dc77595de 100644
--- a/configs/platform-x86_64/platformconfig
+++ b/configs/platform-x86_64/platformconfig
@@ -19,6 +19,7 @@ PTXCONF_PLATFORM="x86_64"
PTXCONF_PLATFORM_VERSION="-${PTXDIST_BSP_AUTOVERSION}"
PTXCONF_RUNTIME=y
PTXCONF_BUILDTIME=y
+PTXCONF_VIRTUAL=y
PTXCONF_PLATFORMCONFIG_VERSION="2023.08.0"
#
@@ -237,16 +238,40 @@ PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
# PTXCONF_KERNEL_FIT is not set
# end of image creation options
-# PTXCONF_CODE_SIGNING is not set
+PTXCONF_CODE_SIGNING=y
+PTXCONF_CODE_SIGNING_PROVIDER="devel"
+PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
+PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
+PTXCONF_HOST_CMAKE=y
PTXCONF_HOST_E2FSPROGS=y
+PTXCONF_HOST_EXTRACT_CERT=y
PTXCONF_HOST_GENEXT2FS=y
PTXCONF_HOST_GENIMAGE=y
PTXCONF_HOST_LIBCONFUSE=y
PTXCONF_HOST_LIBELF=y
+PTXCONF_HOST_LIBFFI=y
PTXCONF_HOST_LIBKMOD=y
PTXCONF_HOST_LIBLZO=y
+PTXCONF_HOST_LIBP11=y
+PTXCONF_HOST_LIBTASN1=y
PTXCONF_HOST_LZOP=y
+PTXCONF_HOST_MESON=y
+PTXCONF_HOST_NINJA=y
+PTXCONF_HOST_OPENSC=y
+PTXCONF_HOST_OPENSSL=y
+PTXCONF_HOST_P11_KIT=y
+PTXCONF_HOST_PYTHON3_FLIT_CORE=y
+PTXCONF_HOST_PYTHON3_INSTALLER=y
+PTXCONF_HOST_PYTHON3_PACKAGING=y
+PTXCONF_HOST_PYTHON3_PYBUILD=y
+PTXCONF_HOST_PYTHON3_PYPROJECT_HOOKS=y
+PTXCONF_HOST_PYTHON3_TOMLI=y
+PTXCONF_HOST_PYTHON3_WHEEL=y
+PTXCONF_HOST_SOFTHSM=y
+PTXCONF_HOST_SQLITE=y
PTXCONF_HOST_SYSTEM_BC=y
+PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
PTXCONF_HOST_UTIL_LINUX=y
PTXCONF_HOST_ZLIB=y
diff --git a/configs/ptxconfig b/configs/ptxconfig
index 543cf0107eda..aae477b16640 100644
--- a/configs/ptxconfig
+++ b/configs/ptxconfig
@@ -133,6 +133,7 @@ PTXCONF_HOST_SYSTEM_PYTHON3_JINJA2=y
PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
PTXCONF_HOST_XORGPROTO=y
PTXCONF_HOST_ZLIB=y
+PTXCONF_CODE_SIGNING=y
PTXCONF_HOST_AUTOTOOLS_AUTOCONF=y
PTXCONF_HOST_AUTOTOOLS_AUTOMAKE=y
PTXCONF_HOST_AUTOTOOLS_LIBTOOL=y
@@ -551,7 +552,7 @@ PTXCONF_BUSYBOX_FEATURE_GZIP_DECOMPRESS=y
PTXCONF_BUSYBOX_TAR=y
PTXCONF_BUSYBOX_FEATURE_TAR_LONG_OPTIONS=y
PTXCONF_BUSYBOX_FEATURE_TAR_CREATE=y
-# PTXCONF_BUSYBOX_FEATURE_TAR_AUTODETECT is not set
+PTXCONF_BUSYBOX_FEATURE_TAR_AUTODETECT=y
PTXCONF_BUSYBOX_FEATURE_TAR_FROM=y
# PTXCONF_BUSYBOX_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set
# PTXCONF_BUSYBOX_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set
@@ -941,7 +942,8 @@ PTXCONF_BUSYBOX_SULOGIN=y
#
# PTXCONF_BUSYBOX_ACPID is not set
# PTXCONF_BUSYBOX_BLKDISCARD is not set
-# PTXCONF_BUSYBOX_BLKID is not set
+PTXCONF_BUSYBOX_BLKID=y
+PTXCONF_BUSYBOX_FEATURE_BLKID_TYPE=y
# PTXCONF_BUSYBOX_BLOCKDEV is not set
# PTXCONF_BUSYBOX_CAL is not set
# PTXCONF_BUSYBOX_CHRT is not set
@@ -1014,6 +1016,38 @@ PTXCONF_BUSYBOX_RENICE=y
# PTXCONF_BUSYBOX_UMOUNT is not set
# PTXCONF_BUSYBOX_UNSHARE is not set
# PTXCONF_BUSYBOX_WALL is not set
+PTXCONF_BUSYBOX_VOLUMEID=y
+
+#
+# Filesystem/Volume identification
+#
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_BCACHE=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_BTRFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_CRAMFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_EROFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_EXFAT=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_EXT=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_F2FS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_FAT=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_HFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_ISO9660=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_JFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_LFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_LINUXRAID=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_LINUXSWAP=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_LUKS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_MINIX=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_NILFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_NTFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_OCFS2=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_REISERFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_ROMFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_SQUASHFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_SYSV=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_UBIFS=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_UDF=y
+PTXCONF_BUSYBOX_FEATURE_VOLUMEID_XFS=y
+# end of Filesystem/Volume identification
# end of Linux System Utilities
#
@@ -1315,7 +1349,8 @@ PTXCONF_BUSYBOX_LOGGER=y
# PTXCONF_DFU_UTIL is not set
# PTXCONF_DIALOG is not set
# PTXCONF_DIFFUTILS is not set
-# PTXCONF_DT_UTILS is not set
+PTXCONF_DT_UTILS=y
+# PTXCONF_DT_UTILS_STATE_COMPAT is not set
# PTXCONF_EFIBOOTMGR is not set
# PTXCONF_EFIVAR is not set
# PTXCONF_FIGLET is not set
@@ -1613,7 +1648,10 @@ PTXCONF_UTIL_LINUX_SFDISK=y
#
# misc-utils
#
-# PTXCONF_UTIL_LINUX_BLKID is not set
+
+#
+# BusyBox' blkid is selected!
+#
# PTXCONF_UTIL_LINUX_FINDFS is not set
# PTXCONF_UTIL_LINUX_GETOPT is not set
PTXCONF_UTIL_LINUX_LSBLK=y
@@ -2054,6 +2092,7 @@ PTXCONF_E2FSPROGS=y
#
# build options
#
+PTXCONF_E2FSPROGS_RESIZER=y
# end of build options
#
@@ -2089,7 +2128,7 @@ PTXCONF_E2FSPROGS_INSTALL_MKFS_EXT2=y
PTXCONF_E2FSPROGS_INSTALL_MKFS_EXT3=y
PTXCONF_E2FSPROGS_INSTALL_MKFS_EXT4=y
# PTXCONF_E2FSPROGS_INSTALL_MKLOSTANDFOUND is not set
-# PTXCONF_E2FSPROGS_INSTALL_RESIZE2FS is not set
+PTXCONF_E2FSPROGS_INSTALL_RESIZE2FS=y
# PTXCONF_E2FSPROGS_INSTALL_TUNE2FS is not set
# end of binaries
@@ -2108,7 +2147,18 @@ PTXCONF_E2FSPROGS_INSTALL_MKFS_EXT4=y
# PTXCONF_QUOTA_TOOLS is not set
# PTXCONF_SAMBA is not set
# PTXCONF_SDPARM is not set
-# PTXCONF_SQUASHFS_TOOLS is not set
+PTXCONF_SQUASHFS_TOOLS=y
+
+#
+# build options
+#
+# PTXCONF_SQUASHFS_TOOLS_ZSTD_SUPPORT is not set
+
+#
+# install options
+#
+# PTXCONF_SQUASHFS_TOOLS_MKSQUASHFS is not set
+PTXCONF_SQUASHFS_TOOLS_UNSQUASHFS=y
# PTXCONF_SSHFS is not set
# PTXCONF_UNZIP is not set
# PTXCONF_XFSPROGS is not set
@@ -2151,7 +2201,19 @@ PTXCONF_E2FSPROGS_INSTALL_MKFS_EXT4=y
# PTXCONF_LPC21ISP is not set
# PTXCONF_MYSQLDB is not set
# PTXCONF_RAUC_HAWKBIT_UPDATER is not set
-# PTXCONF_RAUC is not set
+PTXCONF_RAUC=y
+# PTXCONF_RAUC_CREATE is not set
+PTXCONF_RAUC_SERVICE=y
+PTXCONF_RAUC_NETWORK=y
+PTXCONF_RAUC_STREAMING=y
+PTXCONF_RAUC_JSON=y
+# PTXCONF_RAUC_GPT is not set
+PTXCONF_RAUC_CONFIGURATION=y
+PTXCONF_RAUC_COMPATIBLE="${PTXCONF_PROJECT_VENDOR} ${PTXCONF_PROJECT}"
+PTXCONF_RAUC_BUNDLE_VERSION="${PTXDIST_BSP_AUTOVERSION}"
+PTXCONF_RAUC_BAREBOX=y
+# PTXCONF_RAUC_U_BOOT is not set
+# PTXCONF_RAUC_EFI is not set
# end of Applications
#
@@ -2561,11 +2623,11 @@ PTXCONF_DBUS_SYSTEMD_UNIT=y
# PTXCONF_GLIB_NETWORKING is not set
PTXCONF_GLIB=y
# PTXCONF_GLIB_GDBUS is not set
-# PTXCONF_GLIB_LIBMOUNT is not set
+PTXCONF_GLIB_LIBMOUNT=y
# PTXCONF_GOBJECT_INTROSPECTION_HELPER is not set
# PTXCONF_GTK_ENGINES is not set
# PTXCONF_GTK is not set
-# PTXCONF_JSON_GLIB is not set
+PTXCONF_JSON_GLIB=y
# PTXCONF_LIBGEE is not set
# PTXCONF_LIBRSVG is not set
# PTXCONF_PANGO is not set
diff --git a/projectroot/etc/rauc/system.conf b/projectroot/etc/rauc/system.conf
new file mode 100644
index 000000000000..191a2a1e4f8e
--- /dev/null
+++ b/projectroot/etc/rauc/system.conf
@@ -0,0 +1,17 @@
+[system]
+compatible=@RAUC_BUNDLE_COMPATIBLE@
+bootloader=barebox
+bundle-formats=verity
+
+[keyring]
+path=/etc/rauc/ca.cert.pem
+
+[slot.rootfs.0]
+device=/dev/disk/by-usage/rootfs0
+type=ext4
+bootname=system0
+
+[slot.rootfs.1]
+device=/dev/disk/by-usage/rootfs1
+type=ext4
+bootname=system1
diff --git a/projectroot/usr/lib/systemd/system/rauc-mark-good.service b/projectroot/usr/lib/systemd/system/rauc-mark-good.service
new file mode 100644
index 000000000000..89f56594766a
--- /dev/null
+++ b/projectroot/usr/lib/systemd/system/rauc-mark-good.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=RAUC Good-marking Service
+ConditionKernelCommandLine=|bootchooser.active
+ConditionKernelCommandLine=|rauc.slot
+Requires=boot-complete.target
+After=boot-complete.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/usr/bin/rauc status mark-good
+
+[Install]
+WantedBy=multi-user.target
--
2.39.2
next prev parent reply other threads:[~2023-08-25 11:03 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-25 11:03 [DistroKit] [PATCH v5 0/7] v7a: add redundant update support via RAUC Roland Hieber
2023-08-25 11:03 ` [DistroKit] [PATCH v5 1/7] enable MTD and UBI tools Roland Hieber
2023-08-25 11:06 ` Alexander Dahl
2023-08-25 12:19 ` [DistroKit] [PATCH] fixup! " Roland Hieber
2023-08-25 13:04 ` [DistroKit] [PATCH v5 1/7] " Robert Schwebel
2023-08-25 11:03 ` Roland Hieber [this message]
2023-08-25 13:04 ` [DistroKit] [PATCH v5 2/7] rauc: add initial support Robert Schwebel
2023-08-25 11:03 ` [DistroKit] [PATCH v5 3/7] silence QA checks regarding missing kernel features for RAUC Roland Hieber
2023-08-25 13:05 ` Robert Schwebel
2023-08-25 11:03 ` [DistroKit] [PATCH v5 4/7] v7a: enable RAUC bundle creation Roland Hieber
2023-08-25 13:08 ` Robert Schwebel
2023-08-28 9:00 ` Roland Hieber
2023-08-25 11:03 ` [DistroKit] [PATCH v5 5/7] image-rauc: fork config file from PTXdist 2023.08.0 Roland Hieber
2023-08-25 13:06 ` Robert Schwebel
2023-08-25 11:03 ` [DistroKit] [PATCH v5 6/7] image-rauc: use ext4 rootfs instead of tar.gz Roland Hieber
2023-08-25 13:09 ` Robert Schwebel
2023-08-25 11:03 ` [DistroKit] [PATCH v5 7/7] v7a: run: start with barebox by default Roland Hieber
2023-08-25 13:09 ` Robert Schwebel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230825110310.2948272-3-rhi@pengutronix.de \
--to=rhi@pengutronix.de \
--cc=distrokit@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox