diff --git a/buildroot-external/rootfs-overlay/usr/libexec/hassos-expand b/buildroot-external/rootfs-overlay/usr/libexec/hassos-expand index 341308bbd..64554e18b 100755 --- a/buildroot-external/rootfs-overlay/usr/libexec/hassos-expand +++ b/buildroot-external/rootfs-overlay/usr/libexec/hassos-expand @@ -6,28 +6,20 @@ DEVICE_CHILD="$(findfs LABEL="hassos-data")" DEVICE_ROOT="/dev/$(lsblk -no pkname "${DEVICE_CHILD}")" PART_NUM="${DEVICE_CHILD: -1}" +# Need resize +UNUSED=$(sfdisk -Fq "${DEVICE_ROOT}" | cut -d " " -f 3 | tail -1) +if [ -z "${UNUSED}" ] || [ "${UNUSED}" -le "2048" ]; then + echo "[INFO] No resize of data partition needed" + exit 0 +fi + if sfdisk -dq "${DEVICE_ROOT}" | grep -q 'label: gpt'; then - - # Need resize - if [ "$(sgdisk -E "${DEVICE_ROOT}")" -le "2048" ]; then - echo "[INFO] No resize of data partition needed" - exit 0 - fi - # Resize & Reload partition echo "[INFO] Update hassos-data partition ${PART_NUM}" sgdisk -e "${DEVICE_ROOT}" sgdisk -d "${PART_NUM}" -n "${PART_NUM}:0:0" -c "${PART_NUM}:hassos-data" -t "${PART_NUM}:0FC63DAF-8483-4772-8E79-3D69D8477DE4" -u "${PART_NUM}:a52a4597-fa3a-4851-aefd-2fbe9f849079" "${DEVICE_ROOT}" sgdisk -v "${DEVICE_ROOT}" else - - # Need resize - UNUSED=$(sfdisk -Fq "${DEVICE_ROOT}" | cut -d " " -f 3 | tail -1) - if [ -z "${UNUSED}" ] || [ "${UNUSED}" -le "2048" ]; then - echo "[INFO] No resize of data partition needed" - exit 0 - fi - echo ", +" | sfdisk -N "${PART_NUM}" "${DEVICE_ROOT}" --force sfdisk -V "${DEVICE_ROOT}" fi