Pin iPXE to v2.0.0-fog.4 for the restored BIOS command set - #996
Merged
Conversation
fog-ipxe v2.0.0-fog.4 restores the eight commands upstream's "Disable
commands not historically included in BIOS builds" block turns off for
PLATFORM_pcbios. Two of them are load-bearing here:
PARAM_CMD default.ipxe is generated with "params", ten "param" lines and
a "boot.php##params" chain, and bootmenu.class.php emits
param/params 46 more times. Without the command a legacy-BIOS
client prints "params: command not found" and dies on
"Could not boot: Exec format error". Every BIOS PXE boot fails.
CONSOLE_CMD bootmenu.class.php uses "console --picture" for the boot menu
background and gates its first sanboot variant on
"console && sanboot --drive 0".
The drift arrived with f61a90d, which copied upstream master's headers in
wholesale; a02a2c2 caught three other flips from that copy but not these.
It only reached users once 182701d stopped shipping committed prebuilt
binaries, because before that only -S/--force-https installs rebuilt iPXE.
Also bumps the last-resort fallback in config.sh, which was still pinned to
v2.0.0-fog.1 -- three releases back. It only fires when the awk against
system.class.php returns nothing, but when it fires it should not silently
install a known-broken iPXE.
Servers do not self-heal: /tftpboot/undionly.kkpxe is only replaced when the
installer re-runs, so this reaches people at their next update.
Verified on a VirtualBox BIOS client: with fog.3's binary,
"params: command not found"; with fog.4's, the full registered-host boot menu.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Picks up FOGProject/fog-ipxe#3, which restores the eight commands upstream's
/* Disable commands not historically included in BIOS builds */block turns off forPLATFORM_pcbios.Every legacy-BIOS PXE boot currently fails.
default.ipxeis generated withparams, tenparamlines and aboot.php##paramschain, andbootmenu.class.phpemitsparam/params46 more times. WithoutPARAM_CMDthe client printsparams: command not foundand dies onCould not boot: Exec format error.CONSOLE_CMDis the same block:console --picture(boot-menu background) and theconsole && sanboot --drive 0gate both silently stop working.The drift arrived with
f61a90d97, which copied upstream master's headers wholesale;a02a2c2cdcaught three other flips from that copy but not these. It only reached users once182701dd6stopped shipping committed prebuilt binaries — before that, only-S/--force-httpsinstalls rebuilt iPXE.Also bumps the last-resort fallback in
lib/common/config.sh, still pinned tov2.0.0-fog.1, three releases back. It only fires when theawkagainstsystem.class.phpreturns nothing, but when it fires it should not install a known-broken iPXE.Servers do not self-heal —
/tftpboot/undionly.kkpxeis replaced only when the installer re-runs.Merge after
v2.0.0-fog.4is tagged and its release assets are published, or installs will look for a tarball that does not exist yet.Verified on a VirtualBox BIOS client against a 1.6 server: fog.3 binary →
params: command not found; fog.4 binary → full registered-host FOG boot menu.dev-branch carries the identical bug; ported separately.