Several people have asked me to clarify my original post.
I apologize for not replying sooner; to be honest, I have been hoping that the flames would die down, and I was very reluctant to fan the flames in any way.
Further, I'm not sure if I have anything to add other than kindling. But, I don't mean to 'hide', so here goes.
First of all, let me say that my call for a change was not based on a single mysterious event. It was triggered by an event that I cannot discuss due to a confidentiality agreement. More important, it is a culmination of a number of events and disturbing trends which I can freely discuss.
We've already discussed the concern with the InstallShield related patches of Transgaming; I won't belabor that now. But doesn't it bother anyone else that Marcus spent 5 weeks redoing work that they already had? Wouldn't you rather be able to better play Monkey Island instead?
I have always felt that in order for Wine to progress, it was important that changes to Wine be returned to the Wine project. It has always been clear to me that if everyone returns the work, in the long run, everyone benefits.
So, with each and every one of my major customers over the past three years, I have had a major, knock down, drag out fight over licensing. I have always insisted that changes we make to Wine be returned to Wine. This has meant (while in a sales situation) explaining the complexities of BSD versus GPL licenses.
Wine still requires huge capital investments to make it work, and any company that is going to invest hundreds of thousands of dollars is naturally going to demand ownership of the resulting work product. It it were LGPL, it would be an easy negotiation - I'd just say "Sorry, can't do it." End of story.
I know that the naysayers will jump on this and say "Oh, but then you wouldn't have had any customers, they would have been scared away by the LGPL." To this I respond very simply: bullshit. I was there for each of these sales processes, and each customer was primarily interested in the end result, not in the nitty gritty license details.
There is an analogy I recall from when I took a physics and public policy class. If a physicist stands up and says "It's a bad idea to build chemical weapons" nobody will listen to the physicist's opinion - they just get a different physicist to do the dirty work. If, instead, she stands up and says "It won't work. The inverse poleron field conclusively prevents that." There is no more debate, and public policy moves on to protecting chickens from acid rain or something else.
So, my business is threatened, because CodeWeavers is trying to be the best physicists in town. If I, as a matter of principle, refuse to work on chemical weapons, I lose business because my customers hire different physicists who will build chemical weapons.
Okay, let me drop the analogy and come back to straightforward facts. If I believe in the LGPL, and release all of my code to WineHQ under the BSD despite that, then I am a fool. Transgaming, Lindows, name your new competitor, each of them can take the best of my work and use it in their product.
I'm sure Transgaming doesn't have any problem using any of the great new Window management code or Window messaging code we wrote. In fact, the InstallShield 6 stuff wouldn't be *possible* without that code. However, if I had it to do over again, I would not have released that code under the BSD license.
So, I think there are several fundamental problems:
1. The current license encourages forks.
We have the WineX fork; I think that Lindows is still formulating their strategy, but they have publicly stated that they like having some proprietary pieces, this certainly suggests another fork of Wine.
You can argue that the pain of maintaining a separate fork is so great, and the work of merging in the BSD code is so hard, that people will just naturally contribute their code back.
We do merges of six month drifts on a regular basis; it's just not that painful (the last one took Francois 2 days; the resulting bug fixes probably took 3 or 4 days).
If this argument held any water, then Transgaming would have just been forced to contribute the Direct3D and IS6 support back.
2. The current license discourages competitors from releasing their code.
Since I believe in the LGPL, but compete with Transgaming and Lindows, contributing my code under the current license is like giving my competitors my very best and getting nothing in return.
You know, the concept of making money on Free software is crazy enough without enabling your competitors into the mix.
And, much as Gav and I are friends, we do compete. I have been in sales situations with embedded customers where gaming expertise was required. Now, Gav has the best of what I can do, and I have little or none of what Transgaming did.
In hindsight, if I had it to do over again, I would have held out all code we had done over the past year or two. Where would Wine and Transgaming be if we had done that?
3. The current license is harmful to the growth of Wine, because it creates a murky, uncertain ground.
This is true for a lot of reasons. First, I think we all sort of kind of hope that any corporate Wine citizens will follow some sort of unwritten ethical code of conduct. That is, we'd like the corporate citizens to pitch in and help Wine to grow.
Having unwritten rules is foolish, IMO.
The current license specifies: go ahead and do anything you want - we don't care. But I think we do care (*I* care). So corporate citizens spend all their time worrying about this middle ground of perception (how much time do you think this debate is taking away from my people, and the Wine hacking they could do?)
Well, a Copyleft license provides potential corporate citiziens with written rules.
Second, it clarifies the code issues. Right now, say I wanted to work on a game. Well, gosh, just how should I do that? Should I work against the WineX tree? But if I do that, I can't really talk about it on wine-devel, and I can't really share my work with others. Ah heck, maybe Transgaming will fix my game. I'm just going to reboot over to Windows.
And if you don't think that's a serious problem, just look at the Wine project historically. Over the past five years, game related patches have overwhelmingly dominated wine-devel. Over the past 12-18 months of Transgaming? Virtually dead.
Add to that the new problem of CodeWeavers now being unwilling to contribute their code under the current license.
In my opinion, all the developers will just throw up their hands and go work on something else, and I think that would be a great tragedy.
I hope that helps.
Looking back on this, I see nothing but kindling.
If you want to raise a point or an argument that is a variation on something we've heard before, just don't.
And if you're not a contributor to Wine, please don't respond at all. You can flame me privately. Or go find a different mailing list.
I would really prefer to hear only what Wine contributors think about this.
Jeremy
p.s. For the record, in my mind, Dan Kegel qualifies as a major contributor to Wine. It is through his hard work that we have a chance that the U.S. court system will put into place systems that will make Wine development easier and protect Wine from predatory action from Microsoft.