Code review and cleanup.
This commit is contained in:
1 parent
bbe931335f
commit
92d6ad3cc4
23 files changed
+1497
-886
No files matched your search
@@ -0,0 +1,48 @@
|
||||
# Wine and Proton verification
|
||||
|
||||
Cthulhu selects a loader from the application's Wine environment and executable.
|
||||
It bypasses a recognized Protontricks runtime proxy and searches the Proton
|
||||
installation for a usable loader. For processes advertising
|
||||
`PRESSURE_VESSEL_RUNTIME`, it stages the complete helper set under
|
||||
`$XDG_STATE_HOME/cthulhu/wine-access/helper` (default `~/.local/state`). Sets are
|
||||
content-addressed and verified before use; running sets are never overwritten.
|
||||
The helper keeps the reader's D-Bus address and receives the application's
|
||||
display, authentication and Wine synchronization settings.
|
||||
|
||||
The active profile can contain:
|
||||
|
||||
```toml
|
||||
[profiles.default.wine]
|
||||
controller-only = false
|
||||
excluded-hook-programs = ["ExampleGame.exe"]
|
||||
```
|
||||
|
||||
Use your actual active profile name in place of `default`. Exclusions are
|
||||
case-insensitive executable basenames, without paths. These settings are read
|
||||
when the Wine manager starts; restart Cthulhu after editing them. They are not
|
||||
live application-profile switches. The helper must support
|
||||
`--exclude-hook-program` and `--no-dialog-reader`.
|
||||
|
||||
An excluded program appearing in a prefix switches that prefix's helper to
|
||||
controller-only mode. That mode remains until the prefix is retired, even if
|
||||
the excluded program exits while a launcher remains. `controller-only = true`
|
||||
or a nonempty `WINE_ACCESS_NO_DIALOG_READER` other than `0` requests it globally.
|
||||
|
||||
Run `go test ./internal/wine ./internal/config -count=1` for loader selection,
|
||||
staging, environment forwarding, exclusion handling and settings persistence.
|
||||
Fixtures do not establish compatibility with a real Proton runtime or audible
|
||||
Wine output.
|
||||
|
||||
For live acceptance:
|
||||
|
||||
1. Quit Cthulhu with Cthulhu+Q. Press Ctrl+Escape, then Shift+G to rebuild and
|
||||
launch it. These are separate key presses.
|
||||
2. Open an ordinary Wine editor. Verify focused controls, typing, selection and
|
||||
menus are spoken, Braille follows focus, and keyboard navigation is intact.
|
||||
3. Launch a test Proton application. Verify its supported accessibility output
|
||||
reaches the reader and closing it does not leave an unnecessary helper.
|
||||
4. With an intentionally excluded test game, verify its controller speech still
|
||||
arrives without dialog-reader interference. Check an ordinary editor in a
|
||||
separate prefix still has normal dialog reading.
|
||||
5. Report the exact application, prefix relationship, speech, Braille and focus
|
||||
behavior if a result differs. Redact private paths and text from debug logs.
|
||||
Reference in new issue
Block a user