On 2002.02.09 04:29 Patrik Stridvall wrote:
If people don't understand that some people are decent and contribute back regardless of whether they are forced to or not, but others are not and require a feedback loop to force this behavior, then they don't understand how the world works and we're just wasting time.
That is not one of the problem, as far as I'm concerned I fully agree that there will be companies that will be, how should I put it, less honourable. There ALWAYS are in ALL markets.
I was trying to bring it home to Dimitrie that not everyone is bad as he seemed to suggest.
As I sidenote I would like to say that I believe that the LGPL for reasons stated in last debate will not be enough to stop less honourable companies from doing less honourable thing.
You might believe me or you might not, as all people arguing against me last time. Be that as it may, that discussing is dead and I will in the future concentrate on "If the LGPL means what you say it does, we don't want the LGPL".
Actually, IYRC, and IIRC, I pretty much agreed with you that the LGPL actually WOULD allow one to implement proprietary code simply by releasing small wrapper functions as LGPL code.
As in:
DWORD WINAPI FooMicrosoftApi(CHAR *bar, DWORD baz) { return someotherdll_FooMicrosoftApi(bar,baz); }
Which would be LGPL, and the someotherdll_FooMicrosoftApi would be under a different license.
With this situation the stated purpose of the LGPL is still upheld. The stated purpose is to allow one to continue to update the parts of the code that are LGPL while still being able to link with proprietary components.
Thus TransGaming does not hurt. Lindows really doesn't hurt either, and the users of Lindows win because should they need to update the LGPL components of Wine they can do so and still continue to link to Lindows binary only components.
Now you may consider this not enough to stop the less honourable companies. Yeah, you're right. Lindows can continue to build upon wine, add their own stuff, and release a product. The only difference is that now they can't just fold all the wine code into the binary.. they have to allow the user to update the wine code. That is the purpose of the LGPL. Unlike the GPL which tries to make all software free software, the LGPL tries to keep free software as free software, and proprietary software as proprietary software.
Now let's say we take the stricter interpretation that you cannot do the above. That is bad I think.
How about going to LGPL and add a clause that clarifies that the above is in fact allowed?
I think it's more of an issue of people thinking too much in black/white terms and people that lean strong towards one side or the other.
Yes. Perhaps they are not nessarily thinking in black and white but their arguments are often presented that way.
I'm not entirely blameless on that point either, I will try to do better in the future.
Look no further than the US political system for a good example. You have the Republicans and the Democrats. Generally they take every issue to opposite ends of the extreme such that 99% of congress is at one extreme or the other, but 99% of the population wants neither extreme.
Exactly, but that is because:
- They want votes so they can do that they feel is right.
- The ignorant masses are not likely to understand subtle differences in opionion.
When the voters give any of them support, the problem is that they didn't really support the extreme views they presented, but they are forced to do it anyway in order of not being accussed of betraying the will of the voter.
You can thank the "liberal" media for that one. :-( Especially see MSNBC. What a crock of shit that is.. figures, it being a MS product and all :-). The reporters on that station are just horrible. They ask a question and when they get a totally straight answer that they don't agree with they just ask it again and again changing a few words to make it seem like it's a different question.
In the cases of Wine. I hope that the people working with the Wine project are not among the ignorant masses and thus really are able to understand the subtle differences between different positions.
Yeah, so far it only seems like the people who caught this story on slashdot are among the ignorant masses. :-/
Essentially we could go on forver about X11/BSD vs. GPL. It's been discussed to death already folks. What we need are reasonable compromises. Of course you need to have people willing to compromise to do that. I suspect most developers are with the exception of the view vocal BSD people and the few vocal LGPL all the way people. I myself am certainly not at either extreme.
Even if perhaps some people won't believe me. I not really an extremist. I try to take a pragmatic view of the world.
I believe that GPL has its place, LGPL has it place and the BSD license has its place.
However my analysis of the issues at hand makes me believe that LGPL would be really bad in the particular case of Wine, for reasons that I have tried to explain.
Personally I think the LGPL is pretty damn good and fits wine pretty well but we simply need to clarify the gray areas about what is and is not allowed (see above).
I suggest that people try to think about scenarios of circumstances where possible extensions to Wine might be made. This might be business models like Transgaming or Lindows.com or just something Joe Hacker or Joe Ex-Windows-Shareware-Writer or Joe I'm-Conspiring -With-A-Proprietary-Library-Company-But-You-Can't-Prove-It are doing. Just like the examples in the my last mail.
Then ask the questions:
- Do you consider his or her behavior morally or ethically defendable?
- Does it violate the letter of the LGPL?
- Does it violate the spirit of the LGPL?
- Does it violate the letter of copyright law?
- Does it violate the spirit of copyright law?
- Do you think any reasonable Judge/Jury would find him or her guilty?
With the spirit of copyright law I roughly mean: Is it what congress intended and/or is it constitutional? Notice the and/or: It is possible for act of congress to be constitutional without being the intention of the congress.
Hmm.. y'know that's a good idea.
We should collectively think of the different scenarios and ask one very important question: Do we /really/ want to prevent this scenario from happening?
Personally I have warmed up a slight bit to the idea of Lindows. At first I was a bit like.. those dickheads took wine, added a few things, and are gonna sell it for $100/seat and we're not getting any of that or even any improvements back!? That bites.
But now I realize that we need to put that emotion aside and look at how exactly lindows harms wine (which it does).
The first thing is the issue of binary-only wine that can't be changed and has absolutely no source. That really bites for the user who is thus locked into Lindows complete package and cannot even change the parts of wine that Lindows has nothing to do with. If we were LGPL and allowed importing functions from non-LGPL components then Lindows could still add value by implementing APIs in their own DLL or DLLs and loading them from wine. In fact, they don't need to be DLLs. They could just put all their stuff in their own closed source file, compile it, and distribute the .o so that end users (their customers) can later take that .o file plus the LGPLd modifications to wine that make it use the functions in that .o, and link it into a newer version of wine.
Now, the second issue, and the one Alexandre is (or maybe just was) most concerned about, was companies implementing functionality that the real wine does not have will sometimes reduce the incentive for a developer to work on it. That is to say that a good portion of developers that would otherwise be contributing to Wine making stuff work will stop if they can simply by Lindows for $100 and make that work. Ironically moving to LGPL would actually make it easier for a wine developer to use some lindows functionality since they could update the rest of Wine. However, at least for me part of the reason I like hacking on Wine is to hack on wine to have a version that is free software. That is, let's say there had been a working closed source ASPI layer then I could've used my CD-R in Wine and maybe I wouldn't have fixed a bunch of stuff with ASPI. But doing that was a lot of fun and I would have been the one missing out by falling back to a lindows implementation and never considering actually fixing the real wine implementation. Plus in the meantime at least my CD-R would've worked so it would have been a less pressing issue and would have avoided numerous reboots for me in trying to create a free version.
Anyway.. these are just two.. there are more I'm sure.. I really need to go to bed though.
Before I do so, I would like to point you to the wxWindows website.
According to their short license summary they use LGPL but also allow you to distribute a binary linking with wxWindows included. That exception would not be appropriate for wine (in fact, it's like the main advantage for us to use the LGPL I think). However we could do a similar style thing and say: "We're LGPL but we specifically allow you to create stub functions in our library that call out to your proprietary component.
Hopefully we can get this resolved this time... It's looking promising given the few and far between somewhat clear posts and disregarding the ill-informed wanna-be-on-slashdot shit.
-Dave