Linux.com

Feature: Desktop Software

Finally, it's time for Wine

By Steven J. Vaughan-Nichols on June 12, 2008 (7:00:00 PM)

Share    Print    Comments   

Fifteen years in the making, everyone's favorite software to run Windows programs on Linux and Unix, Wine, is almost ready for its 1.0 release.

If all goes well, Alexandre Julliard, Wine's lead developer, says that Wine 1.0 should appear on June 20, two weeks after the program's fifteenth birthday. While at this point there are about 1,300 Windows applications that will install and run on Wine to some degree, only four sets of Windows applications -- Photoshop CS2, PowerPoint Viewer 97 and 2003, Word Viewer 97 and 2003, and Excel Viewer 97 and 2003 -- are considered critical for the 1.0 release.

Wine, largely based on volunteer efforts, has always lacked the resources for comprehensive quality and assurance testing. This problem is even bigger than it appears since there are so many different Windows environments, Windows applications, and Linux distributions. Wine has spent so many years in testing in large part because it must replace poorly documented Windows application program interfaces (API), which vary wildly from one release of Windows to another.

As Julliard explains, "There are several reasons [it has taken Wine so long to get to this point]: the Windows API is huge, not well documented, and full of tricky behaviors and side effects that applications depend on. It's also a moving target, as Microsoft keeps adding new features and pushing developers to adopt them (not always successfully, fortunately for us). Also, finding what goes wrong with an application is hard, because we don't have access to the application source code so we can't easily see what confuses it."

In addition, Julliard says, "There are a huge number of Windows applications out there, and while most people only need one or two, they all need a different one or two. So for a credible 1.0 we need to support a broad range of applications, which means we can't take any shortcuts in our implementation, since any shortcut is bound to break some application somewhere."

Jeremy White is CEO of Wine's commercial sibling, CodeWeavers, creators of Crossover Linux and Mac, programs that make it easy to use Wine on Linux and Mac OS X. White says, "I think people don't realize just how very hard Wine is. We're completely recreating Windows from the ground up. Microsoft, with their tens of thousands of employees, has a hard time shipping a new release of Windows that is backwards compatible *cough* Vista *cough*. So imagine then, instead, a scrappy band of volunteers replicating that work with a fraction of the people."

Despite these handicaps, over the years Wine has made it possible for Linux users to run popular Windows applications on their PCs. For instance, the core Microsoft Office 97, XP, and 2003 applications and Internet Explorer 6 have long worked without a hitch on Linux.

As Wine has matured, its reach has extended beyond ordinary office applications to games as well. For example, the popular World of Warcraft and Guild Wars online games now work well with Wine.

It wasn't easy. For the first five years of Wine's development it was pretty much a completely volunteer operation. The core developers decided to tackle bringing Windows programs to Linux because, Julliard says, "It was in the early days of Linux, and among the early adopters it was clear that this new system had a lot of promise, but of course it didn't have any end user applications, while Windows had lots. So it was a fairly obvious question: how can we use all these applications?

"The original crew was Bob Amstadt, Peter MacDonald, Eric Youngdale, and myself," Julliard says. We put together a prototype to run a 'hello world' Windows app, and this showed that the concept was viable. Then we moved on to Solitaire and then to bigger things.... Bob Amstadt was the maintainer for the first year of the project, but then didn't have time for it anymore, so I took over." Today, Julliard is the last of the core group of programmers working on Wine, but "we do have some developers that have been around for more than 10 years now."

Wine was started before Windows 95 appeared, so the first target for Wine's developers was the Windows 3.1 16-bit API. Wine's first big success, according to Julliard, was "when we got Microsoft Office to run, about four years into the project (it was the 16-bit version of Office at the time), that was the first proof that our goals were reachable. Of course then 16-bit apps quickly got replaced by 32-bit ones, and that set us back a few years as we had to switch our core design to 32 bits."

Starting in 1999, Wine started to gain traction. Julliard and White both say that Corel Corp.'s heavy investment in Wine in 1999 through 2000 was a major step forward for the open source project. "Another milestone," Julliard says, "was the choice by Corel to use Wine to port its application suite [WordPerfect Office] to Linux; while it didn't succeed commercially, it was a huge step for the visibility and credibility of Wine." Today, WordPerfect for Linux only lingers on as abandonware.

White and other Wine supporters founded CodeWeavers in 1999 as a way both to make a living from Wine and to further Wine's development. After that, Wine began to slowly pick up steam. Linspire, the desktop Linux distributors then known as Lindows, started sponsoring Wine's work on Microsoft Office in 2002 and started sponsoring an annual Wine developer conference.

Unfortunately, Wine then ran into what eventually turned into a fork between the open source Wine project and what became a semi-proprietary Windows on Linux program: Cedega. The proprietary company Transgaming took Wine's DirectX code and transformed it, via the WineX open source project, into the proprietary DirectX software Cedega. At the time, this was possible because Wine was under the X11 or MIT open source license. Wine is now under the Lesser GPL, which makes it impossible for Wine to be forked into a proprietary program.

According to White in a 2006 NewsForge interview, this forking caused Wine's development to slow down for years. "Historically, the main interest for volunteer Wine developers was games; that was the primary focus for most of Wine's early years (~1993-2000). When Transgaming started in 2001, they promised that they would release their DirectX improvements back to Wine. That cast a chill over games in Wine -- why work on DirectX if all these improvements would 'soon' be coming back? Of course, no meaningful improvements have ever come back, which had the effect of creating a huge hole in what had been Wine's very best facility." By 2007, White says, "The Wine community had recovered from the hole created by Transgaming."

The next big step forward came in 2005 when Apple introduced moved the Mac architecture to the Intel processor. This opened up a new possible market for Wine, and CodeWeavers started to invest in porting Wine to Mac OS X.

Wine's biggest kick in the pants may have come in 2006 when Google got involved. White says, "This is actually a remarkable story of how much impact one person can have, because the honest truth is that for all that it's cool to say that Google is involved, what's really helped is that Dan Kegel [the WINE release manager], who happens to work at Google, is involved."

Google's first contribution was paying for CodeWeavers to bring over Picasa, its popular free photography program, to Linux. Google is also funding CodeWeavers' work on getting Wine to support of Adobe Photoshop CS and CS2. Kegel says in a recent Google Open Source blog posting, "Photoshop is one of those applications that desktop Linux users are constantly clamoring for, and we're happy to say they work pretty well now."

White would like to see Windows applications work even better with Linux. Still, White says, "I think the key message people should get is that Wine 1.0 is not the Wine from three years ago, or even two years ago. It's pretty remarkable in what it can do -- people should give it a try.

Looking ahead, Julliard sees a lot more work ahead for the Wine crew. "There are a lot of things we want to support: USB devices, 64-bit apps, .Net apps, user interface themes, a Mac OS native interface, etc. Then of course all the new functions that Microsoft will keep coming up with, and all the remaining incompatibilities in the ones we have implemented already. There's plenty to keep us busy for the next 15 years!"

Steven J. Vaughan-Nichols has been writing about technology and the business of technology since CP/M-80 was the operating system of choice for PCs and 2BSD Unix was what the cool kids used on their computers.

Share    Print    Comments   

Comments

on Finally, it's time for Wine

Note: Comments are owned by the poster. We are not responsible for their content.

Finally, it's time for Wine

Posted by: big bear on June 12, 2008 08:02 PM
I have never been a fan of the motivation for wine. While the work the people involved in the wine project have done is tremendous, it still perpetuates the cycle of software developers writing apps for Windows, only now they can have the excuse of " Oh, well because of wine, it'll get used in Linux also."

One of the more difficult challenges, yet perhaps more worthwhile ones is finding a neutral ground for application development. Writing programs that are OS independent. This would level the playing field between OS's incredibly and still allow software developers to market and sell programs that are of high quality and for use regardless of the OS.

There are a large number of the Linux using community which would pay for a boxed cd at Walmart or CompUSA or wherever for a program that is well known, works reliably and is usable without a glitch on the OS they are using.

In terms of being able to use older versions of applications that no one is going to want to recode for multi-OS compatibility, there is a usefulness in wine.

The true focus should always be on setting the stage for new development to run natively in Linux, not keep encouraging use another company's leftovers.

Big Bear

#

I agree, Wine is not a good solution

Posted by: Anonymous [ip: 82.192.250.149] on June 12, 2008 08:50 PM
Wine is just one more reason for developers to ignore the Linux platform.

#

Re: I agree, Wine is not a good solution

Posted by: Mohammad Ebrahim Mohammadi Panah on June 13, 2008 09:06 AM
You should take a look at http://www.winehq.org/site/why to better understand why WINE is so important.

Thanks all WINE developers for about 15 year of hard work :-)

#

Re: Finally, it's time for Wine

Posted by: Anonymous [ip: 209.193.43.135] on June 13, 2008 03:48 AM
Wine is not about OS adoption!!! It's about being able to run those win apps because you have too, or because there's no linux equivalent of a win app. Here are some examples.

I got orange box for christmas. I can purchase windoze or use wine. Need wine
I can pirate ms office and use it in wine, or i can use OOo. Don't need wine
OOo doesn't have all the features that ms office 2007 and i need those features for my homework/office work/business (this situation happens a lot). Need wine (office 2007 does run in wine)

There's also times wine can make running programs easier. Here's an example.

I have quake 2, quake 3, and quake 4 all have linux installers, but it's faster and easier to just install with the win installer and run the game through wine. In this case i ran quake 2 in wine but quake 3 and 4 through the linux installers. This situation doesn't matter what you use.

In the meantime ms devs will also perpetuate the cycle of windows apps.
In the meantime i am really happy about kde4, kde4 is big also since it's programs use a single code base for osx, win, and lin.

There you have it big fud.

#

Re: Finally, it's time for Wine

Posted by: Anonymous [ip: 82.243.26.181] on June 13, 2008 09:32 AM
> it still perpetuates the cycle of software developers writing apps for Windows, only now they can have the excuse of
> " Oh, well because of wine, it'll get used in Linux also."

Wine really does not enter into the picture of that cycle. That cycle is more like:
* I'll switch to Linux when it supports my favorite Windows-only application/game.
* I'll keep coding using the Microsoft-recommended APIs (MFc, .Net, etc) until Linux has a significant market share on the desktop (read, something >>10%).

Don't think that companies like Adobe could do a rewrite of Photoshop for Linux just like that. Developping Photoshop took years. A very optimistic estimation says it would cost millions: 50 developers for 18 months at a minimum of $30000/year average cost per developer is over $2 million already. And what do you do during that time? Release no new Windows version while your competition is moving forward? But if you continue working on the Windows version, then your Linux version is outdated even before it's released. Besides such a port would lose compatibility with all the Photoshop plugins because these do use the Windows APIs. And what good is Photoshop to professionals without its plugins.

People keep grossly underestimating the work and cost of porting a Windows application to Linux without Wine. It just is not going to happen without a very very compelling reason to do it, that is, a two-digit Linux market share. And we will never get the users on board without support for the existing Windows applications. *This* is the cycle you need to break. And the only way to do that is with Wine.

#

Re(1): Finally, it's time for Wine

Posted by: big bear on June 13, 2008 01:40 PM
First of all, I did say the back catalog of software was indeed where wine was more useful.
I also did say, that it was a big job in getting software development to turn to more OS independent base.
No one has "grossly underestimated the work and cost" of porting. But if those same people who complain of vendor lock in and unfair playing fields ever want to have any hope of seeing those rectified, then a move to future apps being written on a neutral base should start to happen.

Your example of a coder thinking of switching to include Linux when it reaches a certain market share is not 100% realistic either, developers want their apps available to as many people can access them, limiting them to only one OS has been a crux in the software developers area for years. If a truly OS neutral base were brought forth, it would open ALL markets to software developers, it's in their best interest.

The first steps to break a cycle must begin somewhere, with someone, either a small developer wanting to buck the system, using all the creativity they have to break out something new, or, a huge company like an IBM or SUN. With the deep pockets to fund such an "outside" venture. Perhaps even a Google.

The first blocks to be removed from the "open" market in software come not in the form of existing apps, but existing thinking.

Big Bear

#

Re(1): Finally, it's time for Wine

Posted by: Anonymous [ip: 141.123.223.100] on June 13, 2008 04:09 PM
Don't think that companies like Adobe could do a rewrite of Photoshop for Linux just like that.


Too right. They've barely ported it over from the Mac to Windows. Sure, it runs, but have you ever had a look under the hood of that beast? Kludge on top of kludge on top of kludge.

#

Re: Finally, it's time for Wine

Posted by: Anonymous [ip: 141.123.223.100] on June 13, 2008 04:07 PM
it still perpetuates the cycle of software developers writing apps for Windows, only now they can have the excuse of " Oh, well because of wine, it'll get used in Linux also."


No they don't. They say "It works on Windows, I don't care if it works on the remaining .0006% of the population of computers."

#

Re: Finally, it's time for Wine

Posted by: Anonymous [ip: 208.47.135.227] on June 13, 2008 04:28 PM
(a little to add)
But then again there are those that only want open source code so that they can run it on other platforms or tweak it. I buy software for Linux but many of the apps sold need specific library versions luckily in Linux you can have older libs side-by-side with newer libs.
Java based Applications are supposedly middle ground however I was never able to get the latest java binaries for a Itanium or Strong Arm processors.
Open Source is the way to go but maybe there is a better way to fund it.

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 129.42.208.182] on June 13, 2008 08:43 AM
I like Linux games when they come out and usually I buy the Linux version over the Windows version. But for the Most part developers will not support Linux until there is a big fall out in the Windows platform... I was hoping Vista was going to do that, just seem many people choose that polished turd, instead of trying to learn something new.

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 122.167.2.17] on June 13, 2008 11:00 AM
Superb article. Good to hear something of what goes into making Wine work so well. Many now know that Windows consists of very ugly code, difficult to replicate feature for feature let alone bug for bug. Well done, Wine team, we all appreciate it.

Like Anonymous at 204.131.165.130, I too tend to use Wine only as a last resort when no Linux app can be found that does the job. Each time, it has been a pleasant surprise to find a relatively unknown Windows app just install and run and work without trouble. May the Wine team get more of the testing help they need.

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 69.69.28.85] on June 13, 2008 01:26 PM
Tell me about it. Why do developers conitnue to ignore the Linux Platform? I dont get it.

JT
http://www.FIreme.To/udi

#

Re: Why developers ignore linux

Posted by: Anonymous [ip: 64.6.49.234] on June 13, 2008 02:37 PM
its called employers who have been brainsucked into windows as the only solution for so long that they can't think in any other direction. Then again, I am well acquainted with more than one computer person who has their heads so stuck in the Microsoft sand that they can hardly believe that there is another option in existence -- Yes, I am talking about the year 2008.

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 217.42.249.154] on June 13, 2008 02:39 PM

Finally, it's time for Wine

Posted by: Anonymous [ip: 141.123.223.100] on June 13, 2008 04:12 PM
*cough* Vista *cough*


Are you suggesting that Vista is less backwards compatible than Wine? Please. Vista's run every single app I've throw at it in the last year or so, and I do a lot of testing for my company. Sure, we're going to hear from some dingus who's using an API that was deprecated years ago complain that it was finally removed in Vista and their tiny little shareware app doesn't work anymore. Boo fucking hoo. Even the crappy software our in house developers write runs on Vista, there's no reason anyone else's shouldn't. It sure runs a hell of a lot more software than Wine ever has. Woo hoo! We can run 4 year old software on Linux now! YAAY! Everybody celebrate!

#

Re: Finally, it's time for Wine

Posted by: Anonymous [ip: 208.47.135.227] on June 13, 2008 04:51 PM
Yay I can be stuck on a dead end architecture like the x86 wahoo with bloat ware and pirated software and praise the almighty MS as they stamp out any vendors.

#

Re: Finally, it's time for Wine

Posted by: Anonymous [ip: 62.56.92.125] on June 15, 2008 07:15 PM
What a bizarre comment. Of course Linux is going to struggle to run apps any better than Windows. Vista however sucks very badly for something that was five years in the making and supposed to be the best Windows ever. It isn't and won't be for at least another year. That's nothing short of pathetic from the world's largest and richest software corporation. WINE 1.0 is a real achievement against some very difficult odds; Vista is a disgrace.

#

Efficiency

Posted by: Anonymous [ip: 130.132.248.132] on June 13, 2008 04:49 PM
Out of curiosity, I'd like to hear from someone who knows as to how efficient Wine is. Given a certain computer / hardware, how does running, say, CS2 on Linux through Wine compare to running CS2 on Windows? I would assume slower on Linux for a variety of reasons, but the real question is by how much?

#

Re: Efficiency

Posted by: Anonymous [ip: 64.241.37.140] on June 13, 2008 06:07 PM
I have a few apps that I use under Wine RC2 (I think) - they are VERY IO intensive, but do not generate that much of a load on the CPU. My experience has been that Wine's IO under Linux is faster than Vista on the same machine. For the few gaming tests I've done network latency is lower than in Vista on the same machine. Unfortunately, my graphics card is far better supported on Vista than on Linux (Radeon x1650pro) so I don't put much faith in the drop in frame-rate.

Hope that helps!

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 192.85.47.2] on June 13, 2008 07:27 PM
Yes, but will it run CygWin? :)

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 216.117.134.180] on June 14, 2008 12:38 AM
Does anyone else think using a software numbering system that starts at less than 1 turns off a lot of potential users of a piece of software? I've leaned to just jump into it, but I recall weighing my concerns with a software that was version .34 versus something like Windows 2000. The .34 just sounds incomplete, like it might fall apart.

<a href=http://downloaddvdipod.com/?cat=220>Drama movies</a>
http://downloaddvdipod.com/?cat=220

#

Re: Finally, it's time for Wine

Posted by: Anonymous [ip: 218.103.196.98] on June 15, 2008 12:30 PM
I think 0.x versions are just a bit more humble, and more realistic - and anyway, it's just a convention, kind of like alpha, beta, RC, FCS, ... A lot of very stable and useful OSS is still at 0.3.4 or whatever only because the developers think it isn't good /enough/ yet. Releasing v1.0 is kind of like saying "here is something that finally meets the goals we set out to achieve, that we will stand by."

What gets on my nerves is the random version names put out by MS. So we had Windows 3.0, 3.1, 3.11 - 95, 98, ME ? And in parallel with that NT3.51, NT4.0 - then 2000, XP, Vista ? And then you get "updates", like 98SE and XPSP2, that include bigger changes than some of the new "versions". When version control is driven by Marketing, that's when I start to worry if the wheels are gonna fall off.

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 75.61.133.78] on June 14, 2008 06:16 AM
I am in the middle of editing a textbook with FrameMaker running under Wine. Wine has been a godsend. It runs FrameMaker faster than Vista, and I have access to all the Linux tools that I need. Sure, in an ideal world, Adobe would either open-source FrameMaker or at least keep it going rather than outsourcing it for "sustaining engineering". But they don't, and miraculously enough, Wine runs it and will keep doing so long after Adobe abandons it entirely (as they have already on the Mac).

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 24.15.253.173] on June 16, 2008 01:42 AM
I would like everyone to point and laugh at the person running vista, and supporting such a crap OS.

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 72.187.244.205] on June 16, 2008 03:23 AM
I dont know why Wine is moving to 1.0 at this time, this seems deceptive since wine doesnt run a large number of windows programs. This includes, to name a few, acrobat, and many others. its rare i get anything to run on it. It seems over 50% of the programs I have tried dont run at all. Firefox crashes constantly. move to 1.0 when you finally get everything working right.

