about summary refs log tree commit diff
path: root/mkimage.sh.in
diff options
context:
space:
mode:
authorJuan RP <xtraeme@gmail.com>2014-01-22 09:28:06 -0800
committerJuan RP <xtraeme@gmail.com>2014-01-22 09:28:06 -0800
commit1da8db0c362e0fb22c3fcb382054ae067d717fdf (patch)
treefb8f0cf7d19a64e618364e1aa72490cd8c67053f /mkimage.sh.in
parenteb14a020298c013c17819cf9d5104eaa03bec72a (diff)
parent9683dc004570d2b46486ca59a0c1df630e44bcb9 (diff)
downloadhrmpf-1da8db0c362e0fb22c3fcb382054ae067d717fdf.tar.gz
hrmpf-1da8db0c362e0fb22c3fcb382054ae067d717fdf.tar.xz
hrmpf-1da8db0c362e0fb22c3fcb382054ae067d717fdf.zip
Merge pull request #4 from Gottox/master
Typo fix
Diffstat (limited to 'mkimage.sh.in')
-rw-r--r--mkimage.sh.in17
1 files changed, 12 insertions, 5 deletions
diff --git a/mkimage.sh.in b/mkimage.sh.in
index 31bc64a..c90d75f 100644
--- a/mkimage.sh.in
+++ b/mkimage.sh.in
@@ -32,7 +32,11 @@ trap 'printf "\nInterrupted! exiting...\n"; cleanup; exit 0' INT TERM HUP
 cleanup() {
     umount -f ${ROOTFSDIR}/boot 2>/dev/null
     umount -f ${ROOTFSDIR} 2>/dev/null
-    [ -e "$LOOPDEV" ] && losetup -d $LOOPDEV 2>/dev/null
+    if [ -e "$LOOPDEV" ]; then
+        partx -d $LOOPDEV 2>/dev/null
+        losetup -d $LOOPDEV 2>/dev/null
+    fi
+	
     [ -d "$ROOTFSDIR" ] && rmdir $ROOTFSDIR
 }
 
@@ -102,25 +106,27 @@ if [ -z "$FILENAME" ]; then
     FILENAME="void-image-$(date +%Y%m%d).img"
 fi
 
-for f in parted losetup mount mkfs.${BOOT_FSTYPE} mkfs.${ROOT_FSTYPE}; do
+for f in parted partx losetup mount mkfs.${BOOT_FSTYPE} mkfs.${ROOT_FSTYPE}; do
     if ! which ${f} >/dev/null; then
         die "Cannot find ${f}, exiting."
     fi
 done
 
 info_msg "Creating disk image ($IMGSIZE) ..."
-dd if=/dev/zero of=$FILENAME bs=$IMGSIZE count=1 conv=sparse >/dev/null 2>&1
+dd if=/dev/zero of=$FILENAME bs=$IMGSIZE count=1 >/dev/null 2>&1
 
 info_msg "Creating disk image partitions/filesystems ..."
 parted $FILENAME mktable msdos
 if [ "$BOOT_FSTYPE" = "vfat" ]; then
     _btype="fat32"
+    _args="-I"
 fi
 parted $FILENAME mkpart primary ${_btype} 4096s 256M
 parted $FILENAME mkpart primary ext2 256M 100%
 parted $FILENAME toggle 1 boot
-LOOPDEV=$(losetup --show --find -P $FILENAME)
-mkfs.${BOOT_FSTYPE} ${LOOPDEV}p1 >/dev/null 2>&1
+LOOPDEV=$(losetup --show --find $FILENAME)
+partx -a $LOOPDEV
+mkfs.${BOOT_FSTYPE} $_args ${LOOPDEV}p1 >/dev/null
 mkfs.${ROOT_FSTYPE} ${LOOPDEV}p2 >/dev/null 2>&1
 
 info_msg "Unpacking rootfs tarball ..."
@@ -141,6 +147,7 @@ fi
 
 umount ${ROOTFSDIR}/boot
 umount $ROOTFSDIR
+partx -d $LOOPDEV
 losetup -d $LOOPDEV
 rmdir $ROOTFSDIR