DistroKit Mailinglist
 help / color / mirror / Atom feed
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




  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