config: allow external input methods - #1486
Draft
abjfh30 wants to merge 1 commit into
Draft
Conversation
The WSLg system distro does not launch an input method because its configured path is empty. Input methods such as Fcitx5 run outside the system distro and therefore need to bind the input-method protocol as an external client. Enable the opt-in external binding policy. Weston keeps the policy disabled by default, so the broader permission is limited to the WSLg configuration.
There was a problem hiding this comment.
Pull request overview
This PR updates the WSLg Weston configuration to explicitly opt into the (upstream/dependent) Weston capability that allows an external input-method client (running outside the system distro) to bind the privileged input-method protocol, enabling native Wayland text-input for scenarios like Fcitx5 in the user distro.
Changes:
- Enable the
[input-method] allow-externaloption in WSLg’sweston.ini. - Preserve the existing behavior of not launching an input-method client in the system distro (
path=remains empty).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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.
Summary
Motivation
The WSLg configuration leaves [input-method] path empty, so Weston does not launch an input-method client inside the system distro. Input methods such as Fcitx5 run in the user distribution instead.
The Weston text backend normally permits only the compositor-launched client to bind the privileged input-method protocol. With no configured path, an external input method cannot bind. Enabling allow-external provides the required WSLg-side wiring for native Wayland text-input support.
Required Merge Set
All three PRs are required for the complete native Wayland input-method path:
Weston #168 and #169 can be reviewed independently. This WSLg configuration change should take effect only in a Weston revision that contains both.
Related Issues
Scope
This PR intentionally contains only the WSLg configuration change. Protocol bridging, privileged binding policy, and RDPRAIL input-panel behavior remain in the linked Weston PRs.
Security
The input-method protocol is privileged: a bound client can observe and modify text-input state. Enabling this option allows the first external client to claim that protocol. The Weston option remains disabled by default; this PR opts WSLg in explicitly. The WSLg trust boundary and client-selection policy therefore require maintainer review before this draft is ready to merge.
Testing
Tested with a locally built system distro containing the linked Weston changes: