Offer safe graphics boot for black-screen installs - #110
Conversation
|
nomodeset is also necessary to boot unsupported AMD graphics card such as AMD ATI Mobility Radeon HD 4850, found in old iMacs (see https://askubuntu.com/questions/1503557/how-to-set-brightness-and-color-temperature-in-imac-late-2009-after-setting-nomo for details). |
The syslinux half of this change already assigns one ("with safe
^graphics"), and the accessibility entry beside it in both GRUB configs
carries --hotkey s, so the GRUB entries were the odd ones out.
It also decouples reachability from timeout_style. GRUB matches hotkeys
inside the countdown/hidden wait loop, not only on a drawn menu, so with
a hotkey the entry stays selectable if the timeout is kept silent
(timeout_style=hidden) rather than shown as a menu.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Reviewed this against the boot paths the ISO actually ships, and ran Pushed one commit, The timeout change is not scope creep, and the PR body should say so. With the original What is separable is Things I found but deliberately did not change:
Two things that check out and needed checking: I could not boot the ISO, so everything here about boot behaviour is read from the GRUB, syslinux and kernel sources rather than observed on hardware. |
|
Thanks omarchybot |
|
Re-reviewed after your reply and archisman-panigrahi's. I was wrong about GRUB's escape hatch. I said the shift/ What that changes and what it does not:
As the PR stands the entry is reachable, and here is the trace. With One fact worth having in front of the @archisman-panigrahi your point holds and needs no code change: Nothing pushed this pass, and no tests re-run — head has not moved since |
|
Built the ISO from The menus are right. The UEFI safe-graphics entry does not work. Selecting it produces a garbled framebuffer that never recovers — still garbled at three minutes, when the BIOS safe entry had reached the configurator in about one. The BIOS half of this PR is fine: it boots, it is readable, it is exactly the low-resolution fallback it should be. The UEFI half hands the user a scrambled screen, which is a worse outcome than the black screen it is meant to rescue, because a black screen at least tells you it failed. Four boots, one variable at a time, same ISO and same QEMU configuration each time:
I have to correct myself before drawing a conclusion from that. Last pass I wrote that So: the entry is broken, the cause is inside the GRUB-to-kernel handoff, and which part is not yet established. What settles it is an A/B through GRUB itself, one variable per build — Which leads to the thing worth more than the bug. This repo sets The test passes in four states where the feature is absent or reversed. Codex found these; I confirmed each by mutating the tree and running
The fix is for the test to parse an active Where this leaves the PR. The idea is right and the BIOS side works. The UEFI side needs a boot that produces a usable screen before it can land, and |
|
Confirmed on real hardware with Omarchy 4.0.0: Strong +1 for a discoverable safe graphics entry and a nonzero timeout (or hotkey g as in this PR). |
|
@fidecastro's report changes something I wrote last pass, so this is a correction rather than a fourth review of the diff — head is still The failure he describes is the one this entry addresses. Black screen with the kernel demonstrably alive (Caps Lock LED still toggling), discrete NVIDIA on DisplayPort: that is native KMS taking over a working firmware framebuffer and losing scanout. And it undercuts the blocking objection I raised on 24 August. I wrote then that "the UEFI side needs a boot that produces a usable screen before it can land," on the strength of a QEMU/OVMF/ That does not make the QEMU result wrong; it makes the conclusion I drew from it too broad. What is defensible now is narrower: the safe entry garbles under OVMF with QEMU @fidecastro, two questions only you can answer, and they close this out. First: did your remaster leave The cheapest test on my side needs no hardware: re-run the same OVMF boot with On the two repositories. omarchy-iso#110 and omacom/omarchy#8287 complement rather than compete: this ships the fallback for future images, that documents recovery on the images already in people's hands, and they share no files. One thing worth scoping in #8287, though — "Stock live images currently hide the boot menu ( I went to tell you the "no chance to press Nothing pushed and no tests re-run this pass — the head has not moved since Reviewed by Claude Opus 5 in Claude Code, with a second opinion from Codex at xhigh which contributed the kernel mechanism above, the stdvga geometry hypothesis, and the correction about |
Some newer GPUs can black-screen before the configurator starts. The reporter in omacom/omarchy#7045 confirmed the same Quattro ISO boots after adding
nomodeset.Keep the normal accelerated entry as the default, but show the boot menu for three seconds and add a separate safe graphics entry with
nomodeset. Mirror the fallback for GRUB loopback and legacy BIOS boot.The regression test keeps
nomodesetisolated to the safe entries, checks unique GRUB IDs, and ensures normal boot remains the default.Fixes omacom/omarchy#7045.
Tested with:
bash test/unit/safe-graphics-boot-test.shgrub-script-check configs/grub/grub.cfggrub-script-check configs/grub/loopback.cfg