Skip to content

98przem/mist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mist

Mist

Play Windows Steam & Epic games on macOS.
One QR login, real Steam achievements, nothing to install by hand.

Download Mist.dmg Support on Ko-fi

Mist's game library


Mist is a native macOS launcher that downloads and runs Windows Steam and Epic games through Winewithout ever running the Steam client. You sign in once, and it handles your library, downloads, and achievements directly.

Features

  • One login. A single Steam QR scan (or username/password) covers your whole library, game downloads, achievements, and Cloud saves. There's no second sign-in, ever.
  • Real achievements. Browse them in-app with global rarity, and unlock them in-game — synced to your actual Steam profile. Mist only ever syncs achievements you genuinely earn; it never fabricates them.
  • Steam Cloud saves. View your Cloud quota and restore any synced save straight into the right spot in your Wine prefix, one click — Mist speaks Steam's real Cloud protocol, verified against a real Steam client's own traffic.
  • No Steam client, no fuss. Mist talks to Steam's APIs directly and downloads with DepotDownloader — so there's no flaky Chromium-based Steam UI under Wine, no black screens, and no Accessibility permissions to grant.
  • Self-contained. Helper tools ship inside the app; the Wine engine (~200 MB) downloads itself on first launch. Nothing to install with Homebrew.
  • DirectX via Metal. Runs games through the CrossOver Wine engine, using Apple's Game Porting Toolkit (D3DMetal) when available and DXVK/MoltenVK as a fallback.

Tested on macOS 15 · Apple Silicon (M2), via Rosetta 2.

Install

Homebrew (recommended — always tracks the latest release):

brew install --cask 98przem/tap/mist

Or download Mist.dmg from the latest release, open it, and drag Mist.app to Applications.

Mist isn't notarized, so on first launch macOS will block it — right-click the app → Open to get past Gatekeeper. That's the only manual step.

Mist keeps itself up to date — it checks for new releases on launch and can install them from Settings → Updates. To remove it and every trace of its data (Wine prefix, downloaded games, engine, logins):

brew uninstall --zap mist

Quick Start

  1. Open Mist. On first launch it downloads the Wine engine — click Download & Install.
  2. Go to Settings → Steam and scan the QR with the Steam Mobile app. (This is your only login.)
  3. Click Install on any owned game, then Launch. Click a game's card for its details and achievements.

Epic games work via legendary — see the Epic tab. For DirectX 12 titles, also install the Game Porting Toolkit: brew install --cask gcenx/wine/game-porting-toolkit.

Achievements

Mist reads and writes your real Steam achievements over Steam's client protocol using your one login — no Steam client, no Web API key. When you launch a Steam game, it runs through an open-source Steamworks shim (gbe_fork) that lets the game unlock achievements as you play; on exit, anything you earned syncs to your profile.

Experimental. The in-game overlay (Shift+Tab) doesn't work under Wine yet — a known gap.

Cloud Saves

Each game's detail page shows its Steam Cloud quota and how old your local save is versus what's synced — a one-click Restore from Cloud downloads every cloud file to its real location in the Wine prefix (resolving Steamworks path placeholders like %WinAppDataRoaming% automatically), verified byte-for-byte against Steam's own records.

Read-only for now. Uploading changed saves back to the Cloud isn't supported — Mist's write requests are protocol-correct (verified against a real Steam client's own captured traffic) but Steam's backend issues signed upload URLs that never validate for a non-official client, for reasons that trace below the protocol layer. Restoring works; syncing new progress up doesn't, yet.

Compatibility

Most indie games and single-player AAA titles work well. D3D9–11 runs out of the box on a bundled Metal-tuned DXVK — no extra installs. D3D12 titles run best through Apple's Game Porting Toolkit or an installed CrossOver (Mist detects either and routes D3D games through its D3DMetal automatically); many D3D12 games with a D3D11 fallback also just work without it.

Online/multiplayer with anti-cheat (EAC, BattlEye, Vanguard) is not supported — Mist doesn't circumvent anti-cheat, though many such games offer an offline mode. Check ProtonDB: if a game runs on Proton, it'll likely run here.

Building from Source

Requires the Xcode command-line tools and the .NET 10 SDK (for the bundled helper tools).

make app        # build Mist.app (Swift + helper tools)
make dmg        # build a drag-to-install dist/Mist.dmg
make release    # dist/Mist.dmg + dist/Mist.zip

Pushing a v* tag builds and publishes a DMG automatically (.github/workflows/release.yml). No binaries are committed — everything builds from source (see tools/).

Credits

Built on Wine · CrossOver / Sikarugir engine · Apple Game Porting Toolkit · DepotDownloader & SteamKit2 · gbe_fork · legendary · MoltenVK / DXVK.

Support

Mist is free and always will be. If it's useful to you, you can support development on Ko-fi.

Disclaimer

Steam and Epic Games are trademarks of their respective owners; this project is not affiliated with or endorsed by either. Running their clients under Wine or downloading their content with third-party tools may not comply with their subscriber agreements — use at your own risk, with games you own.

License

MIT — see LICENSE. Wine is LGPL v2.1.

About

Run Windows Steam and Epic Games on macOS via Wine

Resources

License

Stars

8 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors