Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Windows Operating Systems Software Wine Linux

Jeremy White's Wine Answers 208

This almost turned into a "State of the Wine Project" discussion, but that's where your highest-moderated questions led, and Jeremy responded with his usual wit, wisdom, and candor.
1) Moving Target - by andrew_j_w

Do you ever get disheartened when Microsoft announces a new API, as that means you've suddenly got a whole load of new code to replicate? DirectX would seem to be a prime example of this. How do you see .Net/Mono in relation to Wine? Do you think they will ever become the prime method of running Windows applications under *nix?


Jeremy:

We really don't care what APIs Microsoft publishes - the only thing that matters to us is what APIs are used by the applications we want to support. In fact, Wine only implements about half of the Windows APIs. Now some (like my wife) might argue that's because we're just lazy, but the truth is that over half of the Windows APIs have never been used!

So we certainly do have a moving target, but it's a target that moves at a relatively slow pace. We'll begin to feel some serious pain when applications are released as 'Longhorn only', particularly if those applications are dependent on some form of DRM or on some technology that is locked up by patents.

But luckily for us ISVs move much more slowly than Microsoft, so we should have plenty of time to keep up.

In fact, we get more pain from Linux distributions, who work at break neck speed to break Wine.

2) Educational Software - by north.coaster

It seems like most of the effort so far has been to get office productivity software (ie. Microsoft Office) to work on Linux. However, there is a market for low cost home computers that Linix could help to fill if the educational software that kids use (such as the Reader Rabbit series) could run on Linux. Why is this potential market being ignored?

Jeremy:

Yes! I would dearly love to support schools and the use of Linux. Especially when you consider LTSP, Linux is just such a great fit for the educational environment.

Unfortunately, the reality of Wine and economics makes this hard. See, we do our best when we can focus in on a small number of applications (e.g. Microsoft Office) for which a lot of people are willing and able to pay money. Schools, unfortunately, have the reverse situation - they need support for tons and tons of applications, and they have no money .

Now the very first thing I'm going to do when I win the lottery is go buy a stack of kids games and pay some Wine hackers to get them to work (seriously; you can ask my co workers, they're sick of me talking about this pet project). Unfortunately, the last lottery ticket I bought was a bust.

But I am really encouraged in a variety of ways. First, we always hope that our paying customers will help us to do enough 'collateral damage' that more than just the applications we focus on will work; that seems to be really happening now. Second, there is a real growth in the games/DirectX support in the Wine project. There is a great group of games hackers on the Wine project - volunteers all - and their work is really helping Wine to run a lot of games (the fact that Half-Life now works in CrossOver has somehow made the proportion of QA time to development time go up around here *grin*).

Finally, we are starting to get some support for educational software; we have a very meaningful pledge for Acclerated Reader on our compatibility center (http://c4.codeweavers.com). We hope to get to that soon, and we're told that will help unblock a lot of educational organizations.

3) Isn't this effort endangered by software patents? - by rben

If the EU really does pass the software patent law under consideration and the U.S. adopts that treaty that Bush is pushing, won't MS just be able to sue any compatibility products out of business?


Jeremy:

Yes, I think that all xGPL software is seriously threatened by patents.

Wine, I think, is safer than a project like Mono, in large part because Microsoft has only really started an aggressive patent process recently. I am not aware of any patent that the Wine project infringes upon, and no such infringement has been brought to our attention in the 10 years of the projects history.

That doesn't mean that the patent laws cannot be used as a club against Free Software projects, particulary when you realize that volunteer projects and smaller companies like CodeWeavers generally cannot afford to even fight for a dismissal of a ridiculous claim.

With that said, I think that there is a large number of very determined people in our community, myself included, that will fight strenously to see that any such abuse of the patent system will be challenged.

Further, Microsoft making the choice to use patents as an offensive weapon will be a clear sign that they are becoming desperate. It is fairly rare for a large company to use patents offensively against a smaller entity; it is generally frowned upon by the courts, and would also play very poorly in PR circles.

So, yes, it's a worry, but there will be reasons to rejoice should Microsoft try to wield that hammer.

4) LGPL Licensing - by Stealth Dave

How has the switch to LGPL affected contributions to the project, both positively and negatively? When the switch happened, there was a lot of noise from groups like Transgaming who needed to license proprietary technology from third parties, and the formation of the ReWind project. Has there been a noticable effect on contributions to WINE from outside groups as result of the licensing change?


Jeremy:

