Prepare the MetalSharp 0.60.0 preview runtime - #349
Open
aaf2tbz wants to merge 14 commits into
Open
Conversation
added 9 commits
July 31, 2026 15:39
aaf2tbz
marked this pull request as ready for review
July 31, 2026 23:31
Collaborator
Author
|
Migration acceptance update (commit 55074d3):
|
Collaborator
Author
|
Fresh 0.57 -> 0.60 release-path acceptance completed on an isolated copy-on-write clone of the immutable existing install:
The test exposed and commit |
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
Completes the official MetalSharp 0.60.0 preview plan across Phases 1–8. This PR integrates the canonical complete multi-architecture Wine runtime, makes the installer and launch paths consume that runtime consistently, preserves the no-TSO FEX contract, adds the final global controller/Msync controls, and replaces the legacy split-bundle release pipeline.
Changes
[D | X]and Msync controls and propagate them through MTSP, Steam, GOG, prefix initialization, and ordinary Wine launch paths.PR Readiness (MANDATORY)
/Users/...paths introducedconfigs/mtsp-rules.tomlor DLL maps changedCMakeLists.txt,Cargo.toml,package.json,package-lock.json) in sync if version bumpedValidation
cargo fmt --allcargo clippy --all-targets -- -D warningscargo test --all-targets -- --test-threads=1— 644 passedcargo build --all-targetsThe canonical archive
MetalSharp-Wine-Runtime-COMPLETE-all-arch-2026-07-31.tar.zstpassed the strengthened layout gate with SHA-25693a456a40a7bf0ad2fecace5c01c58a366f85cc2901f6f8780c056c9e3b256ee. The pinned release manifest SHA-256 isbba8103217dbc72914a8496cb782882af0883fbb18664956ba365dba68fec4eb.Artifact inspection confirmed x86-64 and i386 guest PE lanes and native ARM64 Mach-O Unix bridges. M12 has no DXMT/winemetal payload ownership; D3DMetal remains isolated in the Homebrew GPTK prefix.
Compatibility baseline: Nidhogg 2 (Steam appid 535520), M9 route, installed from
/Volumes/AverySSD/SteamLibrary. This PR preserves that established real-game launch route; the final PR cycle revalidated its route contracts, complete-runtime contract, and 644-test regression suite. It does not claim a new interactive game session was run during this PR cycle.Risk and rollback
Runtime installation is transactional and keeps prefixes, bottles, saves, and shader caches outside the replaceable runtime directory. Steam handoff and wrapper repair are prefix-confined; graphics ownership is explicit; controller and Msync retain prior defaults. Rollback is to revert this PR and restore the prior installer entry point—the user data directories do not need to be removed or migrated backward.
\n\n## Post-Phase 8: native GOG integration\n\n- Added a pinned, self-contained native ARM64 Heroic GOGDL 1.2.2 release asset with embedded Requests/TLS and compiled xdelta3 support.\n- GOG prefix initialization now repairs and verifies the complete ARM64, ARM64EC, x86_64, and i386/WoW64 runtime contract instead of accepting a partial
drive_c.\n- GOG install, update, verify/repair, uninstall, and Play inherit the canonical provider, library, Msync/controller, and no-TSO environment.\n- Existing complete runtime installations receive the verified 4.3 MB GOG layer transactionally, without rebuilding Wine or unpacking the 2.8 GB archive.\n- Live GitHub release downloads of the GOG asset, installer, and manifest passed checksum and package-contract verification.\n\n\n## Bundled Mono cleanup\n\nWine Mono 11.2.0 is now supplied by the complete runtime, so the redundant GOG and Settings install/upgrade/reset controls, polling code,/wine-mono/*routes, and interactive MSI installer module were removed. Mono/FNA execution and bottle compatibility surfaces remain. The current deterministic Rust suite is 644/644 after removal of 11 tests belonging solely to the deleted installer module.\n