Linux gaming has come a long way in recent years, largely thanks to Valve’s Proton and the Steam Deck. But what if your favorite games are not on Steam? You might have a library from Epic Games Store, GOG, or even old CD-ROMs lying around. The good news is you can run almost any Windows game on Linux, even without Steam. This guide covers the best and most reliable methods to play non-Steam games on Linux, from automated launchers to manual Wine configuration. Whether you’re a seasoned Linux veteran or a newcomer, you will find a solution that fits your needs.
Before diving in, ensure your system is up to date and you have the latest graphics drivers installed. Many of the tools below require Wine, Vulkan, and 32-bit libraries. We will walk through setup steps for each method so you can start gaming quickly.
Lutris: The All-in-One Game Manager
Lutris is arguably the most popular tool for managing non-Steam games on Linux. It provides a unified interface to install, configure, and launch games from various platforms, including Windows games via Wine, native titles, and even emulated retro games. Lutris uses community-contributed installation scripts that automate the entire setup process. You can browse the Lutris website, find your game, and click install, and Lutris will download the correct Wine version, dependencies, and configure everything for you.
To get started, install Lutris using your distribution’s package manager or the official Flatpak. For Ubuntu and Debian-based systems, you can use the official PPA. Once installed, launch Lutris and sign in to sync your library. Click the plus button to add a new game. Here you can search for an installer script from the Lutris database. If your game is not listed, you can create a custom entry and manually specify the Wine prefix and executable. Lutris also lets you choose different Wine or Proton runners, including custom versions like wine-ge or proton-ge. This flexibility makes it ideal for games that require specific tweaks. For GOG and Epic Games Store titles, you can link your accounts directly within Lutris to import your library and install games with one click.
Wine and Proton Without Steam
If you prefer a more hands-on approach or need maximum control, you can use Wine or Proton directly without a launcher. Wine is a compatibility layer that allows Windows applications to run on Linux. Proton is Valve’s fork of Wine with additional patches and integration with Steam, but it can also be used outside Steam. To run a non-Steam game with Proton, you can download the standalone Proton runner from tools like ProtonUp-Qt, or use the Proton files from your Steam installation (if it is installed). Then, you set up a Wine prefix (a folder that mimics a Windows environment) and use the wine command to run the installer and the game executable.
The manual process involves installing any required dependencies like DirectX, .NET, or Visual C++ redistributables using winetricks. This can be time-consuming, but it is essential for older or obscure titles. A common workflow is to create a new 64-bit prefix, enable Vulkan if your card supports it, and then install the game. For many modern games, simply running the exe with Proton might work out of the box. You can also use scripts like proton-tricks to simplify dependency management. While this method demands more technical knowledge, it gives you full insight into what goes wrong when a game fails to launch.
Bottles: Sandboxed Gaming Environments
Bottles is a newer application that streamlines Wine prefix management. It treats each prefix as a “bottle” with its own configuration, dependencies, and runner. The interface is clean and user-friendly, making it a great choice for those who find bare Wine intimidating. Bottles supports various runners, including Soda (based on Proton), Caffe (based on Wine), and custom builds. You can create a bottle for a specific game or for groups of games, and easily install dependencies from a built-in list of common components.
Install Bottles from Flathub or your distribution’s repositories. Once installed, create a new bottle, choose a runner (e.g., Soda for gaming), and click “Run Executable” to install your game. After installation, you can add shortcuts and manage launch options. Bottles also includes a built-in task manager to kill stuck processes and a file browser for the bottle’s virtual C: drive. It even offers one-click installers for popular gaming platforms like Battle.net and EA App. This method strikes a balance between automation and manual control, and is rapidly becoming a favorite in the Linux gaming community.
Heroic Games Launcher for Epic and GOG
If most of your non-Steam library comes from the Epic Games Store or GOG, Heroic Games Launcher is tailor-made for you. It is an open-source, Linux-native GUI that lets you browse, download, and play your Epic and GOG games with minimal setup. Under the hood, Heroic uses Wine or Proton to run Windows games, but you can also install native Linux versions when available. It supports automatic updates, cloud saves, and easy switching between different Wine/Proton versions per game.
Install Heroic via Flatpak, AppImage, or your package manager. Sign in to your Epic Games or GOG account, and your library will appear. For each game, you can configure Wine settings, download DLCs, and even add the game to Steam as a shortcut for Steam Input support. Heroic simplifies the installation of dependencies by recommending common fixes, and it integrates with tools like MangoHud for performance monitoring. For anyone with a large collection of free Epic games or classic GOG titles, Heroic is an indispensable tool.
Native Linux Games
Sometimes the best way to play a game on Linux is to look for a native version. Many indie games and even some AAA titles offer official Linux builds. Stores like GOG and Itch.io often provide Linux downloads alongside Windows and macOS versions. Purchasing and playing native Linux games eliminates the need for compatibility layers entirely, offering better performance and stability. Check the Linux section on GOG or search for “Linux” in your Itch.io library.
For games that have a native Linux installer from a third-party source, you can usually download a .sh or .tar.gz file, extract it, and run the executable. Some older commercial games had Loki Software ports that still work on modern distributions with a few tweaks. You can also use community-made tools like Luxtorpeda or Boxtron to run native or DOS versions of games through Steam, but those lean back into Steam integration. Remember to check ProtonDB and the Linux Gaming subreddit for reports on how well a game’s native version performs compared to its Windows counterpart running through Proton.
Other Notable Options
Beyond the major tools, there are a few more ways to get your non-Steam games running. PlayOnLinux is an older frontend for Wine that still works for many classic titles, though it is no longer actively developed. GameHub is another all-in-one launcher that supports multiple sources including Humble Bundle and Itch.io, but its maintenance has been sporadic. If you are willing to tinker, you can also use the terminal and Wine directly with custom environment variables, which is the ultimate fallback when everything else fails.
For those with powerful hardware, GPU passthrough to a Windows virtual machine is a nuclear option. This gives near-native performance and full compatibility but requires two GPUs and complex setup. It is overkill for most users, but it remains a way to play stubborn titles with anti-cheat systems that refuse to work on Linux. For most people, a combination of Lutris, Bottles, and Heroic will suffice for all their non-Steam gaming needs.
Frequently Asked Questions
Can I use Proton with non-Steam games?
Absolutely. Proton can be used outside Steam by pointing it to a Wine prefix. Tools like ProtonUp-Qt let you download Proton builds for use in Lutris, Bottles, or manually. Many gamers keep a separate Steam installation for its Proton files and reference them when running non-Steam games. However, keep in mind that Proton is optimized for Steam integration, so some features like Steam Input may not be available. Nevertheless, it often provides better performance than vanilla Wine for gaming.
Will anti-cheat games work?
This is a complex issue. Games that use kernel-level anti-cheat like Easy Anti-Cheat (EAC) or BattlEye may not work on Linux unless the developer explicitly enables support for Proton. Some titles like Apex Legends and Elden Ring have done so, but many popular multiplayer games do not. Always check ProtonDB for the latest compatibility reports. For offline single-player games, anti-cheat is rarely a concern.
How do I handle Windows Store or Game Pass games?
Windows Store games (UWP) are notoriously difficult to run on Linux because they rely on Windows-specific frameworks. Currently, there is no reliable method to play them outside a Windows virtual machine. Microsoft’s Game Pass PC library is largely inaccessible on Linux, although some older titles might be available through other stores. Cloud streaming via xCloud is a workaround if you have a Game Pass Ultimate subscription.
Is gaming on Linux worth the effort?
For many, yes. The Linux ecosystem has matured to the point where the vast majority of single-player games run perfectly, often with minimal setup. Tools like Lutris and Heroic have made installation a breeze. Performance is generally on par with Windows, and in some cases better, especially with Vulkan-optimized games. The learning curve exists, but once you understand Wine prefixes and Proton versions, you can troubleshoot most issues. Plus, you gain a free, private, and customizable operating system.
Do I need to own a Steam copy to use Proton?
No. While Proton ships with Steam, the core runtime files can be extracted and used independently. Valve has not restricted Proton’s use outside Steam. Community builds like Wine-GE and Proton-GE are readily available and incorporate Proton’s enhancements, so you can benefit from Proton’s improvements without ever launching Steam.
What about performance compared to Windows?
Performance is typically very close, often within a few percent. Games that translate DirectX to Vulkan (via DXVK or VKD3D) may even see improved frame times on Linux. However, some games might experience stuttering initially due to shader compilation. This smooths out as shaders are cached. Nvidia GPUs can sometimes underperform due to driver inconsistencies, but with the latest proprietary drivers, the gap narrows. Overall, most gamers will not notice a significant difference.
Can I transfer my existing game files from Windows?
In many cases, yes. If you have a game installed on an NTFS partition, you can point Lutris or Bottles to that folder. However, running games from NTFS can cause permission issues. It is often better to re-download the game on Linux or copy the files to an ext4 partition. Some games store important registry keys, so a fresh install on Linux is recommended to ensure all dependencies are properly set within the Wine prefix.
Linux gaming has never been more accessible. With the right tools and a bit of patience, you can leave Windows behind without sacrificing your games library. Start with Lutris for the easiest experience, explore Bottles for more control, and fall back to manual Wine when needed. The open-source community continues to improve compatibility daily, so even if a game does not work today, tomorrow it might. Happy gaming!


