In this article you will learn how to run windows applications on Linux/Ubuntu 18.04 using Wine and other alternatives. Wine ( Wine Is Not an Emulator ), is an open source application which is provided as a compatibility layer in Linux . It is used to bridge the gap between Linux and windows worlds so that applications that are meant for Windows could run on Linux.
An emulator or a virtual machine would simulate internal Windows logic whereas Wine would transform Windows logic into native UNIX/POSIX compliant logic.
This is said, not all Windows based applications can run on Linux and even if they do run, their behavior will differ from that in their natural Windows environment. Wine has a database (AppDB) which lists all applications that have been properly tested and confirmed to work on Linux.
Usually, the latest stable version of Wine can be found in the package repository and is offered by most Linux distros. The version that is available in the repositories however may not be the latest version of Wine.
We will first update the packages list via the command :
sudo apt update
Now run the following command in order to install wine :
sudo apt install wine
As you can see, there are two versions of Wine : a stable version and a development version.
In order to install the development version, run he command below :
sudo apt install wine-development
Now to verify the Wine version ,type in the command below :
The WineHQ repository contains standard Wine packages that you can be downloaded and installed on your system. Follow the steps below to install the stable version of Wine:
a – To add i386 architecture, run the command below before installing a 64-bit version of Wine:
sudo dpkg –add-architecture i386
This is in case you are using a 64 bit installation of Ubuntu. In order to know whether you are using a 32 or 64 bit , you may want to read our article here.
b – To add the WineHQ signing key, issue the command below :
wget -qO- https://dl.winehq.org/wine-builds/Release.key | sudo apt-key add –
c – To add the corresponding repository from the WineHQ, execute the command below :
sudo apt-add-repository ‘deb http://dl.winehq.org/wine-builds/ubuntu/ artful main’
d – The stable version can now be installed by executing the command below :
sudo apt-get install –install-recommends winehq-stable
This will require 411 MB of additional disk space. Go ahead and hit Y when prompted.
As before, issue the command below to discover the version :
Installing the latest version of Wine is important since the developers are adding more Windows applications every now and then. As mentioned earlier, Wine provides an updated list of all supported applications which can be found here.
You have the possibility to check the health of each application when it runs on Wine. This is represented by a rating which consists of the following values:
- Platinum: Applications will run flawlessly
- Gold: Applications work flawlessly but some special configuration is needed.
- Silver: Applications with minor issues.
- Bronze: Applications have major issues that might hamper its functionality.
- Garbage: These Applications will not run on Wine.
This can be found by clicking on Browse Apps item on the left hand side when you visit the WineHQ website. You also have at your disposal other filtering options as shown below :
Here we are looking for applications which contain the word adobe.
If you click on a link, you will see more details, for instance when you click on Adobe Audition, you would get the details below :
This might help you decide which version of the application you would want to install.
On windows, software applications need a C: drive. To support Windows based applications, Wine uses a virtual C: drive which has a directory called wineprefix that needs to be created beforehand using the the winecfg command. This will set up the Wine environment:
Once this is completed, wineprefix will be created and the configuration window for Wine will open up. You should be able to configure several Wine settings but the default settings should suffice in most cases.
You should be able to locate the virtual C: drive at :
This drive will contain the following items which are familiar for Windows users:
Any supported application can be installed using Wine very easily much like in Windows. We provide a short guide below on how to install a simple application on Wine.
You would first need to download the application. Here we will download Notepad++ from the Notepad++ website.
Once the download is available on your machine, select the downloaded file and right click on it. A pop-menu will appear with some proposed applications. Select “Open With Wine Windows Program Loader”.
Once the installation wizard starts, select your preferred language and proceed to the installation of Notepad++.
Windows applications will be installed in the /.wine/drive_c/ directory.
In order to launch the Notepad++ , open up the directory ~/.wine/drive_c/Program Files (x86)/Notepad++ and double click on the file notepad++.exe.
PlayOnLinux is a powerful GUI based utility that allows Windows applications to be easily installed on Linux. Once installed, PlayOnLinux offers a long list of applications that you can select and install.
We will show below how to install PlayOnLinux on Ubuntu 18.04.
PlayOnLinux can be installed via the Ubuntu Software Center. Go ahead and open up Ubuntu Software Center :
Now click the search button on the top right hand corner and type in PlayOnLinux :
Once you click on the area above, you will see the screen below which contains the installation button :
Go ahead and hit that button. You will be prompted to enter your password. Once this is done, the installation process will start. This might take up to two minutes.
Once PlayOnLinux has been installed, click on the launch button :
Or go to the Dash and type in PlayOnLinux :
Now that the program window has showed up :
Click on ‘Install a Program’ menu item. The screen below will appear containing several categories and software titles that can be installed.
Feel free to click on the top icons so that you could see the corresponding applications. Once you find the software you are looking for, select it and click on the install button which is located on the bottom right hand corner. Unlike Wine, many applications will need an installation CD or an installation file which need to be downloaded.
As it is the case with Wine, some applications will not work flawlessly. You might want to visit the support page to find out if the app is well supported.
Many software developers and third party app vendors rely on a well known packaging format for Linux called Flatpak. Flatpak offers a cross platform framework which enables users to package their Linux applications once in order to distribute them for all Linux distros. You can find out more about Flatpak in our article on how to install and uninstall applications on Ubuntu.
Winepak is a free open source utility that aims to package Wine applications using Flatpak’s packaging feature. This will allow you to use Winepak’s repository to search for and install your desired application. For instance, games like Fortnite, Overwatch and World of Warcraft can be downloaded and installed.You can contribute to Winepak project on GitHub.
Using Winepak, you could install a Windows application on Linux using a single command.
In order to install Winepak, follow the steps below :
1 – If flatpak is not already installed in your computer , you may want to follow the instructions in our article on how to install and uninstall applications on Ubuntu.
2 – The Flathub repository would need to be added by issuing the following command :
flatpak remote-add –if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
In Flatpak, Adding a repository is different when compared to adding an Ubuntu repository. In Flatpak, these are called “remotes,” and they can be added to Flatpak using a simple command. Flathub is the biggest remote for Flatpak.
3 – Now add the winepak repository ia the command:
flatpak remote-add –if-not-exists winepak https://dl.winepak.org/repo/winepak.flatpakrepo
In order see all the packages that can be installed from winepak, use the command:
flatpak remote-ls winepak
The most common method to find an application or a game with winepak is to carry out a search. Since winepak is still new, there are not so many games available to install. To search for instance for overwatch, issue the command below :
flatpak search AndroidStudio
This might take some time however since flatpak will be querying its remotes.
To install an application app_name, run the command below :
flatpak install winepak tld.domain.your_application
To install for instance the AndroidStudio app, issue the command below :
flatpak install com.google.AndroidStudio
CrossOver by CodeWeaver, is a proprietary software, that allows users to run several Windows programs or popular applications on Linux. Some of the supported applications include Intuit Quicken, Microsoft Office (starting from Office 97 to Office 2010) , Photoshop CS and Adobe Photoshop (not all versions are supported). CrossOver can also help gamers run their preferred games such as Guild Wars and World of Warcraft.
CrossOver, which is based on Wine, maintains a full list of the supported applications it can run as well as the programs that it does not support.
Although wine is enough to install windows based applications, CrossOver makes it easier however, for users to install and configure Windows programs on Linux.
CrossOver comes with a 15-day free trial allowing users to check whether their desired software can properly run on Linux .
Virtual machines can also be used to run Windows applications on your Linux computer. In the distant past, virtual machines would slow down the system since the hardware was not as advanced as it is today. Nowadays however, many computers can run more than one virtual machine with ease.
In order to run a Windows based application, one needs a Windows machine obviously. On Linux, it is possible to install Windows in a “virtual machine” using some applications like VMware,VirtualBox or a built-in KVM, Linux Kernel-based Virtual Machine.
You can see above the creation of a virtual machine to run Windows 10 on Ubuntu using Oracle VM VirtualBox manager.
Using this alternative will allow you to install Windows applications on the virtual machine flawlessly or almost ! You will not have to look up which application can run without problems as it is the case with Wine above.
This has some disadvantages however in that it can slow down your computer if it does not have enough RAM. Some PC games which require powerful graphics cards will not perform well. Better run these using Wine. For light applications , this might seem a perfect solution though.
To run Windows applications on Linux, Wine has several advantages when compared to other virtual machines or emulators since it can support a large number of useful Windows programs along with an updated status on their execution behavior. Installing an application using Wine on Linux is a double-click away and does not require Wine to be up and running beforehand. It is a must for Linux users who miss their Windows based software. Q4Wine is a GUI for wine which helps manage wine prefixes and also installed applications.
CrossOver, which is based on wine, makes it easy for users to install Windows applications.
Another alternative would be to install windows on a virtual machine which runs on Linux. although this seems to be the ideal solution it has however some drawbacks in that it can eat up your hardware resources.
PyWinery is an easy and simple graphical wine-prefix manager. It allows users to launch apps, manage and explore configuration of separate prefixes, in a graphical way.
Winepak is recent, but as you may have read, it it is quite powerful when it comes to searching for applications and installing them.
Another straightforward solution would be to use a dual boot, i.e. install Windows alongside Linux. Many Linux users choose the dual boot option especially when they have an SSD since the boot time is fast.Many other programs enable users to install games on Linux such as Lutris, Proton .