Super GRUB2 disk 1.98s1 will include an option that will look for loop bootable iso files in /boot-isos/ on all devices and, for supported distributions, present a menu allowing you to boot from them. Currently the lua script that does this has to search for specific files on the iso to try to guess the distribution, and from there uses distribution-specific hard coded paths and kernel parameters. This is sub-optimal for many reasons, among them that new distributions need to be added to the script manually and even old ones may need updating for newer versions of the distribution. (This was the case for grml.)
On the supergrub mailing list I proposed that distributions include a loopback.cfg, which would be a regular grub.cfg with the addition of extra kernel parameters needed to loop mount the iso file. To boot such an iso from grub you would loop mount the iso, set root=(loop-device), export a variable $iso_path with the path to the iso file, and then "configfile /boot/grub/loopback.cfg". You then get the distribution's full, up to date, list of options, and no special-casing of distributions is required. Creating a suitable loopback.cfg is fairly easy, especially if the live distribution already uses grub2. As an example, here is a commit modifying grml's grub.cfg so that it can be used normally or as a loopback.cfg (so they only have to maintain one file): http://tinyurl.com/y52w5se Adrian responded to my proposal pointing me to http://mgerards.net/blog/?p=16 and suggesting I ask here if there had been any progress with that idea. That post suggests having a multiboot bootloader on the iso, passing the iso path to the bootloader via the multiboot cmdline. Any comments on either proposal, or an entirely different one, are welcome and encouraged. -- Jordan Uggla (Jordan_U on irc.freenode.net) _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel