Windows support — Phase 0 de-risk spike (CI + config path) - #10
Merged
Conversation
added 3 commits
July 8, 2026 14:01
…w blur - Self-update (macOS): `stage_mac_app` returned the inner Mach-O binary to relaunch, but gpui's restart runs `open` on that path. `open` on a raw executable has no bundle handler, so macOS launches it inside Terminal.app. Return the `.app` bundle instead, so `open` hands it to LaunchServices and the GUI relaunches normally. - Unfocused-split dimming (and the hidden cursor) keyed off `focused`, which also flips when the whole window loses focus — gpui fires focus-out on window deactivation — so backgrounding the app dimmed every pane. Track a separate `pane_active` flag that survives window blur and only clears on a real pane switch (window still active); dimming and the cursor key off it. `focused` still drives ?1004 focus reporting and the background-notification attention dot, which should react to window focus.
Phase 0 of Windows support: a windows-latest CI job that probes the make-or-break dependency (gpui at our pinned zed rev, then guise-ui on top of it), builds the platform-independent crates, and logs the full remaining porting surface as an informational, non-gating step. Also resolve the config file location on Windows to %APPDATA%\prompt\config (guarded by cfg(windows); macOS/Linux paths unchanged).
cargo build --workspace stops at the first failing crate (notes), hiding the rest of the porting surface. --keep-going compiles every crate it can and reports all failures in a single run.
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.
First step toward Windows support. This is a de-risk spike, not a shippable Windows build — it answers the one question that gates the whole effort: does our UI stack compile on Windows?
What's here
.github/workflows/windows.yml— awindows-latestjob that, in a single run:96285fc) — the make-or-break dependency.guise-uion top of gpui-on-Windows (resolved through our[patch.crates-io], not guise's own crates.io pin).vt,input,workspace,theme,config,macros,mcp,cast,plugin) — these must pass.cargo build --workspace(pty/terminal/appare still#![cfg(unix)]).if: always()so one failure never hides the others.config— resolves%APPDATA%\prompt\configon Windows (cfg(windows)-guarded; macOS/Linux paths byte-for-byte unchanged).What we learn from the run
prompt-gpui-portbranch) before any deeper work.Either way the "full workspace surface" step's log becomes the concrete work-list for Phases 1–2.
Not in scope here
ConPTY backend, named-pipe IPC, Windows window chrome, the WiX/MSI installer, and Scoop/Chocolatey packaging — all land in later phases.