From 6e24e397347b0d14652793fea3dcf95438442ed8 Mon Sep 17 00:00:00 2001 From: Ming Liu Date: Wed, 30 Jun 2021 11:57:31 +0200 Subject: meta: support readonly sysroot Currently ostree sysroot is being mounted as RW by ostree-remount systemd service, add a variable OSTREE_SYSROOT_READONLY to control that, so the end users could choose to mount sysroot as RO. Signed-off-by: Ming Liu --- classes/image_types_ota.bbclass | 4 ++++ classes/sota.bbclass | 1 + 2 files changed, 5 insertions(+) diff --git a/classes/image_types_ota.bbclass b/classes/image_types_ota.bbclass index 283b50e..2a20660 100644 --- a/classes/image_types_ota.bbclass +++ b/classes/image_types_ota.bbclass @@ -45,6 +45,10 @@ IMAGE_CMD_ota () { ostree --repo=${OTA_SYSROOT}/ostree/repo refs --create=${OSTREE_OSNAME}:${OSTREE_BRANCHNAME} ${ostree_target_hash} ostree admin --sysroot=${OTA_SYSROOT} deploy ${kargs_list} --os=${OSTREE_OSNAME} ${OSTREE_OSNAME}:${OSTREE_BRANCHNAME} + if [ ${@ oe.types.boolean('${OSTREE_SYSROOT_READONLY}')} = True ]; then + ostree config --repo=${OTA_SYSROOT}/ostree/repo set sysroot.readonly true + fi + cp -a ${IMAGE_ROOTFS}/var/sota ${OTA_SYSROOT}/ostree/deploy/${OSTREE_OSNAME}/var/ || true # Create /var/sota if it doesn't exist yet mkdir -p ${OTA_SYSROOT}/ostree/deploy/${OSTREE_OSNAME}/var/sota diff --git a/classes/sota.bbclass b/classes/sota.bbclass index 8f3f5d7..a331fa4 100644 --- a/classes/sota.bbclass +++ b/classes/sota.bbclass @@ -32,6 +32,7 @@ OSTREE_KERNEL ??= "${KERNEL_IMAGETYPE}" OSTREE_DEPLOY_DEVICETREE ??= "0" OSTREE_DEVICETREE ??= "${KERNEL_DEVICETREE}" OSTREE_MULTI_DEVICETREE_SUPPORT ??= "0" +OSTREE_SYSROOT_READONLY ??= "0" INITRAMFS_IMAGE ?= "initramfs-ostree-image" -- cgit v1.2.3-54-g00ecf