How to run windows games on linux
Some Mac and Linux ported games already use the commercial version of Wine called CrossOver [www.codeweavers.com] to run Windows versions of the games, System Shock 2 is an example of one such game. CrossOver is maintained by CodeWeavers [www.codeweavers.com] , a team that funds the Open Source Wine [www.winehq.org] project.
Wine is a free way of getting most of Windows versions of games running natively on several POSIX-compliant operating systems, such as Linux, Mac OSX, & BSD. This guide will show you how to install the Windows version of Steam and where to look if you are having trouble running it or running games on it.
782 | уникальных посетителей |
4 | добавили в избранное |
Wine (originally an acronym for «Wine Is Not an Emulator») is a compatibility layer capable of running Windows applications on several POSIX-compliant operating systems, such as Linux, Mac OSX, & BSD. Instead of simulating internal Windows logic like a virtual machine or emulator, Wine translates Windows API calls into POSIX calls on-the-fly, eliminating the performance and memory penalties of other methods and allowing you to cleanly integrate Windows applications into your desktop.
winetricks [wiki.winehq.org] is a helper script to download and install various redistributable runtime libraries needed to run some programs in Wine. These may include replacements for components of Wine using closed source libraries.
There is a winetricks script that downloads, installs and works around bugs that you may face in Steam.
If you chose to install the latest version of Wine, then it has the winetricks script already included in the base installation. If it is not or you would also like to use the latest version of winetricks, check the Wiki on WineHQ on how to get the latest version [wiki.winehq.org] .
Open a terminal window. Wine related commands should be accessible from the terminal window. Winetricks also has a GUI, so executing:
Should open a winetricks window.
Choose «Install an App» option and click ok.
The next window shows available scripts within winetricks. check the checkbox of «steam» only and click ok and the execution of the script will commence.
Unless the script has changed, the install directory(wineprefix*) will be under
/.local/share/winetricks/steam in case of Ubuntu OS. The «wine prefix» shown in the titlebar of the window is ignored by the «steam» script.
The script may even create a shortcut on your Desktop.
A few notes:
* There is a term for Wine called «wineprefix», it is a directory containing the registry and the mimicked Windows directories and files. Every wineprefix is independent and it can be moved and renamed. The win. For more information about wineprefix see the WineHQ FAQ:
http://wiki.winehq.org/FAQ
The winetricks script should have created a shortcut on your Desktop. Launch Steam by clicking on the shortcut. Then Steam should be updating. If updates seem to freeze, close Steam and relaunch it. Steam will see this installation as being on another machine, you may choose to name it «wine».
Here is a screenshot of native Linux version of Steam(on the left) and the Windows version of Steam launched with Wine(on the right) on Ubuntu OS.
Installing should go without a hitch.
But if playing results in bugs or crashes, it is best to check out if your specific game has a page on AppDB [appdb.winehq.org] .
If the pages mention installing components. You may be able to install them using winetricks, but you have to have the directory path of wineprefix to be the correct one. In a terminal:
How to run Windows software in Linux: Everything you need to know
Today’s Best Tech Deals
Picked by PCWorld’s Editors
Top Deals On Great Products
Picked by Techconnect’s Editors
Linux is more capable than ever. With over 1,000 Linux games available on Steam and a general shift towards more web-based desktop software, there’s less need for Windows than ever. After all, you can now watch Netflix on Linux without any hacks, and you can even use Microsoft Office on Linux—a web-based version of it, at least.
But, as most dedicated Linux desktop users will eventually discover, there comes a time when you just need to run a particular piece of Windows software on your Linux PC. There are quite a few ways to do so. Here’s what you need to know.
Wine is a way to run Windows software on Linux, but with no Windows required.
Wine is an open-source “Windows compatibility layer” that can run Windows programs directly on your Linux desktop. Essentially, this open-source project is attempting to re-implement enough of Windows from scratch that it can run all those Windows applications without actually needing Windows.
This is the only method here that won’t actually require a copy of Windows, but the downside is that it won’t run every application properly. You may encounter bugs or performance issues, especially if you’re using Wine to play video games. But if you’re running a popular game released a few years ago, you may find that it performs very well. Many people use Wine to play World of Warcraft on Linux, for example. You can get an idea of how an application will run and any tweaks it might require by visiting the Wine Application Database website and searching for that application.
PlayOnLinux’s version of Wine, running on Ubuntu.
First, download Wine from your Linux distribution’s software repositories. Once it’s installed, you can then download .exe files for Windows applications and double-click them to run them with Wine. You can also try PlayOnLinux, a fancy interface over Wine that will help you install popular Windows programs and games.
Codeweavers also offers a commercial version of Wine, known as CrossOver Linux. You have to pay to use it, but Codeweavers tries to go out of their way to officially support popular applications (like Microsoft Office, Adobe Photoshop, and some big PC games) and ensure they work properly. Codeweavers also contributes its changes back to the main Wine project.
Virtual machines
Virtual machines are a very convenient way to run Windows software on your Linux PC. As PCs have gotten faster, virtual machines have become comparatively more lightweight.
This process involves installing a copy of Windows in a “virtual machine” program like VirtualBox, VMware, or Linux’s built-in KVM (Kernel-based Virtual Machine) solution. That copy of Windows thinks it’s running on real hardware, but it’s really running in window on your desktop. Modern virtual-machine solutions can even break Windows programs running in the virtual machine out of that window, allowing them to act like normal windows on your Linux desktop.
VirtualBox in Ubuntu Linux.
This solution is more foolproof than Wine. As you’re running those Windows applications on an actual copy of Windows, you won’t encounter bugs.
Using a virtual machine does require a full copy of Windows, however, and there is more hardware overhead because that copy of Windows has to be running alongside your primary operating system. In particular, demanding PC games that need access to your computer’s graphics card won’t perform well at all—you’re better off with Wine for those. But for productivity applications like Microsoft Office or Adobe Photoshop, this is an excellent solution.
Dual-booting
Dual-booting isn’t technically a way to run Windows software on Linux itself, but it is how many Linux users run Windows software. Rather than using it directly under Linux, you just reboot your computer, choose Windows, and boot into Microsoft’s operating system. The Windows software can then run in its native environment. Thanks to modern solid-state drives, that reboot process should be faster than ever.
Installing Linux in a dual-boot configuration.
This is particularly ideal if you’re a PC gamer who just can’t give Windows up yet. Rather than forgoing all those Windows games, you can just reboot your computer when you want to play Windows-only games. As you’re using plain-old Windows running directly on the hardware, you won’t have to deal with any compatibility or performance headaches.
The best way to set up a dual-boot system is to install Windows first—if your computer came with Windows installed, that’s good enough. Next, install the Linux distribution of your choice and tell it to install alongside Windows. You’ll then be able to choose your preferred operating system each time you boot your computer. This Ubuntu guide to installing Linux beside Windows can help walk you through the process.
Want to stay up to date on Linux, BSD, Chrome OS, and the rest of the World Beyond Windows? Bookmark the World Beyond Windows column page or follow our RSS feed.
The best option really depends on what you’re trying to do. If you need to run a single application or game that works well in Wine, Wine may be ideal. If you need to run a variety of desktop applications—like the most modern versions of Office and Photoshop, which Wine might struggle with—a virtual machine will be best. If you’re a PC gamer who still wants to play the latest Windows games, dual-booting will give you the performance you want without the headaches of Wine.
When freelance writer Chris Hoffman isn’t writing about gadgets and software, he’s probably using them in his spare time.
How to play Windows games in Linux
The best ways to run Windows games new and old on Linux, updated for 2019.
The continued (and usually justified) distaste for Windows 10 has given more momentum than ever to Linux as a desktop platform. Most Linux-based operating systems are free to use, have a consistent interface, and don’t break with every update—what’s not to like?
While Linux can run much of the same software that Windows can, including all major web browsers and many productivity tools, gaming has always been a rough point for the platform. Major games natively written for Linux are still few in number, but Windows compatibility layers like Wine and various emulators have been filling in the gaps.
Thankfully, Linux gaming has improved quite a bit in the past year. Steam Play allows you to play Windows games effortlessly through Steam, without fiddling with configuration files or installers yourself (most of the time, anyway). Meanwhile, tools like Lutris have made it easier than ever to play games through the Wine compatibility layer.
In this guide, we’ll show you the best ways to play Windows-only games on your favorite Linux distribution—whether it be Ubuntu, Debian, Arch, Fedora, or something else.
Steam Play/Proton
For years, the ‘Wine’ compatibility layer has made it possible to play Windows games on Linux. For the past three or so years, Valve has been working with Wine developers to improve game compatibility, and the result is Proton. Proton, also called ‘Steam Play,’ is a modified build of Wine developed by Valve—and it’s built right into Steam for Linux. That’s right, the dark days of installing Steam inside of Wine to play Windows-only Steam games are over.
Steam Play is an incredibly impressive compatibility layer, and it makes running Windows games in Linux easier than ever. It can translate Windows DirectX calls to Vulkan API calls, resulting in better compatibility and performance than ever before, and it works perfectly with external controllers and Steam Overlay.
To get started with Steam Play, install Steam for Linux if you haven’t already. This process varies a bit depending on what Linux distribution you’re running.
Installing Steam on Debian, Ubuntu, Linux Mint, Pop_OS, and most other Debian-based distros
Go to the Steam download page and click the big download button. You should get a .deb file. Double-click on the file, and a package manager will open asking you if you want to install the application. Once the process is complete, Steam should be available in your app launcher, and you can open it and log in.
Installing Steam on Elementary OS
While Elementary OS is based on Debian/Ubuntu, newer versions of Elementary don’t automatically have the application required to open .deb files. So first, you need to install ‘Eddy’ from the AppCenter. Once Eddy is installed, go to the Steam download page, click the big download button, and open the .deb file it gives you. After all that is done, Steam should be available in your app launcher. Try opening it and logging in.
Installing Steam on Fedora, Arch, and most other distros
If you’re using a distribution that isn’t based on Ubuntu/Debian, you’ll have to install Steam from the unofficial Flatpak. Flatpak is a way of packaging applications to work on a wide variety of Linux distributions.
First, some minor setup may be required depending on the exact distribution you’re using. The official Flatpak website has super easy instructions for getting everything set up.
Once that’s done (and you’ve rebooted your PC, if it said to in the instructions), we need to make sure the Flathub repository is set up. Run this command in the Terminal:
Then install Steam with this command:
After that’s done, Steam should appear in your app launcher. Open it and log in.
Enabling Steam Play for all games
Valve currently tests games before officially certifying them for Steam Play. However, there is a setting in Steam that gives you the option of running non-certified games in Steam Play. While many titles work just fine, keep in mind that some games (especially newer ones, or some that use certain DRM methods) might have issues or won’t work at all. The worst that can happen is the game not running—you don’t have to worry about corrupting other games or breaking Steam.
To get started, click the Steam menu at the top-left of the main Steam window, and select ‘Settings’ from the dropdown. Then click ‘Steam Play’ on the left side, make sure the the box that says ‘Enable Steam Play for supported titles’ is checked, and check the box for ‘Enable Steam Play for all other titles.’
After that’s done, click OK. Steam might want to restart to apply your changes. With all that done, go to your Steam library, click the dropdown menu next to the search bar, and make sure ‘Games’ is selected. Now you can see all your Steam games—including those for Windows—and install them with just one click. The helpful «runs on this computer via Steam Play» message will let you know which games will be installed using the compatibility layer.
If you want to check if a certain game will run in Steam Play before you download it, check out ProtonDB. It’s a community-maintained database that can probably tell you if a certain game works or not, complete with helpful instructions and tips for getting troublesome games to run.
Steam Play is a fantastic piece of software, and it makes playing popular Windows games in Linux far easier than it ever was before. as long as the game is available in Steam. For games found on other storefronts and launchers, another tool might be able to help you out.
Lutris
Lutris describes itself as an «open source gaming platform for Linux.» It’s a front-end for programs like Wine, RetroArch, and DOSBox—you pick the game you want to play, and everything required to get it working is downloaded and set up for you. It supports games like League of Legends, Skyrim, Warframe, Overwatch, and more. It can even detect and add any Linux-native games you might already have installed and add them to the launcher.
Installing Lutris
Lutris has detailed installation instructions on its website, so we won’t re-invent the wheel here. On most distributions, it only takes a command or two to get everything installed.
How to use Lutris
To get started with Lutris, just open it from your app launcher, click the search button, type in a game, and click the ‘Search Lutris.net’ button. You’ll get a list of games you can install, and double-clicking on it will display the ways you can install it. For example, The Witcher 2 can be downloaded from GOG for Linux, GOG for Windows, Steam for Linux, and Steam for Windows.
Also, Lutris supports more than just Windows games. It offers multiple «runners» for playing games from different platforms, including RetroArch (retro games), DOSBox (DOS games), MAME, ScumVM (LucasArts titles), Snes9x (SNES games), and ZDoom (DOOM-based titles).
If you’re feeling adventurous, you can install games manually using whichever runner you want. Lutis has no shortage of options and configuration settings.
Conclusion
Steam Play has made it easier than ever to run your entire Steam catalog on Linux, and Lutris is a significant improvement over the script-based game installers of old (anyone remember PlayOnLinux?). With these two tools, you can enjoy thousands of games that will likely never have an official Linux port.
Of course, there are still more ways to run Windows games on Linux. You can install VirtualBox and run a Windows virtual machine, though you’re likely to run into performance problems with newer games. If you’re feeling adventurous, you could try setting up a VM with support for GPU passthrough.
CrossOver by CodeWeavers is another popular way to run Windows software on Linux, and many of its developers helped Valve develop Steam Play. However, CrossOver is more oriented towards business use, so it doesn’t have as many supported games as Lutris.
Corbin is a tech journalist and software developer living in Georgia. He plays a lot of Planet Coaster.