Skip to content

Repository files navigation

Highball — a highball glass with ice

Highball

Run Windows games on Apple Silicon. Free, open, and never locked to one Wine build.

License: GPL-3.0 Latest release CI GitHub stars Apple Silicon, macOS 14+

Highball showing a bottle with a verified game and its renderer verdict from the open database

Highball is a native macOS app (and CLI) that sets up Wine, DXMT, D3DMetal and DXVK for you, installs Steam or connects your Epic library, and tells you honestly what runs, what doesn't, and which renderer to use.

The difference is the data. Every verdict comes from an open, CC0 compatibility database: verified runs, per-game renderer verdicts, and the kernel-anti-cheat blocklist, with provenance on every claim. It's a standalone dataset any tool can build on (highball-db, browsable at gauthierpiarrette.github.io/highball-db), so you can check whether your game runs before downloading a byte.

Download

macOS 14+, notarized. Drag it to Applications and open it. The app walks you through the rest: engine download, your first bottle, Steam.

Not sure it'll run your game? Check the compatibility database →

Beta, working end to end: engine install → bottle → Steam login → game, with per-bottle renderer switching and msync-accelerated launches. Auto-updating. Not a paid tool and not a thin wrapper: engines are assembled from pinned, SHA-256-verified upstream builds, and the compatibility data is public and free for anyone to reuse.

Will my game run?

That's the whole point of the project, so the answer lives in an open, CC0 database: a verified renderer verdict, the frame rate people actually got, and provenance on every claim. It won't guess, and it flags kernel-anti-cheat titles as impossible before you download 80 GB.

Cyberpunk 2077, for one, runs 60–82 fps on an M5 (D3DMetal + FSR 2.1). Renderer switching, 32-bit apps via Wine's WoW64, Windows runtimes, ReShade, and your Epic library via Legendary work too.

What doesn't work yet

Several store launchers with an embedded browser (Chromium/CEF) UI don't render under this Wine build. Rockstar is blocked (it needs a CrossOver-only loader patch), and Ubisoft Connect and GOG Galaxy don't render a usable login window (Ubisoft stays unpainted, GOG comes up black), so you can't sign in. Battle.net and the EA app are flaky. GOG's DRM-free offline installers can be run directly in a bottle, and Epic works through Legendary. Each case is tracked in the recipe's knownIssues.

Getting started

Requires Apple Silicon and macOS 14+, and prompts for Rosetta 2 if needed.

First run takes a while: the engine download is a few hundred MB, and Steam's first launch unpacks its own ~235 MB client. Under Rosetta that can take 15–25 minutes and may look frozen. Let it finish. If it stalls, relaunch and it resumes.

Everything lives in ~/Library/Application Support/Highball/. Nothing touches /usr or /Library; deleting that folder is a full uninstall.

Prefer the terminal? The CLI does everything the app does.
git clone https://github.com/gauthierpiarrette/highball && cd highball        # the app + CLI
git clone https://github.com/gauthierpiarrette/highball-db ../highball-db     # recipes + game database (CC0)
swift build -c release
.build/release/highball engine install spike/engine-manifest.json
.build/release/highball engine accept x64-sikarugir10.0_6-r0 apple-gptk-license-2023-08-17  # optional: D3DMetal
.build/release/highball bottle create play --recipe steam
.build/release/highball run play Steam

Run every command from the highball repo root. Recipe and database paths resolve relative to the current directory, with highball-db as a sibling folder.

Played something? highball report files the result to the open database (community reports already cover M4, M5 and macOS 15). The in-app Report a Problem button is for bugs in Highball itself.

Why Highball is built this way

This niche has a cautionary tale: Whisky was archived in 2025. Highball is built to avoid the ways these tools tend to die:

  • Engine-agnostic: zero Wine patches, zero hosted binaries. Engines are assembled from pinned, SHA-256-verified upstream releases (Gcenx's builds, DXMT, the Sikarugir runtime). An engine update is a JSON pull request, not a build pipeline.
  • The database is the product. Recipes ("Steam needs sync: none; this game needs DXVK") are versioned CC0 data anyone can use, CrossOver users included. We don't know of another machine-readable, CC0 recipe dataset for Wine on Mac.
  • Additive to the ecosystem. Bugs go upstream, donation links point at Gcenx and DXMT, and if you want commercial-grade support you should buy CrossOver: it's the paid, supported option, and it funds most of Wine's Mac work.

Architecture in one paragraph

highball (CLI) and the app are thin views over HighballKit: an engine is a manifest-defined bundle (Wine + runtime dylibs + renderer overlays) laid out under engines/<id>; a bottle is a WINEPREFIX plus bottle.json; renderers (WineD3D / DXMT / D3DMetal / DXVK) are directory overlays selected per launch via WINEDLLPATH_PREPEND; recipes are declarative JSON steps (installer, registry, winetricks, sync, renderer, pin, note) applied to a bottle. D3DMetal is gated behind explicit acceptance of Apple's Game Porting Toolkit license and is never redistributed in this repository.

Contributing

  • Game results: highball report <bottle> "<title>" --rating N opens a pre-filled compatibility report on highball-db; accepted ones are folded into db/reports/ by CI.
  • Bugs in Highball itself: Highball menu → Report a Problem (pre-filled with your system info and the log).
  • Recipes: PRs to highball-db recipes/ with the CLI output attached. Every recipe carries lastVerified (engine id, macOS, chip) so stale data is visible, not silently wrong.
  • Engines: manifest PRs bumping pinned versions, with a verification note.

Licensing

App + CLI + HighballKit: GPL-3.0 (LICENSE). Recipes and database: CC0-1.0 (in highball-db). Wine is LGPL; DXMT is MIT/LGPL; DXVK is Zlib; D3DMetal is Apple-licensed (non-commercial, downloaded separately, never modified). Highball has no paid tier and never will: the app is GPL-3.0 and the data CC0, so anyone can rebuild and redistribute it for free, and a locked paid tier could never hold.

Credits

Standing on: Wine · Gcenx (the entire free Mac Wine supply chain) · 3Shain's DXMT · Sikarugir · Apple's Game Porting Toolkit · Whisky, whose honesty about its own limits shaped this design.

About

Run Windows games on Apple Silicon — free, open source, with an open compatibility database that tells you what actually works.

Topics

Resources

Contributing

Security policy

Stars

106 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages