Wine (software)
From Wikipedia, the free encyclopedia
Wine | |
Developer: | Wine Team |
---|---|
Latest release: | 0.9.34 / March 30, 2007 |
OS: | Linux, other Unix-like systems |
Use: | Compatibility layer |
License: | GNU Lesser General Public License |
Website: | http://www.winehq.org/ |
Wine is a project which aims to allow a PC with an x86 architecture processor running a Unix-like operating system and the X Window System to execute programs that were originally written for Microsoft Windows. Alternatively, those wishing to port a Windows application to a Unix-like system can compile it against the Wine libraries in the form of Winelib.[1]
The name 'Wine' derives from the recursive acronym Wine Is Not an Emulator, although some have used the unofficial expression Windows Emulator. While the name sometimes appears in the forms "WINE" and "wine", the project developers have agreed to standardize on the form "Wine".
Wine is free software, released under the GNU Lesser General Public License (LGPL). The Wine project originally released Wine under the same MIT License as the X Window System, but owing to concern about proprietary versions of Wine not contributing their changes back to the core project, work as of March 2002 has used the LGPL for its licensing.
The Wine developers released the first beta version of Wine (version 0.9) on October 25, 2005 after 12 years of development.
Contents |
[edit] History
Bob Amstadt (the initial project leader) and Eric Youngdale started the Wine project in 1993 as a way to run Windows applications on Linux. It originally targeted Windows 3.x (16-bit) application software, although it currently focuses primarily on the dominant 32-bit applications. The project probably originated in discussions on Usenet in comp.os.linux. Alexandre Julliard has led the project since 1994.
Rather than acting as a full emulator, Wine implements a compatibility layer, providing alternative implementations of the DLLs that Windows programs call.
The Wine developers write the software primarily for Linux, but the Mac OS X, FreeBSD and Solaris ports are currently well-maintained.[2]
The project has proved time-consuming and difficult for the developers, partially (at least) because of incomplete or incorrect documentation of the Windows API. While Microsoft has documented most Win32 functions, some areas such as file formats and protocols have no official Microsoft specification, as well as featuring undocumented low-level functions and obscure bugs that Wine must duplicate precisely in order to allow some applications to work properly. Consequently, the Wine team has had to reverse engineer many function calls and file formats in such areas as thunking.
The involvement of Corel for a time assisted the project, chiefly by employing Julliard and others to work on it. Corel had an interest due to the porting of WordPerfect Office, its office suite, to Linux. However, after Microsoft made major investments in the company, Corel cancelled all Linux-related projects and the Wine effort stopped.[3] CodeWeavers now employs Julliard and many other Wine developers to work on Wine and on CrossOver, CodeWeavers' supported version of Wine utilizing some additional proprietary components.
[edit] Functionality
As of late 2005, Wine runs some software with good stability and most software with minor issues. Most native Microsoft Windows DLLs necessary for the execution of 32-bit Windows binaries have compatible Wine counterparts. The developers of the Direct3D portions of Wine have continued to implement new features such as pixel shaders to increase game support.[4]
[edit] Tools for Wine
winecfg is a GUI configuration utility for Wine. winecfg makes configuring Wine easier by making it unnecessary to edit the registry directly.
WineTools is a menu driven installer for installing approximately 90 Windows programs under using Wine.[5] The application is able to deal effectively with Internet Explorer 6, Photoshop 7.0, Illustrator 9.0 and many other applications.
Wine-Doors is an application management tool for the GNOME desktop which adds functionality to Wine. Wine-Doors is an alternative to WineTools which aims to improve upon WineTools' features and extend on the original idea with a more modern design approach.[6] Wine-Doors is based on the Eclipse platform.
WineXS is an application which provides a simple user interface to offer one-click access to the Wine registry, winecfg config tool and range of other services.[7] It has an installation option which works with the currently installed version of Wine to save the user from having to remember which application is where.[8]
[edit] Other versions of Wine
The core Wine development aims at a correct implementation of the Windows API as a whole and has sometimes lagged in some areas of compatibility with certain applications. Direct3D, for example, remained unimplemented until 1998;[9] however, newer releases of Wine have had an increasingly complete implementation.[10]
CodeWeavers markets CrossOver specifically for running Microsoft Office and other major Windows applications including some games. CodeWeavers also employs Alexandre Julliard to work on Wine and contributes most of its code back to the Wine project under the LGPL. CodeWeavers released also a new version called Crossover Mac for Intel-based Apple Macintosh computers on January 10, 2007.[1].
TransGaming Technologies produces the proprietary Cedega software. Formerly known as WineX, Cedega represents a fork from the last MIT-licensed version of Wine. TransGaming optimises Cedega for running Windows computer games and runs on a subscription business model.
Transgaming has also produced Cider, a Wine library for Apple-Intel architecture Macintoshes. Instead of being an end user product, Cider (like Winelib) is a wrapper allowing developers to adapt their games to run natively on Intel Mac OS X without any changes in source code.
Other projects using Wine source-code include:
- ReactOS, a project to write an operating system compatible with Windows NT down to the device driver level.
- Darwine, a port of the Wine libraries to Darwin and Mac OS X. Darwine originally aimed at compiling Windows source-code to Mach-O binaries. With the advent of Apple-Intel architecture, Darwine began running Win32 binaries in x86 Darwin, and has approached version-parity with the Wine trunk. The Darwine project also continues progress on PowerPC by combining Wine with the QEMU x86 emulator.
- BeWine, a port of the Wine libraries to BeOS, Haiku and similar operating systems
- Odin, a project to run Win32 binaries on OS/2 or convert them to OS/2 native format. The project also provides the Odin32 API to compile Win32 programs for OS/2.
- E/OS, a project attempting to allow any program designed for any operating system to be run without the need to actually install any other operating system
- Rewind, a defunct MIT-licensed fork of the last MIT-licensed version of Wine.
[edit] Microsoft and Wine
Microsoft has generally not made public statements about Wine. However, the Microsoft Update software will block updates to Microsoft application software running in Wine-based environments. On February 16, 2005, Ivan Leo Puoti discovered that Microsoft had started checking the Windows registry for the Wine configuration key and would block the Windows Update for any component. Puoti wrote, "... even if this is only an initial attempt, they appear to want to discriminate against Wine users. While this may be acceptable for operating system components/updates, this is probably a violation of anti-trust law for all other downloads. It's also the first time Microsoft has acknowledged the existence of Wine."[11]
The Windows Genuine Advantage (WGA) system also checks for existence of Wine registry keys, and the WGA FAQ states that WGA, by design, will not run in Wine, as Wine does not constitute "genuine Windows" as described in the WGA FAQ: "When WGA validation detects WINE running on the system, it will notify users that they are running non-genuine Windows, and it will not allow genuine Windows downloads for that system".[12] Despite this, some reports have circulated of the WGA system working in Wine.[13] However, the WGA FAQ also states "It is important to note that Wine users, and other users of non-genuine Windows, can continue to download updates for most Microsoft applications from Microsoft application-specific sites, such as Office Update", affirming Microsoft's position as neutral to Wine, but not wishing to offer support for it.
The newest version of Microsoft's popular web browser, Windows Internet Explorer 7 checks at installation-time for WGA, and hence users cannot install it on Linux systems which use Wine, without modifying the Internet Explorer setup files or Wine itself.
[edit] See also
[edit] References
- ^ Winelib. Wine HQ. Retrieved on 2006-10-27.
- ^ Wine FAQ.
- ^ That's All Folks: Corel Leaves Open Source Behind. NewsForge.
- ^ DirectX-Shaders-The official wine wiki.
- ^ http://www.von-thadden.de/Joachim/WineTools
- ^ http://www.wine-doors.org
- ^ http://tsx.nl/index.php?p=winexs
- ^ Linux Format Magazine (December 2006) page 82
- ^ Wine Traffic #208 (2004), kernel-traffic.org.
- ^ Wine Status - DirectX DLLs.
- ^ Puoti, Ivan Leo (2005). Microsoft genuine downloads looking for Wine (mailing list). Retrieved on 2006-01-23.
- ^ Genuine Windows FAQ. Microsoft Corporation. Retrieved on 2006-01-30.
- ^ WGA running in Wine.
[edit] External links
- Wine Development HQ - The official homepage of Wine.
- Application database - information on application-compatibility with Wine (HOWTOs, patches, etc.)
- Wine newsgroup (Google web interface)
- Jeremy White's Wine Answers - Slashdot interview with Jeremy White of CodeWeavers
- Jeremy White interview on the "Mad Penguin" web-site
- Appointment of the Software Freedom Law Center as legal counsel to represent the Wine project (The press-release doesn't mention what legal issue exists, but two days earlier the Wine Developers Conference saw mention of a patent problem.)
- Wine on Freshmeat