Okay, I'm biased on this one. I am a strong advocate of the LGPL.

However, I think the effect has been extremely positive. For example, here is the historic count of lines of code added to Wine each year:

2003: +247,471
2002: +159,393
2001: +104,641
2000: +119,796
1999: +164,910
1998: +132,235
1997: +48,566
1996: +56,748
1995: +19,345
1994: +42,746
1993: +36,487

1998/1999 was when Corel's involvement in Wine was at its highest (and Wine owes Corel a debt of gratitude; they were great to Wine).

2003 was the first full year of the LGPL. You do the math.

Further, prior to the LGPL split, game development in the public Wine tree was pretty well dead. Everyone was waiting for Transgaming to return their changes, and nothing was happening.

After the split, it became clear that those changes weren't coming back to the public tree. This led to a number of volunteers taking up the challenge and improving Wine's DirectX and other game support. This has led to a resurgance in Wine's activity on games. Historically, Wine has always been focused on games, so I am personally gratified to see it return to those roots, since it's not an effort we've been able to help on much (because folks don't buy large corporate support contracts for games :-/).

Additionally, a number of people seem to prefer the LGPL; we seemed to get an influx of new blood to the project as a result of the change. Further, our cooperation with other xGPL projects like ReactOS improved, and so we got some further energy from there as well.

5) MS Security Updates Apply? - by PSaltyDS

I can see that security holes that come from Windows OS code shouldn't effect the CrossOver Office Win98-like implementation of the APIs. Security holes that come from the MS application's code may or may not be present in that environment, but how do I know? What types of MS security updates apply to my CrossOver environment, and which don't? Are any of the security houses (like e-Eye) testing for vulnerabilities in the Linux/CrossOver (or Linux/WINE) space?


Jeremy:

Actually, much to our great surprise, the Windows Update service runs fully and completely in CrossOver. Further, we go to great pains to make sure that Office service packs apply cleanly (and we mostly succeed :-/).

We also go to all kinds of interesting lengths to avoid problems with viruses and worms. For example, we have a hack in our flavor of Wine*, in the CreateProcess call (the code to start an executable) that basically checks to see if the parent process is outlook.exe, and if it is, we crash and burn, preventing many of the worms and such from running. We also have customers that have set up chroot environments, and since Wine runs in user space, that is a theoretically perfectly secure environment.

Finally, one advantage of Wine/CrossOver, is that any infection is cleaned quite quickly with rm -rf ~/.cxoffice (and easy backup/restore methods exist).

But, for all of that, I don't want to dismiss this issue. I think anyone using Outlook (anywhere, not just CrossOver) should use a strong server side scanning product. Further, I think that the use of IE in Wine should be constrained to only those cases where it absolutely has to be used. The real truth is that when you're running Linux, you're inevitably going to be less paranoid about updating and securing any Windows environment, and that sort of neglect can lead to trouble.
* Changes such as this hack to Wine are internally referred to as 'Proprietary advantages'. We are seeking patents on such methods of gaining a market advantage (grin).
6) Viral Licensing Question - by KlomDark

Aren't you worried that you'll corrupt Linux with the viral Windows licensing scheme?


Jeremy:

Now you've learned my dirty secret, and I'll have to kill you all. I've actually been hired by Microsoft to poison this little communist enclave you have going here. You'll note that since our introduction of CrossOver Office, OpenOffice has withered and died on the vine, clear proof that we do great harm to open source projects. The dissolution of Mozilla into Firefox was a clear gesture of despair on their part over our support for IE.

Further, our use of 'proprietary advantages' to create lock in has clearly emboldened companies such as Novell to preserve and extend their proprietary lock ins on products such as the Ximian Connector...

Bwahahahaha. You're all doomed!

[grin]

7) Source-level Compatibility? - by cgreuter

I hear a lot of talk about binary compatibility with Windows, but not so much about source-code-level compatibility. What sort of efforts, if any, are being made toward letting people trivially recompile existing Windows programs to run natively under Linux/X? Have any commercial software vendors considered taking this approach?


Jeremy:

My original passion for Wine had nothing to do with running existing code. I've always loved the source porting angle much better than binary compatibility (hence my ill fated affair with TWIN aka Twine).

The good news, is that after seeing the error of my ways, we put a lot of energy into making source compatibility work extremely well. Francois did a lot of work on this, and Dimi and a few others have picked it up and really made this process sing.

