fix(linux): fail early without a display and clarify virtual display setup - #241
Open
qinghuanandejiangshi wants to merge 1 commit into
Open
qinghuanandejiangshi wants to merge 1 commit into
qinghuanandejiangshi wants to merge 1 commit into
Conversation
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.
Problem and solution
On Linux, launching the desktop without a display starts its daemon and then waits indefinitely in GPUI's headless backend. Check
gpui::guess_compositor()before callingwaku::run()and exit with a graphical-session diagnostic instead. This also handles empty display variables andZED_HEADLESS; the standalone daemon is unchanged.The Linux guide now explains the window-manager requirement for bare Xvfb, gives a working Openbox example, and sets both Vulkan driver override spellings for older loaders.
Checks
xvfb-runcommand. The visual probe uses the official 0.1.19 companion daemon and isolated state, without model calls.cargo check, fullcargo test(975 passed, 39 ignored), protocol consistency, client typecheck and 23 client tests pass. Usedgpui_platform/runtime_shadersand the 26.5 SDK because the optional Metal compiler is unavailable locally.Limitations and follow-up
No real Wayland compositor was exercised; Wayland configuration is covered by the startup pass-through test. The Linux test build uses Rust 1.98.0 with unoptimized dependencies and debug assertions enabled. Ubuntu 22.04 itself was not run; its documented loader version was checked in upstream source. This does not make bare Xvfb render without a window manager or repair missing graphics drivers.
Related issue
Fixes #236. Fixes #238.
AI disclosure
OpenAI Codex assisted with investigation, implementation, tests, validation and this PR description. The account owner authorized AI-written submission text. The change and recorded results were reviewed; the description is not claimed to be human-written.
Checklist