Skip to content

feat: Add repair/reinstall capability for master Steam prefix#52

Closed
weter11 wants to merge 2 commits into
mainfrom
repair-master-steam-prefix-grace-check
Closed

feat: Add repair/reinstall capability for master Steam prefix#52
weter11 wants to merge 2 commits into
mainfrom
repair-master-steam-prefix-grace-check

Conversation

@weter11

@weter11 weter11 commented Jun 22, 2026

Copy link
Copy Markdown
Owner
  • Add repair_master_steam() function that:

    • Stops running Steam/wine processes in master prefix
    • Backs up existing prefix to master_steam_prefix.bak.
    • Keeps only 1 previous backup (deletes oldest before creating new)
    • Re-runs install_master_steam() against fresh prefix
  • Add UI components:

    • 'Repair / Reinstall Windows Steam Runtime' button in Settings
    • Confirmation dialog warning about Steam login state
    • Progress/status updates via AsyncOp channel
  • Add post-launch grace period health check in WineTkgRunner:

    • 2-second grace period after ready-signal detection
    • Polls try_wait() to verify Steam process still alive
    • Detects false-positive scenario where ready-signal exists but process has crashed (e.g., steamerrorreporter appeared)
    • Error message suggests using repair action
  • Add unit test for grace-check behavior

- Add repair_master_steam() function that:
  - Stops running Steam/wine processes in master prefix
  - Backs up existing prefix to master_steam_prefix.bak.<timestamp>
  - Keeps only 1 previous backup (deletes oldest before creating new)
  - Re-runs install_master_steam() against fresh prefix

- Add UI components:
  - 'Repair / Reinstall Windows Steam Runtime' button in Settings
  - Confirmation dialog warning about Steam login state
  - Progress/status updates via AsyncOp channel

- Add post-launch grace period health check in WineTkgRunner:
  - 2-second grace period after ready-signal detection
  - Polls try_wait() to verify Steam process still alive
  - Detects false-positive scenario where ready-signal exists but
    process has crashed (e.g., steamerrorreporter appeared)
  - Error message suggests using repair action

- Add unit test for grace-check behavior

Co-authored-by: openhands <openhands@all-hands.dev>
- Fix type mismatch in wine_tkg.rs: change 'wait loop to return Option<&str>
  consistently, and update match to handle Option instead of bool
- Fix borrow checker error in ui.rs: use scoped block with take() to
  avoid holding immutable borrow while needing mutable borrow
@weter11 weter11 closed this Jun 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants