From 6248aa519e889c986f349af0017c78b362ea01b7 Mon Sep 17 00:00:00 2001 From: "sec-check[bot]" Date: Wed, 16 Sep 2026 07:49:02 -0400 Subject: [PATCH] fix(devmode): default virt-manager to qemu:///session, not qemu:///system MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bluefin ships no system libvirtd/virtqemud daemon or socket, so the virt-manager Flatpak's default qemu:///system connection can never open — it fails with: Failed to connect socket to '/var/run/libvirt/virtqemud-sock' ujust toggle-devmode / ujust devmode already configures libvirt itself to default to qemu:///session via ensure-libvirt-session-config, but virt-manager keeps its own remembered connection list in dconf (org/virt-manager/virt-manager connections), which defaults to qemu:///system regardless of that libvirt.conf setting. Add a distro.d override so virt-manager's default connection matches the rootless session setup Bluefin actually supports. Fixes #822 Signed-off-by: scanner Signed-off-by: sec-check[bot] --- .../distro.d/06-bluefin-virt-manager-session | 10 +++++++++ tests/test_virt_manager_dconf.bats | 21 +++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 system_files/bluefin/etc/dconf/db/distro.d/06-bluefin-virt-manager-session create mode 100644 tests/test_virt_manager_dconf.bats diff --git a/system_files/bluefin/etc/dconf/db/distro.d/06-bluefin-virt-manager-session b/system_files/bluefin/etc/dconf/db/distro.d/06-bluefin-virt-manager-session new file mode 100644 index 000000000..4f672232a --- /dev/null +++ b/system_files/bluefin/etc/dconf/db/distro.d/06-bluefin-virt-manager-session @@ -0,0 +1,10 @@ +# Bluefin ships no system libvirtd/virtqemud daemon or socket, so the +# virt-manager Flatpak's default qemu:///system connection can never open +# (see "Failed to connect socket to '/var/run/libvirt/virtqemud-sock'"). +# `ujust toggle-devmode` / `ujust devmode` sets up qemu:///session as the +# libvirt default via /usr/libexec/ensure-libvirt-session-config, so make +# virt-manager's own remembered connection list match that rootless setup +# instead of defaulting to the system connection it can't reach. + +[org/virt-manager/virt-manager] +connections=['qemu:///session'] diff --git a/tests/test_virt_manager_dconf.bats b/tests/test_virt_manager_dconf.bats new file mode 100644 index 000000000..6cf2dd8f5 --- /dev/null +++ b/tests/test_virt_manager_dconf.bats @@ -0,0 +1,21 @@ +#!/usr/bin/env bats +# Tests for system_files/bluefin/etc/dconf/db/distro.d/06-bluefin-virt-manager-session +# +# virt-manager's Flatpak has no way to reach a system libvirtd/virtqemud +# socket on Bluefin (none is installed or enabled), so its default +# qemu:///system connection fails. This override must point it at +# qemu:///session instead, matching `ujust toggle-devmode`'s libvirt setup. + +DCONF_OVERRIDE="$BATS_TEST_DIRNAME/../system_files/bluefin/etc/dconf/db/distro.d/06-bluefin-virt-manager-session" + +@test "virt-manager dconf override: file exists" { + [ -f "${DCONF_OVERRIDE}" ] +} + +@test "virt-manager dconf override: targets the virt-manager schema path" { + grep -qxF '[org/virt-manager/virt-manager]' "${DCONF_OVERRIDE}" +} + +@test "virt-manager dconf override: defaults connections to qemu:///session" { + grep -qxF "connections=['qemu:///session']" "${DCONF_OVERRIDE}" +}