live-k3os.ipxe.j2 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #!ipxe
  2. goto ${menu} ||
  3. :live_menu
  4. set os {{ releases.k3os.name }}
  5. set k3os_mirror {{ releases.k3os.mirror }}
  6. menu ${os} by Rancher - ${arch_a}
  7. iseq ${arch} x86_64 && set arch_a amd64 || set arch_a ${arch}
  8. isset ${k3os_version} || set k3os_version latest
  9. menu ${os} live
  10. item --gap k3OS live version:
  11. item boot ${space} ${os} ${k3os_version} - live
  12. item --gap Parameters:
  13. item k3os_version ${space} ${os} version: ${k3os_version}
  14. item k3os_mirror ${space} Set mirror URL: ${k3os_mirror}
  15. choose --default ${menu} menu || goto live_exit
  16. echo ${cls}
  17. goto ${menu} ||
  18. goto live_exit
  19. :k3os_version
  20. menu ${os} version
  21. item latest ${space} latest
  22. item custom ${space} Set custom version
  23. choose --default ${version} version || goto live_exit
  24. echo ${cls}
  25. goto k3os_version_${version} ||
  26. goto live_exit
  27. :k3os_version_latest
  28. set k3os_version latest
  29. set k3os_base_url ${k3os_mirror}/latest/download
  30. goto live_menu
  31. :k3os_version_custom
  32. clear k3os_version
  33. echo -n Please set k3OS version manually (in format vX.Y.Z): && read k3os_version
  34. set k3os_base_url ${k3os_mirror}/download/${k3os_version}
  35. clear menu
  36. goto live_menu
  37. :k3os_mirror
  38. echo -n Set mirror URL: && read k3os_mirror
  39. clear menu
  40. goto k3os_version ||
  41. goto live_exit
  42. :boot
  43. isset ${k3os_base_url} || set k3os_base_url ${k3os_mirror}/latest/download
  44. set install_params k3os.mode=live
  45. set boot_params printk.devkmsg=on console=ttyS0 console=tty1
  46. imgfree
  47. kernel ${k3os_base_url}/k3os-vmlinuz-${arch_a} ${install_params} ${boot_params} initrd=k3os-initrd-${arch_a} ${cmdline}
  48. initrd ${k3os_base_url}/k3os-initrd-${arch_a}
  49. boot
  50. :live_exit
  51. clear menu
  52. exit 0