Winebottler - run Windows apps on MacOS

WineBottler

It is already possible to run Windows on Mac computers, either by booting into the operating system via BootCamp, or by running a virtualised machine image using tools such as Microsoft Virtual PC (for PowerPC Macs) or Intel-based tools such as VMWare Fusion and Parallels Desktop. Applications can even be run in individual windows on the Mac desktop without the need to see the entire Windows desktop.

One drawback of this approach is that the entire Windows operating system needs to be loaded in the background, so that even if you are only accessing a relatively small application, a lot of the Mac's memory and processor performance is being utilised.


Wine

Ever since Apple began using Intel processors in their computers, an open source project known as Wine has made it possible to run Windows applications on MacOS directly, independently of the Windows operating system.

Wine works well on both MacOS Tiger (10.4) and Leopard (10.5), but not so well on Snow Leopard (10.6) - individual pre-requisite packages needing to be manually compiled to run in a 32-bit environment rather than default 64-bit: I'll come onto Snow Leopard in a moment.
You must be using an Intel-based Mac in order to use Wine, will require the XCode tools installed from the OS X installation disc, and will also require MacPorts installed (http://www.macports.org)

MacPorts

Once MacPorts has been installed, configure the PATH environment for your user account with the following command in Terminal:

echo export PATH=/opt/local/bin:/opt/local/sbin:\$PATH$'\n'export
 MANPATH=/opt/local/man:\$MANPATH | sudo tee -a /etc/profile

You can now download and install Wine and all pre-requisite packages with the following command:

sudo port install wine-devel

Alternatively you can use an application such as PortAuthority (http://www.apple.com/downloads/macosx/unix_open_source/portauthority.html) to manage your MacPorts via a GUI:

Port Authority

Once installed, a virtual Windows environment will be created in a hidden directory in your User folder on the Mac called 'Wine':

WineBottler

To run a self-contained Windows executable file, such as MineSweeper, say, simply save the EXE file to your Mac somewhere, then load the Terminal and navigate to that folder. Run the file using Wine with the following command:

wine winmine.exe

If all has gone according to plan, you will see MineSweeper load in an X11 window:

WineBottler

If you want to install a Windows-based application, follow the same procedure, except copying the installer file to the Mac and invoking it via Wine at the command prompt:

wine setup.exe

In this example I'm installing the VMWare Server Console for Windows application. By running the setup.exe in Wine I see the installer wizard in an X11 window:

WineBottler WineBottler

WineBottler WineBottler

WineBottler

Once installed, you will see the new program files in the virtual Windows environment in the Wine directory:

WineBottler

You can now locate the installed program EXE file and launch this within Wine using the same command format in Terminal:

wine vmware.exe

Clever stuff.


WineBottler

WineBottler (http://winebottler.kronenberg.org/) is the new home of the Wine project and has added a GUI to the platform as well as Snow Leopard support. The package is still in beta stage at the moment and still requires an Intel processor and the XCode tools to be installed on your Mac.

Once installed on the mac, EXE files are associated with Wine automatically:

WineBottler

Running an EXE file will prompt you whether or not to just run the file, or to create an application installation package:

WineBottler

Again, running a self-contained application such as Notepad.exe, will simply load:

WineBottler

If you want to install an application, the procedure is slightly different. Within WineBottler you can create what are called 'Prefixes'. The procedure in the background is effectively the same, but Bottler allows you to add an icon for the application in your Mac Applications folder, and add pre-built Wine ports of pre-requisite Microsoft software, such as the DotNet Framework, to that application.

To create a Prefix, launch WineBottler:

WineBottler

Browse to where you have saved the installer EXE file (or MSI files are also supported, although I haven't tried one yet):

WineBottler

Specify the name of the resulting .app package you want to create as well as where to put it:

WineBottler

The package will then run the installer and you will see the installer in an X11 window as before:

WineBottler

Once the installer has completed, should the Windows application contain more than one EXE file in the Program Files directory, you can specify which one should be launched:

WineBottler

The prefix is then created, and an icon added to the Applications folder, using the appropriate icon:

WineBottler WineBottler

Just amazing!

Within the WineBottler application are also links to download pre-compiled Prefixes, including builds of Internet Explorer 7 and 8.

Prefix packages can also be built to include all of the required Microsoft packages as well as the Wine package itself, so that built files can then be run on other Macs that don't have Wine installed.

If you have resisted seriously considering using the Mac platform because of that 'one app' that only runs on Windows - this may be a solution for you.