I understand that the Windows build of Abiword now compiles and runs cleanly in Wine. I know that simple applications, like all of the Petzold examples, build and run in Winelib.

What's interesting (to me, anyways, the rest of you can yawn and skip to the next question) is that I've come to realize that source compatibility really isn't that important. The difference to the end user between a gcc compiled Winelib app and a Visual C++ build Windows app running with Wine is...nothing, except maybe the Visi C compiler builds slightly better, faster code.

Corel realized this; they spent an enormous amount of energy working towards a source port, and eventually just shipped a binary solution. It wasn't popular, but it was wise, imho.

However, what Winelib does allow, that *is* wicked cool, is that you can port a Windows app to a non x86 platform quite easily. I don't really know of anyone that really values this (i.e. is willing to pay big bucks for it), but it's cool, nonetheless.

8) Microsoft Source? - by NinjaPablo

If Microsoft were to release more source code (legally, not the leaked source from a while back), or if Microsoft approached the Wine team and offered access to portions of the Windows source code, would you accept it? What if it involved an NDA or adding non-GPL portions to Wine?


Jeremy:

Well, I would refuse any kind of legal agreement that would jeapordize the ability of Wine to move forward openly and free of any MS license entanglements.

But that doesn't mean we couldn't use further help; there are certainly large areas of the Windows API that we struggle to understand, and we could certainly use some help. I, for one, would like to have seen the consent decree put in place an oversight board; while Microsoft has opened their documentation considerably since that decree, we have no one to turn to to ask for further clarifications and further information.

9) Tax Software? - by mengel

Every year I end up having to boot MSWindows in order to run Tax software. It's pretty much the only time I boot MSWindows anymore, and I end up doing a lot of work to keep that environment around and running just for that one, annual, task. And it's not just me, we have had several [slashdot.org] articles [slashdot.org] here at Slashdot discussing this topic at great length.

Are you guys working on a deal with any of the tax software publishers to ensure their software runs under Wine each year?

If not, would you consider it?


Jeremy:

Well, we're working very hard to encourage ISVs of all kinds to work with us to bring their products to the Linux market.

And we've had some very positive responses, but I can't really tell you much more than that just yet. However, I will tell you that we are not working with any of the Tax software providers.

Candidly, that's a pretty tricky one. Because each version of Tax Software is so ephmeral, and because we get such a short time window to test and work on it, they're really hard to nail. Further, it's not clear to me that we'd really make enough money to begin to cover the costs involved. If we could, I'd do it in a heartbeat.

Feel free to assemble a possee of interested folks at http://c4.codeweavers.com; we will absolutely listen to customer demand.

10) Project David - by mfh

We've heard that Project David could be a CrossOver Office rip-off. To what extent is David a fraud and what are your options to combat those who would misrepresent themselves using your products for VC or even illegal/infringing sales revenue?


Jeremy:

Well, I don't know anything more about Project David than anyone else who reads Slashdot, but imitation is the sincerest form of flattery, I always say. It's clear from Mike McCormack's research that it uses a version of Wine that we've released. Note that that's not necessarily fraud or a rip off of any kind - our Wine is LGPL, and it allows for just that sort of thing.

My opinion is much like others on Slashdot - they're clearly in the early stages, and don't really have a particularly impressive set of web pages. Further, they haven't really described their technology in any meaningful way.

However, this is one of the great things about the LGPL. It allows for us to have competitors spring up and try to build on our work. This is - heaven forbid - good for customers. We have to work harder and better to make sure that we continue to give our customers what they crave.

The only thing that bothers me when folks like the Project David guys come along is when they don't honor the work of those that have gone before.

I am only here today because I am able to use the hard work of many, many people who have generously given their work to us all to use. I think Alexandre has successfully eradicated the last line of my code in Wine (and he stubbornly rejects my patches, too), so nothing is Wine is anything I have built. And yet my entire livelihood and that of my family is built on Wine.

I am deeply grateful to the people that let me sell their work - even though I have paid them nothing - and the least I can do is respect and acknowledge their work.

So it bugs me when people like Project David (and others like it) come along touting their wonderful Windows compatibility without giving any props to the people that have worked so hard on Wine.

Ain't illegal, ain't fraud, but it just isn't cool in my book.

[/soapbox]

At any rate, I think that's it. Thanks for asking!

Cheers,

Jeremy
This discussion has been archived. No new comments can be posted.

Jeremy White's Wine Answers

