One-click in-place patcher for CrossOver on Apple Silicon macOS
Upgrades GStreamer (with FFmpeg / Media Foundation decoding), DXMT, DXVK, Apple Game Porting Toolkit (D3DMetal.framework), and bottle performance settings directly inside /Applications/CrossOver.app.
Note
AI-Generated Tool Disclosure HexAid (including its SwiftUI source code, patching automation, and Apple Liquid Glass icon design) is an AI-generated tool created with Antigravity (Google DeepMind) and inspired by the open-source macOS gaming community's work on CXPatcher and Procyon.
When CodeWeavers CrossOver updates (or ships out of the box), several key components are either stripped down for licensing reasons or lag behind the latest community releases:
- Broken / Freeze-Prone In-Game Cutscenes: Stock CrossOver omits the GStreamer
libav(FFmpeg) plugin (libgstlibav.dylib), causing games like Silent Hill 2 Remake, Resident Evil, and other Unreal Engine 4/5 titles using Windows Media Foundation (winegstreamer) to freeze or display a black screen when playing H.264/HEVC/VP9 cutscenes. - Duplicate App Clutter (
Crossover_patched.app) & Missing D3DMetal: Earlier wrapper tools either required launching CrossOver through a secondary app or duplicatedCrossOver.appwhile accidentally strippinglib64/apple_gptk(D3DMetal).
HexAid patches /Applications/CrossOver.app directly in place:
- No duplicate
Crossover_patched.app—launch CrossOver normally from your Dock or Applications folder. - Preserves and protects Apple Game Porting Toolkit (
D3DMetal.framework) from accidental deletion or incompatible beta tampering. - Existing (Old) Bottles Automatically Benefit: Because CrossOver bottles load their graphics backends (
D3DMetal,DXMT,DXVK) and media libraries (winegstreamer.so+GStreamer.framework) dynamically from/Applications/CrossOver.appat runtime, once you run HexAid, all of your existing (old) bottles and already-installed games immediately benefit—no need to recreate bottles or reinstall games!
- Full GStreamer + FFmpeg (
libgstlibav.dylib) Upgrade- Automatically fetches the latest universal
GStreamer.frameworkbuild fromSikarugir-App/gstreamer. - Removes conflicting partial
libgst*/libglib*libraries inCrossOver.app/Contents/SharedSupport/CrossOver/lib64, linkslib64/gstreamer-1.0toGStreamer.framework, and adds@loader_path/../../../lib64/GStreamer.framework/Versions/Current/libtowinegstreamer.soviainstall_name_tool.
- Automatically fetches the latest universal
- Latest DXMT (Direct3D 10/11 to Metal)
- Automatically queries GitHub Releases for the latest
3Shain/dxmtrelease and installsd3d10core.dll,d3d11.dll,dxgi.dll, andwinemetal.dll/winemetal.sointoCrossOver.app.
- Automatically queries GitHub Releases for the latest
- Latest DXVK-macOS (Optional Toggle)
- Queries
Gcenx/DXVK-macOSand upgradeslib/dxvk(x86_64-windowsandi386-windows).
- Queries
- Apple Game Porting Toolkit (
D3DMetal.framework) Integrity & Protection- Verifies that CrossOver's officially validated
lib64/apple_gptk/external/D3DMetal.frameworkis intact and healthy (preventing legacy wrapper bugs that stripped D3DMetal). - Why standalone beta GPTK injection is intentionally avoided: Apple's newer GPTK betas introduce tight internal ABI dependencies between
D3DMetal.frameworkand Wine's PE Direct3D 12 libraries (d3d12.dll). Injecting unverified beta frameworks into CrossOver causes severe entry point and ABI mismatches that crash DirectX 12 games. CodeWeavers officially tests and bundles verified D3DMetal builds with CrossOver releases; HexAid safely protects this tested engine.
- Verifies that CrossOver's officially validated
- NVIDIA RTX D3DMetal Spoofing (
0x10DE/ RTX 4090)- Configures D3DMetal to report an NVIDIA GPU instead of an AMD GPU. Completely eliminates the infamous "Outdated AMD Graphics Driver" error in Unreal Engine 5 titles (Silent Hill 2, Lords of the Fallen, etc.) and unlocks in-game NVIDIA DLSS options (which map directly to native Apple MetalFX).
- Apple Metal Performance HUD Overlay (
MTL_HUD_ENABLED=1)- One-click toggle to enable or disable Apple's native Metal real-time performance HUD (FPS, frame-time graph, and GPU memory load) across all your bottles.
- macOS Game Mode Enabler
- Injects
LSApplicationCategoryType = public.app-category.gamesintoCrossOver.appand your game launchers in~/Applications/CrossOver, ensuring macOSgamepolicydprioritizes CPU/GPU resources and boosts Bluetooth controller polling rates in full screen.
- Injects
- Storage & Shader Cache Inspector
- Scans and calculates the actual disk space consumed by D3DMetal shader caches in
/var/foldersand GStreamer registries, providing one-click cache purging.
- Scans and calculates the actual disk space consumed by D3DMetal shader caches in
- Existing Bottle Performance Optimizations
- Scans all existing bottles in
~/Library/Application Support/CrossOver/Bottles/and enablesWINEMSYNC=1(MSync) andROSETTA_ADVERTISE_AVX=1(AVX/AVX2 advertising under Rosetta 2) incxbottle.conf.
- Scans all existing bottles in
HexAid is designed with Apple Human Interface Guidelines (HIG), featuring translucent materials, colorful squircle icon wells, and a persistent sticky action footer across three focused workspaces:
In-place upgrades for GStreamer + FFmpeg, DXMT, and DXVK while protecting official Apple D3DMetal.
One-click toggles for Apple Metal Performance HUD, NVIDIA RTX GPU spoofing, and macOS Game Mode.
Live D3DMetal and GStreamer shader cache inspection with one-click purge and an interactive execution log.
- Download
HexAid-v2.3.dmgfrom GitHub Releases. - Open the downloaded
.dmgand dragHexAid.appdirectly into theApplicationsfolder shortcut. - Open
HexAid.appfrom/Applicationsand click Patch CrossOver Now!- Note: If macOS Gatekeeper flags the binary on first launch (ad-hoc signed), right-click
HexAid.app➔ Open, or runxattr -cr /Applications/HexAid.app.
- Note: If macOS Gatekeeper flags the binary on first launch (ad-hoc signed), right-click
HexAid has zero external dependencies and compiles cleanly using the standard macOS Command Line Tools (swiftc, iconutil, codesign):
git clone https://github.com/passs0/HexAid.git
cd HexAid
chmod +x build.sh
./build.sh
cp -R build/HexAid.app /Applications/Whenever CrossOver updates via its built-in updater, simply open HexAid from /Applications and click Patch CrossOver Now.
HexAid is directly based on and inspired by the pioneering work of the macOS CrossOver / Wine gaming community:
- CXPatcher by @italomandara — The original macOS patcher for CrossOver that pioneered integrating custom DXVK, DXMT, D3DMetal (GPTK), and GStreamer upgrades, as well as bottle configuration tweaks.
- Procyon — For demonstrating the GStreamer framework bundle layout and runtime environment ideas for fixing Windows Media Foundation (
winegstreamer) cutscenes. - 3Shain/dxmt by @3Shain — Metal-based Direct3D 10/11 implementation for Wine/CrossOver on macOS.
- Sikarugir-App/gstreamer & Gcenx/DXVK-macOS by @Gcenx — Prebuilt universal
GStreamer.framework(with full FFmpeg/libavsupport) and macOS DXVK builds. - CodeWeavers CrossOver & Apple Game Porting Toolkit (
D3DMetal).
Released under the MIT License.
