From: Roman Bogorodskiy Date: Fri, 31 Jul 2026 15:53:56 +0000 (+0200) Subject: bhyve: capabilities: use full path for emulator X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;p=thirdparty%2Flibvirt.git bhyve: capabilities: use full path for emulator Currently, when the bhyve driver builds capabilities, it uses just "bhyve" as emulator path. That leads to issues, e.g. virt-manager uses this value to fill domain's emulator field, which has to be an absolute path. So that results in a domain XML that fails validation. Fix by trying to find "bhyve" in PATH and falling back to "/usr/sbin/bhyve". Closes: https://gitlab.com/libvirt/libvirt/-/work_items/899 Signed-off-by: Roman Bogorodskiy Reviewed-by: Daniel P. Berrangé --- diff --git a/src/bhyve/bhyve_capabilities.c b/src/bhyve/bhyve_capabilities.c index 1fe0a3ad77..85988a2ce8 100644 --- a/src/bhyve/bhyve_capabilities.c +++ b/src/bhyve/bhyve_capabilities.c @@ -48,13 +48,14 @@ virBhyveCapsBuild(void) virCaps *caps; virCapsGuest *guest; virArch hostarch = virArchFromHost(); + g_autofree char *binary = virFindFileInPath("bhyve"); if ((caps = virCapabilitiesNew(hostarch, false, false)) == NULL) return NULL; guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, - hostarch, "bhyve", + hostarch, binary ? binary : "/usr/sbin/bhyve", NULL, 0, NULL); virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_BHYVE,