Improve boot.ipxe
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

This commit is contained in:
2026-05-25 05:35:24 -07:00
parent 9f6794ea97
commit f374625138
2 changed files with 11 additions and 20 deletions
+10 -9
View File
@@ -1,30 +1,31 @@
#!ipxe
# ─── Network ────────────────────────────────────────────────────────────────
# ─── Network ────────────────────────────────────────────────────────────────
dhcp || goto dhcp_failed
# ─── Mac detection via SMBIOS manufacturer string ───────────────────────────
# ${manufacturer} reads SMBIOS Type-1 "Manufacturer" field.
# All Intel Macs report "Apple Inc." here.
iseq ${manufacturer} Apple Inc. && goto mac
# ─── 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 ────────────────────────────────────────────────────────────
# ─── Non-Mac boot ────────────────────────────────────────────────────────────
chain http://${next-server}/default.ipxe || goto failed
goto end
# ─── Mac boot ────────────────────────────────────────────────────────────────
# ─── Mac boot ────────────────────────────────────────────────────────────────
:mac
chain http://${next-server}/mac.ipxe || goto failed
goto end
# ─── Error handlers ──────────────────────────────────────────────────────────
# ─── Error handlers ──────────────────────────────────────────────────────────
:dhcp_failed
echo DHCP failed - no network
sleep 5
reboot
:failed
echo Chain failed - dropping to shell
echo Chain failed
shell
:end
+1 -11
View File
@@ -107,15 +107,5 @@ BUILT_BIN="$SRC_DIR/$MAKE_TARGET"
cp "$BUILT_BIN" "$OUTPUT_DIR/$OUTPUT_NAME"
# Also write a sidecar with build info
cat > "$OUTPUT_DIR/$OUTPUT_NAME.info" <<EOF
platform=$PLATFORM
target=$MAKE_TARGET
embed=${EMBED:-none}
built=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
git=$(git -C "$(dirname "$0")" describe --always --dirty 2>/dev/null || echo unknown)
EOF
echo ""
ok "Built: $OUTPUT_DIR/$OUTPUT_NAME"
ok "Info: $OUTPUT_DIR/$OUTPUT_NAME.info"
ok "Built: $OUTPUT_DIR/$OUTPUT_NAME"