#!/bin/bash | |
export DISK=$(mktemp -p tmp -t XXXXXXXXXXXXXXXX.img) | |
export EFIVAR=tmp/$(basename $DISK .img).fd | |
bus=${BUS-pci} | |
truncate -s 16G $DISK | |
truncate -s 64M $EFIVAR | |
./runefivm.sh $* | |
if [ -z "$KEEPME" ]; then | |
rm -f $DISK $EFIVAR | |
else | |
mkdir -p "$KEEPME" && mv $DISK $EFIVAR "$KEEPME"/ | |
export DISK="$KEEPME"/$(basename $DISK) | |
export EFIVAR="$KEEPME"/$(basename $EFIVAR) | |
(cat <<EOF | |
#!/bin/bash | |
EOF | |
export -p | |
cat <<EOF | |
$PWD/runefivm.sh $* | |
EOF | |
) >"$KEEPME"/runvm.sh | |
chmod a+x "$KEEPME"/runvm.sh | |
fi |