Wine (software) facts for kids
![]() |
|
winecfg configures Wine
|
|
Original author(s) | Bob Amstadt, Eric Youngdale |
---|---|
Developer(s) | Wine authors (1,755) |
Initial release | 4 July 1993 |
Stable release | |
Written in | C |
Operating system | |
Platform | IA-32, x86-64, ARM |
Available in | Multilingual |
Type | Compatibility layer |
License | LGPL 2.1 or later |
Wine is a special computer program that helps you run software and games made for Microsoft Windows on other types of computers. These other computers often use Unix-like operating systems, like Linux or macOS.
Think of Wine as a "compatibility layer." It doesn't actually pretend to be Windows. Instead, it understands the instructions that Windows programs give and translates them into something your computer's operating system can understand. This means you can often use your favorite Windows apps without needing to install Windows itself.
Wine is a free and open-source project. This means anyone can see how it's made and help improve it. Developers mostly figured out how Windows works by carefully studying how programs interact with it. This is called "reverse engineering." Wine doesn't use "emulation," which is like pretending to be a different computer. The only exception is on newer Apple Mac computers with special chips, where another tool helps translate code.
Contents
History of Wine
The Wine project started way back in 1993. Two people, Bob Amstadt and Eric Youngdale, wanted to find a way to run Windows programs on Linux computers.
At first, Wine was designed for older Windows programs from the 1990s. But over time, it changed to support the newer 32-bit and 64-bit programs that are common today. Alexandre Julliard has been leading the project since 1994.
Making Wine has been a big challenge for the developers. This is because Microsoft doesn't always share all the details about how Windows works. The Wine team had to figure out many hidden parts of Windows on their own. They needed to make Wine act exactly like Windows, even copying some of its quirks, so that programs would run correctly.
The Wine project changed its license in 2002. It started with a license that allowed others to use its code without sharing their changes back. But developers decided to switch to the LGPL license. This new license encourages anyone who makes changes to Wine to share those improvements with the main project.
Wine officially became a "beta" version in 2005. This meant it was getting close to being finished. After 15 years of hard work, the first full version, Wine 1.0, was released in 2008. Newer versions, like Wine 9.0, continue to be released, bringing more improvements and compatibility.
Companies Helping Wine
Several companies have helped the Wine project over the years.
- CodeWeavers is a big supporter. They hire many Wine developers, including Alexandre Julliard, to work on Wine. They also sell their own version of Wine called CrossOver. CrossOver includes special tweaks to help popular Windows programs run even better.
- Google has also helped. They paid CodeWeavers to improve Wine so that programs like Picasa and Adobe Photoshop CS2 could run well on Linux. Google also supports Wine through its "Summer of Code" program, which helps students work on open-source projects.
- Valve, the company behind the Steam game store, works with CodeWeavers to develop Proton. Proton is a special version of Wine designed to help Windows games run smoothly on Linux computers through Steam.
How Wine Works
The main goal of Wine is to act like the Windows "API." The API is a set of rules and tools that Windows programs use to talk to the operating system. Wine tries to understand and copy these rules so that Windows programs think they are running on Windows.
Basic Design
Windows programs often use special files called "DLLs" (Dynamic-Link Libraries). These DLLs contain many instructions for the computer. Wine has its own versions of these important Windows DLLs. When a Windows program tries to use a Windows DLL, Wine steps in and uses its own version instead. This allows the program to run on a non-Windows system.
Wine also has a special helper program called "wineserver." This program helps Wine do basic Windows tasks and connect with your computer's display system.
Graphics and Gaming
Many computer games use advanced graphics features like DirectX. Wine has to translate these graphics instructions so your computer's operating system can understand them.
Wine includes a tool called WineD3D. This tool translates DirectX commands into OpenGL, which is a graphics language that many other operating systems understand. This helps games that use DirectX run on Linux or macOS.
There are also newer efforts to make Wine work with Vulkan API, another modern graphics technology. This can help games run even faster and smoother.
Using Wine
You can usually start a Windows program with Wine by typing a command like `wine program.exe` in a special text window called a "terminal."
Winecfg
Wine also comes with a helpful tool called `winecfg`. This is a graphical program that lets you easily change Wine's settings. For example, you can tell Wine to pretend it's an older version of Windows if a program needs that to work. This makes it much easier to set up Wine without needing to dig into complicated settings.
Other Tools for Wine
Sometimes, a Windows program needs extra steps or special settings to run perfectly with Wine. Because Wine focuses on making its core Windows features work well, other helpful tools have been created to make things easier for users.
- Winetricks is a script that helps install common Windows components, like special fonts or DLL files, that some programs need. It can even automate the setup for many games and applications.
- PlayOnLinux (and PlayOnMac for Apple computers) is a popular tool that makes it simple to install and run many Windows games and applications. It helps manage different Wine versions and settings for you.
- Lutris is another open-source application that helps you install and manage Windows games on Linux.
- Bottles is a newer graphical tool that helps you manage different Wine setups for different programs. It's designed to be very user-friendly.
What Wine Can Do
Wine is always getting better at running more Windows programs. It can even use real Windows DLL files if you have them, which can help some programs work even better.
Wine also includes its own simple versions of some Windows programs, like a basic text editor similar to Notepad, or a file explorer like Windows Explorer.
The Wine Application Database (AppDB) is a website where people share how well different Windows programs work with Wine. It's a great place to check if a program you want to run is supported.
Running Older Programs
Wine is very good at running older Windows programs, even those from the early days of Windows. It can pretend to be different versions of Windows, which helps older software work. In some cases, Wine can even run old programs better than newer versions of Windows can!
For example, Wine can run 16-bit Windows programs on 64-bit computers. This is something that 64-bit versions of Microsoft Windows usually can't do on their own.
64-bit Programs
Wine has good support for modern 64-bit Windows programs. It can also run both 32-bit and 64-bit Windows programs at the same time within the same Wine setup. This is similar to how Microsoft Windows handles older programs on newer systems.
Wine for Android
In 2013, one of the main Wine developers showed a very early version of Wine running on an Android phone. Since then, experimental versions of Wine for Android have been released. This means that in the future, you might be able to run some Windows apps directly on your Android device!
Other Versions of Wine
While the main Wine project focuses on making all parts of Windows work correctly, other groups have created their own versions of Wine for specific purposes.
CrossOver
CodeWeavers sells a product called CrossOver. It's built on Wine but is specially designed to run popular programs like Microsoft Office and many games. CodeWeavers contributes most of its improvements back to the main Wine project. CrossOver is also available for Apple Mac computers.
Proton
Valve, the company that created the Steam game platform, developed Proton. Proton is a special version of Wine that works with the Linux version of Steam. Its goal is to make it easy for Linux users to play Windows games directly through Steam, just as if they were playing on a Windows computer. Proton includes many improvements for gaming performance.
WINE@Etersoft
A Russian company called Etersoft has its own version of Wine called WINE@Etersoft. It's designed to work well with popular Russian business applications.
Other Projects Using Wine Code
Many other projects use parts of Wine's code to help their own software.
- ReactOS is a project trying to build a free operating system that works like Windows. It uses a lot of Wine's code.
- WineBottler and Wineskin are tools for macOS that help users run Windows programs by creating special "wrappers" around Wine.
- VirtualBox and Parallels Desktop for Mac, which are programs that let you run entire operating systems inside another, use parts of Wine to help with graphics.
- Apple's Game Porting Toolkit, released in 2023, also uses Wine's technology to help game developers bring Windows games to Mac computers more easily.
See also
In Spanish: Wine para niños
- Anbox
- Darling (software)
- List of free and open-source software packages
- PlayOnLinux
- PlayOnMac
- ReactOS
- Windows Subsystem for Linux