1
0

fedora.ipxe.j2 2.1 KB

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