rockylinux.ipxe.j2 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. #!ipxe
  2. # Rocky Linux
  3. # https://rockylinux.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. :rockylinux
  8. clear osversion
  9. set os {{ releases.rockylinux.name }}
  10. set os_arch ${arch}
  11. iseq ${os_arch} x86_64 && set os_arch x86_64 ||
  12. iseq ${os_arch} arm64 && set os_arch aarch64 ||
  13. menu ${os} - ${os_arch}
  14. {% for item in releases.rockylinux.versions %}
  15. item {{ item.code_name }} ${space} ${os} {{ item.name }}
  16. {% endfor %}
  17. isset ${osversion} || choose osversion || goto linux_menu
  18. echo ${cls}
  19. set dir ${rockylinux_base_dir}/${osversion}/BaseOS/${os_arch}/os
  20. set repo ${rockylinux_mirror}/${dir}
  21. goto boottype
  22. :boottype
  23. set ova ${os} ${osversion}
  24. menu ${os} ${os_arch} boot type
  25. item graphical ${ova} graphical installer
  26. item text ${ova} text based installer
  27. item rescue ${ova} rescue
  28. item kickstart ${ova} set kickstart url [ ${ksurl} ]
  29. item kickstart_device ${ova} set ksdevice [ ${ksdevice} ]
  30. isset ${bt} || choose bt || goto rockylinux
  31. echo ${cls}
  32. iseq ${bt} text && goto text ||
  33. iseq ${bt} rescue && goto rescue ||
  34. iseq ${bt} kickstart && goto kickstart ||
  35. iseq ${bt} kickstart_device && goto kickstart_device ||
  36. goto bootos_images
  37. :text
  38. set params inst.text ||
  39. goto bootos_images
  40. :rescue
  41. set params rescue ||
  42. goto bootos_images
  43. :kickstart
  44. echo -n Specify kickstart URL for ${os} ${osversion}: && read ksurl
  45. set params inst.ks=${ksurl} ||
  46. clear bt
  47. goto boottype
  48. :kickstart_device
  49. echo -n Specify ksdevice param for ${os} ${osversion}: && read ksdevice
  50. set ksdevice ${ksdevice} ||
  51. clear bt
  52. goto boottype
  53. :bootos_images
  54. imgfree
  55. kernel ${rockylinux_mirror}/${dir}/images/pxeboot/vmlinuz inst.repo=${repo} ${params} ${ipparam} {{ kernel_params }}
  56. initrd ${rockylinux_mirror}/${dir}/images/pxeboot/initrd.img
  57. echo
  58. echo MD5sums:
  59. md5sum vmlinuz initrd.img
  60. boot
  61. goto linux_menu
  62. :linux_menu
  63. clear menu
  64. exit 0