1
0

fedora.ipxe.j2 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #!ipxe
  2. # Fedora Operating System
  3. # https://getfedora.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. :fedora
  8. clear osversion
  9. clear sku_type
  10. clear ova
  11. set os {{ releases.fedora.name }}
  12. set os_arch ${arch}
  13. iseq ${os_arch} x86_64 && set os_arch x86_64 ||
  14. iseq ${os_arch} arm64 && set os_arch aarch64 ||
  15. menu ${os} - ${os_arch}
  16. item --gap Latest Releases
  17. {% for item in releases.fedora.versions %}
  18. item {{ item.code_name }} ${space} ${os} {{ item.name }}
  19. {% endfor %}
  20. iseq ${os_arch} x86_64 && item rawhide ${space} ${os} rawhide ||
  21. isset ${osversion} || choose osversion || goto linux_menu
  22. set ova ${os} ${osversion}
  23. goto product_sku
  24. :product_sku
  25. menu ${os} ${os_arch} sku type
  26. item Everything ${ova} Everything
  27. item Server ${ova} Server
  28. iseq ${os_arch} x86_64 && item Silverblue ${ova} Silverblue ||
  29. isset ${sku_type} || choose sku_type || goto fedora
  30. set dir ${fedora_base_dir}/releases/${osversion}/${sku_type}/${os_arch}/os
  31. iseq ${osversion} rawhide && set dir ${fedora_base_dir}/development/${osversion}/${sku_type}/${os_arch}/os ||
  32. set ova ${ova} ${sku_type}
  33. echo ${cls}
  34. goto boottype
  35. :boottype
  36. menu ${os} ${os_arch} boot type
  37. item normal ${ova} graphical install
  38. item text ${ova} text install
  39. item rescue ${ova} rescue
  40. item kickstart ${ova} specify kickstart url
  41. isset ${bt} || choose bt || goto fedora
  42. echo ${cls}
  43. iseq ${bt} normal && goto boot ||
  44. goto ${bt}
  45. :text
  46. set params inst.text ||
  47. goto boot
  48. :rescue
  49. set params rescue ||
  50. goto boot
  51. :kickstart
  52. echo -n Specify kickstart URL for ${os} ${osversion}: && read ksurl
  53. set params ks=${ksurl} ||
  54. goto boot
  55. :boot
  56. imgfree
  57. kernel ${fedora_mirror}/${dir}/images/pxeboot/vmlinuz inst.repo=${fedora_mirror}/${dir} ${params} ${ipparam} {{ kernel_params }}
  58. initrd ${fedora_mirror}/${dir}/images/pxeboot/initrd.img
  59. echo
  60. echo MD5sums:
  61. md5sum vmlinuz initrd.img
  62. boot
  63. goto linux_menu
  64. :linux_menu
  65. clear menu
  66. exit 0