Running Windows programs on Linux with Wine
Wine Importer
Users who move from Windows to Linux often miss some of their favorite programs and games. Wouldn't it be practical to run Windows applications on the free Linux operating system? Time for a little taste of Wine.
Many Linux migrants miss games and graphics programs such as CorelDRAW or products such as Adobe Photoshop. The only solution is to install Windows parallel to Linux -- or try Wine, which tricks applications into believing they are running on a Windows system.
The history of Wine goes back to the year 1993. At the time, Sun developed a small tool to run Windows applications on its own Solaris operating system – without the need for a Windows license or other interaction. This software inspired Bob Amstadt and Eric Youngdale to develop something similar for Linux. A short while later, the first version of Wine was released. Today, more than 300 volunteer programmers from all over the world continue to contribute to the Wine project.
What's in a Name?
To run Windows programs on Linux, Wine uses a fairly complex trick: It sits between the Windows application and Linux like a simultaneous interpreter. If the Windows application says: "Draw a button," Wine passes this command directly to Linux. In contrast to VirtualBox or VMware, Wine does not emulate a whole PC and is thus not a real emulator. This also explains the name Wine, which means Wine Is Not an Emulator.
Because of the way Wine works, it offers a number of advantages. Chiefly, you do not need an expensive Windows license. Programs will run almost as fast as on the Redmond operating system, and windows behave as if they belong to a native Linux program.
An interpreter can only be as good as its knowledge of the language, and therein lies the problem: Because Microsoft refused to release details of its operating system until just recently, Wine developers were forced to adopt a trial and error approach. This involved much painstaking work, and considering the multiple gigabyte operating system monster they were facing, it was very much a labor of Sisyphus. On top of this, some software manufacturers use pretty nasty programming tricks, and to talk these applications into running on Linux, Wine needs to know these tricks. Unfortunately, most software vendors keep this kind of information safely under lock and key.
Despite years of work, then, Wine is still officially under development, and most of the work is going into the fields of multimedia, video, and 3D graphics. This said, Wine does support DirectX 8 and 9 quite well by now. The developers started work on the tenth incarnation of this critical graphics interface for games last year. An additional limitation is that Wine can only handle 32-bit Windows applications, although support for 64-bit software is planned for some time in the future.
Wine has another disadvantage: It can only handle Windows applications; it cannot revitalize hardware with Windows-only driver support.
Preparation
Before you fire up your package manager and launch into the Wine install, you might want to take a look at the application database on the Wine homepage [1]. This database summarizes the level of support for various Windows programs: whether or not they run on Wine, and if so, how well behaved they are. To access the database, go to the Wine homepage and, in WineHQ Menu, click AppDB on the left. In the AppDB area, select Browse Apps. Then go through the drop-down list labeled Category until you find the category and application you are interested in and click on Update filter. CorelDRAW and Photoshop are hidden below Multimedia | Graphics | Graphics Editing, for example. Alternatively, you can use the search function on the left to find your application in the database.
If you decide to investigate CorelDRAW, you are taken to the page shown in Figure 1, where you will find ratings for different versions, telling you how well the program fared in tests performed by Wine users. The Platinum rating is only awarded if a program runs without errors and without any impairment to functionality on Wine. A couple of older CorelDRAW versions have made Gold status; the current X4 version refuses to cooperate entirely (Garbage). Adobe Photoshop CS2 will run more or less as the makers intended, whereas the current CS3 version has reached only Bronze status. Things are even worse in the case of Adobe Illustrator. As a rule of thumb, the older a program is, the better your chances are of getting it to work.
A Wrench in the Works
Clicking on a program version tells you exactly what the trouble is. A new window appears with details of what does and doesn't perform as expected. In addition, user reports at the bottom and tips for talking the program into cooperating can be very useful. The steps this requires, some of which are very complex, are something you should not attempt unless you are an experienced Linux user. In some cases, programs refuse to work because Internet Explorer is missing; for example, Lexware accounting software relies on Internet Explorer for some operations.
If your application is still listed as broken in the database, you should check the test date (in Test Results). If the test was a while back, you might want to experiment yourself. Wine continues to mature, and it is conceivable that your application has been taken care of. For this reason, it makes sense to enable the distribution's automatic updater, which installs any Wine update releases. Failing this, you should at least install the latest version of Wine – version 1.0 – as described in the box titled "Installing Wine 1.0 on openSUSE."
Once you have established that your choice of Windows application is likely to run on Wine, the next thing you need is an installation disc for the Windows application. Although Wine is free of charge, you will need a valid license for the Windows application, of course.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Gnome 47.2 Now Available
Gnome 47.2 is now available for general use but don't expect much in the way of newness, as this is all about improvements and bug fixes.
-
Latest Cinnamon Desktop Releases with a Bold New Look
Just in time for the holidays, the developer of the Cinnamon desktop has shipped a new release to help spice up your eggnog with new features and a new look.
-
Armbian 24.11 Released with Expanded Hardware Support
If you've been waiting for Armbian to support OrangePi 5 Max and Radxa ROCK 5B+, the wait is over.
-
SUSE Renames Several Products for Better Name Recognition
SUSE has been a very powerful player in the European market, but it knows it must branch out to gain serious traction. Will a name change do the trick?
-
ESET Discovers New Linux Malware
WolfsBane is an all-in-one malware that has hit the Linux operating system and includes a dropper, a launcher, and a backdoor.
-
New Linux Kernel Patch Allows Forcing a CPU Mitigation
Even when CPU mitigations can consume precious CPU cycles, it might not be a bad idea to allow users to enable them, even if your machine isn't vulnerable.
-
Red Hat Enterprise Linux 9.5 Released
Notify your friends, loved ones, and colleagues that the latest version of RHEL is available with plenty of enhancements.
-
Linux Sees Massive Performance Increase from a Single Line of Code
With one line of code, Intel was able to increase the performance of the Linux kernel by 4,000 percent.
-
Fedora KDE Approved as an Official Spin
If you prefer the Plasma desktop environment and the Fedora distribution, you're in luck because there's now an official spin that is listed on the same level as the Fedora Workstation edition.
-
New Steam Client Ups the Ante for Linux
The latest release from Steam has some pretty cool tricks up its sleeve.