Download the authoritative guide: Cloud Computing 2019: Using the Cloud for Competitive Advantage
Running Windows apps on Linux might be avoided by some, but the truth is, there are occasions where it helps.
One of the biggest reasons that some folks can't break free from Windows is the available applications. Sometimes these applications are legacy applications that don't have an open source alternative. Other times, it's simply a matter of someone wanting to play their favorite video games. And even though the available apps and video games for Linux has grown tremendously over the years, there are always "those specific titles" that seem to be missing.
In this article, I'll share some tips I recommend when you want to run Linux as your default OS, but still need certain legacy Windows applications. Yes, you can run Windows apps on Linux – it’s clearly an option if you need it.
Linux native applications
Okay, I'll admit this isn't directly addressing the issue. But hear me out. Some applications like Dropbox, Steam, VueScan, Lightworks, Moneydance and Spotify all have Linux versions. Truth be told, there are a surprising number of proprietary applications designed for Windows that have Linux counterparts. Even better would be to locate open source alternatives to popular software. Firefox, Filezilla, Gimp, LibreOffice to name just a few.
Admittedly none of these replace Microsoft Office or Adobe products, but they might help fill in other gaps with less "thought of" software titles.
Because these applications are usually natively supported and not running in a WINE wrapper, I recommend this option as the best approach to running applicable application titles.
Running Windows apps on Linux, Option 1: WINE
Running Windows apps on Linux may, for your workflow, may require Wine – the software solution. Years ago, I used to run all sorts of Windows applications using WINE. Applications such as older versions of Photoshop, Microsoft Office, even Internet Explorer. Today, my usage of WINE is exclusively used for Windows games.
So why don't more people use WINE for their Windows applications? Frankly, because it's incredibly non-user friendly to rely on. Here are but a few issues when relying exclusively on WINE:
- What works with one distro release, might not work on another.
- The compatibility database is a joke. Not only is it almost always missing critical information like extra DLLs or other related packages, but most of the time I find the best information with WINE off-site on a random blog.
- Often you see bugs reported and they'll remain unconfirmed.
Now don't misunderstand me. WINE itself is amazing piece of engineering and I recommend supporting it if you benefit from it. However, the compatibility database is a complete train wreck and often isn't as accurate as it appears. Remember, I've been using WINE for years and I have found instance after instance where the compatibility database was flat out misreported.
With the negative stuff aside, for most people I recommend going with one of the following approaches to WINE:
PlayOnLinux - at its core, it's simply a tool that allows you greater flexibility to work with WINE in a newbie friendly environment. What I personally like about it is when I research an application, I get accurate details as to whether or not it's working correctly. Instead of being some sort of thing that tries to support multiple OS', this is a community project for Linux enthusiasts exclusively.
Crossover - I also would like to put out an honorable mention to Crossover for Linux. It's a great effort and it's worth buying as some of the funds go back to the WINE project. However I've found it's not anywhere near as slick to use as PlayOnLinux or WINE by itself with winetricks.
Should you run WINE with Windows software? It's been my experience that WINE is best for legacy Windows software and some Windows games. Software that is bleeding edge might not be compatible yet. But not to worry, there is a fallback plan that might be a solution for you.
Running Windows apps on Linux, Option 2 Virtual Machine
Running Windows apps on Linux can be enabled by using virtual machine. Now I know what you're thinking: running a virtual machine (VM) isn't truly running Windows software inside of Linux. After all, it does require you to install Windows and enough RAM to accommodate running a second operating system comfortably while using Linux as the host. For many people, this may be a show-stopper...meaning you'll need to rethink using a VM to run Windows applications.
Using a Windows VM is ideal when you have a copy of Windows to install and need to run applications like Office or Photoshop. The difference between using a Windows VM and running Windows as a standalone OS comes down to control. For example, I recommend running Windows in seamless mode with networking disabled. This gives you access to the Windows application without needing to worry about what data is being sent back and forth over the Internet.
Now some of you might be thinking; "That's great Matt, I don't have a Windows license or a copy of Windows to run." Not a problem, as it turns out you can actually run a fully operational copy of Windows 10 at no cost whatsoever. The only functional limitation I found was that personalization is limited and there is a watermark on the desktop. Outside of that, this "evaluation" (unregistered) copy of Windows 10 is fully functional and will allow you to install and run any applications you have.
For casual users, I recommend running VirtualBox for running Windows. But be warned – you don't want to use a VM to play video games or edit videos.
If you absolutely must play Windows games because your preferred game titles aren't available for Linux, you may want to consider dual-booting with a Windows installation. Personally, I don't do this as I do not want Windows installed. Putting that aside, if you want to play Windows games...run Windows. And by running it as a standard installation (dual-booting with Linux), you're guaranteed that your Windows games will run as they supposed to.
The obvious downside is that you're running Windows strictly for games or other heavier Windows applications. And if you already have Linux installed, this will make adjustments to GRUB, plus other related considerations. It's not impossible but it's not for the faint of heart, either. On the flip side if you have a fresh hard drive and are willing to install Windows first, it's usually a bit easier to set up.
Running Windows apps on Linux isn't easy
Let's review our options when it comes to running Windows software:
1) You can run some Windows applications with WINE, assuming it's compatible.
2) Any applications that won't run with WINE, can be run with a virtual machine using an installation of Windows.
3) Should heavier requirements need 3D acceleration and are incompatible with WINE, you may want to consider dual-booting Windows with Linux.
Now just to clear the air. I personally don't run Windows in a virtual machine or dual-boot. However, there are some games I play using WINE. If you're stuck trying to pull yourself away from legacy Windows applications take heart, there is hope. One of the options above may provide you with a means of using Linux for most daily tasks while still having access to any Windows applications you can't live without.
What say you? Do you find yourself dual-booting or using WINE? Perhaps you didn't know that it's possible to run an unregistered copy of Windows 10 without any show-stopping restrictions? Hit the Comments and share your experience with Windows applications as a Linux user.