@vibrion If you compile the package as is you'll get a version of Xen from the current stable tree (right now, 4.20.0) without the stubdom support files. This hasn't changed for several versions of the package. I do suggest building Xen in a chroot or clean VM as the build process can bring in surprise dependencies.
As far as booting domUs, I've added the new PV and PVH grub packages to AUR. Feel free to build them. PyGrub has been deprecated for years and has problems.
To use the new grub, use it in the kernel line in your domU configs. For PVH:
kernel = "/usr/lib/xen/boot/pvhgrub"
For PV:
kernel = "/usr/lib/xen/boot/pvgrub64"
This grub will look for a configuration file in the usual places.
One problem is that pvgrub (32 or 64) doesn't understand the way Arch Linux compresses the kernel. For it to properly work, we need to make a vmlinux
using the extract_vmlinux
script in the linux-headers
package. If you don't feel like doing that, the PVH bootloader does not have that issue.
I plan on doing an update of the documentation in the wiki as soon as the most recent spate of changes is complete. I'm currently working on a problem with edk2 which prevents the UEFI firmware from seeing the right number of cores.
Pinned Comments
Refutationalist commented on 2025-03-12 12:06 (UTC) (edited on 2025-03-13 08:23 (UTC) by Refutationalist)
We've moved to the newly-stable 4.20.0 branch. There are also other changes:
If you're still using pygrub note that it is deprecated. The solution is to build PV grub instead, which used to be in AUR but is now missing. I am asking a couple questions on the mailing list, and I intend to put my current build of xen-grub (which supersedes xen-pvhgrub) on AUR as soon as possible. If you need to build it before that occurs, you can find it in my PKGBUILD repo.
EDIT: 4.20.0-2 adds support for the xen-edk2 package, which has a fixed UEFI for xen