You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

boot.ipxe 1.6KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. #!ipxe
  2. :main
  3. console --picture misc/splash.png
  4. menu netboot.${domain} PXE
  5. <?php
  6. $types = [['live', 'unix/live', 'Live'],
  7. ['iso', 'iso', 'ISO'],
  8. ['install', 'unix/install', 'Installers'],
  9. ['winpe', 'winpe', 'Windows PE']];
  10. $labels = "";
  11. foreach ($types as $type)
  12. {
  13. echo "\nitem --gap -- " . $type[2] . "\n";
  14. if (is_dir($type[1])) {
  15. $items = scandir($type[1]);
  16. if (is_null($items))
  17. continue;
  18. foreach ($items as $item)
  19. {
  20. if ($item[0] == '.')
  21. continue;
  22. $name = ucwords($item);
  23. $label = $item . '-' . $type[0];
  24. echo "item $label" . " $name\n";
  25. $labels .= "\n\n:" . $label . "\n";
  26. $labels .= 'set ' . $type[0] . ' ' . $item . "\n";
  27. $labels .= 'goto boot-' . $type[0] . "\n\n";
  28. }
  29. }
  30. }
  31. ?>
  32. item --gap -- Misc
  33. item chain-online Chain on rthoni.com
  34. item config Config
  35. item shell Shell
  36. item reboot Reboot
  37. choose choice && goto ${choice}
  38. <?php
  39. echo $labels;
  40. ?>
  41. :chain-online
  42. chain http://netboot.rthoni.com/boot.ipxe
  43. :config
  44. config
  45. goto main
  46. :shell
  47. shell
  48. :reboot
  49. reboot
  50. :boot-install
  51. set unix install/${install}
  52. set options vga=788 -- quiet
  53. goto boot-unix
  54. :boot-live
  55. set unix live/${live}
  56. set options vga=normal ramdisk_size=14332 root=/dev/nfs nfsroot=10.15.44.1:/pxeroot/${live} rw --
  57. goto boot-unix
  58. :boot-unix
  59. initrd unix/${unix}/initrd.img
  60. boot unix/${unix}/vmlinuz ${options}
  61. :boot-iso
  62. initrd iso/${iso}
  63. chain /memdisk iso raw
  64. boot
  65. :boot-winpe
  66. kernel winpe/${winpe}/wimboot
  67. initrd winpe/${winpe}/bcd BCD
  68. initrd winpe/${winpe}/boot.sdi boot.sdi
  69. initrd winpe/${winpe}/boot.wim boot.wim
  70. boot