live-debian.ipxe.j2 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #!ipxe
  2. goto ${menu} ||
  3. :live_menu
  4. set os Debian Live
  5. menu ${os}
  6. item --gap ${os} Versions
  7. item bookworm ${space} ${os} 12 (bookworm)
  8. item bullseye ${space} ${os} 11 (bullseye)
  9. item buster ${space} ${os} 10 (buster)
  10. choose live_version || goto live_exit
  11. menu ${os} ${live_version}
  12. item --gap ${os} Flavors
  13. goto ${live_version}
  14. :bookworm
  15. {% for key, value in endpoints.items() | sort %}
  16. {% if value.os == "debian" and 'squash' in key and value.version == "12" %}
  17. item {{ key }} ${space} {{ value.os | title }} {{ value.version }} {{ value.flavor | title}}
  18. {% endif %}
  19. {% endfor %}
  20. goto flavor_select
  21. :bullseye
  22. {% for key, value in endpoints.items() | sort %}
  23. {% if value.os == "debian" and 'squash' in key and value.version == "11" %}
  24. item {{ key }} ${space} {{ value.os | title }} {{ value.version }} {{ value.flavor | title}}
  25. {% endif %}
  26. {% endfor %}
  27. goto flavor_select
  28. :buster
  29. {% for key, value in endpoints.items() | sort %}
  30. {% if value.os == "debian" and 'squash' in key and value.version == "10" %}
  31. item {{ key }} ${space} {{ value.os | title }} {{ value.version }} {{ value.flavor | title}}
  32. {% endif %}
  33. {% endfor %}
  34. goto flavor_select
  35. :flavor_select
  36. choose flavor || goto live_menu
  37. echo ${cls}
  38. goto ${flavor} ||
  39. {% for key, value in endpoints.items() | sort %}
  40. {% if value.os == "debian" and 'squash' in key %}
  41. {% set kernel_name = value.kernel %}
  42. :{{ key }}
  43. set squash_url ${live_endpoint}{{ value.path }}filesystem.squashfs
  44. {% for key, value in endpoints.items() | sort %}
  45. {% if key == kernel_name %}
  46. set kernel_url ${live_endpoint}{{ value.path }}
  47. goto boot
  48. {% endif %}
  49. {% endfor %}
  50. {% endif %}
  51. {% endfor %}
  52. :boot
  53. imgfree
  54. kernel ${kernel_url}vmlinuz boot=live fetch=${squash_url} {{ kernel_params }}
  55. initrd ${kernel_url}initrd
  56. boot
  57. :live_exit
  58. clear menu
  59. exit 0