menuentry 'Load Operating System' {
	insmod ahci
	insmod part_msdos
	insmod part_gpt
	for x in (ahci0,1) (ahci0,2) (ahci0,3) (ahci0,4); do
		if [ -f "$x/grub/libreboot_grub.cfg" ] ; then
			set root=$x
			configfile /grub/libreboot_grub.cfg
		fi
		if [ -f "$x/boot/grub/libreboot_grub.cfg" ] ; then
			set root=$x
			configfile /boot/grub/libreboot_grub.cfg
		fi
	done

	set root='ahci0,1'
	if [ -f "/vmlinuz" ] ; then
		linux  /vmlinuz root=/dev/sda1 rw
		if [ -f "/initrd.img" ] ; then
			initrd /initrd.img
		fi
	elif [ -f "/boot/vmlinuz" ] ; then
		linux  /boot/vmlinuz root=/dev/sda1 rw
		if [ -f "/boot/initrd.img" ] ; then
			initrd /boot/initrd.img
		fi
	fi
}
menuentry 'Parse ISOLINUX menu (ahci0)' {
	insmod ahci
	insmod part_msdos
	insmod part_gpt
	for x in (ahci0,1) (ahci0,2) (ahci0,3) (ahci0,4); do
		set root=$x
		if [ -f "/isolinux/isolinux.cfg" ] ; then
			syslinux_configfile -i /isolinux/isolinux.cfg
		elif [ -f "/syslinux/syslinux.cfg" ] ; then
			syslinux_configfile -i /syslinux/syslinux.cfg
		elif [ -f "/boot/isolinux/isolinux.cfg" ] ; then
			syslinux_configfile -i /boot/isolinux/isolinux.cfg
		elif [ -f "/boot/syslinux/syslinux.cfg" ] ; then
			syslinux_configfile -i /boot/syslinux/syslinux.cfg
		fi
	done
}
menuentry 'Parse ISOLINUX menu (USB)' {
	insmod usbms
	insmod part_msdos
	insmod part_gpt
	for x in (usb0) (usb0,1) (usb0,2) (usb0,3) (usb0,4); do
		set root=$x
		if [ -f "/isolinux/isolinux.cfg" ] ; then
			syslinux_configfile -i /isolinux/isolinux.cfg
		elif [ -f "/syslinux/syslinux.cfg" ] ; then
			syslinux_configfile -i /syslinux/syslinux.cfg
		elif [ -f "/boot/isolinux/isolinux.cfg" ] ; then
			syslinux_configfile -i /boot/isolinux/isolinux.cfg
		elif [ -f "/boot/syslinux/syslinux.cfg" ] ; then
			syslinux_configfile -i /boot/syslinux/syslinux.cfg
		fi
	done
}
menuentry 'Parse ISOLINUX menu (CD/DVD)' {
	insmod ahci
	insmod ata
	insmod iso9660
	for x in (ata0) (ahci1); do
		set root=$x
		if [ -f "/isolinux/isolinux.cfg" ] ; then
			syslinux_configfile -i /isolinux/isolinux.cfg
		elif [ -f "/syslinux/syslinux.cfg" ] ; then
			syslinux_configfile -i /syslinux/syslinux.cfg
		elif [ -f "/boot/isolinux/isolinux.cfg" ] ; then
			syslinux_configfile -i /boot/isolinux/isolinux.cfg
		elif [ -f "/boot/syslinux/syslinux.cfg" ] ; then
			syslinux_configfile -i /boot/syslinux/syslinux.cfg
		fi
	done
}
menuentry 'Switch to grubtest.cfg' {
	set root='cbfsdisk'
	configfile (cbfsdisk)/grubtest.cfg
}
menuentry 'Search for GRUB configuration (grub.cfg) outside of CBFS' {
	insmod ahci
	insmod usbms
	insmod part_msdos
	insmod part_gpt
	for x in (ahci0,1) (ahci0,2) (ahci0,3) (ahci0,4) (usb0) (usb0,1) (usb0,2) (usb0,3) (usb0,4); do
		if [ -f "$x/grub/grub.cfg" ] ; then
			submenu "Load Config from $x" $x { 
				root=$2
				source /grub/grub.cfg
				unset superusers
			}
		fi
		if [ -f "$x/boot/grub/grub.cfg" ] ; then
			submenu "Load Config from $x" $x {
				root=$2
				source /boot/grub/grub.cfg
				unset superusers
			}
		fi
		if [ -f "$x/grub2/grub.cfg" ] ; then
			submenu "Load Config from $x" $x { 
				root=$2
				source /grub2/grub.cfg
				unset superusers
			}
		fi
		if [ -f "$x/boot/grub2/grub.cfg" ] ; then
			submenu "Load Config from $x" $x {
				root=$2
				source /boot/grub2/grub.cfg
				unset superusers
			}
		fi
	done
}

