• Stars
    star
    215
  • Rank 183,925 (Top 4 %)
  • Language
  • Created over 4 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

How to install wine on mac

How to install/about wine on mac

As this question keeps appearing more recently I'm making this basic guide.

Prerequisites;

Installing wine using homebrew Once homebrew is installed you the following command to install your selected wine package

brew tap homebrew/cask-versions
brew install --cask --no-quarantine wine-staging

The above command will install the most recent wine-staging pkg available on winehq but it will also add wine for use in Terminal meaning you no longer need to launch the installed Wine Staging app each time you want to access wine.

Please Note;
Only a single wine package can be installed using brew
The --no-quarantine command is required as homebrew by default adds the quarantine flag to downloaded casks, this causes Gatekeeper to treat the bundle as damaged.

How to manually install wine on mac using Winehq releases;

Grab a wine package usually using the latest wine-devel is recommended, but most agree it's best to use the latest wine-staging due to additional patches.
If your intention is to have a more stable environment use wine-stable
Currenty macOS packages are not uploaded to Winehq, those can be downloaded from here

The above is the Winehq way to install wine on mac but that makes it cumbersome to use considering you must launch the Wine Stable, Wine Devel or Wine Staging app each time to get access to wine within Terminal

Wine basics

The default WINEPREFIX will be ~/.wine so anything you install will be placed into the hidden ~/.wine folder. You can override this by using the WINEPREFIX command

The default architecture of a WINEPREFIX will be 64Bit meaning 32Bit and 64Bit applications & games are supported but that's not always ideal for several reasons. A new WINEPREFIX can be created and also setting WINEARCH

Here is an example of using both commands to create a 32Bit only WINEPREFIX

WINEARCH=win32 WINEPREFIX=~/.wine32 winecfg

The above command will create a new WINEPREFIX thats also 32Bit only and launch winecfg

wine binaries

  • wine (32Bit loader)
  • wine64 (64Bit loader)
  • wineserver (daemon process)

shell wrappers

  • msiexec (execute msi files)
  • notepad
  • regedit (Wines Registry editor)
  • regsvr32 (Provides DLL registration services)
  • wineboot
  • winecfg (wine configuration utility)
  • wineconsole (windows like shell aka cmd)
  • winedbg (wine debug utility)
  • winefile (wine file manager)
  • winemine (wines version of the game mine)
  • winepath

What's this winetricks everyone keeps saying to use?

Winetricks is an easy way to work around problems in Wine.

While winetricks can be installed directly from GitHub you will be missing packages winetricks requires, instead install again using homebrew

brew install winetricks

Now you will also have access to winetricks command within Terminal

Why doesn't my game work on mac but Winehq says it does?

This usually happens when the game uses DirectX10 or above, the version of OpenGL included on macOS hasn't been updated in years so it's missing some needed extensions.

Can I use DXVK on mac?

Yes & no. MoltenVK supports Vulkan 1.1 core features so that's enought to to run some 64Bit (Apples Metal API is 64Bit) DirectX 10 & DirectX 11 games.
Upstream DXVK won't work on macOS as additional modifications are required.

Note;
CrossOver-20 and later include DXVK support, this provides 64Bit DirectX 10 and DirectX 11 support. CodeWeavers patched MoltenVK to fake unsupported extensions along with a custom version of DXVK that was modified specifically for macOS.

DXVK-macOS

DXVK-macOS provides custom DXVK packages with macOS in mind, those packages don't require a modified version of MoltenVK.

Note;
While I've provided DXVK-async packages there are not recommended, upstream DXVK had removed this feature after reports of possible bans related to anti-cheat systems.

macOS Sierra and below

While upstream wine does support OS X 10.8 and later the provided packages target macOS High Sierra and later.
To get modern wine on legacy versions of macOS you'll need to make use of macports-wine

macOS Catalina and later

Currently only CrossOver-19 and later suppot 32Bit on 64Bit only versions of macOS.

Here are some free alternatives;

Install the lastest wine-crossover package I provide from my brew tap;

brew install --cask --no-quarantine gcenx/wine/wine-crossover

Gatekeeper will give a warning for each Windows binary that is ran as these won't be code-signed in a way Apple expects, to avoid this you could disabled Gatekeeper using the following command

sudo spctl --master-disable

Please Note;
macOS Catalina 10.15.0 to 10.15.3, SIP needs to be disabled this will allow wine32on64 to change the state of i386_set_ldt
The current wine-crossover package can be downloaded directly WineCX20.02

Also;
wine32on64 does not support 16Bit executables so somethings just won't work

Apple Silicon support?

Only CrossOver-20.0.2 includes 32Bit support for Apple Silicon at this time, this requires macOS Big Sur 11.1 and Rosetta2 installed.
Wine-6.0.1/Wine-6.1 only support 64Bit Windows Binaries at this time.

How to build wine from source;

TODO