How to run linux app on windows
How To Run Windows Applications On Linux [Beginners Guide]
Last updated September 12, 2019 By Munif Tanjim 41 Comments
As you’re here, I’m going to assume that you’re a Linux user. And every once in a while, you find yourself asking: can I run windows applications on Linux?.
Answer to that question is yes. Yes, you can run Windows applications in Linux. Here are some of the ways for running Windows programs with Linux :
Both of them works just fine. But they are somewhat resource hungry.
If you only need to use a small Windows application, installing Windows on a separate HDD partition or as a Virtual Machine is not efficient. Moreover, Virtual Machine can’t utilize the total power of your machine. So, what is the solution?
No worries, there is another way to use Windows software on Linux. It’s called Wine. If you aren’t yet familiar with it or you are a beginner in the world of Linux, this article is for you.
In this beginner’s guide, I’ll show you what is Wine and how to use it to run Windows software on Linux. I have used Ubuntu here as Ubuntu is one of the best Linux distros for beginners, but any other Linux distribution will have more or less same steps (except for the commands in Arch or Fedora based distros).
Using Wine to run Windows programs in Linux
Wine stands for Wine Is Not an Emulator. And WINE is actually an acronym for that. And as previously stated, it’s not even a virtual machine.
Rather it is a compatibility layer for running Windows applications on UNIX-like or POSIX-compliant operating systems (e.g. Linux, Mac, BSD). While a virtual machine or emulator simulates internal Windows logic, Wine translates those Windows logic to native UNIX/POSIX-complaint logic.
In simple and non-technical words, Wine converts internal Windows commands to commands your Linux system can natively understand.
Installing Wine
There are various ways to install Wine on your system. As this is a beginners’ guide, I’ll describe the most straightforward one here.
Almost all the Linux distros come with Wine in their package repository. Most of the time the latest stable version of Wine is available via package repository. Installing Wine on Ubuntu is as easy as firing up a terminal and running these commands:
However, if you are using an 64bit installation of Ubuntu, you will need to run these additional commands:
This will add 32bit architecture support on your distro which will benefit you in installing specific software. If you don’t know whether you have a 32bit installation or 64bit, check this article: 32bit or 64bit Ubuntu?
What Windows applications are Supported by Wine?
There is a large number of Windows applications that are currently fully supported by Wine. They will run without any hassle.
However, new Windows applications are being developed every day. Many of them wouldn’t function as we want on Wine. But the development pace of Wine is also rapid, support for new applications is being added all the time.
And there is a dedicated database for keeping track of just that.
Wine Application Database has almost 24,000 applications rated with different status depending upon how well that applications run in Wine. If you want to quickly check the rating of the application you want to use in Wine, you can take a look there. Here are the meaning of those ratings:
Reviews, Installation Procedure, which Wine version it was tested against and various useful data are also available for each application here.
Of course, Wine Application Database is mostly user-generated data, so you are always welcome to try running an application with a different version of Wine and share your result with rest of the community.
Finding an Application in Wine Application Database
Let’s see how we can find an application in Wine Application Database.
Go to Wine Application Database. Click Browse Apps from the left sidebar.
Write the name of the application you want to find in the Name field.
Click on the link to the application from the search result.
You’ll see a description of the application. There will be a list of various versions with their compatibility rating with a specific Wine version.
Let’s click on the latest version link.
This is the main page you need to check. There will be detailed information about that specific version.
You’ll get an idea of what will work and what will not. Also, the installation procedure will be included here if any additional tasks are needed for installation.
Getting Started with Wine
Before we go on installing and running applications in Wine, we should have clear idea about a few things and about how to configure Wine for usage:
WinePrefix
Windows applications need a C: drive. Wine uses a virtual C: drive for this purpose. The directory of this virtual C: drive is called wineprefix. First of all, we need to create a wineprefix. For doing that, fire up a terminal and enter this command:
This will create a wineprefix and open the configuration window for Wine. You can change the configuration options if you want or let it be as is for time being and close it. Now, you can locate the virtual C: drive at
The general rule is to install each new application into a fresh wineprefix. We can create and maintain multiple wineprefix manually. But that task would seem rather tedious for the beginners. So, we will skip that part for now. But, later I’m going to show the way for doing that part with ease.
Installing an Application with Wine
Installing a supported application in Wine is generally as easy as double-clicking on the installation file. However, we are now going to see a step-by-step guide for installing 7-zip on Wine.
First of all, check for 7-zip rating on Wine Application Database. It has Platinum rating, so we are good to go. Open Wine configuration ( winecfg ) and set the Windows Version to Windows 7.
Right-click on the 7-zip installation file and select Open With Wine Windows Program Loader.
See that destination folder path? 7-zip installation has recognized the virtual C: drive from wineprefix.
Finish the installation and go to the installation directory [ $HOME/.wine/drive_c/Program Files/7-zip/ ] from the file browser.
Right-click on 7zFM.exe and go to Properties > Open With.
Select Wine Windows Program Loader and close the window. Double-click on 7zFM.exe.
And there you go! For creating a shortcut on your desktop, right click on the file.
Now move the Link to Desktop.
Now, you can run 7-zip just from your desktop. All you have to do is double-click on the icon.
If you want to access your files on Linux, they are generally located in Z: Drive.
You can use the 7-zip just as you would use it on Windows – for extracting and creating archives and such.
Let’s make things (a lot) Easier
You might have noticed that, at Wine Application Database, with every version of application review a specific Wine version is mentioned.
It is because of the rapid development rate of Wine. Though an application runs with the current version of Wine, it might not run with a future version, because of the changes made.
Also, I’ve mentioned about installing each application in its own fresh wineprefix. So that, an application has no chance of interfering with another. And doing all these manually, usually from the terminal, is time-consuming, tiresome and at times, confusing.
PlayOnLinux is here to rescue. It provides a nice interface for doing all these things easily. For installing PlayOnLinux on Ubuntu, simply run this command:
You can easily perform every task related to Wine with PlayOnLinux from a beautiful and intuitive graphical interface:
But still, you will need to check Wine Application Database for reviews, installation procedures and such.
Advantages of using Wine
When it comes to running Windows applications on Linux system, Wine provides many advantages over using emulators or virtual machines.
Wine can be thought of as a Windows emulator in much the same way that Windows Vista can be thought of as a Windows XP emulator: both allow you to run the same applications by translating system calls in much the same way. Setting Wine to mimic Windows XP is not much different from setting Vista to launch an application in XP compatibility mode.
Wine Derivatives
There are quite a number of projects for running Windows applications on other platforms, based on Wine:
Additional Tips on using Wine
Winetricks
This is another important part of using Wine. Winetricks is a helper script to download and install various redistributable runtime libraries needed to run some applications in Wine. These may include replacements for components of Wine using closed source libraries. Winetricks comes with Wine installation on Ubuntu.
For starting winetricks, run this command:
There are many options for helping you with various tasks.
Installing an Application with Winetricks
If you Install an app from winetricks, it will be installed in a separate wineprefix. Let’s install VLC:
It will then begin to download the VLC installation files. And then guide you through the rest of the process. It’s pretty simple.
Install Windows DLL or components and others
You can select a wineprefix from winetricks and install various libraries and components required by the application you want to run and also perform other operations.
N.B.: If using winetricks seems complicated to you, it’s perfectly okay. I feel the same way too. I always use PlayOnLinux for this reason. PlayOnLinux can do everything you might need to do from winetricks.
For more information you can check Wine FAQ and Documentation.
I hope you find this complete beginner’s guide to using Wine in Linux helpful. Now you can run Windows programs in Linux without installing a virtual machine or dual booting.
Let us know if you have any questions or opinion in the comment section below.
Like what you read? Please share it with others.
5 Tools to Help You Run Windows Programs in Linux
Get the best of both worlds with these Windows emulators
Even though open-source software includes free tools, including email clients, office applications, and media players, you might need a software app that works only on Windows. In this case, use one of the tools listed here to run Windows apps on your Linux PC.
These tools are based on or use WINE. Aside from virtual machines, WINE is the only way to run Windows applications on Linux. There are wrappers, utilities, and versions of WINE that make the process easier, though, and choosing the right one can make a difference.
Plain Classic WINE
Doesn’t require a Windows license to use Windows applications.
The simple core utility behind these tools.
This is the stable and officially supported version.
It doesn’t always run the latest versions of Windows products.
Some games and applications run sluggishly.
Lacks helper scripts.
Doesn’t have the latest patches and improvements.
WINE stands for Wine Is Not An Emulator. WINE provides a Windows compatibility layer for Linux that makes installing, running, and configuring many popular Windows applications possible.
Install WINE
To install WINE, run whichever of the following fits your Linux distribution.
On Ubuntu, Debian, or Mint:
Import the WINE developer key:
Add the repository. Replace eoan with your Ubuntu release.
On Debian, use the following example, replacing buster with the Debian release.
Update your repositories, and install WINE Staging:
Install on Fedora
Add the repository from the WINE developers. Replace 30 in the address with your Fedora release.
Then, install the latest WINE Staging release using DNF.
Install on openSUSE
openSUSE has WINE Staging in its repositories. To install it:
Install on Arch Linux and Manjaro
WINE Staging is in the official Arch repository. Install it normally.
Lutris
Easy to play games.
Manage configurations without hassle.
Get the latest versions of WINE.
Manage games in one place.
Takes a little setup on some distributions.
Focused almost exclusively on games.
When it comes to playing Windows games on Linux, there’s no better option than Lutris. Lutris is relatively new compared to the other entries on this list, but it’s more than earned its spot by making it just as easy to install Windows games on Linux as it is on Windows.
With Lutris, you can play games, like Overwatch, on Linux in only a couple of clicks. There’s no need to know the technical details. Someone already did the hard work for you.
Lutris also integrates with other Linux gaming platforms, like Steam, to keep your game library organized. With Lutris, you can access all your games in one place. Lutris keeps separate configurations for each game, so it can manage multiple versions of WINE at once, using the ideal one for each game.
Installing Lutris is fairly simple too.
Install on Ubuntu and Linux Mint
Install the Lutris PPA:
Update Apt, and install Lutris:
Install on Debian
Add the Lutris repository configuration:
Then, import the Lutris signing key:
Finally, update Apt, and install Lutris:
Install on Fedora
Lutris is available in the default Fedora repositories. Install it with DNF.
Install on openSUSE
openSUSE has Lutris in its repositories too. Install it normally.
Install on Arch Linux and Manjaro
Arch also has Lutris in the main repository:
Play On Linux
Good gaming support.
Install multiple versions of WINE simultaneously.
Excellent community support.
Starting games in full-screen mode can sometimes cause crashing.
Error reporting is lacking.
Similarly to Lutris, Play On Linux provides a graphical interface for WINE. Play On Linux came before Lutris, and it offers many of the same features. Play On Linux is bare-bones and doesn’t include support for Linux games. It takes a general approach, so you may find better office application support here, even though it’s probably not as good as something like Crossover.
Install Play On Linux
On Ubuntu, Debian, and Mint:
sudo apt install playonlinux
On Fedora and CentOS:
sudo dnf install playonlinux
sudo zypper install playonlinux
On Arch and Manjaro:
Available Windows Programs
When you first run Play On Linux, a toolbar appears at the top with options to run, close, install, remove, or configure applications. You’ll also see an installation option in the left panel.
You can choose from a number of applications, including development tools such as Dreamweaver, an assortment of retro classics such as Sensible World of Soccer, modern games such as Grand Theft Auto versions 3 and 4, the Half Life series, and more.
The graphics section includes Adobe Photoshop and Fireworks, and you’ll find browsers in the internet section. The office section is a bit hit and miss. Those apps may not work.
Play On Linux requires you to have the setup files for the programs you are installing, although you can download some of the games from GOG.com.
Software installed via Play On Linux is generally more likely to work than software installed with plain WINE.
You also can install non-listed programs. However, the programs listed have been specifically configured to be installed and run using Play On Linux.
Crossover
Streamlined setup makes it easy for Linux newcomers to use Windows programs.
Reliable 24/7 customer support with the premium plan.
Applications take up more space on the hard disk due to how it handles containers.
Free trial is limited to 14 days.
Crossover is the only item on this list that isn’t free. It’s a commercial product based on WINE. Installers are available for Debian, Ubuntu, Mint, Fedora, and Red Hat.
When you first run Crossover, you are presented with a blank screen with an Install Windows Software button at the bottom. When you click the button, a new window appears with the following options:
A bottle in Crossover is like a container that installs and configures each Windows application.
When you choose Select application, you’ll see a search bar from which you can search for the program you wish to install by typing a description.
You also can browse the list of applications. A list of categories appears, and as with Play On Linux, you can choose from an array of packages.
When you choose to install an application, a new bottle suitable for that application is created, and you are asked to provide the installer or setup.exe.
Why use Crossover when Play On Linux is free? Some programs work only with Crossover and not Play On Linux. If you need that program, then this is one option.
While WINE is a great tool, and the other options listed provide extra value for WINE, some programs may not work properly, and some may not work at all. Other options include creating a Windows virtual machine or dual-booting Windows and Linux.
How to Run Linux on Windows 10
Linux users celebrated when it was reported that Bash shell was coming to Windows. And while it was not readily available to all users at first, the Windows 10 Creators Update made Linux on Windows more accessible.
Want to join in on the fun? Here’s how you can have Linux on Windows operating system without having to go through a virtual machine.
Defining Bash
Bash is basically a subsystem for Ubuntu. With Bash, you have a Linux system running inside Windows. It’s the very same Bash you’d find in Linux. You can use it to execute Linux commands without the need for a virtual machine or dual booting.
Using Bash shell, developers can experience Linux natively on a Windows machine.
Enabling Linux on Windows
There are two ways of enabling a Windows subsystem for Linux. One is through PowerShell and the other would be through Windows Features.
Use PowerShell
Search for PowerShell and run it as an administrator. Once open, type this command and press Enter after:
You will be prompted to confirm by hitting Y or N. Press Y to proceed then reboot your computer. If it’s already installed, you won’t have to restart.
Use Windows Features
Use Search to look for a Control Panel application called Turn Windows Features On or Off.
Note: You can also get to the application by heading directly to Control Panel > Programs > Programs and Features > Turn Windows Features On or Off.
Once open, go through the list of features until you find Windows Subsystem for Linux. Tick the box to enable the option.
The computer will run and apply some changes. After it’s done, you will be asked to restart your computer.
Downloading a Linux Distro
Windows should now be able to run Linux. Now you have to download a Linux distro like Ubuntu for Windows to enter Linux commands.
Simply head on over to the Microsoft Store and download the Linux distro of your choice. You need to be logged in to proceed.
There are multiple systems available, but we’ll install Ubuntu and use it throughout the rest of this post. The download will likely take a while because of the large file size.
Running Linux
The Linux system you installed will run like a regular Windows application. Open Ubuntu. It will perform a one-time installation. You will be able to use Ubuntu Linux faster the next time you open the application.
Once installed, you will be asked to enter a username and a password. Provide all the necessary information.
From here on out, you will be able to go through the directory as you would in Linux. You will need to use SUDO APT to run root commands. You can also use APT-GET, APT INSTALL, AND APT UPDATE. You’re pretty much free to do everything you can do in a Linux terminal.
One thing to remember is that the Windows files system will be located inside the MNT folder.
If you want to edit Windows files from the Linux system, you would have to enter CD MNT, do LS then enter CD C and another LS to locate all the files stored inside Windows. Enjoy Linux with Windows 10!
Christopher Jan Benitez is a freelance writer for hire who provides actionable and useful web content to small businesses and startups. In his spare time, he religiously watches professional wrestling and finds solace in listening to ’80s speed metal. Read Christopher’s Full Bio
www.makeuseof.com
Follow MUO
4 Ways to Run Linux Apps and Games on Windows
Need to run Linux software within Windows? Don’t worry. You have several options available!
Need to run Linux software within Windows? Stuck using Microsoft’s operating system when you need to access the terminal? Worry no longer. You have several options to enjoy a Linux environment and even run Linux software within Windows.
1. Bash and Windows Subsystem for Linux
Need a Linux environment within Windows? In 2016, Microsoft teamed up with Canonical to create a working version of Bash that runs in Windows. Capable of running commands and tools like grep, ssh, and nano, Bash on Windows can be enabled with ease.
Similarly, the Windows Subsystem for Linux is waiting to be «switched on», and this can provide you with a graphic user interface. While it might look like «full Linux», this isn’t necessarily the case.
However, work continues on developing this environment, and eventually it is planned to be as useful as having a Linux PC in front of you. Following the success of the Canonical project, other Linux distros have teamed up with Microsoft to get their environments bundled into Windows.
It goes the other way, too: you can now install Windows PowerShell in Linux!
2. Run Linux in a Virtual Machine
Not all versions of Windows can run Bash or get a GUI using the Windows Subsystem for Linux. Fortunately, there is an alternative: virtualization!
Using a virtual machine such as VMware Player or VirtualBox, you can create a virtual hardware environment (limited only by the physical hardware constrains of your computer).
Within this virtual machine, you can then install Linux (a lightweight distro is recommended in most cases). With a version of Linux running within Windows, you can add and remove your favorite Linux apps and games as needed.
For those who use Linux regularly, having a Linux virtual machine in Windows can be preferable to dual booting.
3. coLinux
Cooperative Linux (shortened to coLinux) is a port of the Linux kernel, designed to allow it to run alongside another operating system (cooperatively). With coLinux, you can run Linux on a Windows computer without relying on virtualization. There is also support for BSD and macOS.
What this means is that you can run Linux apps and other software on your PC alongside your Windows software. They literally share screen space as separate apps, making the task of quickly switching to a Linux app as easy as it gets.
With a compact 7.5MB download, coLinux is worth installing to find out if it will support the sort of activity you have in mind. If not, other solutions are open to you.
4. Remotely Access an Existing Linux Computer
While not an exact definition of «running Linux apps on Windows», using remote tools is still an option. Three are commonly available:
With RDP and VNC, you can connect to a remote Linux computer (which might be in the next room, or even thousands of miles away) and access it via an application window. Here, software can be launched and the terminal accessed as you would expect.
SSH, meanwhile, gives remote access to a terminal session, enabling you to use the command line to manage files and folders, update and install software, etc.
Of these three potential solutions, RDP is probably the best option. The RDP tool is already built into Windows 10 (unlike VNC, which requires additional software), so all you need to do is install xrdp on your target Linux device. However, if SSH is already enabled on Linux, then you’ll be able to easily remote connect to the command line via an SSH tool like PuTTY.
See our guide for all three methods of remotely accessing Linux from Windows for more information.
Is the App Already Available for Windows?
If nothing you’ve read or tried so far is working for you, there is another choice: find the Windows version! Many apps that are released on Linux are also available on Windows. This might be because the tools have been ported across, or they’ve been recompiled to run in Windows.
Also, many apps are written on cross-platform code such as Java, which means the exact same app that runs in Linux will also run in Windows (and, probably macOS and other).
The best way to find out if the app is available for Windows is to contact the developer. If they don’t maintain their own Windows version, he or she may be aware of a project fork that offers support for Windows.
Now You Can Run Linux Software in Windows
Running Linux software within Windows isn’t as hard as you thought, is it? While it might be better to run these apps within their native environment, you nevertheless have five ways to play with Linux on a Windows PC.
To recap, these are:
Of these, the Linux subsystem for Windows, and a virtual machine, are arguably the most reliable. However, if you’re lucky enough to find an app that has been ported, or is cross-platform, then this should afford the best experience.
As useful as all of these options are, dual booting Linux and Windows is more reliable. Meanwhile, if all you need is a Linux machine that you can easily access from time to time, why not consider dedicated Linux box?
Building your own PC? Let these best custom PC builder sites help you get started.
Deputy Editor for Security, Linux, DIY, Programming, and Tech Explained. He also produces The Really Useful Podcast and has extensive experience in desktop and software support. A contributor to Linux Format magazine, Christian is a Raspberry Pi tinkerer, Lego lover and retro gaming fan.
Subscribe To Our Newsletter
Join our newsletter for tech tips, reviews, free ebooks, and exclusive deals!
One More Step…!
Please confirm your email address in the email we just sent you.