live-kali.ipxe.j2 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #!ipxe
  2. goto ${menu} ||
  3. :live_menu
  4. set os Kali Linux
  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 rolling ${space} ${os} Rolling
  9. choose live_version || goto live_exit
  10. menu ${os} ${live_version}
  11. item --gap ${os} Flavors
  12. goto ${live_version}
  13. :rolling
  14. {% for key, value in endpoints.items() | sort %}
  15. {% if value.os == "kali" and 'squash' in key and value.version == "rolling" and value.flavor == "xfce" %}
  16. item {{ key }} ${space} {{ value.os | title }} {{ value.version | title }} {{ value.flavor | upper }}
  17. {% endif %}
  18. {% endfor %}
  19. {% for key, value in endpoints.items() | sort %}
  20. {% if value.os == "kali" and 'squash' in key and value.version == "rolling" and value.flavor != "xfce" %}
  21. item {{ key }} ${space} {{ value.os | title }} 2019.4 {{ value.flavor | upper }}
  22. {% endif %}
  23. {% endfor %}
  24. goto flavor_select
  25. :flavor_select
  26. choose flavor || goto live_menu
  27. echo ${cls}
  28. goto ${flavor} ||
  29. {% for key, value in endpoints.items() | sort %}
  30. {% if value.os == "kali" and 'squash' in key and value.flavor != "xfce" %}
  31. {% set kernel_name = value.kernel %}
  32. :{{ key }}
  33. set squash_url ${live_endpoint}{{ value.path }}filesystem.squashfs
  34. set params components username=root hostname=kali
  35. {% for key, value in endpoints.items() | sort %}
  36. {% if key == kernel_name %}
  37. set kernel_url ${live_endpoint}{{ value.path }}
  38. {% endif %}
  39. {% endfor %}
  40. goto boot
  41. {% elif value.os == "kali" %}
  42. set squash_url ${live_endpoint}{{ value.path }}filesystem.squashfs
  43. set kernel_url ${live_endpoint}{{ value.path }}
  44. set params components
  45. {% endif %}
  46. {% endfor %}
  47. :boot
  48. imgfree
  49. kernel ${kernel_url}vmlinuz boot=live ${params} fetch=${squash_url} initrd=initrd ${cmdline}
  50. initrd ${kernel_url}initrd
  51. boot
  52. :live_exit
  53. clear menu
  54. exit 0