README.md

May 1, 2026 ยท View on GitHub

Whisky ๐Ÿฅƒ

Wine but a bit stronger

Active community fork. The original whisky-app/whisky was archived on April 9, 2025 with a final maintenance notice. This fork, maintained by @frankea, continues development โ€” addressing the backlog of upstream issues and adding new functionality. Not affiliated with the original project or getwhisky.app.

Documentation

Overview

Whisky provides a clean and easy-to-use graphical wrapper for Wine built in native SwiftUI. You can make and manage bottles, install and run Windows apps and games, and unlock the full potential of your Mac with no technical knowledge required.

Config

Familiar UI that integrates seamlessly with macOS

New Bottle

One-click bottle creation and management

debug

Debug and profile with ease


Key Features

  • Wine 11.0 - Latest stable Wine with improved compatibility and networking
  • Launcher Compatibility - Built-in support for Steam, Epic, EA App, Rockstar, Battle.net, and more
  • Controller Support - SDL environment variable controls for gamepad detection and mapping issues
  • Stability Diagnostics - One-click diagnostic reports for troubleshooting crashes and freezes
  • Native SwiftUI - Beautiful, familiar macOS interface

System Requirements

  • CPU: Apple Silicon (M-series chips)
  • OS: macOS Sequoia 15.0 or later

Installation

brew install --cask frankea/whisky/whisky

This taps frankea/homebrew-whisky and installs the latest signed/notarized DMG. brew upgrade --cask picks up new releases.

The default brew install --cask whisky still installs the archived original (last release April 2025) and always will until that cask is updated. Use the qualified frankea/whisky/whisky form to get this fork.

Manual

  1. Download the latest Whisky-X.Y.Z.dmg (signed and notarized โ€” Gatekeeper-approved).
  2. Open the DMG and drag Whisky.app to /Applications.
  3. Launch Whisky. On first run it downloads the Wine runtime (~313 MB) and sets up your default bottle.

In-app updates are delivered through Sparkle from https://frankea.github.io/Whisky/appcast.xml.

Migrating from the original Whisky

The original whisky-app/whisky was archived on April 9, 2025 with a final maintenance notice. If you're running it today, you're on a stale build with no path forward for new fixes. This fork picks up where the upstream left off โ€” version 3.0.1 shipped 54 requirements covering the 10 categories of upstream issue tracking (#40โ€“#50).

To switch:

  1. Quit the original Whisky app.
  2. Export bottles you want to keep first via the original app's Bottle โ†’ Export menu โ€” this fork uses a different bundle identifier (com.franke.Whisky) so it won't see them automatically.
  3. Drag the existing /Applications/Whisky.app to the Trash, or brew uninstall --cask whisky if you installed it via Homebrew. Bottles in ~/Library/Containers/com.isaacmarovitz.Whisky/ stay put.
  4. Install this fork: brew install --cask frankea/whisky/whisky or follow the manual steps above.
  5. Re-import any exported bottles through File โ†’ Import Bottle in the new app.

If you have no critical bottles, you can skip the export โ€” the new app will create a fresh bottle on first launch.

Documentation

WhiskyKit, the core framework powering Whisky, has comprehensive API documentation:

Troubleshooting

Upstream issue audit

Per-issue accounting of how this fork addresses the open issues from the archived upstream repo. Read docs/AUDIT.md for the methodology โ€” including how to read the addressed-direct vs addressed-categorical distinction and what unverified GameDB entries actually mean.

Test coverage

The Coverage badge above reports line coverage for WhiskyKit only โ€” the framework that holds the bottle, Wine, GameDB, and PE-parser logic. The SwiftUI app target (Whisky/), WhiskyCmd, and WhiskyThumbnail aren't measured because CI runs swift test --enable-code-coverage against the WhiskyKit Swift package per .github/workflows/CI.yml. Read the badge as "WhiskyKit unit-test coverage," not full-app coverage.

WhiskyUITests gives behavioural coverage of the SwiftUI surface (toolbar, create-bottle sheet, fixture-dependent flows), but those tests don't feed the Codecov number. A future job that runs xcodebuild test -enableCodeCoverage YES against the Whisky scheme would close that gap; tracked as a follow-up.


Credits & Acknowledgments

Whisky is possible thanks to the magic of several projects:

Special thanks to Gcenx, ohaiibuzzle, Nat Brown, and Isaac Marovitz (original author) for their support and contributions!


Whisky doesn't exist without CrossOver. Support the work of CodeWeavers using our affiliate link.