From 4301bfc736207eea52f6c5ccb68c99cac96644c6 Mon Sep 17 00:00:00 2001 From: Javier Viguera Date: Thu, 20 Nov 2014 17:59:03 +0100 Subject: [PATCH] meta-digi-dey: rework rootfs resize on first boot Use the package manager postinst framework to run the rootfs resize script on first boot after the image has been flashed to the EMMC. https://jira.digi.com/browse/DEL-1317 Signed-off-by: Javier Viguera --- .../base-files/base-files}/resize-ext4fs.sh | 5 +++-- .../base-files/base-files_3.0.14.bbappend | 7 +++++++ .../sysvinit/sysvinit_2.88dsf.bbappend | 7 ------- .../e2fsprog/e2fsprogs_%.bbappend | 15 --------------- 4 files changed, 10 insertions(+), 24 deletions(-) rename meta-digi-dey/{recipes-devtools/e2fsprog/e2fsprogs => recipes-core/base-files/base-files}/resize-ext4fs.sh (89%) delete mode 100644 meta-digi-dey/recipes-devtools/e2fsprog/e2fsprogs_%.bbappend diff --git a/meta-digi-dey/recipes-devtools/e2fsprog/e2fsprogs/resize-ext4fs.sh b/meta-digi-dey/recipes-core/base-files/base-files/resize-ext4fs.sh similarity index 89% rename from meta-digi-dey/recipes-devtools/e2fsprog/e2fsprogs/resize-ext4fs.sh rename to meta-digi-dey/recipes-core/base-files/base-files/resize-ext4fs.sh index ddfe1abd7..1f726b37a 100755 --- a/meta-digi-dey/recipes-devtools/e2fsprog/e2fsprogs/resize-ext4fs.sh +++ b/meta-digi-dey/recipes-core/base-files/base-files/resize-ext4fs.sh @@ -25,11 +25,12 @@ get_emmc_block_device() { fi } +RESIZE2FS="$(which resize2fs)" EMMC_BLOCK_DEVICE="$(get_emmc_block_device)" -if [ "${RESIZE_EXT4FS}" = "yes" -a -n "${EMMC_BLOCK_DEVICE}" ]; then +if [ -x "${RESIZE2FS}" -a -n "${EMMC_BLOCK_DEVICE}" ]; then PARTITIONS="$(blkid | sed -ne "{s,\(^${EMMC_BLOCK_DEVICE}[^:]\+\):.*TYPE=\"ext4\".*,\1,g;T;p}" | sort -u)" for i in ${PARTITIONS}; do - if ! resize2fs ${i} 2>/dev/null; then + if ! ${RESIZE2FS} ${i} 2>/dev/null; then echo "ERROR: resize2fs ${i}" fi done diff --git a/meta-digi-dey/recipes-core/base-files/base-files_3.0.14.bbappend b/meta-digi-dey/recipes-core/base-files/base-files_3.0.14.bbappend index 298522b0c..66870aca9 100644 --- a/meta-digi-dey/recipes-core/base-files/base-files_3.0.14.bbappend +++ b/meta-digi-dey/recipes-core/base-files/base-files_3.0.14.bbappend @@ -7,6 +7,8 @@ SRC_URI += " \ file://sysctl.conf \ " +SRC_URI_append_ccimx6 = " file://resize-ext4fs.sh" + do_install_append() { install -m 0644 ${WORKDIR}/os-release ${D}${sysconfdir}/ sed -i -e 's,##DISTRO##,${DISTRO},g' \ @@ -22,3 +24,8 @@ do_install_append_mx5() { vm.lowmem_reserve_ratio = 1 1 EOF } + +do_install_append_ccimx6() { + install -d ${D}${sysconfdir}/${IMAGE_PKGTYPE}-postinsts + install -m 0755 ${WORKDIR}/resize-ext4fs.sh ${D}${sysconfdir}/${IMAGE_PKGTYPE}-postinsts/ +} diff --git a/meta-digi-dey/recipes-core/sysvinit/sysvinit_2.88dsf.bbappend b/meta-digi-dey/recipes-core/sysvinit/sysvinit_2.88dsf.bbappend index 1ba2f0924..f13e90826 100644 --- a/meta-digi-dey/recipes-core/sysvinit/sysvinit_2.88dsf.bbappend +++ b/meta-digi-dey/recipes-core/sysvinit/sysvinit_2.88dsf.bbappend @@ -5,10 +5,3 @@ do_install_append() { update-rc.d -f -r ${D} stop-bootlogd remove update-rc.d -f -r ${D} bootlogd remove } - -do_install_append_ccimx6() { - cat >> ${D}${sysconfdir}/default/rcS <<-EOF - # Resize EXT4 filesystems to the size of the partition on boot - RESIZE_EXT4FS=yes - EOF -} diff --git a/meta-digi-dey/recipes-devtools/e2fsprog/e2fsprogs_%.bbappend b/meta-digi-dey/recipes-devtools/e2fsprog/e2fsprogs_%.bbappend deleted file mode 100644 index c09971d00..000000000 --- a/meta-digi-dey/recipes-devtools/e2fsprog/e2fsprogs_%.bbappend +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright (C) 2014 Digi International. - -FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" - -SRC_URI += "file://resize-ext4fs.sh" - -inherit update-rc.d - -do_install_append() { - install -d ${D}${sysconfdir}/init.d - install -m 0755 ${WORKDIR}/resize-ext4fs.sh ${D}${sysconfdir}/init.d/ -} - -INITSCRIPT_NAME = "resize-ext4fs.sh" -INITSCRIPT_PARAMS = "start 36 S ."