LWN.net Logo

Development

Wine to Reach A Major Milestone

October 5, 2005

This article was contributed by Brian Vincent

In just a few weeks, Wine will be reaching a major milestone: a beta release. Until now, Wine has been one of the largest projects under development that has never seen a beta. Wine's codebase is approaching 1.5 million lines, contributed by nearly 700 individuals over the past 11 years. Two successful commercial products are based on the code, and it is used in a production environment by several large corporations. While Wine often catches flack within the open-source community for bringing Windows compatibility to Linux, there are two facts that are undeniable:
  • Windows has the largest library of software available, including a huge number of applications that have no comparable Linux alternative.
  • Legacy software from a vendor that has gone out of business will never get ported to Linux.

Wine's acronym paradoxically comes from both the phrases WINdows Emulator and Wine Is Not an Emulator. Don't worry, Wine's developers really don't care (much) which you prefer since it fits both descriptions to some degree. At its core, Wine is an implementation of the Win32 API designed to run on top of Unix-like operating systems. KDE, of course, relies on Qt and GNOME on GTK, and in this regard Wine simply implements yet another API. The difference is, Win32 was designed by Microsoft and happens to be one of the most widely used APIs in existence.

The Wine beta release will come at an interesting time. Microsoft is not planning on releasing any major new API components until Windows Vista ships. Even then, it will be a while until any major applications require the new API. As a result, Wine has a few years to stabilize the existing APIs.

Besides implementing the Win32 API, Wine contains several unique features for running Windows programs on Linux. On Linux, the ELF binary format describes executables and libraries. Microsoft uses a different format, PE (Portable Executable), for the same purpose. The PE format is more complex and allows multiple resources to be embedded in one file. Wine implements a special loader to open PE files. Windows also contains primitives, such as threading, that are much different than on Linux. Wine's wineserver is used to synchronize between threads and processes using custom IPC code. It performs many of the low-level functions done by the kernel on Windows. If that isn't exciting enough for you, Wine also comes with winemine, a minesweeper game.

Wine's architecture has stabilized quite a bit over the past few years. Items tackled just this summer include:

  • Graphical tools for Wine's configuration (regedit and winecfg).
  • DirectX 9 support.
  • Support for allowing applications to open web pages.
  • A new RichEdit control.
  • Improved support for the Microsoft Installer.
  • Beginnings of 64-bit support (Win64).
  • Theming for controls.
  • Authentication using Samba 4 interfaces.
  • Improved filesystem integration.
In addition, a shift in focus from core components to higher-level libraries has brought better compatibility. Out of the box, Wine's default settings are sufficient for running many programs. In June the old config file was removed and replaced with the new winecfg utility.

A lot of things are in the process of being cleaned up for the beta release. Wine's application database, which lists compatible applications, has seen a complete overhaul over the past year. Some new capabilities have been added in the past few weeks. Work is underway to rewrite major portions of the Wine User Guide to bring it up to date. Finally, wine's Bugzilla bug database has been pruned of items that have been fixed.

So let's be realistic, how well does it work? Thanks to recent work done by CodeWeavers, most Windows programs now install. For a long time, just getting a program to install was a huge hurdle, things have really improved in that area.

Many small to medium-sized programs run just fine, though you may notice little discrepancies. Larger programs, such as Photoshop, Word, Excel, or Quicken can be coaxed into running, but they have traditionally suffered from regressions in Wine. As a work-around, CodeWeavers' CrossOver Office is able to run those programs, so the technology is definitely capable. Games usually don't run out of the box because of copy protection schemes that aren't compatible with Wine.

The focus of the beta release is to provide a starting point for stabilizing Wine. Tons of bugs need to be fixed and entire APIs remain to be finished off. The beta release won't be a magic bullet that suddenly makes Wine perfect, but all of the tools and interfaces will be in place.

It will also be feature complete from a packaging standpoint, and distributions are encouraged to begin testing integration. For anyone interested in development, there's still a lot of work to be done and plenty of ways to get involved.

Stay tuned to WineHQ for announcements.

Comments (4 posted)

System Applications

Audio Projects

Rivendell v0.9.53 announced

Version 0.9.53 of Rivendell, an audio automation system for use in radio stations, is out with bug fixes and some new features.

Full Story (comments: none)

Database Software

Firebird 1.5.3 Release Candidate 2 released

Version 1.5.3 Release Candidate 2 of the Firebird database is out. "The Firebird Project is pleased to announce the second -- hopefully last -- release candidate for the forthcoming Firebird 1.5.3 release, for testing. Download kits are available for Windows and Linux."

Comments (none posted)

PostgreSQL Weekly News

The October 2, 2005 edition of the PostgreSQL Weekly News is online with new PostgreSQL discussions and resources.

Full Story (comments: none)

Interoperability

Samba 3.0.20a Available for Download

Version 3.0.20a of Samba has been announced, it features several bug fixes. Click here for a more detailed list of changes.

Full Story (comments: none)

LDAP Software

LAT 0.7.3 Released

Version 0.7.3 of LAT, the LDAP Administration Tool, is out with new features, bug fixes, and code cleanups.

Full Story (comments: none)

Libraries

Cairo release 1.0.2 now available

Release 1.0.2 of the Cairo graphics library has been announced. "This is a maintenance (bug-fix only) release in the cairo 1.0 series. It is the first such release since 1.0.0. (There is no 1.0.1 release since that number was used during the development between 1.0.0 and 1.0.2.) This release maintains source and binary compatibility with cairo 1.0.0. We'd like to give particular thanks to the many individuals who have tested cairo since 1.0.0, (and turned up a fair number of bugs)."

Full Story (comments: none)

Printing

How To Restrict Disk, Memory and CPU Usage (CUPS)

The CUPS printing project has a short article on tuning CUPS system resources. "If you are running into a performance problem with disk space, memory and CPU usage, editing one or more of the following directives inside the /etc/cups/cupsd.conf file may aid the situation."

Comments (none posted)

Web Site Development

Five 1.1 released

Version 1.1 of Five (Zope 2 plus 3) has been announced. Changes include Zope 3-style i18n, Zope 3 to Zope 2 interface bridging, more standard ZCML directives, and code improvements.

Comments (none posted)

Zope 3.1.0 released

Version 3.10 of the Zope web development platform has been released. "Zope 3 is the next major Zope release and has been written from scratch based on the latest software design patterns and the experiences of Zope 2. It is in our opinion that Zope 3.1 is more than ready for production use, which is why we decided to drop the X for experimental from the name. We will also continue to work on making the transition between Zope 2 and Zope 3 as smooth as possible. As a first step, Zope 2.8 includes Zope 3 features in the form of Five."

Comments (none posted)

LogMiner 1.4 released (SourceForge)

Version 1.4 of LogMiner, an Apache logfile analysis package, has been announced. "In release 1.4, configuration has been made simpler by removing the need to list all your sites in the [Logs] section."

Comments (none posted)

webcockpit 1.5.0 released (SourceForge)

Version 1.5.0 of webcockpit has been announced, it includes several new features. "Webcockpit is a Web Application generator for realtime charting and monitoring solutions. This minor release improves greatly the tabulation power – by using ‘displaytag’ JSP taglib for runtime HTML table generation. Features include sorting, or grouping by column, pagination, data export to csv, excel and xml formats and having full control of the table’s CSS style markup."

Comments (none posted)

Desktop Applications

Business Applications

faces 0.5.0 released

Version 0.5.0 of faces, a project management tool, has been announced. Here is the change summary: "The report definition mechanism has changed significantly. The autocompletion function has been improved. Real online help is now available. A new calendar report has been added. The cleaning mechanism of the HTML generator has been modified."

Comments (none posted)

Desktop Environments

GNOME Software Announcements

The following new GNOME software has been announced this week: You can find more new GNOME software releases at gnomefiles.org.

Comments (none posted)

Dropline GNOME 2.12.0 released (GnomeDesktop)

Version 2.12.2 of Dropline GNOME has been announced. "After several weeks of testing, the latest version of Dropline GNOME is finally available. This release sees updates to virtually every package, and is our first release built specifically for Slackware 10.2. We would like to thank all of the testers that helped in the development of this release. We couldn't do it without you!"

Comments (none posted)

KDE Software Announcements

The following new KDE software has been announced this week: You can find more new KDE software releases at kde-apps.org.

Comments (none posted)

This Month in SVN - October (KDE.News)

KDE.News looks at the latest edition of This Month in SVN. "Welcome to the last issue of This Month in SVN for the KDE 3.5 series. As KDE 3.5 is in feature freeze and nearing release, future articles will be focusing on the development of KDE4 and other related projects like Plasma and Appeal. If you've been intrigued by the new features in these issues and are raring to try them out, please consider installing the KDE 3.5 beta packages if your distro has provided them. The more beta testers we have reporting bugs, the better our release product can be!"

Comments (1 posted)

Desktop Publishing

Scribus 1.3.1 released

Version 1.3.1 of Scribus, an open-source page layout application, is out. "The 1.3.1 release is the second development version towards a new stable 1.4. Building on the 1.3.0 version released in July, 1.3.1 brings new features never before available in any open source application."

Full Story (comments: none)

Electronics

XCircuit 3.4.0 released

Version 3.4.0 of XCircuit, an electronic schematic drawing package, is available. This release features substantial revisions to the user interface and input mechanism.

Comments (none posted)

Financial Applications

SQL-Ledger 2.6 released

Version 2.6 of SQL-Ledger, a web-based accounting system, is out with many changes. See the What's New document for details.

Comments (none posted)

Games

Atlas-C++ 0.5.98 Released

Version 0.5.98 of Atlas-C++ has been released by the WorldForge game project. "Atlas-C++ is the standard implementation of the WorldForge Atlas protocol. This should be the final release on the development branch, which is working towards the 0.6 series. This release is primarilly aimed at developers, though it is also required by the upcoming Eris release, and will be required by future client releases."

Comments (none posted)

QueriEd 2.4 Released (SourceForge)

Version 2.4 of QueriEd is out with support for a new game and bug fixes. QueriEd is: "A Java library to query game servers such as Half Life Source, Battlefield 2 and UT servers to find out the map, number of players, and players scores. There are different game servers with query protocols that can be added to this package."

Comments (none posted)

Interoperability

Wine Traffic

The September 30, 2005 edition of Wine Traffic is out with new Wine project articles. Topics include: Summer of Code Updates: Single Sign-On, and Theming, Red Hat/Fedora RPMs, Build Changes, Compile Problems from Wine-20050830, Lotus Notes Breakage and Fix and Finding Stack Corruption.

Comments (none posted)

Mail Clients

Mozilla Thunderbird 1.0.7 Released (MozillaZine)

Version 1.0.7 of Mozilla Thunderbird, an email client, has been announced. "Amongst other changes, this minor release includes fixes for a return receipt regression introduced in version 1.0.2 (bug 289091) and the Linux command line URL parsing security flaw."

Comments (none posted)

SharpWebMail 0.12 beta released (SourceForge)

Version 0.12 beta of SharpWebMail has been announced, it features improvements and bug fixes. "SharpWebMail is an ASP.NET webmail application that is written in C#. It uses a POP3 or IMAP servers as the mailstore and sends mail through a SMTP server. It is very simple to configure (only a few settings in the web.config file). You can compose HTML messages, search your inbox, read complex mime messages, have multiple address books and much more. It fully works under .NET and Mono."

Comments (none posted)

Medical Applications

Python X12 Medical Billing Library (LinuxMedNews)

Fred Trotter makes note of the pyx12 library on LinuxMedNews. "As the originator of FreeB I am usually up on whats happening in the open source medical billing world. Imagine my surprise when I found out that someone has put out a really excellent X12 parsing and validating tool! John Holland has written and excellent python library called pyx12."

Comments (none posted)

Multimedia

mplayer-plugin 3.11 released

Version 3.11 of mplayer-plugin, browser plugin that supports various movie formats, is available. This release has a playlist bug fix. (Thanks to Kevin DeKorte.)

Comments (none posted)

Music Applications

MMA version 0.16 is available

Beta version 0.16 of MMA, the Musical MIDI Accompaniment, is out for testing. Here are the change notes: "Beta 0.16: Lots of little bug fixes, new SWINGMODE, more note offset and length options, NOTESPAN directive, better KEYSIG support, enhanced VOLUME options, negative offsets (prior bar) in patterns."

Full Story (comments: none)

Qsynth 0.2.4 released

Version 0.2.4 of Qsynth, a fluidsynth GUI front-end, is out with usability improvements and a bug fix.

Full Story (comments: none)

Office Applications

HylaFAX 4.2.2 Released

Version 4.2.2 of HylaFAX, a fax modem interface package, is out with a number of new features. See the release notes for more information.

Comments (none posted)

Office Suites

The first OpenOffice.org 2.0 release candidate

The first OpenOffice.org 2.0 release candidate is out. See the product page for information on this release, the features page for a quick tour of enhancements in 2.0, or the download page to get your copy.

Comments (20 posted)

OpenOffice.org Newsletter

The September 30, 2005 edition of the OpenOffice.org Newsletter is online. Take a look for new OpenOffice.org resources and events.

Full Story (comments: none)

RSS Software

PenguinTV 0.77 is available

Version 0.77 of PenguinTV, an improved RSS reader, has been announced "This version fixes many bugs and improves performance. This is a recommended upgrade."

Comments (none posted)

Science

JGAP 2.4 released (SourceForge)

Version 2.4 of JGAP is available. "JGAP is a genetic algorithms package written in Java. It is designed to require minimum effort to use "out of the box," but is also designed to be highly modular to allow for custom components to be easily plugged in by the more adventurous. JGAP version 2.4 advances and extends the previous release, see the changelog for details. This release contains some few new features and many new unit tests."

Comments (none posted)

Metro 4.06 Released (SourceForge)

Version 4.06 of Metro has been announced. "Metro is a tool designed to evaluate the difference between two triangular meshes. Metro adopts an approximated approach based on surface sampling and point-to-surface distance computation. The tool is widely used in the surface simplification research community (approx 200 citations of the tool in scientific papers according to google scolar). Current version uses multiple search structures. Now the mesh comparison can be done exploiting a static uniform grid, a hashed grid or a hierarchy of AA box."

Comments (none posted)

Web Browsers

Google Toolbar for Mozilla Firefox Out of Beta (MozillaZine)

MozillaZine covers the latest release of the Google Toolbar for Mozilla Firefox. "The official Google Blog has announced that the Google Toolbar for Mozilla Firefox is now out of beta. This first non-beta release of the browser extension integrates the functionality of Google Suggest, which offers a list of possible search queries as you type. This version also works with Firefox's built-in toolbar customisation feature, allowing users to rearrange and place the Google Toolbar buttons anywhere in their toolbar setup."

Comments (none posted)

Gervase Markham Explains Automatic Resolution of Old Unconfirmed Bugs Plan (MozillaZine)

MozillaZine reports on plans to automatically resolve some old unconfirmed bugs in Firefox, Thunderbird, Mozilla Application Suite, Core or Toolkit products. Gervase Markham has written a weblog post explaining the thinking behind the plan.

Comments (none posted)

Word Processors

AbiWord-2.4 released

Footnotes carries the news of the AbiWord 2.4 release. New features include on-the-fly grammar checking, equation editing, OpenDocument support, and better GNOME-Office integration. The release notes have the details.

Comments (1 posted)

Miscellaneous

PyKeylogger 0.6.4 released (SourceForge)

Version 0.6.4 of PyKeylogger is out with bug fixes. "PyKeylogger is a simple keylogger written in python. It is primarily designed for personal backup purposes, rather than stealth keylogging (though it can do that, too). It does not raise any trust issues, since it is a short python script that you can easily examine."

Comments (none posted)

Languages and Tools

C

GCC 4.0.2 Released

Version 4.0.2 of GCC, the GNU Compiler Collection, is available. "This release is a minor release, containing primarily fixes for regressions in GCC 4.0.1 relative to previous releases."

Full Story (comments: none)

Caml

Caml Weekly News

The October 4, 2005 edition of the Caml Weekly News is online. Take a look for all new Caml language articles.

Full Story (comments: none)

Haskell

Haskell Weekly News

The September 27, 2005 edition of the Haskell Weekly News is online with the latest Haskell news. Topics covered this week include Haskell winning the 2005 ICFP contest and a new independent package providing the GHC API.

Comments (none posted)

Haskell Weekly News

The October 4, 2005 edition of the Haskell Weekly News is online with the latest Haskell news. Topics covered this week include a new issue of The Monad.Reader, the Haskell workshop at ICFP, Endian conversion, and the strictness of putChar.

Comments (none posted)

The Monad.Reader wikizine

Issue #5 of The Monad Reader is online with the latest Haskell language articles. "For issue five, the subjects are a short introduction to Haskell, generating polyominoes, a ray tracer, number parameterized types, practical graph manipulation, and a short introduction to software testing in Haskell."

Full Story (comments: none)

Java

This week on harmony-dev

The October 1, 2005 edition of This week on harmony-dev covers the latest developments in the Harmony open-source Java platform project.

Full Story (comments: none)

Lisp

MIT releases Lisp Machine source code as open source

MIT has released the Lisp Machine source code. "MIT has released under a 'BSD like' license the source code of the Lisp Machines developed at MIT. Lisp Machines were special-purpose computers designed for running Lisp code. They were popular in the 1980s, especially for AI applications. Improved versions were commercially produced and distributed by companies such as Symbolics, Texas Instruments and Lisp Machines Inc."

Full Story (comments: none)

Perl

The State of the Onion 9 (O'Reilly)

Larry Wall has written issue #9 of the The State of the Onion, an amusing read that covers the current state of Perl development. "This last year, we were starting to lose our sense of fun in the Perl community. Though we tried to be careful about not making promises, everyone knew in their hearts that five years is an awfully long time to wait for anything. People were getting tired and discouraged and a little bit dreary. Then Autrijus Tang showed up. Maybe we should call him "Ace" Tang. He basically said, "Look, we'll never get this done unless we optimize for fun." So fun is exactly what the Pugs project is optimized for. Mind you, Autrijus's idea of fun is to learn Haskell and then write a prototype of Perl 6 in it."

Comments (none posted)

The Perl 6 Summary

The September 25, 2005 edition of The Perl 6 Summary is available with the latest Perl 6 development news.

Comments (none posted)

PHP

PHP Weekly Summary for August 1, 2005

The PHP Weekly Summary for August 1, 2005 is out. Topics include: PHP-GTK corner, PHP 5.1 RC 1 alert, PHP-GTK 2 back on track, web services vs allow_url_fopen, internals wiki? and NetWare team to come on board.

Comments (none posted)

PHP Weekly Summary for August 8, 2005

The PHP Weekly Summary for August 8, 2005 is out. Topics include: libxml2 errors, PHP-GTK corner, Property overloading RFC, libxml2 errors, moving extensions to PECL, International Open Source Database Conference, CVS vs SVN, streams, URI handling and XML, allow_url_fopen and SOAP, and More namespace stuff.

Comments (none posted)

PHP Weekly Summary for August 15, 2005

The PHP Weekly Summary for August 15, 2005 is out. Topics include: Property overloading [continued], is_a and instanceof, upgrading to PHP 5.1 and Apache 2.2, PHP 5.1 branched, internal class static properties, memory and multiple exceptions, Unicode support design document, PHP 6.0 wishlist, Mostly Unicode and Whatever happened to gcov?

Comments (none posted)

Ruby

Ruby Weekly News

The October 2nd, 2005 edition of the Ruby Weekly News looks at the latest discussions from the ruby-talk mailing list.

Comments (none posted)

Tcl/Tk

Dr. Dobb's Tcl-URL!

The October 3, 2005 edition of Dr. Dobb's Tcl-URL! is out with the weekly collection of Tcl/Tk articles.

Full Story (comments: none)

Version Control

Mercurial loses a developer

Bryan O'Sullivan, a former developer of the Mercurial source code management system (covered here a few weeks ago) has announced that he will not be contributing to the project for a while. It seems that he was contacted by BitMover, the company behind BitKeeper. "However, Larry [McVoy] conveyed his very legitimate worry that a fast, stable open source project such as Mercurial poses a threat to his business, and that he considered it 'unacceptable' that an employee of a customer should work on a free project that he sees as competing. To avoid any possible perception of conflict, I have volunteered to Larry that as long as I continue to use the commercial version of BitKeeper, I will not contribute to the development of Mercurial." Click below for the full message.

Full Story (comments: 51)

Page editor: Forrest Cook
Next page: Linux in the news>>

Copyright © 2005, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds