live-ubuntu.ipxe.j2 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #!ipxe
  2. goto ${menu} ||
  3. :live_menu
  4. set os Ubuntu Live
  5. menu ${os} - Current Arch [ ${arch} ]
  6. iseq ${arch} x86_64 && set arch_a amd64 || set arch_a ${arch}
  7. item --gap ${os} Versions
  8. item focal ${space} ${os} 20.04
  9. item bionic ${space} ${os} 18.04
  10. item eoan ${space} ${os} 19.10
  11. choose live_version || goto live_exit
  12. menu ${os} ${live_version}
  13. item --gap ${os} Flavors
  14. goto ${live_version}
  15. :focal
  16. {% for key, value in endpoints.items() | sort %}
  17. {% if value.os == "ubuntu" and 'squash' in key and value.version == "20.04" %}
  18. item {{ key }} ${space} {{ value.os | title }} {{ value.version }} {{ value.flavor | title}}
  19. {% endif %}
  20. {% endfor %}
  21. goto flavor_select
  22. :bionic
  23. {% for key, value in endpoints.items() | sort %}
  24. {% if value.os == "ubuntu" and 'squash' in key and value.version == "18.04" %}
  25. item {{ key }} ${space} {{ value.os | title }} {{ value.version }} {{ value.flavor | title}}
  26. {% endif %}
  27. {% endfor %}
  28. goto flavor_select
  29. :eoan
  30. {% for key, value in endpoints.items() | sort %}
  31. {% if value.os == "ubuntu" and 'squash' in key and value.version == "19.10" %}
  32. item {{ key }} ${space} {{ value.os | title }} {{ value.version }} {{ value.flavor | title}}
  33. {% endif %}
  34. {% endfor %}
  35. goto flavor_select
  36. :flavor_select
  37. choose flavor || goto live_menu
  38. echo ${cls}
  39. goto ${flavor} ||
  40. {% for key, value in endpoints.items() | sort %}
  41. {% if value.os == "ubuntu" and 'squash' in key %}
  42. {% set kernel_name = value.kernel %}
  43. :{{ key }}
  44. set squash_url ${live_endpoint}{{ value.path }}filesystem.squashfs
  45. {% for key, value in endpoints.items() | sort %}
  46. {% if key == kernel_name %}
  47. set kernel_url ${live_endpoint}{{ value.path }}
  48. {% endif %}
  49. {% endfor %}
  50. goto {{ value.version }}-boot
  51. {% endif %}
  52. {% endfor %}
  53. :18.04-boot
  54. imgfree
  55. kernel ${kernel_url}vmlinuz ip=dhcp boot=casper netboot=http fetch=${squash_url} initrd=initrd ${cmdline}
  56. initrd ${kernel_url}initrd
  57. boot
  58. :19.10-boot
  59. imgfree
  60. kernel ${kernel_url}vmlinuz ip=dhcp boot=casper netboot=url url=${squash_url} initrd=initrd ${cmdline}
  61. initrd ${kernel_url}initrd
  62. boot
  63. :20.04-boot
  64. imgfree
  65. kernel ${kernel_url}vmlinuz ip=dhcp boot=casper netboot=url url=${squash_url} initrd=initrd ${cmdline}
  66. initrd ${kernel_url}initrd
  67. boot
  68. :live_exit
  69. clear menu
  70. exit 0