Hi, this is sort of a detailed follow up to two of my other posts; Switching to Linux for Beginners & Linux Gaming. All this info is based on my experience as a new user since October 2024, and I will include personal examples of success and failure in case they might be helpful.
The target audience for this is people who have recently switched to Linux from Windows, with Linux Mint and Zorin OS Core being the expected distros. That said, it should apply to most other Debian/Ubuntu based distros, and probably more if using the same apps. Unfortunately despite best efforts you may still encounter problems, especially hardware compatibility issues (common with laptops, Nvidia graphics, audio, and recording software, among others).
This is a long post that I may add to over time, feel free to use the 'jump to' section links below, or search for a specific problem via Ctrl+F
Jump To:
System Setup
Multimedia Codecs
Hardware Drivers
My Systems
Software To Use
Wine & Proton Preamble
Bottles (Wine & Proton)
Lutris (Wine & Proton)
Steam (Proton)
PlayOnLinux (Wine)
Heroic Games Launcher (Wine & Proton)
Winetricks & Protontricks
Community-Built Launchers & Ports
Virtual Machines
My White Whale(s)
Troubleshooting & Compatibility Resources
System Setup
Multimedia Codecs
System Setup
Multimedia Codecs
A prompt to install these is already one of the steps of the installer that both Linux Mint and Zorin OS use. If you chose not to do this (or you installed it without internet access), you may have problems with audio and video playback on your system.
Linux Mint: if you didn't install the codecs you will get a system report pop up every time you log in to your computer recommending the codecs be installed (one click solution). If this is somehow not happening, search 'codecs' in your software manager and it should be the first result (mint-meta-codecs).
Zorin OS Core: I tested an install where I unchecked the option "Install third party software & drivers (this saves time after install)", post-install and software centre update I could see a few multimedia codecs missing (FFmpeg extra codecs, GStreamer ffmpeg codecs). There was no prompt to install these after the fact, and there is little to no guidance on how to do this yourself as a beginner. I would recommend NOT unchecking that 'Install third party...' box during install of Zorin OS Core.
(optional) download VLC media player from your software manager, it comes with A LOT of extra codecs and will reliably play just about any format. There is no harm in letting it sit there unused even.
Hardware Drivers
*This will probably only be necessary if you have an Nvidia graphics card*.
Linux Mint has the 'Driver Manager' app that will automatically detect what hardware you have, and provide the option to download additional driver(s).
Zorin OS has a separate 'Install with modern Nvidia drivers' option on the first time boot screen. Choose that if you have an Nvidia card, because again there may not be a beginner friendly solution post-install.
Beyond this, Linux has a large array of generic drivers included in it's kernel that will fuction fine with most hardware and peripherals. Specific things may require their own drivers, and typically come packaged with them or the ability to download them from a manufacturer's website.
It is a good idea to check online before buying something to see if it has Linux support, or if someone has managed to get it functional on Linux. This applies to things like recording and streaming equipment, capture cards, graphics tablets, and other complex external devices.
For art related Linux info; David Revoy, a professional artist who strictly works with open source software, is a good source of information and reviews of graphics tablets on Linux (although his setup is a bit intermediate).
My Systems
*This is just for reference, I am lucky that I already had stuff with high compatibility before switching to Linux
My main PC has had no issues with Linux Mint since I switched, but it is one that I built myself about five years ago. These tend to have better compatibility with Linux, especially if you don't use Nvidia cards. I initially used Linux Mint Cinnamon 22, I now use Linux Mint Xfce 22.1. Parts are:- CPU: Ryzen 5 3600 3.6GHz 6C/12T
- GPU: Gigabyte (AMD) Radeon RX 580 8GB (rev 2.0)
- Motherboard: Gigabyte B450M DS3H WiFi
- RAM: 16GB Corsair Vengeance DDR4
- Storage: M.2 Nvme Crucial SSD + SATA WD Blue SSD
- Inputs: Generic USB mouse + keyboard
- Headset: Sound BlasterX H6 USB
I also have an 8 year old Asus Vivobook Max X541UV laptop, which did have some non-beginner friendly issues and an Nvidia card. I have since fixed the issues (will do a post about this later, it is complicated and not really relevant here), and was able to get drivers on a few distros pretty easily. Currently runs Debian 12.
Software to Use
Wine & Proton Preamble
Wine & Proton are compatiblity software that can run Windows apps/programs on Linux. Wine is a community driven project initially released back in 1993. Proton is a patched version of Wine developed by Valve (Steam) in cooperation with CodeWeavers (who make CrossOver for Mac). Valve's SteamDeck relies on Proton for the function of most games on their storefront, so they have a considerable amount invested in it, with their improvements also benefiting Wine.
Wine & Proton MAY be able to run any type of software developed for Windows. From high resource gaming, video and image editing/rendering, to low resource office suite and productivity software.
Wine and Proton are made relatively easy to use in graphical front-end apps, like the ones detailed below. These just provide a visual/graphical interface instead of the command line. All of the software below will create new environments for every game/software, so that configuring one does not effect the others, or your system as a whole.
Bottles (Wine & Proton)
Bottles is my go to app for general software and standalone games from Windows. It is probably the easiest to use on this list, while also allowing for a lot of configuration as a beginner. Bottles provides numerous Wine & Proton based 'runners', you can also save/backup and export a working configuration.
Using Bottles (basic steps & tips)
- Download & install it from your software manager
- Create a new bottle (+ in top left corner)
- Give the bottle a name (name of the software/game?)
- Pick 'Gaming' for games or 3D graphical software OR
- Pick 'Application' for simpler productivity software
- Click 'Create' (top right of pop up box)
- Click 'Run Executable'
- Follow the installation as normal
- Click the play symbol (▶︎) to launch the software/game
Just search the term 'Bottles' and it should show up (it is a flatpak). On ZorinOS it IS in the software center, but you should also see 'Windows App Support' in the start/application menu, if you click that it will install Bottles for you.
You may also want to install 'Flatseal' an app which manages flatpak permissions. This allows you to easily give Bottles (and other flatpaks) permission to access your file system or other hardware if necessary.
Inside the bottle
This will open a file system box, navigate to and choose the Windows executable you want to install (usually a .exe file). If the expected executable is not visible, in the bottom right corner change 'Supported Executables' to 'All Files' in the drop down box. Bottles claims support for .exe/.msi/.bat/.lnk files, (see an issue I had with .bat files below)
Once installation is complete, it SHOULD appear in 'Programs' section. If not, you can manually add a shortcut to the 'Programs' section with '+ Add Shortcuts...'. This will open a file manager box in the Bottles/Wine directory the software was installed. Look for and choose the executable you need (usually 'SoftwareName.exe') in 'drive_c' > 'Software/Developer Name Folder'.
This is on the right side of the installed executable in the 'Programs section'. Again, it is usually named whatever the game or software is named. For some software there may be multiple executables (maybe a game also has a mod tool included, or you installed something with many individual games/software tools included), in these cases launch the familiar executable, or consult any included readme file/search online as this is a software specific issue.
If nothing went wrong, you can now use the program or game intended for Windows, on your Linux system. I would estimate that this has been the case for 60%-75% of the times I have used Bottles. You are able to make further configurations if this has not worked though.
You can also add working bottles to your 'Library', to Steam, or create a desktop entry. These can be done in the vertical ellipsis menu button (⋮) to the right of your installed executable (next to the ▶︎ play symbol that launches the software)
Configuration
'Settings' allows you change a lot of things like the Wine/Proton runner being used, the graphical settings, enable the use of your graphics card, change the Windows version inside the bottle, and more. The default runner is 'Soda' which is a custom Wine build by the Bottles developers, and Windows 10 is usually the default Windows version.
Graphics problems: try changing settings in the 'Display' and 'Performance' sections and turn the 'Discrete Graphics' on if it is an option. The DXVK and VKD3D should just be kept at the latest versions unless you are following a guide telling you to try older ones. Fixes will be unique to each software and may be effected by what hardware you have (laptop, Nvidia GPU). Make sure you have the third party multimedia codecs installed on you system (there was a prompt for this in the Mint & Zorin installation process, and you may be getting system report pop ups telling you to do this if you haven't)
'Runners' Sometimes you can get more luck using 'staging' versions of Wine, as they have experimental new additions & fixes that will become part of the next Wine release. On the flip side experimental MEANS experimental. More runners can be downloaded from: the main Bottles window > triple bar menu button (≡) in the top right corner > Preferences > Runners. Kron4ek has been a reliable backup runner for me, it has many experimental additions/fixes and offers staging versions. It may also be a good idea to try the last version of Wine that is reported to have worked with whatever software you are testing, in which case the Wine Application Database website will help. Bottles also allows you to use your system Wine, if you have one installed. You can usually get newer versions of standard Wine and Wine-staging before Bottles does.
Windows Version: located in the 'Compatability' section. Recommend using an older version of Windows that would match the target system of the program/game. So if a game released in 2008, try Vista or XP for example.
'Dependencies' allows you to install extra resources that improve compatibility of Windows software. Sometimes you are lucky and a crash log pop up window will tell you what is missing. Some common dependencies I have had to install in certain bottles are: 'allfonts' (Microsoft/Adobe fonts, helps text display better sometimes), 'cjkfonts' (All Chinese/Japanese/Korean fonts), 'gmdls' (General MIDI DLS Collection, helps MIDI audio play on very old software), 'VCredist20XX' (there are several Visual C++ redistributables that help old graphical stuff/games run), 'webview2' (Microsoft Edge webview, essential for web access & browser functionality in many programs). You may be able to intuit what could be needed (text looks bad > download fonts?), otherwise search online for solutions.
Personal Troubleshooting Examples
What configuration may be required is unique to each program, but I will provide some troubleshooting examples I have encountered.
Adding 'webview2' dependency: I play a lot of virtual worlds with standalone clients (not connected to a generic store launcher like Steam or Epic). I would say over half of them have required ONLY the webview2 dependency to be installed, after which they functioned perfectly. This was the case with 'There', 'Habbo' & 'Habbo Hotel:Origins' (same client), 'IMVU Desktop app' & 'IMVU Classic launcher'. Webview 2 is a Microsoft Edge related dependency, so a lot of modern Windows based web accessing clients rely upon it. Just open the dependencies menu inside your bottle, search for webview2 and click the download & install button.
Can not install as administrator: Wine versions pre 10.0, and any runner including Proton patches (Soda, Caffe, Wine GE, Proton GE) DO NOT have the ability to run as a non administrator. Staging versions of non-Proton Wine DO allow you to run as a normal user. If you encounter an error like 'Can not install as administrator' in Bottles, I recommend using system wine 10.0 and above, any wine-staging version, kron4ek-wine-10.0 and above, or any kron4ek-wine-staging version (at this time kron4ek is the only Bottles runner without proton that has a release post Wine 10.0). You MUST then add a 'runas' command argument. This can be done by clicking the gear symbol next to 'Run Executable' (if creating a new bottle/installing an executable from your system), OR in an existing bottle via: the vertical ellipsis (⋮) next to the play symbol (▶︎) in the 'Programs' section > Change Launch Options... > then enter the phrase "runas /trustlevel:0x20000" in the 'Command Arguments' text box and save. The IMVU Desktop app is an example of where I had to do this with a kron4ek runner, as well as install the webview2 dependency (for a frankly awful game, lmao).
.bat file: These may not show up when trying to launch an executable in Bottles, switch from 'Supported Executable Files' to 'All Files' in the bottom right corner of the file explorer, then choose the .bat file. It also might not function if Bottles does not have access to the directory containing all of the things the .bat file is going to install (as flatpaks are containerized from your base system). You can download 'Flatseal' from a software manager and give Bottles permission to access the directory with the .bat file and whatever else it came with (maybe /Downloads, or you can give access to 'all user files'). IF that fails, .bat files can be read in a text editor and they usually just install a batch of executables in a certain order. You can manually install the executables in the manner that the .bat file dictates and you should have the same outcome. I have done this recently with 'Decibel.fun' a Coke Music fan remake, as one of the .bat files wasn't working on my Linux Mint PC with Bottles (despite working on my Debian 12 laptop with Bottles).
Lutris (Wine & Proton)
Lutris is my go to for GOG and Epic Games store stuff, as you can sign into them through Lutris and pool your game libraries. It can also do this for Ubisoft Connect, EA App, and Steam. Lutris has a huge collection of community generated scripts and fixes that you can choose from when installing a game from one of your libraries.
Lutris also allows you to add external games and software much in the same way as Bottles, with a similar feature set for configuring. I won't go into much detail about this as I have rarely done it, most GOG and Epic games of mine have just worked with scripts provided. You must choose to run 'Winetricks' from a games settings in order to add dependencies and make configurations that I mentioned in the above Bottles section. Lutris is also a good option for games/software that you may have on CD or DVD.
Personal Troublshooting Examples
Fixing broken executables: I changed to the system package (from the flatpak) because after installing new games it was not correctly connecting the file path of the launch executable (the one that plays the game). This can be fixed by: selecting the effected game > clicking the ^ next to 'Play' > Configure > Game Options > then click the '...' ellipsis on the right of the 'Executable' line, and find the correct executable (wherever the game installed to). If you are using the flatpak version of Lutris, you may also need to use Flatseal to give it access to user files. I install games on a separate hard drive which probably created this problem, but I think there was another reason I started using the system package (I forgor srory).
Broken Linux Launcher: I have had issues with native Linux launchers of some games not functioning (I think Baldur's Gate 1 or Neverwinter Nights 1) and using a Windows + Wine install script provided on Lutris has worked instead.
Steam (Proton)
Steam is my go to for Steam games (obvs). If you use Steam, just keep your games there.
Using Steam (basic steps & tips)
Enable 'Steam Play' (Proton) After you install Steam on your distro go to top left corner: Steam > Settings > Compatibility > 'Enable Steam Play'. This will tell you it has to reboot Steam to make that change, do so and it will automatically be applying Proton to all games without native Linux versions. You can change the Proton version in that same 'Compatibility' section, with numbered versions, an Experimental version, and a Hotfix Version. I use the Hotfix version Steam-wide, and have used the Experimental as well, as they often provide fixes to issues before the mainline versions do (this is a common troubleshooting recommendation online).
Custom Proton versions You can set specific Proton versions to specific games if necessary. On the library page of a game on the right side, click the gear symbol 'Manage' > Properties > Compatibility > check 'Force the use of a specific Steam Play compatibility tool' > pick whichever version from drop down menu.
Add Non-Steam Games You can add non-Steam games/software to your Steam library, and they will benefit from having Proton applied to them as well. In the bottom left of the entire Steam client is '+ Add a Game', then choose 'Add a Non-Steam Game' and pick from there via the application menu or file manager. Might be a good option if you already use Steam and have no real need for Bottles or Lutris.
PlayOnLinux (Wine)
PlayOnLinux is an older Wine front-end program that WAS the most popular graphical Wine tool for a long time, first released in 2007. Because it has been around for so long, it may have install scripts and fixes for older 'abandoned' software and games that nobody has bothered adding to newer apps. PlayOnLinux also comes with a back-catalogue of much older Wine versions (down to 5.0 I think), and some other 'legacy' wine tools, that may be useful in specific situations. It also functions well with CDs & DVDs, I have noticed some UI/themeing issues on Mint though.
Heroic Games Launcher (Wine & Proton)
I don't personally use Heroic. It pulls your library from Epic, GOG, and Amazon Prime Games. I already have Lutris doing the first two and I don't use Amazon. It looks like it should run similarly to Lutris though, with a more modern looking UI.
Winetricks, Protontricks
These are not really beginner friendly. The tricks' usually involve the command line or a rudimentary GUI box, along with system installed Wine and Proton to provide extra settings, tweaks, and dependencies. These features are usually included in the other graphical programs mentioned above, it is much easier to just use them (Bottles, Lutris, Steam & PlayOnLinux). I would only use the tricks' if closely following a guide online about a specific game/software.
Community-Built Launchers & Ports
*When Wine and Proton don't or can't work...
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 apps which are downloaded from the 'Microsoft Store', as these are 'UWP' (universal windows platform) apps, and not executable files. UWP apps function differently from regular programs, are relatively new, and closed source, so 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. Both of them actually port the Android version of their respective game over to run in Linux (so you are required to own Minecraft on that platform for it to function, whereas Roblox is free).
If you search around online, maybe ask in forums, you might come across other community projects for software or games that don't run on Linux. They will have their own unique guides/documentation but are usually designed to be beginner friendly 'just install and use' apps.
Virtual Machines
*When all else fails...
Virtual Machines (VMs) 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.
You can download a Windows 10 (until October 2025) or Windows 11 .iso disc image file from Microsoft's website and install it in a virtual machine using VirtualBox. This video; 'Running Windows in Linux: A VirtualBox Guide' by Explaining Computers is a very solid and easy to follow guide for beginners that covers this exact topic. He installs the additional packages 'VirtualBox-guest-additions-iso' and the 'Virtualbox-ext-pack', which are totally optional. Once Windows is installed, you can then run whatever is necessary within your new environment; game stores/launchers, browsers, productivity software etc.
I will note; this is a pretty cumbersome solution for running one program or app. If it is a low resource program like office suite or productivity software (maybe required for your occupation or education), a VM should run fine even on a laptop. For higher resource graphical stuff like new games or image/video rendering, you might struggle without a decent PC. There can also be issues when using internet connecting software, as they may be able to detect you are running a virtual machine and make assumptions (cheating accusations/bans in online games for example). I would only use this for one app or game if I were really desperate, or required to use some proprietary app for work/education.
My VM Experiences
Windows I have not actually bothered to install a Windows VM myself yet. I downloaded a Windows 10 ISO ages ago but am getting flashbacks to how slow it used to load, run, and update on my main PC and I don't think I can bear that anymore. When I get to the point of troubleshooting a game I want to play where a VM is the only solution, I typically just give up because I can't be bothered. Especially high resource games which will require me to give more than my usual 4 CPU cores + 4GB RAM + 10-25GB virtual hard drive that I apply to all my virtual machine testers. Eventually I will do it though, it will probably be necessary for testing online games & virtual worlds for my other site.
I have used VirtualBox to run a few other Linux distros though. These are:
Linux Mint Xfce One of the first things I used VirtualBox for was to test out Xfce before I switched to that from Cinnamon. I wanted to see how I could customize it and what issues I might encounter before actually wiping my PC, and this was a simple solution to that. This was when Mint 22.1 was releasing, so I was going to be prompted to upgrade anyway. I really like Xfce and the way it presents information clearly to you, even little things like having the full name of apps + a brief description underneath in the Applications menu. Also the info boxes when you hover over an app icon on your taskbar or desktop are very descriptive. Nothing wrong with Cinnamon, just a bit too minimalist for me.
Android x86 I wanted to emulate Android for a few things; testing all those youtube front ends with F-Droid in this post, testing alternate app sources in this post, and in the future testing a bunch of play store virtual world games without filling my actualy phone and giving all my data away. Android x86 comes with play store included so it needs no further configuration post install. I also decided to use it over Waydroid in these instances because I wanted it totally separate/contained visually from my main system. To be clear; Waydroid is containerized, but it puts the apps into your application menu by default including the basic clock, calendar, gallery etc. I just found that to be a bit visually messy for me and also I use an X11 desktop (Xfce), not a Wayland one, so I would need to run Waydroid with Weston. All of that to say, it was easier to just download the Andoid x86 .iso and boot it in VirtualBox.
ZorinOS Core I installed this just to see differences for guide posts like this one, and as an Ubuntu-based tester for stuff I don't want on my main system sometimes. Plus Zorin has snaps enabled, so it's closer to Ubuntu than Mint is. I will note that the Zorin OS Core .iso has taken forever to download for me, as it is a direct download from their website, or a closer mirror which didn't make any difference for me. It also failed to fully download a few times, just from how large of a direct download it is, but it did continue downloading when clicking 'retry' in my browser. They don't seem to offer a torrent like Mint does.
Ubuntu I used this initially as a tester for Ubuntu-based stuff, but it was pretty slow at times and nearly filled up the virtual hard drive after a few uses. Also I just hate the interface of standard gnome, I prefer having clear information easily accessible which does not fit in with gnome's minimalist design style. Also there were software centre issues right out of the gate; I had to download a plugin and the .deb version of gnome software manager to enable Flatpaks, and the included 'App Centre' snap store can't update itself while running (needed a command line fix).
Debian + OpenBox I have tested this to start getting used to not having a desktop environment at all, as well as a super simple window manager like OpenBox. Just experimenting with regards to home server stuff, seeing if I can actually tolerate and work within a full command line interface with OpenBox being a bridge between CLI and a lightweight DE. So far it's fine, but I don't think it's worth changing something that is working fine for me right now. Also my server PC already runs at 10W when idle any improvement would be negligible. ALSO Debian is a good desktop environment tester, on install it gives you the option of Gnome, Xfce, KDE Plasma, LXQt, MATE, some include LXDE also, or none (command line only). You can install any or all of desktops and switch between them from the login screen (display manager). I haven't done this in a VM, but on my laptop that has Debian 12. It can be a bit messy with each DE installing it's own suite of text editor, video and audio apps, different terminal emulators etc. But this shouldn't be an issue in a VM, you can just wipe it and start again.
My White Whale(s)
ActiveWorlds I have tried and failed over a dozen times with various software, configurations, distros, and different versions of multiple Wine & Proton runners. I have replicated what others have done in reports on the WineHQ Database, I have reached out for help on the ActiveWorlds subreddit, nothing has ever made it function on Linux for me. The closest I have got was with a kron4ek staging runner, trust level set to normal user, and a bunch of dependencies added, it was able to install and launch the client then immediately crash before loading 3D visuals. I have officially given up on it, as they have made many anti-user changes recently anyway, and DeltaWorlds is an excellent alternative that runs well in Wine (with a Linux launcher planned)
Troubleshooting & Compatibility Resources
*PLEASE double check the date of posts or guides when searching online for solutions. Try to find the most recent option that you can, as older guides may be superceded and could do damage to your setup.
General Resources
Wine Application Database - Large database of user reports regarding app compatibility with Wine
Are We Anti-Cheat Yet? - Crowd-sourced list of game anti-cheats and their compatibility with GNU/Linux
PCGamingWiki - Enormous detailed wiki of PC gaming fixes
ProtonDB - Crowd-sourced Linux & Steam Deck compatibility reports
Steam Community - Community hubs for all Steam games, lots of game specific Proton troubleshooting guides!
Linux-Hardware.org - Large repository of Linux hardware compatibility reports.
Linux-Laptop.net - Large repository of reports on running Linux on laptops/notebooks.
David Revoy's Website - Professional artist who strictly works with open source stuff & GNU/Linux. Lots of guides, information, and reviews of software and graphics tablets running on Linux.
Documentation
Linux Mint Documentation - Installation Guide, User Guide, Troubleshooting Guide
ZorinOS Help Portal - Guides & Tutorials
WineHQ Homepage - wiki, bug reports
Relevant Forums
Bottles GitHub Discussions Page
Steam for Linux Discussions Page
Theres probably several subreddits that could help also
Thanks for reading, I have been meaning to make a post like this for ages but have recently been busy finishing stuff with Virbex. A bunch of the information I put here may also be posted over there as I make better guides for running various virtual worlds & online games on Linux & Mac, so it felt like a handy time to finish this. Anyway, good luck and goodbye!