When i create a new libvirt instance with virt-manager, it embeds the full path to the qemu binary used at the time. For the machine named "networkboot": # grep qemu-system /etc/libvirt/qemu/networkboot.xml /gnu/store/0rzb7rjri2kb258j58asndw2pnp0xv9p-qemu-2.11.1/bin/qemu-system-x86_64: If I later run "guix gc" and it happens to remove this particular qemu version, the system no longer runs, of course: # virsh start networkboot error: Failed to start domain networkboot error: Cannot check QEMU binary /gnu/store/0rzb7rjri2kb258j58asndw2pnp0xv9p-qemu-2.11.1/bin/qemu-system-x86_64: No such file or directory It also means each virtual machine may be running on an older version of qemu, for better or worse. Manaully replacing the emulator entry in the .xml file with /run/current-system/profie/bin/qemu-system-x86_64 works around the issue, and might be the easiest fix. It wouldn't take advantage of a qemu install done in the user's profile. I'm not sure if libvirtd can be run as a user-installed profile, so maybe it has to use the system path anyways. I believe libvirtd is normally run as it's own user, with it's own PATH. live well, vagrant