Diablo IV on an Apple silicon Mac, from nothing installed to a character on screen.
- An Apple silicon Mac with Rosetta 2 —
softwareupdate --install-rosetta. - macOS 15 or newer, and the Xcode Command Line Tools —
xcode-select --install. - Apple's Game Porting Toolkit
.dmg— 4.0 beta 2, which is what the engine here is built against — from https://developer.apple.com/download/all/. A free Apple ID is enough. sake cannot fetch this for you;docs/licensing.mdsays why. - A Battle.net account that owns Diablo IV, and Blizzard's installer for the client. sake does not fetch that either.
- About 10 GB free for sake, and about 90 GB more for the game.
sake keeps the engine and the bottles in ~/Library/Sake, and downloads, build output and logs
in ~/Library/Caches/Sake. Uninstall sake… in the app menu takes both to the Trash.
brew tap typester/sake
brew install --cask typester/sake/sakeThe app is not notarised, so Gatekeeper stops it the first time: allow it in System Settings >
Privacy & Security, or install with --no-quarantine.
Open sake. The wizard opens itself until the six steps are done; afterwards Set Up… in the toolbar brings it back.
Five checks, and nothing below unlocks until they all pass. Install whatever is missing, then press Check Again.
Press Download. Eleven files, ten of them checked against a hash sake carries; CrossOver's own tarball is the exception. Nothing is built yet.
Press Build. Minutes. SDL2 is one of these, and it is what makes a controller work later.
Press Build and leave it alone. The app warns of tens of minutes; on ten cores here it took 4m40s.
Download Game Porting Toolkit 4.0 beta 2 from Apple, open the .dmg, and press Install. sake
copies what it needs out of the image and unmounts it. You only need the image once.
Press Create. A bottle is one Windows environment and the game goes inside it. This one is
called default.
Download Battle.net-Setup.exe from Blizzard, then select the bottle in the library.
Install from an Installer…, choose the .exe, Install. Blizzard's installer runs in a
window of its own; click through it as you would on Windows.
When it closes, the sheet offers Add a Title…, which is the next step.
If Diablo IV is already installed under CrossOver, the bottle offers Import from CrossOver… instead. It clones the game rather than copying it, so it costs no disk.
Add a Title…, then Choose Program…. The panel opens inside the bottle; the launcher is
Program Files (x86)/Battle.net/Battle.net Launcher.exe. The name and the arguments fill in by
themselves. Add.
Leave the arguments alone. Without --in-process-gpu the login form is drawn but never
appears, and without the two ANGLE flags the client's GPU process exits. docs/runtime.md has
the measurements.
Select the title and press Play. Sign in, and install Diablo IV from inside the client: about 90 GB.
Start Diablo IV from the Battle.net launcher.
Enjoy!
Nothing to set up. The engine is built with SDL2, so a controller should work.
- Every run writes a log under
~/Library/Caches/Sake/build—title-<id>.logfor a title,install-<name>.logfor an installer. The window shows only the last line of it. - Wine Tools on the bottle opens winecfg, regedit, the uninstaller and the task manager.
docs/runtime.mdtells four failure states apart by thread count, memory and Metal mappings. Read that before deciding a build is broken.









