Wine

Posted on 3 2026

Wine is a compatibility layer that allows Windows applications to run on Linux. It translates Windows API calls into POSIX calls on the fly, meaning it is not a virtual machine or emulator. There is no Windows licence required and no full Windows installation to maintain. For Windows applications that have no Linux equivalent and no adequate substitute, Wine is often the cleanest solution.

The landscape of needing Wine has narrowed considerably since the original source material for this series was written. Most things that required Wine in 2015 now have native Linux versions, web-based alternatives, or adequate open source substitutes. If you find yourself reaching for Wine, it is worth spending a few minutes first confirming there is genuinely no native option.

That said, Wine works well for a range of applications and is worth having available.

Installation

The WineHQ repository provides more current versions than the Ubuntu repositories. Add it and install the stable branch:

sudo dpkg --add-architecture i386

sudo mkdir -pm755 /etc/apt/keyrings
sudo wget -O /etc/apt/keyrings/winehq-archive.key \
    https://dl.winehq.org/wine-builds/winehq.key

sudo wget -NP /etc/apt/sources.list.d/ \
    https://dl.winehq.org/wine-builds/ubuntu/dists/noble/winehq-noble.sources

sudo apt update
sudo apt install --install-recommends winehq-stable

Verify the installation:

wine --version

Winetricks

Winetricks is a helper script that installs common Windows runtime libraries and components that many applications depend on. It is not strictly required but saves significant time when applications need components like DirectX, Visual C++ redistributables, or .NET Framework.

sudo apt install winetricks

Initial setup

Before installing any Windows application, initialise the Wine prefix. The prefix is a directory structure that simulates a Windows installation, containing the registry, system libraries, and installed applications:

winecfg

This opens a configuration dialog and initialises ~/.wine/ as the default prefix. Set the Windows version to Windows 10 under the Applications tab for best compatibility with modern applications.

Installing applications

Download the Windows installer for the application and run it through Wine:

wine /path/to/installer.exe

Follow the installer as you would on Windows. The application installs into ~/.wine/drive_c/Program Files/ or similar.

To run an installed application:

wine ~/.wine/drive_c/Program\ Files/ApplicationName/application.exe

Applications installed via Wine also typically appear in the KDE application launcher under a Wine category.

Multiple prefixes

For applications that conflict with each other or require different Windows versions, use separate Wine prefixes:

WINEPREFIX=~/.wine-app1 winecfg
WINEPREFIX=~/.wine-app1 wine /path/to/installer.exe

Each prefix is an independent Windows environment. Keeping applications in separate prefixes avoids library conflicts and makes removal cleaner.

Removing applications

Uninstall via Wine’s uninstaller:

wine uninstaller

This opens a list of installed applications with uninstall buttons. Alternatively, run the application’s own uninstaller directly through Wine.

To remove a prefix entirely:

rm -rf ~/.wine

Or for a named prefix:

rm -rf ~/.wine-app1

Checking application compatibility

Before investing time in a Wine setup for a specific application, check the Wine application database:

https://appdb.winehq.org/

The database lists compatibility ratings for thousands of Windows applications: Platinum (works perfectly), Gold (works with minor issues), Silver (works with significant workarounds), Bronze (runs but barely usable), and Garbage (does not work). Platinum and Gold applications are worth attempting. Silver and below usually have better Linux alternatives worth investigating first.

A note on Proton

If the Windows application you need is a game, Proton is the better path than Wine directly. Proton is Valve’s Wine-based compatibility layer built into Steam, and it is optimised for games in a way that bare Wine is not. Install Steam from the Ubuntu repositories or the Steam website and enable Proton in Steam settings rather than attempting to run games through Wine directly.

sudo apt install steam

Wine gives Windows applications access to your filesystem and user data. An application running under Wine has the same access rights as your user account. Be cautious about running untrusted Windows executables through Wine for the same reason you would be cautious about running untrusted Linux executables directly.