Boot Linux ISOs from Grub2

insmod play
play 960 440 1 0 4 440 1
insmod loopback
insmod iso9660
insmod udf


# TESTED WORKS
menuentry "SystemRescueCD 5.0.2" {
        set iso=/boot-iso/systemrescuecd-x86-5.0.2.iso
        loopback loop ${iso}
        linux  (loop)/isolinux/rescue64 nomodeset vga=791 docache setkmap=us isoloop=${iso}
        initrd (loop)/isolinux/initram.igz
}

# TESTED WORKS
menuentry "Parrot Full 3.7" {
        iso="/boot-iso/Parrot-full-3.7_amd64.iso"
        bootoptions="findiso=$iso boot=live hostname=parrot splash noautomount"
        search --set -f $iso
        loopback loop $iso
        linux (loop)/live/vmlinuz $bootoptions
        initrd (loop)/live/initrd.img
}



# TESTED WORKS
menuentry "Parted Magic 2017_06_12 amd64" {
        set isofile="/boot-iso/pmagic_2017_06_12.iso"
        loopback loop (hd0,1)$isofile
        linux (loop)/pmagic/bzImage64 load_ramdisk=1 iso_filename=$isofile
        initrd (loop)/pmagic/initrd.img (loop)/pmagic/fu.img (loop)/pmagic/m64.img
}



# TESTED WORKS
menuentry "Kali Linux XFCE - 2017.1 amd64" {
        iso="/boot-iso/kali-linux-xfce-2017.1-amd64.iso"
        bootoptions="findiso=$iso boot=live noconfig=sudo hostname=kali quiet splash"
        search --set -f $iso
        loopback loop $iso
        linux (loop)/live/vmlinuz $bootoptions
        initrd (loop)/live/initrd.img
}


# Works slow.
menuentry "Tails" {
        iso="/home/t94xr/ISO/tails-i386-2.10.iso"
        bootoptions="findiso=$iso boot=live apparmor=1 security=apparmor noprompt block.events_dfl_poll_msecs=1000"
        search --set -f $iso
        loopback loop $iso
        linux (loop)/live/vmlinuz $bootoptions
        initrd (loop)/live/initrd.img
}

# Requires Persistent Storage Drive
#menuentry "BlackArch Linux 2017.03.01" {
#       set isofile="/home/t94xr/ISO/blackarchlinux-live-2017.03.01-x86_64.iso"
#       loopback loop $isofile
#       linux (loop)/blackarch/boot/x86_64/vmlinuz img_loop=$isofile archisobasedir=blackarch archisolabel=BLACKARCH_201703 nopersistent
#       initrd (loop)/blackarch/boot/x86_64/archiso.img
#}


menuentry "DBAN 2.3 i586 ISO" {
        set isofile="/home/t94xr/ISO/dban-2.3.0_i586.iso"
        loopback loop $isofile
        linux (loop)/DBAN.BZI nuke="dwipe" iso-scan/filename=$isofile silent --
}




# SYSTEM POWER / REBOOT
menuentry "# REBOOT" { reboot }
menuentry "# POWER OFF" { halt }