live-k3os.ipxe.j2 1.5 KB

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