From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Mon, 28 Aug 2023 10:58:17 +0200 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qaY4g-00Bq2e-36 for lore@lore.pengutronix.de; Mon, 28 Aug 2023 10:58:17 +0200 Received: from localhost ([127.0.0.1] helo=metis.ext.pengutronix.de) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1qaY4c-0000nh-Qt; Mon, 28 Aug 2023 10:58:14 +0200 Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qaY4X-0000hb-E6; Mon, 28 Aug 2023 10:58:09 +0200 Received: from [2a0a:edc0:0:1101:1d::ac] (helo=dude04.red.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtp (Exim 4.94.2) (envelope-from ) id 1qaY4W-002AiL-PK; Mon, 28 Aug 2023 10:58:08 +0200 Received: from rhi by dude04.red.stw.pengutronix.de with local (Exim 4.96) (envelope-from ) id 1qaY4V-001ERA-0L; Mon, 28 Aug 2023 10:58:07 +0200 From: Roland Hieber To: distrokit@pengutronix.de Date: Mon, 28 Aug 2023 10:57:59 +0200 Message-Id: <20230828085804.293762-3-rhi@pengutronix.de> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20230828085804.293762-1-rhi@pengutronix.de> References: <20230828085804.293762-1-rhi@pengutronix.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [DistroKit] [PATCH 2/7] rauc: add initial support X-BeenThere: distrokit@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: DistroKit Mailinglist List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Roland Hieber Sender: "DistroKit" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: distrokit-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false 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 --- 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 29a884b4632f..020527a3e4fe 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" # @@ -304,21 +305,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 93587c690709..2ad07e2a6a78 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