gpu_pass.sh (1431B)
1 #!/bin/sh 2 set -e 3 4 WRKDIR=$PWD 5 6 if [ "$(id -u)" -ne 0 ] 7 then printf "The script has to be run as root.\n" 8 exit 9 fi 10 11 PERMUSER="$(id -nu "1000")" 12 13 id "$PERMUSER" > /dev/null 2>&1 || { echo "User $PERMUSER does not exist. Exiting."; exit 1; } 14 15 sudo -u "$PERMUSER" mkdir -p /home/"$PERMUSER"/.local/share/vgabios 16 sudo -u "$PERMUSER" cp "$WRKDIR"/Hooks/patch.rom /home/"$PERMUSER"/.local/share/vgabios 17 18 pacman -Sy --noconfirm 19 pacman -S qemu-desktop libvirt libvirt-dinit edk2-ovmf virt-manager dnsmasq wget --noconfirm 20 21 mkdir /etc/libvirt/hooks 22 23 # Online version 24 #wget 'https://raw.githubusercontent.com/PassthroughPOST/VFIO-Tools/master/libvirt_hooks/qemu' \ 25 # -O /etc/libvirt/hooks/qemu 26 27 cp "$WRKDIR"/Hooks/qemu /etc/libvirt/hooks/ 28 29 chmod +x /etc/libvirt/hooks/qemu 30 31 mkdir -p /etc/libvirt/hooks/qemu.d/win10-hidden-pt/prepare/begin 32 mkdir -p /etc/libvirt/hooks/qemu.d/win10-hidden-pt/release/end 33 34 cp "$WRKDIR"/Hooks/start.sh /etc/libvirt/hooks/qemu.d/win10-hidden-pt/prepare/begin/ 35 #sudo cp Hooks/isolstart.sh /etc/libvirt/hooks/qemu.d/win10/prepare/begin/ 36 cp "$WRKDIR"/Hooks/revert.sh /etc/libvirt/hooks/qemu.d/win10-hidden-pt/release/end/ 37 #sudo cp Hooks/isocpurevert.sh /etc/libvirt/hooks/qemu.d/win10/release/end/ 38 cp "$WRKDIR"/Hooks/kvm.conf /etc/libvirt/hooks/ 39 40 # usermod -aG libvirt,kvm,input,audio,video "$PERMUSER" 41 # libvirt group for virt-manager as user and input for evdev devices 42 usermod -aG libvirt,input "$PERMUSER"