aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xkvmx-create21
-rw-r--r--kvmxfile3
2 files changed, 18 insertions, 6 deletions
diff --git a/kvmx-create b/kvmx-create
index a00f78c..aca74e6 100755
--- a/kvmx-create
+++ b/kvmx-create
@@ -149,8 +149,11 @@ kvmx_config
# Check
if [ -e "$image" ]; then
- echo "error: $image already exists."
- exit 1
+ kvm_user_config overwrite n "WARNING: $image already exists. Overwrite the installation? (y/n)"
+
+ if [ "$overwrite" != "y" ]; then
+ exit 1
+ fi
fi
# Ensure base folder exists
@@ -230,10 +233,16 @@ function kvmx_create_custom {
kvmx_install_package $req
done
- echo "Creating image..."
- #kvmx_sudo_run dd if=/dev/zero of=$image bs=$size count=1
- kvmx_sudo_run qemu-img create -f raw $image $size
- device="`sudo losetup --find --show $image`"
+ if [ ! -z "$image_type" ] || [ "$image_type" == "file" ]; then
+ echo "Creating image file..."
+ #kvmx_sudo_run dd if=/dev/zero of=$image bs=$size count=1
+ kvmx_sudo_run qemu-img create -f raw $image $size
+ device="`sudo losetup --find --show $image`"
+ else if [ -e "$image" ]; then
+ device="$image"
+ else
+ echo "$BASENAME: image device $image does not exist"
+ fi
echo "Partitioning image at $device..."
kvmx_sudo_run parted -s -- $device mklabel gpt
diff --git a/kvmxfile b/kvmxfile
index 30aa9f7..a398367 100644
--- a/kvmxfile
+++ b/kvmxfile
@@ -117,6 +117,9 @@ xrandr="0"
# Where datafiles are stored: just set this if you know what you're doing
#datadir="$HOME/.local/share/kvmx/$VM"
+# Image type: file or device (kvmx-create only)
+image_type="file"
+
# Image size
size="10G"