openEuler.ipxe.j2 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #!ipxe
  2. # openEuler
  3. # https://openeuler.org/
  4. isset ${dhcp-server} && set ipparam ip=dhcp || set ipparam ip=${ip}::${gateway}:${netmask}:::none nameserver=${dns}
  5. set ipparam BOOTIF=${netX/mac} ${ipparam}
  6. goto ${menu} ||
  7. :openEuler
  8. clear osversion
  9. set os {{ releases.openEuler.name }}
  10. menu ${os} - ${arch}
  11. {% for item in releases.openEuler.versions %}
  12. item {{ item.code_name }} ${space} ${os} {{ item.name }}
  13. {% endfor %}
  14. isset ${osversion} || choose osversion || goto linux_menu
  15. echo ${cls}
  16. set dir ${osversion}/OS/${arch}
  17. set repo ${openEuler_mirror}/${dir}
  18. goto boottype
  19. :boottype
  20. set ova ${os} ${osversion}
  21. menu ${os} ${arch} boot type
  22. item graphical ${ova} graphical installer
  23. item text ${ova} text based installer
  24. item rescue ${ova} rescue
  25. item kickstart ${ova} set kickstart url [ ${ks_url} ]
  26. isset ${bt} || choose bt || goto openEuler
  27. echo ${cls}
  28. iseq ${bt} text && goto text ||
  29. iseq ${bt} rescue && goto rescue ||
  30. iseq ${bt} kickstart && goto kickstart ||
  31. iseq ${bt} kickstart_device && goto kickstart_device ||
  32. goto bootos_images
  33. :graphical
  34. set install_mode inst.graphical ||
  35. goto bootos_images
  36. :text
  37. set install_mode inst.text ||
  38. goto bootos_images
  39. :rescue
  40. set params inst.rescue ||
  41. goto bootos_images
  42. :kickstart
  43. echo -n Specify kickstart URL for ${os} ${osversion}: && read ks_url
  44. set params inst.ks=${ks_url} ||
  45. clear bt
  46. goto boottype
  47. :bootos_images
  48. imgfree
  49. kernel ${openEuler_mirror}/${dir}/images/pxeboot/vmlinuz inst.repo=${repo} ${install_mode} ${params} ${ipparam} {{ kernel_params }}
  50. initrd ${openEuler_mirror}/${dir}/images/pxeboot/initrd.img
  51. echo
  52. echo MD5sums:
  53. md5sum vmlinuz initrd.img
  54. boot
  55. goto linux_menu
  56. :linux_menu
  57. clear menu
  58. exit 0