Not really a big issue for me, but I am an old head who only plays old shit.
I would hesitate to call this post a 'guide', there are much better options online for that. This is more of a beginner's overview, if you are considering switching to Linux but are afraid of losing access to games & software. Hopefully this is easy to read for y'all and not too jargon filled.
Jump to:
Wine For games that don't have a 'native' (purpose built) Linux version, you must use some version of 'Wine' to run the Windows version. 'Wine' is a compatibility layer software, so in real time it translates code meant for the Windows system, to code your Linux system will understand (I think? it doesn't really matter, it just works).
Steam & Proton Steam has it's own version of Wine, called 'Proton' which they develop alongside the Wine team. Proton is built into the Steam launcher, so if a game in your library is compatible, it should just launch in Linux. Otherwise, check the 'community' tab of the game to see if there are any posts/guides, or look elsewhere online. You can also add non-steam games to Steam, and it will apply Proton compatibility mode to them! Steam is available on almost all Linux distros.
Wine Front-Ends Running Wine by itself in a terminal is confusing if you are a beginner (like me). It is much much easier to use a graphical 'front end' program that does the complicated stuff for you, through easy to navigate menus. The best of these I have used are 'Lutris' & 'Bottles'.
Lutris is a 'games preservation platform' that can pull games from a variety of sources (GOG, Epic Store, EA app, Ubisoft Connect, Steam), install them and get them running in a Linux system. It can also run games from discs or executable files on your hard drive, you just have to add those manually. They provide thousands of 'install scripts' where the Lutris team/community have tested a game and found a Wine configuration that works already, it will just install and tweak the settings for you. Lutris also has a lot of configurability with regards to 'runners' like Wine/Proton and derivatives, and it incorporates 'Winetricks' for troubleshooting & tweaking. Lutris is my go to for games I own from GOG and Epic games store, once you sign in it pre-loads your library, and you can download & install whatever pretty easily. Lutris is available on the most popular Linux distros in the software/app/package manager, or as a Flatpak (a separate software/package distribution system available on most distros, might already be integrated into your software manager, see here). Also available as distro specific downloads on their website.
Bottles is an application for running Windows software on Linux systems. It allows you to easily switch between various 'runners' like Wine, Proton, and other derivatives/offshoots. It also allows you to pick from a number of Windows 'dependencies' (background software/libraries) to add, increasing compatibility. While Lutris does all of this as well, I find Bottles is a bit easier to use this way, it has a few more runners and options, and it also runs 'sand-boxed' (separate from your base system) so as to not interfere with your system files. Each game or application is in it's own 'bottle' allowing you to experiment until it works, or safely & easily delete it all if it doesn't. Very straight forward interface that I found easy to understand on first use, there are many guides available online too. Bottles is only available as a Flatpak.
Heroic Games Launcher is a launcher for Epic store, GOG, and Amazon Prime Games. I have never needed to use it, as Lutris already does Epic and GOG, and I don't use Amazon. It looks very modern and polished though, and performs similar tasks to Bottles and Lutris, incorporating Wine. It is available as a Flatpak, AppImage (self contained app that should run on any distro), and as distro specific downloads from their website.
PlayOnLinux is an older graphical front end for Wine (first released in 2007) that can still be useful today. It is pretty easy to navigate still, and is a good place for when you want to use very old wine versions. It incorporates a huge library of community tested install scripts for thousands of games and applications. On a rare occasion you may be looking to play a very old, very niche game, that hasn't had anyone else test it for a number of years, in this case you may get lucky with PlayOnLinux. It also runs software from discs quite easily, if you have issues trying that with Lutris. It available as a system package in the software manager of popular distros, or as distro specific downloads from their website.
Winetricks & Protontricks are additional software that work in tandem with Wine or Proton to allow users to work around problems, add missing dependencies or DLLs, and tweak settings of the runner. They both provide a graphical menu interface that is not too hard to comprehend. Usually this is used with basic Wine or Proton running from a terminal, and they are already incorporated into most graphical Wine front ends like Lutris and Bottles. You may occasionally find a guide online that points you to use Winetricks or Protontricks with the terminal, so I thought I would touch on them. They are typically available with most distros, Winetricks is usually a system package, with the latest version on their GitHub, and Protontricks is a Flatpak.
There are other graphical front ends available on most distributions like Q4wine, WineZGUI, Wineglass, but the options I have already covered tend to have the most support, and are the easiest to use.
Community-Built Launchers There are a number of free to use, community built launchers for specific games that do not work with Wine/Proton for whatever reason. This can be an issue for Windows games which are downloaded from the 'Microsoft Store', as these are 'UWP' (universal windows platform) apps, and not executable files. UWP apps require connection with the Microsoft store to function (I think?), are relatively new, and closed source, which is why there are little to no workarounds at this time. Two community launchers I have come across are; Minecraft Bedrock *Nix Launcher, and 'Sober' for Roblox. These each have a dedicated community team working on getting their one respective game functional on Linux desktops. The Minecraft bedrock launcher ports the Android version over to run in Linux, so you are required to own Minecraft on that platform for it to function. Sober is kind of like a bespoke Wine variant tailored specifically to Roblox. If you search around online, maybe ask in forums, you may come across other community projects for a game you love but can't run on Linux.
Virtual Machine a last ditch effort for when your game or application simply won't work with Linux. Virtual Machines are exactly as the name implies, a machine (computer) running virtually on your computer. They allow you to run any operating system, including Windows, so you can create an environment for the game to work. 'VirtualBox' is probably the easiest software to use, and is available on most distro software centres, or their website. Pretty easy to navigate menus, create a VM (virtual machine) and install an operating system, after which you can install whatever games/launchers you need. VirtualBox prompts you to allocate the VM whatever amount of RAM, storage and CPU cores you wish. You may have to turn on the ability to 'virtualize' in the settings of your motherboard's BIOS, this setting is called different things depending on what brand of CPU you use, there are many guides online for how to use VirtualBox and how to access your BIOS.
Kernel Level Anti-Cheat is a type of highly intrusive software that attempts to detect if you are using cheats on your system. It is primarily employed in very popular competitive online games, and is usually incompatible with Linux and other Unix-like systems (which don't allow easy access to the kernel for security reasons). Anti-cheat compatibility with Linux has been improving over time, mostly due to Valve's Steam Deck being a Linux device, but you will definitely encounter popular competitive games which refuse to accommodate Linux users. The website 'Are We Anti-Cheat Yet?' is a very good resource for looking this up, you can directly view the games that have been 'Denied' support.
Alternate devices & platforms sometimes it may just be easier to play a game on a different platform that you already have, like mobile or console. A lot of games accommodate the use of mouse & keyboard on these platforms, if that's how you are used to playing.
Letting Go if you are committed to using Linux as your main operating system, you may have to come to terms with losing some games or software. Weigh up and determine if that is worth it for you, and if you can tolerate the inconvenience in exchange for a $0 price and freedom from megacorporate products/influence. This is not for everyone, as evidenced by market share of desktop Linux users being around 5-8%. For me, I found modern corporate tech & software to be an inconvenience in itself. Removing useful features and changing functional UI for no real reason, the gratuitous insertion of advertisements, spyware, and 'AI' tools everywhere. As the quality, convenience, and usefulness of that software has waned, I was compelled to look for an alternative, and found Linux. But I understand than it is not as easy for everyone to overcome that 'fear of missing out' when abandoning a popular thing.