- 5 Tools to Help You Run Windows Programs in Linux
- Get the best of both worlds with these Windows emulators
- Plain Classic WINE
- Install WINE
- Install on Fedora
- Install on openSUSE
- Install on Arch Linux and Manjaro
- Lutris
- Install on Ubuntu and Linux Mint
- Install on Debian
- Install on Fedora
- Install on openSUSE
- Install on Arch Linux and Manjaro
- Play On Linux
- Install Play On Linux
- Available Windows Programs
- Crossover
- How to Enable Steam Play on Linux to Run Windows Games
- Enabling Steam Play on Linux
- Enabling Proton Configuration File & Logs
- Example Use Case: Age of Empires 2 HD
- Conclusion
5 Tools to Help You Run Windows Programs in Linux
Get the best of both worlds with these Windows emulators
Even though open-source software includes free tools, including email clients, office applications, and media players, you might need a software app that works only on Windows. In this case, use one of the tools listed here to run Windows apps on your Linux PC.
These tools are based on or use WINE. Aside from virtual machines, WINE is the only way to run Windows applications on Linux. There are wrappers, utilities, and versions of WINE that make the process easier, though, and choosing the right one can make a difference.
Plain Classic WINE
Doesn’t require a Windows license to use Windows applications.
The simple core utility behind these tools.
This is the stable and officially supported version.
It doesn’t always run the latest versions of Windows products.
Some games and applications run sluggishly.
Lacks helper scripts.
Doesn’t have the latest patches and improvements.
WINE stands for Wine Is Not An Emulator. WINE provides a Windows compatibility layer for Linux that makes installing, running, and configuring many popular Windows applications possible.
Install WINE
To install WINE, run whichever of the following fits your Linux distribution.
On Ubuntu, Debian, or Mint:
Import the WINE developer key:
Add the repository. Replace eoan with your Ubuntu release.
On Debian, use the following example, replacing buster with the Debian release.
Update your repositories, and install WINE Staging:
Install on Fedora
Add the repository from the WINE developers. Replace 30 in the address with your Fedora release.
Then, install the latest WINE Staging release using DNF.
Install on openSUSE
openSUSE has WINE Staging in its repositories. To install it:
Install on Arch Linux and Manjaro
WINE Staging is in the official Arch repository. Install it normally.
Lutris
Easy to play games.
Manage configurations without hassle.
Get the latest versions of WINE.
Manage games in one place.
Takes a little setup on some distributions.
Focused almost exclusively on games.
When it comes to playing Windows games on Linux, there’s no better option than Lutris. Lutris is relatively new compared to the other entries on this list, but it’s more than earned its spot by making it just as easy to install Windows games on Linux as it is on Windows.
With Lutris, you can play games, like Overwatch, on Linux in only a couple of clicks. There’s no need to know the technical details. Someone already did the hard work for you.
Lutris also integrates with other Linux gaming platforms, like Steam, to keep your game library organized. With Lutris, you can access all your games in one place. Lutris keeps separate configurations for each game, so it can manage multiple versions of WINE at once, using the ideal one for each game.
Installing Lutris is fairly simple too.
Install on Ubuntu and Linux Mint
Install the Lutris PPA:
Update Apt, and install Lutris:
Install on Debian
Add the Lutris repository configuration:
Then, import the Lutris signing key:
Finally, update Apt, and install Lutris:
Install on Fedora
Lutris is available in the default Fedora repositories. Install it with DNF.
Install on openSUSE
openSUSE has Lutris in its repositories too. Install it normally.
Install on Arch Linux and Manjaro
Arch also has Lutris in the main repository:
Play On Linux
Good gaming support.
Install multiple versions of WINE simultaneously.
Excellent community support.
Starting games in full-screen mode can sometimes cause crashing.
Error reporting is lacking.
Similarly to Lutris, Play On Linux provides a graphical interface for WINE. Play On Linux came before Lutris, and it offers many of the same features. Play On Linux is bare-bones and doesn’t include support for Linux games. It takes a general approach, so you may find better office application support here, even though it’s probably not as good as something like Crossover.
Install Play On Linux
On Ubuntu, Debian, and Mint:
sudo apt install playonlinux
On Fedora and CentOS:
sudo dnf install playonlinux
sudo zypper install playonlinux
On Arch and Manjaro:
sudo pacman -S playonlinux
Available Windows Programs
When you first run Play On Linux, a toolbar appears at the top with options to run, close, install, remove, or configure applications. You’ll also see an installation option in the left panel.
You can choose from a number of applications, including development tools such as Dreamweaver, an assortment of retro classics such as Sensible World of Soccer, modern games such as Grand Theft Auto versions 3 and 4, the Half Life series, and more.
The graphics section includes Adobe Photoshop and Fireworks, and you’ll find browsers in the internet section. The office section is a bit hit and miss. Those apps may not work.
Play On Linux requires you to have the setup files for the programs you are installing, although you can download some of the games from GOG.com.
Software installed via Play On Linux is generally more likely to work than software installed with plain WINE.
You also can install non-listed programs. However, the programs listed have been specifically configured to be installed and run using Play On Linux.
Crossover
Streamlined setup makes it easy for Linux newcomers to use Windows programs.
Reliable 24/7 customer support with the premium plan.
Applications take up more space on the hard disk due to how it handles containers.
Free trial is limited to 14 days.
Crossover is the only item on this list that isn’t free. It’s a commercial product based on WINE. Installers are available for Debian, Ubuntu, Mint, Fedora, and Red Hat.
When you first run Crossover, you are presented with a blank screen with an Install Windows Software button at the bottom. When you click the button, a new window appears with the following options:
- Select application
- Select installer
- Select bottle
A bottle in Crossover is like a container that installs and configures each Windows application.
When you choose Select application, you’ll see a search bar from which you can search for the program you wish to install by typing a description.
You also can browse the list of applications. A list of categories appears, and as with Play On Linux, you can choose from an array of packages.
When you choose to install an application, a new bottle suitable for that application is created, and you are asked to provide the installer or setup.exe.
Why use Crossover when Play On Linux is free? Some programs work only with Crossover and not Play On Linux. If you need that program, then this is one option.
While WINE is a great tool, and the other options listed provide extra value for WINE, some programs may not work properly, and some may not work at all. Other options include creating a Windows virtual machine or dual-booting Windows and Linux.
How to Enable Steam Play on Linux to Run Windows Games
Last Updated on May 28, 2020
Today, Valve released a new beta version of Steam Play which includes a technology called “Proton”. Proton is a modified distribution of Wine that enables you to run Windows games on Linux, and it’s integrated directly inside Steam itself, which will enable you to run all Windows-only Steam games natively on Linux.
This is a huge deal, because thousands of users around the world were prevented before from fully switching to Linux due to the limitations of the gaming experience on Linux. Some big titles were never ported to Linux and remained Windows-only, and those which were ported had many glitches. But today, you can start expecting a pure gaming experience on Linux just like on Windows. Valve said it will make sure all games on the store will be eventually supported under Steam Play for Linux.
Now, in this tutorial, we’ll explain how to enable Steam Play with Proton, how to adjust its preferences and how to debug non-working games. We’ll also run Age of Empires 2 HD on Linux as an example test case.
Table of Contents
Enabling Steam Play on Linux
To do this, open your Steam settings, and go to Steam Play, and enable the checkbox “Enable Steam Play for all other titles”:
You’ll be required to restart Steam.
Now, you can head to the Steam store and try to run any Windows game you would like and see your luck. In its announcement, Valve mentioned some titles to be working fully under Steam Play, but even if your game is not among these, you may still try installing and running it to see what happens. Valve plans on reviewing the entire Steam catalog to make it Steam Play compatible, but this process may take time, so it’s better that you try your luck now.
You’ll find the install button now available on your previous Windows-only games, click it to start installing:
Enabling Proton Configuration File & Logs
If you head to HOME/.steam/steam/steamapps/common/Proton\ 3.7/ , you’ll find the Proton’s configuration files. There’s a file with the name user_settings_sample.py . Change its name to user_settings.py and then open the file in a text editor.
This file the configuration file for Proton, which is the modified Wine distribution shipped inside Steam itself. You can tweak many stuff from there.
Here are the contents of the file by default:
In order to get more information about any possible game crash, change “DXVK_LOG_LEVEL” to “debug” and save the file and exit. If you would like to test stuff, you may try enabling other options in the file such as disabling D3D11 or enabling DXVK’s HUD by simply removing the # symbol from the beginning of the line. Don’t forget to restart Steam after any change to the file.
Browse FOSS Post ad-free when you subscribe to Patreon
Now, whenever you try to install a Windows-only game on your Linux client and if that game crashes, you’ll find a log file named something like steam-221380.log in your home directory. This log file contains all the information associated with that game while it was trying to run and why it crashed. From there you can simply Google the error message until you find the solution.
What most people don’t realize while trying to run Windows games via Steam Play is that most of these issues may not be caused your local machine or Linux system. Even Windows users on a lot of different hardware face many bugs and issues while trying to run games. So if a game doesn’t work with you via Proton on Steam Play, just check the forums or online discussions for other people who may have faced the same issue.
You should try running your favorite games on Linux from now, there’s no need to wait.
Example Use Case: Age of Empires 2 HD
The iconic Age of Empires 2 is one of the best strategy games out there. I was happy to have it on Windows but sadly it doesn’t have a Linux version. So I simply wasn’t able to play it when I detached Windows from my machine.
After installing the game on my Linux machine (Thinkpad x260 with Linux Mint 19) using Steam Play, the game simply crashed on boot. Googling the error message in the log file led to this discussion on Steam, which indeed gives a working solution:
- Add NoStartUp in launch options.
- Remove Launcher.exe from your game files.
- Rename AoK HD.exe into Launcher.exe .
- Start the game from Steam.
You may also notice that the game is stuck on subscriptions validation.. Just close the game and start it again, and Voala! The game is working perfectly:
And you’ll notice that your previous profile, saved games and any other settings are all saved from your Windows machine. It’s just exactly as if you were running it on Windows. There are no lags or glitches in the gameplay.
Conclusion
Proton’s integration via Steam Play should allow you to run tons of top-tier games on your Linux machine natively. The technology right now is still in beta stage and it’s too early to judge on it from now, but it will be a game changing for a lot of people. Many gamers will now be able to detach Windows fully and switch to Linux.
Valve made huge contributions to Linux gaming. Proton contains a lot of improvements and patches which do enhance the gaming experience better than just running it on a plain Wine. Many of these patches are also shared to the upstream to enhance the gaming experience for other Wine users too.
If you would like to follow the latest news and development of Steam Play & Proton, keep in touch with the Steam for Linux community. Also follow the issues page on Proton. Additionally, there’s a user-list of tested games on Steam Play beside notes on how it went.
Browse FOSS Post ad-free when you subscribe to Patreon
Challange your knowledege, and take a quiz.
Comments are moderated before they are published on FOSS Post to keep discussions civil and prevent spam.