New libvirt version 3.2.0 will be released really soon (maybe even before I publish this post), and I'm happy to announce that it brings UEFI support for the bhyve driver.
Specifically, starting with this version it's possible:
- Point domains to the UEFI boot ROM to boot UEFI guests (instead of using grub-bhyve(1) for example)
- Connect to guests through VNC (e.g. using vncviewer from net/tigervnc)
- Use an USB tablet input device
Gotchas: as you might now, bhyve's fbuf device accepts the vga option (e.g. vga=off etc), and different guest OSes might require different settings to make things work. It's not possible to change this using libvirt right now, so the default value (which is vga=io) is used, hence some guests will not work.
Kudos to Fabian Freyer for doing the majority of that work as a part of GSoC 2016.