mirror of
https://github.com/PhyllomeOS/phyllomeos.git
synced 2024-12-22 13:05:17 +00:00
149 lines
6.0 KiB
Bash
149 lines
6.0 KiB
Bash
#!/bin/bash
|
|
|
|
# Attention please: will soon be deprecated in favor of a more generic virtual machine model
|
|
|
|
# This script can be run as a normal user.
|
|
# Make sure qemu-session is available as an URI in virt-manager running the following in your terminal:
|
|
# gsettings set org.virt-manager.virt-manager.connections uris "['qemu:///system', 'qemu:///session']"
|
|
# gsettings set org.virt-manager.virt-manager.connections autoconnect "['qemu:///system', 'qemu:///session']"
|
|
|
|
|
|
# Create then shutdown a diskless virtual machine with qemu-session, a spice display without 3D acceleration, using virt-install.
|
|
# Works with any GPUs on the host but does not provide 3D acceleration. Does expect an EFI-based Linux guest.
|
|
# No ISO is attached to this virtual machine. The user have to manually add one.
|
|
|
|
virt-install \
|
|
--connect qemu:///session \
|
|
--metadata description="Works with any GPUs on the host but does not provide 3D acceleration. Does expect an EFI-based Linux guest. As it uses QEMU session, passthrough wont work out of the box" \
|
|
--os-variant detect=off \
|
|
--virt-type kvm \
|
|
--arch x86_64 \
|
|
--machine q35 \
|
|
--name user-linux-spice \
|
|
--boot uefi \
|
|
--cpu host-model,topology.sockets=1,topology.cores=1,topology.threads=1 \
|
|
--vcpus 1 \
|
|
--memory 2048 \
|
|
--video virtio \
|
|
--graphics spice,listen=none \
|
|
--channel spicevmc \
|
|
--channel unix,target.type=virtio,target.name=org.qemu.guest_agent.0 \
|
|
--autoconsole none \
|
|
--console pty,target.type=virtio \
|
|
--sound none \
|
|
--network type=user,model=virtio \
|
|
--controller type=virtio-serial \
|
|
--controller type=usb,model=none \
|
|
--controller type=scsi,model=virtio-scsi \
|
|
--input type=keyboard,bus=virtio \
|
|
--input type=tablet,bus=virtio \
|
|
--rng /dev/urandom,model=virtio \
|
|
--disk none \
|
|
--install no_install=yes
|
|
|
|
virsh destroy user-linux-spice
|
|
|
|
# Create then shutdown a diskless virtual machine with qemu-session, spice and opengl enabled, using virt-install.
|
|
# Spice with OpenGL performs better than egl-headless.
|
|
# Works with AMD and Intel GPUs on the host and does expect an EFI-based Linux guest.
|
|
# No ISO is attached to this virtual machine. The user have to manually add one.
|
|
|
|
virt-install \
|
|
--connect qemu:///session \
|
|
--metadata description="Spice with OpenGL enabled performs better than egl-headless with OpenGL enabled. Works with AMD and Intel GPUs on the host and does expect an EFI-based Linux guest. As it uses QEMU session, passthrough wont work out of the box" \
|
|
--os-variant detect=off \
|
|
--virt-type kvm \
|
|
--arch x86_64 \
|
|
--machine q35 \
|
|
--name user-linux-spice-gl \
|
|
--boot uefi \
|
|
--cpu host-model,topology.sockets=1,topology.cores=1,topology.threads=1 \
|
|
--vcpus 1 \
|
|
--memory 2048 \
|
|
--video virtio \
|
|
--graphics spice,gl.enable=yes,listen=none \
|
|
--channel spicevmc \
|
|
--channel unix,target.type=virtio,target.name=org.qemu.guest_agent.0 \
|
|
--autoconsole none \
|
|
--console pty,target.type=virtio \
|
|
--sound none \
|
|
--network type=user,model=virtio \
|
|
--controller type=virtio-serial \
|
|
--controller type=usb,model=none \
|
|
--controller type=scsi,model=virtio-scsi \
|
|
--input type=keyboard,bus=virtio \
|
|
--input type=tablet,bus=virtio \
|
|
--rng /dev/urandom,model=virtio \
|
|
--disk none \
|
|
--install no_install=yes
|
|
|
|
virsh destroy user-linux-spice-gl
|
|
|
|
# Create then shutdown a diskless virtual machine with qemu-sesssion, egl-headless and opengl enabled, using virt-install.
|
|
# Works with all GPUs on the host including Nvidia's and does expect an EFI-based Linux guest.
|
|
# No ISO is attached to this virtual machine. The user have to manually add one.
|
|
|
|
virt-install \
|
|
--connect qemu:///session \
|
|
--metadata description="Works with all GPUs on the host including Nvidia and does expect an EFI-based Linux guest. As it uses QEMU session, passthrough wont work out of the box" \
|
|
--os-variant detect=off \
|
|
--virt-type kvm \
|
|
--arch x86_64 \
|
|
--machine q35 \
|
|
--name user-linux-egl-headless-gl \
|
|
--boot uefi \
|
|
--cpu host-model,topology.sockets=1,topology.cores=1,topology.threads=1 \
|
|
--vcpus 1 \
|
|
--memory 2048 \
|
|
--video virtio \
|
|
--graphics spice,listen=none \
|
|
--graphics egl-headless,gl.enable=yes \
|
|
--channel spicevmc \
|
|
--channel unix,target.type=virtio,target.name=org.qemu.guest_agent.0 \
|
|
--autoconsole none \
|
|
--console pty,target.type=virtio \
|
|
--sound none \
|
|
--network type=user,model=virtio \
|
|
--controller type=virtio-serial \
|
|
--controller type=usb,model=none \
|
|
--controller type=scsi,model=virtio-scsi \
|
|
--input type=keyboard,bus=virtio \
|
|
--input type=tablet,bus=virtio \
|
|
--rng /dev/urandom,model=virtio \
|
|
--disk none \
|
|
--install no_install=yes
|
|
|
|
virsh destroy user-linux-egl-headless-gl
|
|
|
|
# Create and run a diskless virtual machine with `virt-install`. Spice and OpenGL are enabled.
|
|
# Should work with all GPUs on the host including Nvidia's and does expect an EFI-based Linux guest.
|
|
# No ISO is attached to this virtual machine. The user has to manually add one.
|
|
|
|
virt-install \
|
|
--connect qemu:///session \
|
|
--metadata description="SDL with OpenGL enabled performs better than egl-headless or Spice with OpenGL enabled. Should work with most GPUs. As it uses QEMU session, passthrough wont work out of the box" \
|
|
--os-variant detect=off \
|
|
--virt-type kvm \
|
|
--arch x86_64 \
|
|
--machine q35 \
|
|
--name linux-sdl-gl \
|
|
--boot uefi \
|
|
--cpu host-model,topology.sockets=1,topology.cores=1,topology.threads=1 \
|
|
--vcpus 1 \
|
|
--memory 2048 \
|
|
--video virtio \
|
|
--graphics sdl \
|
|
--autoconsole none \
|
|
--console pty,target.type=virtio \
|
|
--sound none \
|
|
--network type=user,model=virtio \
|
|
--controller type=virtio-serial \
|
|
--controller type=usb,model=none \
|
|
--controller type=scsi,model=virtio-scsi \
|
|
--input type=keyboard,bus=virtio \
|
|
--input type=tablet,bus=virtio \
|
|
--rng /dev/urandom,model=virtio \
|
|
--disk none \
|
|
--install no_install=yes
|
|
|
|
virsh destroy user-linux-sdl-gl |