insmod part_msdos insmod part_gpt insmod search insmod configfile insmod legacy_configfile insmod lvm insmod mdraid09 insmod mdraid1x set debian_cddev="" set debian_cdarch="" if [ "${grub_cpu}" = "x86_64" ]; then debian_cdarch="amd" fi if [ "${grub_cpu}" = "i386" ]; then debian_cdarch="i386" fi if [ -n "${debian_cdarch}" ]; then set debian_kern="/install.${debian_cdarch}/xen/vmlinuz" set debian_initrd="/install.${debian_cdarch}/xen/initrd.gz" search -s debian_domUcfg -f "/install.${debian_cdarch}/xen/debian.cfg" search -s debian_cdkern -f "${debian_kern}" search -s debian_cdinitrd -f "${debian_initrd}" if [ -n "${debian_domUcfg}" -a -n "${debian_cdinitrd}" -a -n "${debian_cdkern}" -a "${debian_domUcfg}" = "${debian_cdinitrd}" -a "${debian_domUcfg}" = "${debian_cdkern}" ]; then debian_cddev="${debian_domUcfg}" fi fi set fedora_cddev="" if [ "${grub_cpu}" = "x86_64" ]; then set fedora_kern="/images/pxeboot/vmlinuz" set fedora_initrd="/images/pxeboot/initrd.img" search -s fedora_cdkern -f "${fedora_kern}" search -s fedora_cdinitrd -f "${fedora_initrd}" if [ -n "${fedora_cdkern}" -a -n "${fedora_cdinitrd}" -a "${fedora_cdkern}" = "${fedora_cdinitrd}" ]; then set fedora_cddev="${fedora_cdkern}" fi fi set suse_cddev="" if [ "${grub_cpu}" = "i386" ]; then set suse_cdarch="i586" else set suse_cdarch="${grub_cpu}" fi if [ -n "${suse_cdarch}" ]; then set suse_kern="/boot/${suse_cdarch}/loader/linux" set suse_initrd="/boot/${suse_cdarch}/loader/initrd" search -s suse_cdkern -f "${suse_kern}" search -s suse_cdinitrd -f "${suse_initrd}" if [ -n "${suse_cdkern}" -a -n "${suse_cdinitrd}" -a "${suse_cdkern}" = "${suse_cdinitrd}" ]; then set suse_cddev="${suse_cdkern}" fi fi set hdcfg_list="\ /boot/grub2/grub.cfg \ /grub2/grub.cfg \ /boot/grub/grub.cfg \ /grub/grub.cfg\ " set hdlst_list="\ /boot/grub/menu.lst \ /grub/menu.lst\ " for c in ${hdcfg_list}; do btrfs_relative_path=1 if search -s hddev -f "${c}"; then btrfs_relative_path=0 if [ "${hddev}" = "memdisk" ]; then break fi menuentry "${hddev} Boot From Hard Disk (${c})" "${hddev}" "${c}" { set root="${2}" set cfg="${3}" btrfs-get-default-subvol -p -o btrfs_default_subvol ($root) if [ -n "${btrfs_default_subvol}" ]; then configfile "${btrfs_default_subvol}${cfg}" else configfile "${cfg}" fi } break fi btrfs_relative_path=0 done for c in ${hdlst_list}; do btrfs_relative_path=1 if search -s hddev -f "${c}"; then btrfs_relative_path=0 if [ "${hddev}" = "memdisk" ]; then break fi menuentry "${hddev} Boot From Hard Disk (${c})" "${hddev}" "${c}" { set root="${2}" set cfg="${3}" btrfs-get-default-subvol -p -o btrfs_default_subvol ($root) if [ -n "${btrfs_default_subvol}" ]; then legacy_configfile "${btrfs_default_subvol}${cfg}" else legacy_configfile "${cfg}" fi } break fi btrfs_relative_path=0 done set timeout=0 if [ -n "${debian_cddev}" ]; then set timeout=8 menuentry "${debian_cddev} Debian Install" { set root="${debian_cddev}" linux "${debian_kern}" ignore_loglevel initrd "${debian_initrd}" } fi if [ -n "${fedora_cddev}" ]; then set timeout=8 menuentry "${fedora_cddev} Fedora Install" { set root="${fedora_cddev}" linux "${fedora_kern}" ignore_loglevel initrd "${fedora_initrd}" } menuentry "${fedora_cddev} Fedora Rescue" { set root="${fedora_cddev}" linux "${fedora_kern}" ignore_loglevel rescue initrd "${fedora_initrd}" } fi if [ -n "${suse_cddev}" ]; then set timeout=8 set root="${suse_cddev}" set suse_cdcfg="/boot/${suse_cdarch}/grub2-xen/grub.cfg" if [ -e "/boot/${suse_cdarch}/vmlinuz-xen" ]; then set suse_kern="/boot/${suse_cdarch}/vmlinuz-xen" set suse_initrd="/boot/${suse_cdarch}/initrd-xen" fi if [ -f "${suse_cdcfg}" ]; then menuentry "${suse_cddev} SUSE Install menu" { set root="${suse_cddev}" configfile "${suse_cdcfg}" } elif [ -f "${suse_kern}" -a -f "$suse_initrd" ]; then menuentry "${suse_cddev} SUSE Install" { linux "${suse_kern}" xencons=hvc0 initrd "${suse_initrd}" } menuentry "${suse_cddev} SUSE Rescue" { linux "${suse_kern}" xencons=hvc0 rescue=1 initrd "${suse_initrd}" } menuentry "${suse_cddev} SUSE Upgrade" { linux "${suse_kern}" xencons=hvc0 upgrade=1 initrd "${suse_initrd}" } else echo "the device ${suse_cddev} is not xen pv bootable" fi fi