On a Friday in 2021, Nathan Vander Wilt wrote:
I am having trouble when I `virsh create test.xml` with an aarch64
guest on a macOS (Apple Silicon) host. I've wrestled with a variety of
issues but the one I simply haven't been able to get past is this
regarding the UEFI firmware:
error: Failed to create domain from test.xml
error: operation failed: Unable to find any firmware to satisfy 'efi'
This is with `virsh --version` of 7.9.0 and `qemu-system-aarch64
--version` of 6.1.0, both installed via the common `brew` tool from
its main 'homebrew/core' tap. I have confirmed that the loader/nvram
files referenced do exist.
Running `qemu-system-aarch64 -L help` outputs two lines:
/opt/homebrew/Cellar/qemu/6.1.0_1/bin/../share/qemu-firmware
/opt/homebrew/Cellar/qemu/6.1.0_1/bin/../share/qemu
The …/share/qemu-firmware folder does NOT exist, but symlinking it to
a …/share/qemu/firmware folder which does exist does not improve the
situation.
I have also tried renaming the …/share/qemu/firmware folder (e.g. `mv
firmware zzz-firmware`) as some notes I found led me to believe that
libvirst might ignore my loader/nvram settings entirely if QEMU had
the "new" firmware JSON configuration stuff there? But again no
improvement….
How can I debug this further? What should I try next?
thanks,
-natevw
Can you try with the latest libvirt?
7.10.0-rc2 was just tagged today and should be out this week:
https://listman.redhat.com/archives/libvirt-announce/2021-November/msg000...
Andrea did some fixes that are supposed to help with Apple Silicon:
https://gitlab.com/libvirt/libvirt/-/issues/168
Jano