#

well done developers!

Posted by: Anonymous [ip: 91.143.191.254] on June 16, 2008 02:59 PM
i'm glad Google put in support for Wine, and really thankful for all the time and effort those developers have had to put in to make this project happen.

Ok, you could go out and use a Windows machine or Mac to run your copy of Photoshop; but why if all you want to do is edit a couple of images and then switch back to your development project; not to mention cross-browser testing (where a copy of IE6 running in Linux really helps out).

I think it's great what they're doing and am glad to see the project moving so swiftly, ok there are still a few holes but it's getting patched and moving on.

Well done to all involved and enjoy your 1.0 release party, you've earned it!


John

http://www.red91.com

#

Re: Finally, it's time for Wine

Posted by: Anonymous [ip: 12.104.141.112] on June 17, 2008 01:41 AM
@67.85.17.190: Desktop virtualization won't let you run a Windows app without buying Windows first. Some people don't want to give Microsoft money just to run someone else's code.

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 196.15.236.226] on June 17, 2008 11:20 AM
It is a constant facination to see how different people take good news. I use linux constantly and only occasionally find myself in the drugery of a reboot into XP. Infact, I was ashamed as an IT proffessional to have stare at an XP machine at a client and not know where to check for certain settings. So I am happy that wine has grown so much and will continue to make a great impact on ease of use and eventual keep me from ever needing to launch windoze of any kind.

But to "big bear" you obviously dont understand what the grand effect of having a port-middleware app like WINE is going to have. Beyond the boundaries of emulation and virtulisation lies the mythical place we all dream of, buy a software package (game, office suite, etc) and JUST install and run seamlessly. That's what end users want! They dont want to have the hassle of "Please ensure that you have a compatible operating System Loaded on you PC" (this is a real sign at a computer ship). Wine brings us closer to the point where OS compatibility standards will be induced into the industry. I dont really care what OS people run, I love Linux, but some people like their Mac OS X, wine allows us to be individuals and still interoperate...will it lead to mass adoption of Linux, maybe not, but it will move us to the next phase of commonality, A universal programming standard.

And to the lad running Visera, the incompatibilities are rampant, and just because you're a "tester" doesnt mean you have or are asked to test every version of of every title available...and learn not to curse, it shows a lack of brain power and is obviously a sign that you should challenge yourself more often, than simply accept what M$ lays before you.

Tsue Desu
OS : SLED 10.1 . XP for the odd game and work mandated activities.

#

Re: Finally, it's time for Wine

Posted by: big bear on June 19, 2008 02:25 PM
So you are suggesting that wine is the "common platform" for future software? Hardly. It just keeps developers on the MS API.

It's a crutch for users to get some usability from software they already paid for and want to keep getting use of while moving to a different OS base.

Which is fine in that particular instance.

Wine does not lead to any "universal programming base" either. It is an implementation of an existing API. That is neither neutral or "common" in terms of all inclusive.

What you just describe is an acceptance of dominance and trying to make the best out of what is offered,

Not acceptable. All software could and should be OS neutral. Needing no intermediary software in order to make it usable.

Big Bear

I did say, wine has it's place. As that "crutch for existing software. But, it should not be looked to as the "answer" to broader software development.

#

Finally, it's time for Wine

Posted by: Anonymous [ip: 68.231.124.129] on June 28, 2008 09:17 AM
When thinking about wine why not have a party and order from:
http://www.boutiqueliquors.com/Champagne.html

Premium Liquors, Spirits,Fine Wines, and Champagne from around the world delivered to your home.

#

This story has been archived. Comments can no longer be posted.



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya