alpinelinux.ipxe.j2 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #!ipxe
  2. # Alpine Linux
  3. # https://alpinelinux.org
  4. isset ${dhcp-server} && set ipparam ip=dhcp || set ipparam ip=${ip}::${gateway}:${netmask}::eth0:none:${dns}
  5. goto ${menu}
  6. :alpinelinux
  7. clear alpine_version
  8. set os {{ releases.alpinelinux.name }}
  9. iseq ${arch} x86_64 && set bootarch x86_64 || set bootarch x86
  10. menu ${os} [${bootarch}] - Image Sig Checks: [${img_sigs_enabled}]
  11. item --gap Releases
  12. {% for item in releases.alpinelinux.versions %}
  13. item {{ item.code_name }} ${space} ${os} {{ item.name }}
  14. {% endfor %}
  15. choose alpine_version || goto alpine_exit
  16. goto boot
  17. :boot
  18. set base-url ${alpinelinux_mirror}
  19. set dir ${alpinelinux_base_dir}/${alpine_version}/releases/${bootarch}/netboot
  20. set repo-url ${alpinelinux_mirror}/${alpinelinux_base_dir}/${alpine_version}/main
  21. imgfree
  22. iseq ${alpine_version} edge && goto edge_boot ||
  23. kernel ${base-url}/${dir}/vmlinuz-vanilla ${ipparam} alpine_repo=${repo-url} modules=loop,squashfs modloop=${base-url}/${dir}/modloop-vanilla quiet nomodeset
  24. initrd ${base-url}/${dir}/initramfs-vanilla
  25. echo
  26. echo MD5sums:
  27. md5sum vmlinuz-vanilla initramfs-vanilla
  28. iseq ${img_sigs_enabled} true && goto verify_sigs || goto skip_sigs
  29. :verify_sigs
  30. echo
  31. echo Checking signatures...
  32. imgverify vmlinuz-vanilla ${sigs}${dir}/vmlinuz-vanilla.sig || goto error
  33. imgverify initramfs-vanilla ${sigs}${dir}/initramfs-vanilla.sig || goto error
  34. echo Signatures verified!
  35. echo
  36. :skip_sigs
  37. boot
  38. :edge_boot
  39. kernel ${base-url}/${dir}/vmlinuz-lts ${ipparam} alpine_repo=${repo-url} modules=loop,squashfs modloop=${base-url}/${dir}/modloop-lts quiet nomodeset
  40. initrd ${base-url}/${dir}/initramfs-lts
  41. echo
  42. echo MD5sums:
  43. md5sum vmlinuz-lts initramfs-lts
  44. boot
  45. goto alpine_exit
  46. :alpine_exit
  47. clear menu
  48. exit 0