Comments Filter:
  • Bad markup! (Score:5, Informative)

    by Otter ( 3800 ) on Monday May 17, 2004 @12:19PM (#9174160) Journal
    The "<grin" at the end of question 5 seems to be breaking a closing blockquote tag...
  • Just do them online (Score:5, Informative)

    by b0bby ( 201198 ) on Monday May 17, 2004 @12:29PM (#9174252)
    Well, I don't know about that, but I do know that I did my taxes in Firefox with TurboTax online (under Windows, admittedly) and it worked fine, so I imagine that you could do that with Firefox under Linux. I've used the online service for 5 or so years now, it works well, I get a pdf of the whole form at the end and they remember my basic information from one year to the next. No need to get a boxed cd for something you'll use for a week or so, and certainly no need to maintain a windows box for that sole purpose.
  • by Tim Macinta ( 1052 ) * <twm@alum.mit.edu> on Monday May 17, 2004 @12:31PM (#9174264) Homepage
    I have always wondered WHY there is no "open taxes" projects going. we could simply create a framework that run's say a python script thtat describs the rules and calculations of the tax form and simply print out the postscript from there...
    You mean like this [sourceforge.net]?
  • Re:Breaking WINE (Score:5, Informative)

    by Joel Carr ( 693662 ) on Monday May 17, 2004 @12:36PM (#9174312)
    Am I the only one who's getting tired of trying to play matchup with GLIBC versions?

    No you're not, and since the artical is about Wine, you may be interested in knowing that Alexandre Julliard is also fed up with it.

    On Wine Devel he posted this:
    Also, frankly, I've spent the last year chasing glibc breakages, and I don't particularly feel like spending the next year chasing kernel breakages. I was kind of hoping someone else would pick that fight, so I could go back to writing some real Wine code for a change...

    http://www.winehq.org/hypermail/wine-devel/2003/12 /0384.html [winehq.org]

    ---
  • Re:Software Patents (Score:3, Informative)

    by David McBride ( 183571 ) <david+slashdot@ d w m.me.uk> on Monday May 17, 2004 @12:44PM (#9174380) Homepage
    It's a joke!
  • Re:Software Patents (Score:5, Informative)

    by jeremy_white ( 598942 ) on Monday May 17, 2004 @12:48PM (#9174411) Homepage
    Sorry for the confusion. There was a [grin] in angle brackets after that, only that seems not to go through to HTML posts very well.
    It was all meant as a jest. I think Software Patents are an evil blight on the land.
  • by jeremy_white ( 598942 ) on Monday May 17, 2004 @12:52PM (#9174442) Homepage
    Well, that is pretty much the idea behind our compatibility center [codeweavers.com].

    And, if you donate to WineHQ [winehq.org], I'll see that that money flows through to buy apps for Wine hackers (mostly games, I want to send Lionel a tub full).

  • by Snodgrass ( 446409 ) on Monday May 17, 2004 @01:07PM (#9174597) Homepage
    For the record I did mine in Firefox on FreeBSD.

    Worked like a charm.
  • by Anonymous Coward on Monday May 17, 2004 @01:09PM (#9174616)
    There are some tip's in C4 about running itunes just mozey on over to http://www.codeweavers.com/site/compatibility/brow se/name?app_id=134

    Tom
  • by Anonymous Coward on Monday May 17, 2004 @01:17PM (#9174710)
    Dude, you're an idiot. Quick nit-picking.
  • by nizo ( 81281 ) on Monday May 17, 2004 @01:26PM (#9174785) Homepage Journal
    You could also use the online tax software (i.e. Intuit). You can do your taxes from their website, and if I recall I used mozilla under Linux just fine the last time I did them there. Luckily my credit is so horrible I am not too worried about my personal info on the web :-(
  • by nbahi15 ( 163501 ) on Monday May 17, 2004 @01:28PM (#9174794) Homepage
    You can offer a cash bounty for specific applications to be supported by Codeweavers. It is in the Compatibility section of their website. Once you have located the application you would like to have supported (e.g. iTunes, which I offer $50 for) then you make a pledge. Kinda like NPR/PBS for nerds.
  • by theCat ( 36907 ) on Monday May 17, 2004 @01:33PM (#9174851) Journal
    Been using TurboTax online from my Mac running OSX (*BSD) for years now. It's a great service and I do not even think about buying tax software.

    Taxes are one of the few times where it makes sense to run an online application. They can keep tax data and rules up to date to the last minute without issuing and distributing patches, and retain my data even if I change PCs over the years.

    Not here to pitch their product, just trying to address the question of when it makes sense to have software on your harddrive vs software on an app server. As far as it goes, one can run any software from a remote app server and this might make more sense in the future, but right now tax software is a no-brainer.
  • Re:Just curious (Score:4, Informative)

    by IamTheRealMike ( 537420 ) on Monday May 17, 2004 @02:11PM (#9175195)
    most of NTDLL, parts of the shell interface, exactly what message orderings/sequences are generated by Windows in certain circumstances, the full TEB layout, that sort of thing ...

    Those are just the undocumented/poorly documented bits. Then there's a whole ton of extra APIs for which documentation exists, but the APIs are so complex or obscure that hardly anybody understands them. This is especially true of things like the RPC runtime which not many developers use directly, and the more intricate parts of DCOM (which you need to read several books to be completely au fait with).

  • by Zak3056 ( 69287 ) on Monday May 17, 2004 @02:25PM (#9175341) Journal

    Electronic filing in particular saves the IRS tons of cash. But I prefer to pay $0.37 for a stamp than $20 to e-file.


    So don't pay $20 to e-file.

    Here [irs.gov] is a list of IRS "Free File Alliance" partners. The law requires a certain percentage of US taxpayers have free access to e-file, and this is accomplished through these vendors. All of these vendors have different criteria as to who can file for free, but if you dig around you can find one to suit your needs.

    For example, when I filed my taxes back in Feb, there was one outfit providing free e-file if your AGI was above $28,000 a year.

  • Kids games in Wine (Score:3, Informative)

    by Kludge ( 13653 ) on Monday May 17, 2004 @03:56PM (#9176399)
    I've found that the wonderful Humungous adventure games work well under wine.
    Also kutoka games also work well.
  • Re:Breaking WINE (Score:2, Informative)

    by zozie ( 165382 ) on Monday May 17, 2004 @05:28PM (#9177394)

    This problem has nothing to do with binary vs. source. In fact most applications will continue to work if you upgrade your glibc, though the other way around is trickier. Just link the app versus the lowest glibc version you want (possibly trading some new APIs).

    What we're having here are
    • fundamental (source+binary) changes such as NPTL support (introduced in RH 9)
    • source breakage -- successive glibc versions are stricter about the functions they supply when you #include .

    at least that's my experience with dosemu, it can't be very different with wine from what i read (both these two programs use a lot of OS specific features). It's not only glibc by the way, also a new gcc with a less forgiving optimizer that also removes extensions (lvalue casts, multiline string literals), flex, bison and so on.

    Not that all these changes are bad, but I understood that especially NPTL has been quite a biggie for wine.

    For one thing the Linux world tends to break backwards compatibility towards less-than-standard programs easier than Windows and DOS before that, where lots of programs use undocumented features and lots of people would complain if they stopped working. But for Linux after all the source is often available, so one can simply say "f*ck it" to those who use undocumented interfaces.

  • by Anonymous Coward on Monday May 17, 2004 @05:34PM (#9177438)
    Controlling industrial machinery in 95 or even XP? You have got to be kidding, unless of course it is a trivial bit of machinery that can't damage itself or anything/anyone else if it runs out of control. Controlling real machines with that load of excrement is legally, morally and economically highly questionable. Legally, because you will be sued when it BSODs and causes damage, morally because you are putting property and maybe lives at risk, and economically, because it will do your own business no good at all when it crashes.

    Actually I maintain software for controlling an older, million dollar piece of semiconductor equipment that runs on Windows 3.11 (very nicely, thank you very much). We're currently "upgrading" the computer to Windows 98SE (it won't run on NT because the software talks directly to the hardware). Intel and AMD are two companies that use this particular piece of equipment to manufacture microprocessors.

    Our current generation of equipment runs nicely on Windows 2000 and XP.

    Granted, in my department we use Windows for historical reasons. Other, even larger projects in our company use Solaris and Sun systems.

  • Tax software (Score:3, Informative)

    by ripcrd ( 31538 ) on Tuesday May 18, 2004 @01:33PM (#9185745)
    You might just want to use ssl encrypted web-based tax software. I used www.taxact.com and it worked pretty good. Now granted, I used Win2K on my laptop, but the current browsers running on linux should be OK. In fact I think I used Firefox for most of the tax prep work. I much prefer this to loading more software on my PC. At the end I print stuff out and I'm done.

Work is the crab grass in the lawn of life. -- Schulz

Working...