Use QEMU's standard VGA instead of virtio-vga

On Arch, -vga virtio needs qemu-hw-display-virtio-vga and also
qemu-hw-display-virtio-gpu, which that package doesn't depend on; with only
the first, QEMU segfaults at start without a message. The smoketest's VMs
are headless (or VNC), so -vga std, which qemu-base has, is enough. This
reverts 2207208's extra package and checks.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-11-04 20:13:13 -07:00
co-authored by Claude Opus 5.5
parent 2207208326
commit 9e4b78bb88
9 changed files with 6 additions and 46 deletions
-6
View File
@@ -62,12 +62,6 @@ in_flatpak() {
[ -f /.flatpak-info ] || [ -n "${FLATPAK_ID:-}" ]
}
# Whether QEMU has the display the smoketest's VMs start with (-vga virtio).
# Arch packages it apart from qemu-base, as qemu-hw-display-virtio-vga.
qemu_has_virtio_vga() {
[[ "$(qemu-system-x86_64 -device help 2> /dev/null)" == *'name "virtio-vga"'* ]]
}
# This project's folder
sibling_dir() {
cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd
-9
View File
@@ -50,15 +50,6 @@ cmd_doctor() {
problem "not installed: ${missing[*]}" "fix: bash $(sibling_dir)/update.sh"
fi
if command -v qemu-system-x86_64 &> /dev/null; then
if qemu_has_virtio_vga; then
ok "QEMU has the virtio-vga display the smoketest's VMs use"
else
problem "QEMU has no virtio-vga display, so the smoketest's VMs won't start" \
"fix: bash $(sibling_dir)/update.sh"
fi
fi
if [ -r /dev/kvm ] && [ -w /dev/kvm ]; then
ok "KVM is available for the smoketest's virtual machines"
else
-2
View File
@@ -56,8 +56,6 @@ require_vm_tools() {
command -v "$tool" &> /dev/null \
|| die "$tool isn't installed. Install coredesktop-dev's packages: bash $(sibling_dir)/update.sh"
done
qemu_has_virtio_vga \
|| die "QEMU has no virtio-vga display. Install coredesktop-dev's packages: bash $(sibling_dir)/update.sh"
[ -r "$KVM_DEVICE" ] && [ -w "$KVM_DEVICE" ] \
|| die "Can't use $KVM_DEVICE. Turn on virtualization (VT-x/AMD-V) in the firmware settings."
}
+1 -1
View File
@@ -76,7 +76,7 @@ vm_start() {
-drive "file=$disk,if=virtio,format=qcow2,discard=unmap" \
-nic "user,model=virtio-net-pci,hostfwd=tcp:127.0.0.1:$VM_PORT-:22" \
-virtfs "local,path=$PKG_CACHE,mount_tag=pkgcache,security_model=mapped-xattr" \
-vga virtio \
-vga std \
"${display[@]}" \
-serial "file:$VM_DIR/serial.log" \
-pidfile "$VM_DIR/qemu.pid" \