]> code.delx.au - monosys/blobdiff - multiboot-setup
lib-ext-backup
[monosys] / multiboot-setup
index 6e8c1b89ad33d03a0e502dda1799db25d03591f9..93842dbbeeb61cc8bc218b4277096052bd8d71f3 100755 (executable)
@@ -91,6 +91,11 @@ function cmd_freedos {
     curl -fL "$FREEDOS_URL" > "${MULTIBOOT_MNT}/FD12LITE.zip"
 }
 
+function cmd_memtest {
+    curl -fL "https://www.memtest.org/download/5.01/memtest86+-5.01.bin.gz" | \
+        zcat - > "${MULTIBOOT_MNT}/memtest.bin"
+}
+
 function print_grub_cfg {
     cat <<EOT
 insmod all_video
@@ -114,14 +119,13 @@ done
 
 function setup_debian {
   menuentry "\$1" {
-    loopback loop \$1
-    linux (loop)/live/vmlinuz* boot=live components findiso=\$1
-    initrd (loop)/live/initrd.img*
+    linux \$1/vmlinuz
+    initrd \$1/initrd.gz
   }
 }
-for iso in /debian-live-*.iso; do
-  if [ -f "\$iso" ]; then
-    setup_debian \$iso
+for d in /debian-*-hd-media; do
+  if [ -d "\$d" ]; then
+    setup_debian \$d
   fi
 done
 
@@ -137,6 +141,12 @@ if [ -f /memdisk -a -f /FD12LITE.zip ]; then
   }
 fi
 
+if [ -f /memtest.bin ]; then
+  menuentry "/memtest" {
+    linux16 /memtest.bin
+  }
+fi
+
 function setup_fedora {
   menuentry "\$1" {
     loopback loop \$1
@@ -154,7 +164,7 @@ done
 function setup_ubuntu {
   menuentry "\$1" {
     loopback loop \$1
-    linux (loop)/casper/vmlinuz boot=casper quiet iso-scan/filename=\$1
+    linux (loop)/casper/vmlinuz* boot=casper quiet iso-scan/filename=\$1
     initrd (loop)/casper/initrd*
   }
 }
@@ -173,6 +183,6 @@ shift || true
 if [ "$(type -t -- "$CMD")" = "function" ]; then
     "${CMD}" "$@"
 else
-    echo "Usage: $0 [format|mount|grub|grubcfg|freedos|umount]"
+    echo "Usage: $0 [format|mount|grub|grubcfg|freedos|memtest|umount]"
     exit 1
 fi