diff options
Diffstat (limited to 'src/os-plugins/plugins/qemukvm/files/run-virt.include')
-rw-r--r-- | src/os-plugins/plugins/qemukvm/files/run-virt.include | 45 |
1 files changed, 36 insertions, 9 deletions
diff --git a/src/os-plugins/plugins/qemukvm/files/run-virt.include b/src/os-plugins/plugins/qemukvm/files/run-virt.include index 2fb4ef8c..728801c1 100644 --- a/src/os-plugins/plugins/qemukvm/files/run-virt.include +++ b/src/os-plugins/plugins/qemukvm/files/run-virt.include @@ -52,11 +52,40 @@ else exit 1 fi -# hot keys ALT+CTRL+SHIFT -VIRTCMDOPTS="${VIRTCMDOPTS} -alt-grab" +# disable kvm for a range of older operating systems +case "${vmostype}" in + beos*|win*3*|win*9*) + VIRTCMDOPTS="${VIRTCMDOPTS} -no-kvm" + if [ "${totalmem}" -ge "1000" ]; then + forcemem=512 + else + forcemem=256 + fi + # add some OS specific options if required + emu="qemu" + ;; + win*3*) + VIRTCMDOPTS="${VIRTCMDOPTS} -no-kvm" + forcemem=32 + emu="qemu" + ;; + win*95) + VIRTCMDOPTS="${VIRTCMDOPTS} -no-kvm" + forcemem=96 + emu="qemu" + ;; + win*) + VIRTCMDOPTS="${VIRTCMDOPTS} -no-kvm" + forcemem=256 + emu="qemu" + ;; +esac + +# hot keys ALT+CTRL+SHIFT (does not work properly!?) +#VIRTCMDOPTS="${VIRTCMDOPTS} -alt-grab" # display name, remove blanks because of cmdline problems -displayname=$(echo ${displayname} | sed -e "s, ,-,g") +displayname=$(echo ${displayname} | sed -e "s, ,-,g;s,(,[,g;s,),],g") VIRTCMDOPTS="${VIRTCMDOPTS} -name ${displayname}" writelog "Directories:" @@ -125,21 +154,19 @@ case "${network_kind}" in sudo /opt/openslx/rootfs/sbin/tunctl -t tapbridge${VM_ID} -u ${USER} \ >/dev/null 2>&1 sudo /opt/openslx/rootfs/usr/sbin/brctl addif br0 tapbridge${VM_ID} - POSTRUN="/opt/openslx/rootfs/sbin/tunctl -d tapbridge${VM_ID}" + POSTRUN="sudo /opt/openslx/rootfs/sbin/tunctl -d tapbridge${VM_ID}" ;; nat) VIRTCMDOPTS="${VIRTCMDOPTS} -net tap,ifname=tapnat${VM_ID},${qemu_ifscr}" sudo /opt/openslx/rootfs/sbin/tunctl -t tapnat${VM_ID} -u ${USER} \ >/dev/null 2>&1 - sudo /opt/openslx/rootfs/usr/sbin/brctl addif br0 tapnat${VM_ID} - POSTRUN="/opt/openslx/rootfs/sbin/tunctl -d tapnat${VM_ID}" + POSTRUN="sudo /opt/openslx/rootfs/sbin/tunctl -d tapnat${VM_ID}" ;; host*) VIRTCMDOPTS="${VIRTCMDOPTS} -net tap,ifname=taphost${VM_ID},${qemu_ifscr}" sudo /opt/openslx/rootfs/sbin/tunctl -t taphost${VM_ID} -u ${USER} \ >/dev/null 2>&1 - sudo /opt/openslx/rootfs/usr/sbin/brctl addif br0 taphost${VM_ID} - POSTRUN="/opt/openslx/rootfs/sbin/tunctl -d taphost${VM_ID}" + POSTRUN="sudo /opt/openslx/rootfs/sbin/tunctl -d taphost${VM_ID}" ;; *) network_kind="user" @@ -268,7 +295,7 @@ writelog "\tNetwork kind:\t\t${network_kind}" #-show-cursor show cursor # check for kvm modules -if [ -c /dev/kvm ]; then +if [ -c /dev/kvm -a "x${emu}" != "xqemu" ]; then for tool in kvm qemu-kvm; do VIRTCMD=$(which ${tool} 2>/dev/null) [ -n "$VIRTCMD" ] && break |