From 360dab6dea6f246727ecb1595b1d296830a080ec Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Sat, 10 Oct 2020 22:22:40 -0400 Subject: getting closer --- src/parted-usb.sh | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/src/parted-usb.sh b/src/parted-usb.sh index c7040c8..730dc26 100755 --- a/src/parted-usb.sh +++ b/src/parted-usb.sh @@ -13,6 +13,17 @@ MiB() KiB $(KiB "$1") } +get_rootfs_size() +{ + [ "$ROOTFS" ] || return + if [ -b "$ROOTFS" ] + then + rootfs_size=$(blockdev --getsize64 "$ROOTFS") + else + rootfs_size=$(stat -c%s "$ROOTFS") + fi +} + initialize_target() { if [ -b "$target" ] @@ -22,7 +33,8 @@ initialize_target() rm -f "$target" if [ "$ROOTFS" ] then - fallocate -l $(($(KiB 17) + $(MiB $end_keys) + $(MiB $rootfs_size))) "$target" + get_rootfs_size + fallocate -l $(($(KiB 17) + $(MiB $end_keys) + rootfs_size)) "$target" else fallocate -l $(($(KiB 17) + $(MiB $end_keys))) "$target" fi @@ -37,10 +49,10 @@ partition_target() mkpart samizdat-grub 1 8 \ set 1 bios_grub on \ mkpart samizdat-keys btrfs ${start_keys} ${end_keys} - case "$target" in - /dev/loop*) ;; - *) partx -u "$target" ;; - esac + if [ -b "$target" ] + then + partx -u "$target" + fi if [ "$ROOTFS" ] then @@ -118,6 +130,7 @@ add_grub_cfg() individualize() { + mkdir -p "$mnt" mountpoint "$mnt" || mount "$part"2 "$mnt" add_keys add_initrd "$samizdat_linux_dir"/ "${version_suffix}" @@ -162,7 +175,7 @@ boot_vm() if [ ! -e "$installer_target" ] then - fallocate -l 15G "$installer_target" + fallocate -l 10G "$installer_target" fi find_mac 52-54-00-12-34-56 -- cgit v1.2.3