Merged
Conversation
…pplying script registry actions, and refining work directory detection.
…le discovery, make proton settings save atomic, and refine proton setting clear logic.
…on for Epic and GOG games.
…e overrides to improve compatibility with problematic titles.
Game details 0.5.7
Root cause: Decky Loader runs as a systemd service without DISPLAY environment variables. The spawned UPC process had no display to render to, so it started but was invisible or crashed silently. Changes: - Add _detect_display_env() that reads DISPLAY/WAYLAND from running Steam or Gamescope processes when os.environ lacks them - Update _build_umu_env() to use display detection - Add comprehensive logging to open_launcher_for_install() including command, env vars, and subprocess stderr capture - Add 2-second crash detection after spawn - Track active install PIDs for cancel support - Add cancel_ubisoft_install and is_ubisoft_install_active RPCs - Frontend: button switches to Cancel during UPC install session - Frontend: polling clears Cancel state when UPC exits - Fix race condition in PID tracking for concurrent installs Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
uplay://launch triggers an "Activate a key" prompt when the game
isn't installed. uplay://install/{id} navigates directly to the
game's install page in Ubisoft Connect — one less step for the user.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…es and skip UWP read only format
…imization - Extract game IDs directly from Wine prefix system.reg/user.reg (authoritative, local, no network or fuzzy matching needed) - Replace 3 inline Python scripts in launcher with bash grep - Remove redundant PYTHON_BIN search (reuse global) - Parallelize language setter + session injector pre-launch - Replace Python-based install path with WORK_DIR fallback - Add ubisoft:* to KEY parser in launcher - Ubisoft launch tolerates missing games.map entry - Prefix path uses dedicated ubisoft/ subfolder Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…enhance installed game detection.
Ubisoft - Minor Updates
…ror handling for concurrent game data lookups.
… management, cleaning up profile locks, and refining token-based availability checks.
… by enhancing session environment detection and process management.
…d games, including CDP injection for browser interaction, and enhance shortcut registration logic.
…connected stores and refining Ubisoft API authentication(wip).
…aunching with new gamepad triggering and controller configuration.
This merge brings in all the Microsoft Store integration work, xCloud browser support, virtual keyboard, controller configuration enhancements, and related auth/CDP improvements from the consolidated integration branch.
…oken validation, and implement exponential backoff for API rate limits.
…pending auth syncs, improved state management via cache snapshots, and artwork fetching optimizations.
… Epic and Microsoft store logout by clearing more local authentication data, and expand cache snapshot robustness.
…ting shortcuts and add source tracking for library sync requests.
… files and binaries for authentication and library parsing, removing the API-based login modal.
…onnect credential file syncing
…ial sharing Root cause: read_machine_guid() checked root-level system.reg first, which all prefixes inherited from the template (same GUID). But Proton creates pfx/system.reg with a unique MachineGuid per prefix, and that's what Wine uses for DPAPI encryption. Credentials copied from the auth prefix couldn't decrypt in game prefixes because their pfx-level MachineGuids differed. Fix: - Reverse read_machine_guid() order to check pfx/system.reg first (the one Proton actually uses for DPAPI) in all 4 locations: ubisoft_inject_session, ubisoft_capture_session, ubisoft_setup, and ubisoft.py - Add _align_prefix_machine_guid() that patches a game prefix's pfx/system.reg to match the auth prefix's MachineGuid before credential injection - Add align_machine_guid() to ubisoft_setup.py, called after bootstrap with wineserver -w to safely modify registry after Wine exits - Use re.sub() for robust multi-entry MachineGuid replacement - Fix sync_credentials() return value: return True when source has credentials even if target already has identical copies (prevents false 'no credentials') Tested: All prefixes (.upc-auth, .template, game prefixes) now share the same pfx-level MachineGuid. ConnectSecureStorage.dat hashes match across prefixes. inject_session() succeeds with aligned GUIDs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…default DXVK renderer
…t franchise artwork mismatches
…tching and artwork fetching
…with improved suffix stripping and fuzzy scoring.
Ubisoft API Fixes - Refactor to use Ubisoft Connect completely
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.
No description provided.