Unified · Split
| @@ -133,27 +133,39 @@ esac · 132 unmodified lines | ||
| 133 | 133 | info_msg "Creating disk image ($IMGSIZE) ..." |
| 134 | 134 | dd if=/dev/zero of=$FILENAME bs=$IMGSIZE count=1 ${DD_SPARSE} >/dev/null 2>&1 |
| 135 | 135 | |
| 136 | +ROOTFSDIR=$(mktemp -d) | |
| 137 | + | |
| 136 | 138 | info_msg "Creating disk image partitions/filesystems ..." |
| 137 | 139 | parted $FILENAME mktable msdos |
| 138 | 140 | if [ "$BOOT_FSTYPE" = "vfat" ]; then |
| 139 | 141 | _btype="fat32" |
| 140 | 142 | _args="-I -F16" |
| 141 | 143 | fi |
| 142 | −parted $FILENAME mkpart primary ${_btype} 4096s ${BOOT_FSSIZE} | |
| 143 | −parted $FILENAME mkpart primary ext2 ${BOOT_FSSIZE} 100% | |
| 144 | −parted $FILENAME toggle 1 boot | |
| 145 | −LOOPDEV=$(losetup --show --find --partscan $FILENAME) | |
| 146 | −mkfs.${BOOT_FSTYPE} $_args ${LOOPDEV}p1 >/dev/null | |
| 147 | − | |
| 148 | −case "$ROOT_FSTYPE" in | |
| 149 | − ext[34]) disable_journal="-O ^has_journal";; | |
| 144 | +case "$PLATFORM" in | |
| 145 | +bananapi|cubieboard2|cubietruck) | |
| 146 | + parted $FILENAME mkpart primary ext2 2048s ${ROOT_FSSIZE} 100% | |
| 147 | + LOOPDEV=$(losetup --show --find --partscan $FILENAME) | |
| 148 | + mkfs.${ROOT_FSTYPE} $disable_journal ${LOOPDEV}p1 >/dev/null 2>&1 | |
| 149 | + mount ${LOOPDEV}p1 $ROOTFSDIR | |
| 150 | + ROOT_UUID=$(blkid -o value -s UUID ${LOOPDEV}p1) | |
| 151 | + ;; | |
| 152 | +*) | |
| 153 | + parted $FILENAME mkpart primary ${_btype} 2048s ${BOOT_FSSIZE} | |
| 154 | + parted $FILENAME mkpart primary ext2 ${ROOT_FSSIZE} 100% | |
| 155 | + parted $FILENAME toggle 1 boot | |
| 156 | + LOOPDEV=$(losetup --show --find --partscan $FILENAME) | |
| 157 | + mkfs.${BOOT_FSTYPE} $_args ${LOOPDEV}p1 >/dev/null | |
| 158 | + case "$ROOT_FSTYPE" in | |
| 159 | + ext[34]) disable_journal="-O ^has_journal";; | |
| 160 | + esac | |
| 161 | + mkfs.${ROOT_FSTYPE} $disable_journal ${LOOPDEV}p2 >/dev/null 2>&1 | |
| 162 | + mount ${LOOPDEV}p2 $ROOTFSDIR | |
| 163 | + mkdir -p ${ROOTFSDIR}/boot | |
| 164 | + mount ${LOOPDEV}p1 ${ROOTFSDIR}/boot | |
| 165 | + BOOT_UUID=$(blkid -o value -s UUID ${LOOPDEV}p1) | |
| 166 | + ROOT_UUID=$(blkid -o value -s UUID ${LOOPDEV}p2) | |
| 167 | + ;; | |
| 150 | 168 | esac |
| 151 | −mkfs.${ROOT_FSTYPE} $disable_journal ${LOOPDEV}p2 >/dev/null 2>&1 | |
| 152 | − | |
| 153 | −ROOTFSDIR=$(mktemp -d) | |
| 154 | −mount ${LOOPDEV}p2 $ROOTFSDIR | |
| 155 | −mkdir -p ${ROOTFSDIR}/boot | |
| 156 | −mount ${LOOPDEV}p1 ${ROOTFSDIR}/boot | |
| 157 | 169 | |
| 158 | 170 | info_msg "Unpacking rootfs tarball ..." |
| 159 | 171 | if [ "$PLATFORM" = "beaglebone" ]; then |
| @@ -165,15 +177,14 @@ if [ "$PLATFORM" = "beaglebone" ]; then · 5 unmodified lines | ||
| 165 | 177 | fi |
| 166 | 178 | tar xfp $ROOTFS_TARBALL -C $ROOTFSDIR |
| 167 | 179 | |
| 168 | −BOOT_UUID=$(blkid -o value -s UUID ${LOOPDEV}p1) | |
| 169 | −ROOT_UUID=$(blkid -o value -s UUID ${LOOPDEV}p2) | |
| 170 | − | |
| 171 | 180 | fspassno="1" |
| 172 | 181 | if [ "$ROOT_FSTYPE" = "f2fs" ]; then |
| 173 | 182 | fspassno="0" |
| 174 | 183 | fi |
| 175 | 184 | echo "UUID=$ROOT_UUID / $ROOT_FSTYPE defaults 0 ${fspassno}" >> ${ROOTFSDIR}/etc/fstab |
| 176 | −echo "UUID=$BOOT_UUID /boot $BOOT_FSTYPE defaults${fstab_args} 0 2" >> ${ROOTFSDIR}/etc/fstab | |
| 185 | +if [ -n "$BOOT_UUID" ]; then | |
| 186 | + echo "UUID=$BOOT_UUID /boot $BOOT_FSTYPE defaults${fstab_args} 0 2" >> ${ROOTFSDIR}/etc/fstab | |
| 187 | +fi | |
| 177 | 188 | |
| 178 | 189 | case "$PLATFORM" in |
| 179 | 190 | bananapi|cubieboard2|cubietruck) |