coreos.ipxe.j2 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #!ipxe
  2. # Fedora CoreOS
  3. # https://getfedora.org/coreos/
  4. # https://github.com/coreos/coreos-installer/blob/master/README.md#installing-from-pxe
  5. goto ${menu}
  6. :coreos
  7. set os {{ releases.coreos.name }}
  8. set os_arch ${arch}
  9. iseq ${os_arch} x86_64 && set os_arch x86_64 ||
  10. iseq ${os_arch} arm64 && set os_arch aarch64 ||
  11. isset ${install_device} || set install_device /dev/sda
  12. isset ${ignition_url} || set ignition_url skip
  13. menu ${os} - ${os_arch}
  14. item --gap ${os}:
  15. {% for item in releases.coreos.versions %}
  16. item {{ item.code_name }} ${space} ${os} {{ item.name }}
  17. {% endfor %}
  18. item install_dev ${space} Set install device: ${install_device}
  19. item ignition_config ${space} Set ignition config url: ${ignition_url}
  20. choose --default ${core_version} core_version || goto coreos_exit
  21. echo ${cls}
  22. iseq ${core_version} ignition_config && goto ignition_config ||
  23. iseq ${core_version} install_dev && goto install_dev ||
  24. goto core_boot ||
  25. goto coreos_exit
  26. :core_boot
  27. {% for item in releases.coreos.versions %}
  28. iseq ${core_version} {{ item.code_name }} && set coreos_channel {{ item.name }} ||
  29. {% endfor %}
  30. set base_url ${coreos_mirror}/${coreos_base_dir}/${coreos_channel}/builds
  31. set build_version ${core_version}
  32. imgfree
  33. kernel ${base_url}/${build_version}/${os_arch}/fedora-coreos-${build_version}-live-kernel-${os_arch} ip=dhcp rd.neednet=1 coreos.inst.install_dev=${install_device} coreos.inst.ignition_url=${ignition_url} coreos.live.rootfs_url=${base_url}/${build_version}/${os_arch}/fedora-coreos-${build_version}-live-rootfs.${os_arch}.img {{ kernel_params }}
  34. initrd ${base_url}/${build_version}/${os_arch}/fedora-coreos-${build_version}-live-initramfs.${os_arch}.img
  35. boot
  36. goto coreos_exit
  37. :install_dev
  38. echo -n Please set desired install device: && read install_device
  39. clear menu
  40. goto coreos
  41. :ignition_config
  42. echo -n Please set Ignition Configuration URL: && read ignition_url
  43. clear menu
  44. goto coreos
  45. :coreos_exit
  46. clear menu
  47. exit 0