| #!/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 |