The reasons that I am taking this approach are as follows:
GRUB as a bootloader is completely optional for Xen.
The grub-mkconfig-helper is showing its age and is not needed
anymore because the GRUB's grub-mkconfig script natively supports
the creation of menu entries for Linux on Xen.
The GRUB provides native configuration keys for Xen that provide
greater flexibility and portability than the local approach of
grub.conf and grub-mkconfig-helper.
The values of these keys are passed to the Xen hypervisor in the Xen
menu entries and replace the functionality of the
XEN_HYPERVISOR_CMDLINE key from grub.conf:
GRUB_CMDLINE_XEN=
GRUB_CMDLINE_XEN_DEFAULT=
The values of these keys replace the values of
GRUB_CMDLINE_LINUX and GRUB_CMDLINE_LINUX_DEFAULT (respectively)
in the Xen menu entries and the effects of XEN_LINUX_CMDLINE and
XEN_LINUX_CMDLINE_OVERRIDE from grub.conf:
It was simpler to add these configuration keys into the default
configuration of grub-xen-git than it was to somehow add them
to /etc/default/grub from this package.
Since the time pvgrub2 was adopted by GRUB 1, the AUR has not had a
package that built GRUB2 for the Xen platform. I thought about
contributing a patch to the grub-git AUR package, but since it
would double their build targets (and compile time) for a purpose that
was probably not important or useful for most of the users of that
package (and since this also seemed like too much for this package to
take on as well), I thought it might be better to fork their project and
create a new package that would address all the GRUB-ish needs of Xen.
The reasons that I am taking this approach are as follows:
GRUB as a bootloader is completely optional for Xen.
The
grub-mkconfig-helper
is showing its age and is not needed anymore because the GRUB'sgrub-mkconfig
script natively supports the creation of menu entries for Linux on Xen.The GRUB provides native configuration keys for Xen that provide greater flexibility and portability than the local approach of
grub.conf
andgrub-mkconfig-helper
.The values of these keys are passed to the Xen hypervisor in the Xen menu entries and replace the functionality of the
XEN_HYPERVISOR_CMDLINE
key fromgrub.conf
:GRUB_CMDLINE_XEN= GRUB_CMDLINE_XEN_DEFAULT=
The values of these keys replace the values of
GRUB_CMDLINE_LINUX
andGRUB_CMDLINE_LINUX_DEFAULT
(respectively) in the Xen menu entries and the effects ofXEN_LINUX_CMDLINE
andXEN_LINUX_CMDLINE_OVERRIDE
fromgrub.conf
:GRUB_CMDLINE_LINUX_XEN_REPLACE= GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT=
It was simpler to add these configuration keys into the default configuration of grub-xen-git than it was to somehow add them to /etc/default/grub from this package.
Since the time pvgrub2 was adopted by GRUB 1, the AUR has not had a package that built GRUB2 for the Xen platform. I thought about contributing a patch to the
grub-git
AUR package, but since it would double their build targets (and compile time) for a purpose that was probably not important or useful for most of the users of that package (and since this also seemed like too much for this package to take on as well), I thought it might be better to fork their project and create a new package that would address all the GRUB-ish needs of Xen.