Files
ipxe/boot.ipxe
oxmc7769 f374625138
Some checks failed
Build / BIOS / i386 (push) Has been cancelled
Build / BIOS / x86_64 (push) Has been cancelled
Build / SBI / riscv32 (push) Has been cancelled
Build / SBI / riscv64 (push) Has been cancelled
Build / UEFI / arm32 (push) Has been cancelled
Build / UEFI / arm64 (push) Has been cancelled
Build / UEFI / i386 (push) Has been cancelled
Build / UEFI / loong64 (push) Has been cancelled
Build / UEFI / riscv32 (push) Has been cancelled
Build / UEFI / riscv64 (push) Has been cancelled
Build / UEFI / x86_64 (push) Has been cancelled
Build / UEFI SB / arm64 (push) Has been cancelled
Build / UEFI SB / x86_64 (push) Has been cancelled
Build / SB Sign / arm64 (push) Has been cancelled
Build / SB Sign / x86_64 (push) Has been cancelled
Build / Linux / arm32 (push) Has been cancelled
Build / Linux / arm64 (push) Has been cancelled
Build / Linux / i386 (push) Has been cancelled
Build / Linux / loong64 (push) Has been cancelled
Build / Linux / riscv32 (push) Has been cancelled
Build / Linux / riscv64 (push) Has been cancelled
Build / Linux / x86_64 (push) Has been cancelled
Build / UEFI shim (push) Has been cancelled
Build / Combine (push) Has been cancelled
Build / Version (push) Has been cancelled
Build / Publish (push) Has been cancelled
Build / Release (push) Has been cancelled
Improve boot.ipxe
2026-05-25 05:35:24 -07:00

32 lines
1.5 KiB
Plaintext

#!ipxe
# ─── Network ─────────────────────────────────────────────────────────────────
dhcp || goto dhcp_failed
# ─── Mac detection ───────────────────────────────────────────────────────────
# ${manufacturer} contains "Apple Inc." — the space breaks iseq if used as a
# literal, so store it in a variable first so it expands as one token.
set apple Apple Inc.
iseq ${manufacturer} ${apple} && goto mac
# ─── Non-Mac boot ─────────────────────────────────────────────────────────────
chain http://${next-server}/default.ipxe || goto failed
goto end
# ─── Mac boot ─────────────────────────────────────────────────────────────────
:mac
chain http://${next-server}/mac.ipxe || goto failed
goto end
# ─── Error handlers ───────────────────────────────────────────────────────────
:dhcp_failed
echo DHCP failed - no network
sleep 5
reboot
:failed
echo Chain failed
shell
:end