You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
add Linux editor open targets for Cursor, VS Code, VS Code Insiders, Windsurf, Antigravity, and Zed
detect editors from PATH first, then matching .desktop entries including AppImage, Flatpak, Snap, and XDG application directories
launch desktop-entry backed editors through the desktop launcher path so wrapped Flatpak/AppImage installs work instead of invoking wrapper binaries directly
User-visible behavior
Linux users should see supported installed editors in the Open in... destination list instead of only File Manager. This improves common installs where the editor is exposed through a desktop entry rather than a plain PATH binary, such as Cursor AppImage and Zed Flatpak installs.
Scope notes
This stays in the core Linux compatibility patch because these editor destinations mirror upstream desktop open-target behavior and are Linux port glue, not an opt-in extra feature. The change is limited to the main-process patch and its targeted regression tests.
This overlaps with the linux-features/zed-opener use case by adding common upstream editor targets to the core Linux path. I’m happy to adjust the scope if maintainers prefer this to remain opt-in.
Thanks for the PR. I like the direction, but I do not want this to live in the core main-process patch.
Please move all of this out of scripts/patches/main-process.js and into linux-features. We already have linux-features/open-target-discovery, which is probably the right home for most of this work: it is disabled by default and already covers Linux editor / terminal / desktop-entry discovery. If that feature does not fit cleanly, a new disabled-by-default feature is also fine.
The core applyLinuxFileManagerPatch should stay focused on the minimal File Manager compatibility path only. This PR currently adds broad editor discovery and launching logic there: Cursor, VS Code, VS Code Insiders, Windsurf, Antigravity, Zed, PATH lookup, .desktop parsing, XDG / Flatpak / Snap directories, and gio / gtk-launch launching. That is useful optional Linux UX, but it should not be enabled for every Linux build by default.
Please also move the new regression coverage into the feature-level test suite, and keep a test proving the feature is disabled unless explicitly listed in linux-features/features.json.
Happy to review again once the change is isolated as an opt-in Linux feature.
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
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.
Summary
User-visible behavior
Linux users should see supported installed editors in the Open in... destination list instead of only File Manager. This improves common installs where the editor is exposed through a desktop entry rather than a plain PATH binary, such as Cursor AppImage and Zed Flatpak installs.
Scope notes
This stays in the core Linux compatibility patch because these editor destinations mirror upstream desktop open-target behavior and are Linux port glue, not an opt-in extra feature. The change is limited to the main-process patch and its targeted regression tests.
Validation
node --test scripts/patch-linux-window-ui.test.jsnode --test linux-features/zed-opener/test.js linux-features/open-target-discovery/test.jsgit diff --checkNote
This overlaps with the
linux-features/zed-openeruse case by adding common upstream editor targets to the core Linux path. I’m happy to adjust the scope if maintainers prefer this to remain opt-in.