1
0

debian.ipxe.j2 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. #!ipxe
  2. # Debian Operating System
  3. # http://www.debian.org
  4. goto ${menu}
  5. :debian
  6. set os Debian
  7. set os_arch ${arch}
  8. iseq ${os_arch} x86_64 && set os_arch amd64 ||
  9. iseq ${os_arch} i386 && set os_arch i386 ||
  10. iseq ${os_arch} arm64 && set os_arch arm64 ||
  11. clear debian_version
  12. clear older_release
  13. menu ${os} - ${os_arch}
  14. item --gap Latest Releases
  15. {% for item in releases.debian.versions.stable %}
  16. item {{ item.code_name }} ${space} ${os} {{ item.name }}
  17. {% endfor %}
  18. item --gap Testing Releases
  19. {% for item in releases.debian.versions.testing %}
  20. item {{ item.code_name }} ${space} ${os} {{ item.name }}
  21. {% endfor %}
  22. item --gap Older Releases
  23. item older_release ${space} Set release codename...
  24. choose debian_version || goto debian_exit
  25. iseq ${debian_version} older_release && goto older_release ||
  26. goto mirrorcfg
  27. :older_release
  28. set older_release true
  29. set debian_mirror {{ releases.debian.archive_mirror }}
  30. echo Setting mirror to ${debian_mirror}
  31. clear debian_version
  32. echo -n Please set enter code name of release: ${} && read debian_version
  33. set dir ${debian_base_dir}/dists/${debian_version}/main/installer-${os_arch}/current/images/netboot/
  34. goto deb_boot_type
  35. :mirrorcfg
  36. set debian_mirror ${debian_mirror}
  37. set mirrorcfg mirror/suite=${debian_version}
  38. set dir ${debian_base_dir}/dists/${debian_version}/main/installer-${os_arch}/current/images/netboot/
  39. goto deb_boot_type
  40. :deb_boot_type
  41. menu ${os} [${debian_version}] Installer
  42. item --gap Install types
  43. item text ${space} Text Based Install
  44. item graphical ${space} Graphical Based Install
  45. item rescue ${space} Rescue Mode
  46. item expert ${space} Expert Install
  47. item preseed ${space} Specify preseed url...
  48. choose --default ${type} type || goto debian
  49. echo ${cls}
  50. goto deb_${type}
  51. :deb_rescue
  52. set install_params rescue/enable=true
  53. goto deb_text
  54. :deb_expert
  55. set install_params priority=low
  56. goto deb_text
  57. :deb_preseed
  58. echo -n Specify preseed URL for ${os} ${debian_version}: && read preseedurl
  59. set install_params auto=true priority=critical preseed/url=${preseedurl}
  60. goto deb_text
  61. :deb_text
  62. set dir ${dir}${menu}-installer/${os_arch}
  63. goto deb_boot
  64. :deb_graphical
  65. set dir ${dir}gtk/${menu}-installer/${os_arch}
  66. set install_params vga=788
  67. goto deb_boot
  68. :deb_boot
  69. imgfree
  70. kernel ${debian_mirror}/${dir}/linux ${install_params} ${netcfg} ${mirrorcfg} {{ kernel_params }}
  71. initrd ${debian_mirror}/${dir}/initrd.gz
  72. echo
  73. echo MD5sums:
  74. md5sum linux initrd.gz
  75. boot
  76. :debian_exit
  77. clear menu
  78. exit 0