Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
KDE GUI

Debian Developer And QT License Contributer Speaks 328

NRLax27 writes: "Freshmeat has an interesting editorial up by Joseph Carter on the issues surrounding Debian and KDE. Carter is a member of the Debian team, and spent much time working with the Troll Tech fellas trying to make the QPL compatible with the GPL." Interesting bit. Worth a read if you're interested in the licensing issues.
This discussion has been archived. No new comments can be posted.

Debian Developer and QT License Contributer Speaks

Comments Filter:
  • Not enough, since all the original GPLed software would need to have the original license updated (see problem 1).

    Possibly good enough, actually: check out section #9 of the GPL:

    Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.

    So the problem would only exist in those cases where the programs specified a specific version of the GPL.


    --

  • Not that it's gonna happen. :)

    --

  • I'm starting a new project that will try to develop filters for word processing formats. I thought about licensing it under the GPL, but realized that I get absolutely nothing from it. I don't mind if the libraries I create are used by commercial applications, as long as I'm paid licensing fees. At the same time, I still support the open-source movement, and therefore am licensing my software under the QPL. Why? Because I want to be able to get some money from my work, while still allowing anyone to use my libraries in an open-source project.

    The GPL was a great idea when it was created. And it's definitely suitable for applications. But if you're developing libraries, anyone should be allowed to use your libraries, even if their program is licensed under the GPL and your libraries aren't. If the whole world used only GPL licenses, then it might be great. But let's face it, we're never going to have only free software. And if the GPL isn't changed to accommodate "semi-free" software, I don't think it should be used at all, because it doesn't allow one to use all of the resources available.

  • Yes, KDE people could fix that but there is fundamental issue of GPL being , well , very restrictive what one can do with it.
    Sooner or later somebody else will get into the same mess. Freedom that is _enforced_ is not freedom at all. As far as I know BSD has no such a problem, it is really free.
    GPL is not free. Even when RMS says so. There is a simple meaning for the word "freedom" and GPL , unfortunately, doesn't qualify here.
  • To the first part: motif isn't a standard system library on Linux, so probably yes, you'd be in violation. (If you'd count motif as a system library, there would be no problem, since they're not distributed together.)

    The second part is a very good point. As I read it, propriatary operating systems CAN'T ship with GPL'd software. This is extremely interesting -- I don't know about Solaris, but IRIX sure does....

    --

  • Troll Tech and KDE have the right to license any way they want, and just because they're not GPL doesn't make them against the community, that is the most ridiculous thing I've ever heard.

    "They say they want to create an open desktop that can be a Unix standard. But they want the standard part more than the open part. "

    That's the most ridiculous thing I've ever heard, first off it IS open. And it's also free. It's merely a conflict of licenses. If I was a programmer for either of the above, I'd have taken great offense at your comments, but I'm not. Just because a company chooses a license other than GPL , which I like very much, but many programmers find it too restrictive on their rights, doesn't mean they're evil or out to collapse the GPL, the FSF, and the GNU project.

    "they're just lying, cheating hypocrites" ..."The KDE team members who think like this and the Troll people who keep avoiding making QT free aren't members of the community.

    What?!?!?! QT IS free!!!! They're not members of the community because they don't use the GPL? The GPL isn't the only free software license, both programs are free, and KDE is almost all GPL, if I'm not mistaken, the only part of KDE that isn't GPL is the links to QT libs. Lay off if you don't understand what's going on.

  • Actually, I have. The QPL is not violated by linking GPL apps to Qt software. I never said it was.

    The problem is, when you try to go the other way, you violate the GPL. This is where the trouble comes in. It is the problem with a two-license system like KDE/Qt. It doesn't matter that one license is compatible with the other license. Both licenses must be made to be compatible with each other. This is where KDE hits a snag; the compatibility only works one way.

    It's one tiny little sentence. That's all it takes; it really is that simple. Unless the KDE team has been keeping shoddy records (and I doubt they would; they understand that they have an important project so record-keeping is important), they should still have contact information for everyone who contributed. I don't think a single one of them would object to making their software legal to distribute (they gave it to KDE to distribute, after all), and once this is settled then the licensing exception can be added extremely easily; I could do it with a two-line shell script.

    And that's really all there is to it. The licensing issues vanish. Debian can include KDE, and the other distros that already do can then do it legally. All the KDE team has to do is swallow their pride, admit they made a little mistake, and add one line to their license to rectify the problem. Are they so arrogant that they can't even admit to one minor oversight? I wouldn't think they would be; they've always led me to believe they were a nice bunch. So what's the problem?
  • You're forgetting one thing DragonHawk: the hardcore GPL zealots don't care just what the GPL says. ... No matter how many times you actually quote the GPL, you'll only get shouted down.

    People can believe whatever they want to believe. Belief won't change what the GPL actually says. They can shout all they want; the words stay the same. RMS can change the GPL; people can still choose to use the "current" version for KDE.

    Now, perhaps Debian's leadship believes KDE violates the GPL in this way. That is their choice. The rest of the world is not obligated to agree. If you disagree but still want to use Debian, that is between you and the Debian leaders.

  • If you can use BSD code in GPL apps, why can't you use QPL code in GPL apps?
  • Bad choice of words: "KDE admitted"

    KDE is not a monolithic, hierarchial organisation with one voice. A glance at the Licensing discussions on kde-devel [kde.org] will show you that there are a multitude of opinions on the subject within the KDE project. A glance at the various licenses used by the applications (kdelibs is all LGPL, but the rest is mixed) will also show you that there is no consensus regarding licensing within KDE.

    Some parts of the KDE community don't use the GPL, some use the GPL and apply the exemption, and yet others use the GPL and don't see the need for the exemption.

    Oh, and that slashback you point to doesn't have any mention of what any KDE people say. It only has the commentary of someone who is clearly biased against KDE.
  • Excuse me, since when is it easier to change to source than to FTP a different package? "Oh, I think I'll upgrade to KDE2 now by changing the code. It is way to much trouble to download it." Or are you on a 300bps modem or something? If it hampers you, sure. But I get the impression that there are a lot of people who really have no use for the code, but like to bitch at others about it.
  • Sorry, dynamic linking doesn't free you from any restrictions that would be there in the case of static linking. Two reasons: header code in your executable, and the fact that dynamic linking is being used as a device to circumvent the license and would be seen as such by any competent court.

    Bruce

  • The only "problem" in distributing most of KDE comes in because people like the Debian crowd don't recognize Qt as a "system library."

    This might have been a reasonable argument in 1996, but it isn't now, as every Linux distribution I can think of ships with Qt, just like Solaris ships with Motif.

    I think a lot of the reason for the non-inclusion of KDE (remember, kdelibs is LGPL, so no legal problem there) is simply bias against it because

    1. it is not GNOME
    2. it is mostly written in C++, and not in God's Own Language, C
    Go ahead, mod me down, KDE-haters; see if I care.

    --
  • by JamesKPolk ( 13313 ) on Saturday June 17, 2000 @04:21PM (#995558) Homepage
    First, make sure you're not confusing Troll Tech and KDE. KDE is a project that happens to use a (now free software, DFSG, Open Source compliant) library owned and distributed by Troll Tech.

    Second, the "KDE crew" cannot be generalised. Some agree with Debian, some disagree, and some don't even use the GPL, choosing a more free license instead.

    There's not an indifference on the side of KDE. There's just a real community, with the real disagreements that result. A consensus on whether a MacOS-style menubar should be the default can't be reached; how could anyone expect agreement on something as politically sensitive as licensing?
  • qt header files

    This is an interesting question.

    The GPL says:

    "For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable."

    Header files are interface definition files, of course. But does the above restriction refer to interfaces to the GPL program, or to the libraries it depends on? The GPL doesn't say, specifically, but given the context of "modules it contains" in the previous English clause, I think, legally, this refers to the GPL program. Of course, IANAL. Only the courts can decide for sure.

    Now, this may be a loophole in what RMS intended the GPL to be. He's free to correct it, of course. But the KDE people are also free to not incorporate his correction.
  • Even if Debian wasn't completely non-free, I would still use it. Sure, free software is better, and the GPL is helluva sweet, but I would still use it if it didn't follow it. I use Starcraft and Half-Life more than free software because they are more fun. I use Red Hat because it gets work done, not because it is mostly free software.

    "Assume the worst about people, and you'll generally be correct"

  • make the QPL compatible with the GPL

    Why not make the GPL more compatible with the GPL? This would have the added benefit of making the GPL more compatible with numerous other licenses and would prevent much of this non-sense in the future. This is especially true considering there are no major sticking points in the QPL which prevent widespread acceptance.

    There are only a small number of people who keep crying foul whenever something comes up that does not agree with their base philosophy. Rather than changing their philosphy to be more widly accepted among the broader community, they only sit back and force others to comply with the One True Way. Sounds like an inquisition or a holocaust in the making.
  • Troll Tech can say anything that they like. But their permission to let you write GPLed software doesn't make it legal to distribute said software along with QT.

    Go read the description of the conflict [lwn.net] for yourself.

    Regards,
    Ben
  • by knghtbrd ( 593 ) on Saturday June 17, 2000 @11:42PM (#995574)
    I just got this email:

    Date: Sun, 18 Jun 2000 02:43:44 -0700
    From: Waldo Bastian <bastian@kde.org>
    Subject: Your posting on www.slashdot.org.
    To: knghtbrd@debian.org


    On www.slashdot.org you posted:
    > What is the problem is that KDE has committed Copyright infringement.

    Dear Sir,

    According to one of our laywers statements like the one above can be considered libel. I kindly ask you to cease making such definitive public statements.

    Kind regards,
    Waldo Bastian
    --
    Make way, KDE/Linux is coming to a desktop near you!

    It's only libel if it's false and I know it to be false. However, I've proven it to be true right here [slashdot.org].

    In other words, Mr. Bastian, fuck off. I will not be silenced by legal threats from a meta-organization that doesn't even exist as a legal entity.

  • First the note. There seems to be some confusion about what the problem is. Here is a description [lwn.net] of exactly how the conflict arises.

    Which leads to the question. Is there anything in principle to stop Debian from shipping Qt along with a separate installer and KDE source-code that will allow the target machine to compile a clean copy locally? Then no distribution of tainted binaries has taken place but KDE has been successfully shipped...

    Cheers,
    Ben
  • While the QPL is written in a rather roundabout way, it comes down to this: if you use Qt under the QPL to start developing any software, that software must become free/open source software. Troll Tech may agree to let you opt out of such a requirement by buying the commercial version later, but they are not obligated to do so, and the negotiations might turn out to be interesting as well ("how many developers on the project?" etc).

    What this means in real life is that if you are considering using Qt at a company or university, you should evaluate it like any other commercial, proprietary toolkit, including its cost. Whether employee or student, your institution can probably not afford to commit to making all their GUI code free or open source up-front (even if a lot of their code may end up open source later).

    And even with all the free effort KDE developers have put into enhancing Qt for Troll Tech, at $1500-$2400/developer, I don't think it's very competitive compared to other proprietary or free toolkits. But that's something you have to evaluate for yourself.

  • > But the part of the GPL that makes it GPL is the viral clause.

    Please, try to cultivate the habit of calling it "inductive" rather than "viral".

    If it were in fact "viral", there wouldn't be any problem; you could just take some non-GPL code, throw in a few lines of GPL to "infect" it, and presto - the whole mess would become GPL'd as a result of viral infection.

    In reality, the GPL is inductive: If P is under the GPL and P' is derived from P, then P' must also be under the GPL. Anything that cannot abide this rule is a license violation.

    I am pushing the distinction for two reasons. First, because "inductive" describes it more accurately, and is therefore more likely to lead to clear thinking about the topic; second, because "viral" generally has negative connotations, and is often used deliberately by people who want to disparage the GPL.

    I'm not sure that making the proper distinction will help in the current debate, but we still need to use terminology that promotes an accurate and positive conception of the GPL.

    None of the above to imply that I disagree with your post; you are absolutely correct.

    --
  • 5) Debian applies the "system library" exemption, since Qt is distributed with Debian, and just about every other Linux distribution.
    6) Debian decides to see the light (it's only sarcasm, people) and interpret the GPL the way some other people do: that a dynamically linked executible does not actually included the non-GPL library code until runtime, and therefore is legal to distribute, as none of the non-GPL code is actually being distributed.
    7) Debian can come out and admit that many of their core organizers don't want KDE, because they want to throw GNOME all the support possible.
  • by rifter ( 147452 ) on Saturday June 17, 2000 @07:28PM (#995584) Homepage

    As I read through the replies to this article, I just have to shake my head in disbelief at some of what I am reading here. Is this really Slashdot? Yes, unfortunately. People can post rather long replies to stories without understanding the first paragraph, and are thought of as insightful. Very well, let me clue you in on some insight you missed.

    The main problem with the Qt license in KDE is that it stifles development of KDE. Because of the nature of the Qt license, changes must be supplied as a patch and recompile. The only legally distributed binaries are from the KDE maintainers themselves.

    The license makes it hard to modify the Qt code itself, and KDE generally. The license makes the distibution of KDE as we now see it illegal. Because companies like Red Hat, Corel, etc. are technically illegally distibuting KDE and such, licenses in general, and in particular the GPL, are being undermined by general practice. If you do not defend your license, it becomes unenforcable, and everything the FSF and the Linux community has worked for is lost.

    The article mentions several examples of this already happening in the sense of companies violating the GPL and getting away with it because of the situation with KDE (eg NVidia, Corel...).

    The further problem is that Linux needed a desktop badly and KDE was "it" for awhile. The Troll tech guys, etc kept promising to "fix" the license while gaining marketshare. As long as they kept promising that, and opensource advocates kept believing it in good faith, KDE continued to be distributed unchallenged.

    As more and more people became concerned with the situation, the Gnome project began in an effort to have a desktop that was truly free and could be modified under GPL. But it was too late, because KDE was already ubiquitous as planned.

    Even now, as Gnome is comparable in performance and features to KDE, there are those who complain about its lack of stability versus KDE (personally I have not seen it, but then there are those who have said they never saw their windows box crash ;) ), which is the older project, and which is eroding the GPL by its very existence. Nevermind the illegality of this "default" desktop.

    I think that the debian people are right to exclude KDE from their distribution, and by god we ought to support them in this. I like KDE, and it was the first Linux desktop i used. BUt as I became aware of the implications, I stopped using it, and switched to Gnome. If Gnome does not suit my needs, I have the benefit of source and can modify it at will without violating archaic licenses. I can include the whole modified version TOGETHER in an rpm if I wanted. And the most important thing is that I am not working towards a situation in which the Microsoft OS group can make a closed-source linux distro, distibute it for free, and take over the linux desktop like they did with Windows.

    I understand that most people are pragmatic in that they don't want to use something just for its political value, as they do want to get work done and would like to evaluate a technical product on its technical merits. What teh article points out is that politics aside, the license of KDE makes it harder to modify, add features, fix bugs, etc, which is, I think a point that is all-too-often missed in the debate between pragmatic users and "rabid open source advocates."

  • Actually, KDE could function without Qt. That's the beauty of shared libraries: the code is interchangeable, if you maintain binary compatibility.
  • > No, the license being violated by the distribution of KDE binaries is TrollTech's own QT license. But QT's unacceptable license is not the major issue it should be, because QT is not suing RedHat, SuSE, etc. They are allowing their license to be violated, but they have absolutely no legal obligation to continue to do so

    Kinda reminds a body of the GIF compression patent scam.

    --
  • Bruce,

    I'm assuming that your comments relate to my proposals, not the stuff regarding QT/KDE. Also, those were proposals, not statements of where things currently stand.

    I'm not so sure that dynamic linking would be seen in a manner that you describe. Linking can be viewed as a manner via which two independent programs communicate. After all, a function call to a library can be seen in a manner very similar to RPC or CORBA calls. Linking doesn't have to mean that the library is part of the app, EVEN IF THE APP IS STATICALLY LINKED (since it can be argued that static linking is for convenience, and nothing more).

    In a similar manner, I would view header code in the executable as an artifact of the mechanism of compiling, not a fundamental aspect of the nature of the program. Logically, they are seperate entities. Of course, once you distribute a compiled binary, you must comply with the license terms for each of the components, but we should be able to treat the components seperately.

    Thus, I should be able to compile a GPL program that uses a QPL library, an X11 library, and a proprietary (say, patent-protected (eg. RSA)) library. Now, since the program is GPLed, I am required to give away the executable and the GPL's program source (including redistribution rights to both), but I could distribute the QPL library and X11 library in a manner which followed their licenses, and may not have to give away the proprietary lib. This is how things should work, not necessary how they do.

    Yes, this does look alot like the model used in the MPL. Though the MPL still treats everything a part of the base program, which is erroneous in my view. I honestly can't understand how we currently can hold two seperate, conflicting views right now: that the license of a program can treat a libary as integral portion of the program, and yet that we can somehow license libaries seperately. Holding the two views is self-contradictory.

    Honestly, I think we would solve 90% of our licensing conflicts, lose alot of the ill-feelings between the various camps of the OpenSource movement, and at the same time promote the free sharing of source code if we would stop treating libraries as a part of a program, and not as the individual entities they should be.

    -Erik

  • I've been involved with this KDE thing for two years now. I helped write the QPL. What the hell have you done, besides flame me with anonymity? Bah.
  • by JamesKPolk ( 13313 ) on Saturday June 17, 2000 @04:47PM (#995604) Homepage
    It seems to me that the whole point of dynamic linking is the fact that the library code doesn't have to be included in the executible, right? That's a major benefit of the technology, to make the binary executible smaller.

    With my copy of libqt.so.2.1.1 weighing in at 5.5MB, I don't think it's fair to say that dynamic linking is being used to circumvent the GPL.

    Rather, I think a loophole of the GPL is being used. Would you agree that it'd be nice for a GPL 3 to be released, that would finally put to rest this argument, to the satisfaction of all parties? A GPL 3 that would take into account all sorts of wierd situations (new linking, Application Service Providers, and other things)?

    Also, I was wondering whether you have written, or know of someone else who has written, a detailed argument of how dynamic linking should be treated the same? I'd like to think that somebody who feels as you do has considered the issue enough to have written more than two sentences on it. :-)
  • No good. The special exception for system libraries only works when library isn't shipped with the executable. In other words, if QT were a standard system component, it would be fine for you to install KDE on a Debian system -- it's just not okay for them to ship both together.

    As for DDD: it's GPL. LessTif is LGPL. What's the problem?

    --

  • a-ha! So why don't you make QT a part of the OS? QT even meets Debian's free software guidelines, as you stated before.

    That would solve the problem for Debian, but it wouldn't stop people from distributing KDE binaries for other distributions/platforms, which would still be technically illegal. So, it wouldn't solve the underlying problems:

    Disrespect for the GPL. You soulless pragmatists mouthing off out there, you want to know why everyone who cares about free software is up in arms? Because there is a lot of software out there under the GPL, a license which solidly gives those rights that the developers want to give, but which hasn't been tested in court. And we don't want that first test to be filled with a lot of crap about "look at all these KDE developers, here, letting people trample all over their GPL, so it must be ok". Well, it's not OK. The GPL prohibits linking your code against non-system, non-GPL code. If you want your code to stay free software, but you want it to be linked against code with a sharply different license, you use the LGPL or append a special exception to the GPL, like the KDE developers should have done.

    Sure, the KDE developers are just peachy about you linking your code to Qt, but is all the code getting linked from KDE developers? I think kfloppy was a possible example: if you take someone's GPLed code, link it against yours, and link that against Qt, then you are breaking their license, whether you claim your code is GPLed or not. And you know what, it pisses some of us off when the GPL gets broken, whether the people doing the breaking are among the "good guys" or not.

    Oh, and BTW, does this mean that ddd (www.gnu.org/software/ddd/) is illegal to run under Linux?

    No. For one thing, DDD works fine with lesstif now. But even when it only worked with Motif, it was legal to distribute DDD source code, or DDD binaries dynamically linked against Motif system libraries. But it is illegal to distribute Linux ddd binaries statically linked against Motif, which I think does occur. That should be stopped, too, or the DDD license should include a special exception; it's just not as high profile a case as KDE.
  • by Millennium ( 2451 ) on Saturday June 17, 2000 @05:07PM (#995627)
    Look, people. Debian doesn't exclude KDE out of spite. I doesn't exclude KDE because it's not Open-Source. It excludes it because, at the moment, IT's NOT FREAKIN LEGAL to include it. This is due to what is, sadly, a rather boneheaded oversight by the KDE team when they chose to use the GPL for their license. The GPL explicitly states that if you can't distribute all the source used in the program under its terms (or less restrictive ones), then you cannot distribute the program at all. QPL is more restrictive than GPL, and therefore it is technically illegal to distribute KDE unless you have explicit permission from Troll Tech.

    There's an exception to this rule built into the GPL. This exception states that files which "normally" come with the operating system do not count towards this restriction. This is very important, because without it there's no legal way to make GPL'd software on closed-source operating systems. However, Qt does not qualify for this exception, since it doesn't "normally" come with Linux. You either have to download it or get it in a distro.

    Now, this was overlooked by the KDE team when they chose to use the GPL for KDE. It was a rather boneheaded mistake, but an understandable one since, to my knowledge, an issue like this had never come up before. It is also trivially easy to fix. All it takes is one measly sentence in their licenses, where they explicitly state that you are allowed to link against Qt. That is all it takes. And yeah, it's embarassing to admit you made a mistake, but who cares so long as the problem is fixed?

    Qt is Open-Source. Debian includes it. KDE is also Open-Source. The problem is that its license clashes with Qt's in a rather nasty way, so it's not legal to include it. All KDE has to do is add one tiny little sentence to their license, and everything is in the free and clear. Much easier than changing the license completely. It holds true to the principles under which KDE was developed (unless arrogance was one of those principles, and I very much doubt that). I do it myself with one of my own projects that uses PowerPlant (a decidedly proprietary application framework for MacOS). So what's the big deal? It's one sentence, and all of the licensing issues vanish.

    So, and this is an honest question: why the heck haven't they done it?
  • Well, then why doesn't Debian also include Windows 98 in their distribution, since it's what the majority of computer users want?

    The reason, of course, is that it would be illegal for them to do so.

    Similarly, Debian interprets the GPL as making it illegal to distribute a GPLed program linked to Qt. Since KDE is GPLed, Debian believes that they would be breaking the law if they included KDE.

    And, of course, if you had BOTHERED TO READ THE ARTICLE, you would have known this, and I wouldn't have had to make this redundant post. But apparently you were too busy attempting to get a first post.

    Steven E. Ehrbar
  • I believe RMS has stated that dynamic linking is the equivalent of static linking, for purposes of the GPL. So a GPL'd program cannot legally be distributed in binary form, linked to Qt.

    I don't like this policy either, but I can see the point. Someone who wants to put proprietary modifications into a GPL'd application could simply "refactor" the application into a free part and a proprietary library.

  • You've hit the nail on the head. That's exactly the problem with most OSS software. They are collections of complex, arbitary feature sets :)
  • Waldo refers to "one of our lawyers." The obvious implication is that he is speaking on behalf of KDE (or at least that KDE has lawyers).
  • Great idea, eveytime a new license witch places more and more restrictions on the codes use is released, we just change the GPL to allow it. Then in the end we have a system where code sharing is impossible. because all components are under a special license. Good thinking.
  • No, that doesn't work. The "major component" loophole is not valid if the component accompanies the program being distribued. So they can't legally ship both KDE and QT, even if QT is considered a major component.

    I'm not really sure how the major commercial distributions are answering this. It's not something that makes a big noisebecause neither the KDE authors nor the QT people want to make a fuss about it, but it DOES ultimately weaken the GPL.

    --

  • by Phil Gregory ( 1042 ) <phil_g+slashdot@pobox.com> on Saturday June 17, 2000 @01:19PM (#995661) Homepage

    But Debian isn't about the "majority". Debian is about producing a high quality, free Linux distribution. (Whether the "high quality" part or the "free" part is more important depends on who you talk to. I lean towards the "free" side.)

    If you want KDE, you have several options. You can download the .debs from KDE's site. They even give you a line to add to /etc/apt/sources.list so that you can install and manage KDE with apt. If you don't like Debian's stance on KDE at all, you can always go to another distribution, such as Red Hat or Mandrake, that includes KDE by default. Don't get after Debian for not behaving the exact way you want them to behave. They're taking a stand on an issue they feel strongly about, but you still have your options.


    --Phil (For that matter, the majority of computer users still use Windows...)
  • There's a conditional you miss -- the line "if the authors of the program clearly intended it to be linked against Qt".

    So if KDE includes any GPLed code that the original author didn't clearly intend to be linked against Qt, then that's illegal.

    For example, asssume there's a small utility that was written by Programmer Foo in 1992 for plain-vanilla X under the GPL, and that Programmer Bar patched the program in 1992. If Progammer Baz then added a KDE front-end to that program in 1999, it cannot legally be distributed until both Foo and Bar give permission.

    So until KDE does a code audit and confirms everything they're shipping was intended to be linked against Qt by the author, it is quite possible that there is illegally-included code in KDE, and that Debian cannot legally distribute it.

    Steven E. Ehrbar
  • If you want a distribution that ignores little things like freedom and your right to software that isn't under the thumb of one entity (remember, if it isn't source, it isn't software), you can always go off and use something else. But if you want a distribution that tries to do the right thing, use Debian or RedHat. There's a reason that Debian has the kind of ties to the FSF that they do: because they believe in free software and they stick to their beliefs because they are right.

    Debian isn't about just getting a job done. Debian is about getting a job done right.

  • by evin ( 31167 ) on Saturday June 17, 2000 @01:28PM (#995671)

    Really, the problem is with RedHat, SUSE, and Corel (and other distros) knowingly illegally distributing KDE binaries. And since KDE 2.0 (using Qt 2.x with QPL) isn't quite finished yet, there isn't currently even any room to argue over subtleties of the licenses.

    The common corporate stance of "Yes, we know we're breaking the GNU GPL, but maybe we'll fix it in a few years" really surprises me (see nVidia et al). If they were including unlicensed copies of W2K (for use with VMWare) in their distros, they'd issue a recall on them the minute Microsoft called them up. When it's the license of the community that they break, they don't care because there's no immanent danger of a lawsuit.

    Of course, most of the people whose code is linked against Qt without permission don't care anyway, but would at least like to have been asked.

  • The GPL was specifically designed to discourage licenses like the Qt one which limit the ability of users to modify key components.

    The Qt licence was specifically designed to encourage non-commercial use of Qt so that Troll could charge for people using it commercially and for ports to Windows. But in doing so they have to put restrictions on end-users to keep them from just forking the code and creating a free port for Windows. Hence the Qt license is specifically designed to impose the kind of restrictions on software that Stallman et al stand against.

    The problem is that the KDE people tried to mix the two. Thereby engaging in exactly what the GPL was meant to prevent. This is not to say that the GPL is the source of the problem. The problem is using it without trying to understand what it means and making sure you fit within its restrictions.

    Cheers,
    Ben
  • > 1) KDE uses the artistic license instead

    KDE has taken lots of GPLed software and have basically just created KDE-ified versions. The KDE team cannot just switch the licenses since they don't own everything.

    > 2) KDE adds a clause to their license ...

    Same problem as 1. You can't change someone elses license.

    > 3) Trolltech makes their license GPL intead ...

    They don't need to go to such extremes. There are other changes that could be made that would make it legal for GPLed software to link to QT.

    > 4) RMS rewrites the GPL ...

    Not enough, since all the original GPLed software would need to have the original license updated (see problem 1).

    But I have another solution. KDE can get behind Harmony and drop QT altogether.

    I won't say much about the flamewars which are still being fanned that accuse Debian (as if it were a unified entity) of "hating" KDE except to say that such talk is both nonsense and nonproductive.
  • by Anonymous Coward
    To clearify some things: Linking to Qt is no violation of the GPL! Qt is a Library, that means it is intentionally used by the program. As I know common practice the library does not "modify" the program but vice versa. Otherwise it wouldn't be allowed to link any GPL program to the LGPL'ed glibc or any other libc running on any sytem where GNU software is used. In any law I know about (at least German ones) there exists a concept called "intention". If a programmer writes a program that only runs while certain libraries are present it can legally be assumed that it is his intention to link the program against the library. You don't need written permission, the facts speak for themselves. AFAIK KDE only runs when Qt is there and linked against KDE - so you may assume that it is totally ok. It has never been practice of the FSF or any other big project to see license conflicts just because you decide to use certain libs - if they do so they have to express it and to provide alternative libs.

    Even RMS agrees on this:

    --------- Forwarded Message ----------
    Subject: Re: proposal of a paragraph of GPL v.3
    Date: Mon, 12 Jun 2000 20:43:13 -0600 (MDT)
    From: Richard Stallman

    Debian seems to state that it might be a violation of plain, unmodifi=
    ed
    GPL to link against Qt.

    That is true. However, if the authors of the program clearly intended
    it to be linked against Qt, I would say they have given some kind of
    implicit permission for people to do that.

    --- snip ---
    comment has been created based on posts from Konrad Rosenbaum on the kde-mailinglist
  • How is that different from the fact that it is difficult to create a program with components under both the GPL and QPL? Or with the GPL and BSDL? Or with the GPL and APSL? Or the GPL and MPL? Wait, doh, the GPL is always the problem here, isn't it?
  • Notice the reccuring pattern: people keep trying to get KDE/Troll to do the right thing, to solve their problems, to be free software. Every time, it eventually becomes apparent that they don't care. They don't want to do the right thing, despite the fact that a lot of people are basically doing the work for them, because they don't care. The QPL was GPL compatible, and instead of releasing it like that, Troll went to the trouble of modifying it to be incompatible.

    They say they want to create an open desktop that can be a Unix standard. But they want the standard part more than the open part. Until KDE can shape up, they're just lying, cheating hypocrites. The KDE team members who think like this and the Troll people who keep avoiding making QT free aren't members of the community. They are working against it, not helping it. Debian is right. They are wrong.

    Oh, and this isn't an attack on KDE or Troll or QT in general. Not everybody involved in those projects is doing these things. But the ones who are are causing a major problem and they need to be stopped.

  • If someone else else wants to do that, that's fine. It doesn't change the incompatibility between the multiple licenses in KDE's code. Until they're sure they can satisfy the software's licenses, I doubt Debian will touch KDE.

    This should probably be 5, Informative IMO because it's dead on. As I've said about as many times as I spent working on this (which means I no longer have any idea other than "a lot"), it's NOT a matter of KDE being non-free or Qt being non-free. KDE is GPL'd and Qt's QPL satisfies our Free Software Guidelines [debian.org] (which are the origin of the Open Source Definition [opensource.org]), so Qt v2 IS free software.

    The whole crux of the problem lies in KDE's use of code under the GPL which they did not write and have not right to change the license of. If you write some code and put it under a given license, I don't have the right to change your code's license to suit my needs. KDE has done precisely this in spirit. In legality, they are simply committing Copyright infringement. So is Red Hat and any other distribution distributing KDE. What's interesting is the number of messages from Red Hat employees my editorial has garnered trying to explain how market pressures forced them to include KDE even though they knew the final licenses weren't compatible. They agreed to do this back when Troll Tech was actively talking with me and it looked like the license would be GPL compatible when finished.

    Market dynamics are apparently more important than legal and moral reprocussions of Copyright infringement. KDE better hope they don't touch my code.

  • by blakestah ( 91866 ) <blakestah@gmail.com> on Saturday June 17, 2000 @01:36PM (#995688) Homepage
    1) KDE uses the artistic license instead
    2) KDE adds a clause to their license that explicitly allows linking against QT as well as GPL(/LGPLd) libraries.
    3) Trolltech makes their license GPL intead, which has the potential to kill their business model.
    4) RMS rewrites the GPL to allow linking against QPL licensed libraries as well as GPL(LGPL) licensed libraries (which has the added effect of hell freezing over and pigs flying).

  • You don't get it do you? Under Copyright law, I can be hit with big fines if I commit Copyright infringement. Under the DMCA, I can do time for it too.

    Faced with these risks, should I willfully violate Copyright licenses? Not likely! Debian agrees. You want Debian to break the law?

  • It seems to me that Debian advocates believe that the reason for KDE's non-inclusion is a problem with the QPL rather than a problem with Debian. If they believe that they would be morally wrong to include KDE in their distribution because it is not "free" enough for them, then this is their choice. But is there really a need to try to modify the QPL in order to satisfy them?

    As we all know, the great thing about open source is that it empowers the user - if you do not like an aspect of the software, then you are perfecty free to fork the code and take things in your own direction. And this is what Corel have done with their Debian-based distribution. The Corel distro provides all the benefits of Debian (e.g. Debian package management, superior stability), but has KDE included too.

    Yes, I'll admit that Corel is more than just Debian with KDE added - many of Corel's tactics remind me of M$'s "embrace and extend" philosophy. But the principle is the same - if you don't like things how they are then you are perfectly free to fork the code.

    Surely it is fine to maintain the status quo, and allow Debian to remain without KDE (allowing it to maintain its moral philosophy) and to have other forked versions of Debian which include the non-free software that dome users require.

  • by Xtifr ( 1323 ) on Saturday June 17, 2000 @01:39PM (#995699) Homepage
    There still seems to be a lot of misunderstanding here.

    a) Debian provides a lot of non-free software (e.g. Netscape). KDE is not excluded because it's non-free. It's excluded because, as far as we can tell, the combination of licenses results in a contradiction that forbids us (or anyone) from distributing KDE.

    b) We don't hate KDE. Many people in Debian have tried very hard to get this situation resolved, because we want to distribute KDE. I, personally, would be ecstatic if the situation were solved.

    c) This is not about politics or philosophy. We are not willing to break the law, which seems to be what distributing KDE entails at this point. Unlike commercial distributors, we are an all-volunteer group, and can't afford to risk the chance of a lawsuit.

    The recent $3000 offer to KDE to fix their license problems went unclaimed. See this article [teamlinux.de] on www.teamlinux.de for more on this.
  • Making Qt GPL also has the nasty effect of making all Qt using apps GPL. Are you sure you don't mean LGPL?
  • I don't use Gnome either. I use wmaker. NeXTStep is good for the soul. Seriously though, I got involved with this literally years ago and helped Troll Tech write the QPL in the hopes of fixing this problem so KDE could go into Red Hat and Debian. Red Hat chose to include it despite the fact that they knew the problems weren't fixed, citing "market pressure" as the reason they caved. Debian is a different story. We won't include it until the license says we can. If that takes another three years (which is how long this debacle has gone on now), then that's how long it takes. Debian's very longstanding policy has been that if the license is not clear, we get clarification. If we can't resolve the issue, we don't include the software. This is an essential facet of Debian. You use Debian and you know that we've done everything we can to ensure that there are no nasty legal surprises for you or for us. We can't do that with KDE because of this whole mess.
  • by knghtbrd ( 593 ) on Saturday June 17, 2000 @10:27PM (#995710)
    A glaringly obvious example of KDE's blatant GPL violations comes in the form of kghostscript. They didn't write it, and it is GPL'd. Now since it takes a minimum of one license conflict to bring down the whole house of cards that is KDE's license to distribute kghostscript, let's stop after the first one (for the sake of brevity..)

    Section 3 of the QPL reads:

    3. You may make modifications to the Software and distribute your modifications, in a form that is separate from the Software, such as patches. The following restrictions apply to modifications:

    Modifications must be seperate, ie patches or CVS or something, from the source code itself.. That's a restriction the GPL doesn't have, to be sure. Now let's look at the GPL itself, shall we?

    3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
    All we have to do is satisfy sections 1 and 2 and make source available under the provisions in section 3. But let's have a look at section 2(b):
    b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.

    Here's the classic dilemma. Binaries are okay as long as the whole thing is under the GPL's terms. The GPL does provide an exceoption for system libraries, but that exception doesn't apply if the system libraries are being distributed at the same time as kghostscript, so it does not apply to Qt.

    You could argue that Qt is not part of the binary because it is dynamically linked. But Qt's headers and macros are linked in at compile time. And even then, a court would have to view dynamic linking the same as static linking if it were being used as a mechanism to thwart the license of the GPL'd application. Another point from the GPL:

    7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all.

    Any other agreement includes the terms of the QPL. Because we cannot satisfy both the QPL and GPL, we cannot distribute the program at all. And not only can we not, but KDE can not as well. Neither can Red Hat or SuSE or Mandrake for that matter. To do otherwise is a violation of Copyright law, whether or not you're likely to face a lawsuit (or even criminal charges under the DMCA!)

    I did my homework, believe me.

  • by Phil Gregory ( 1042 ) <phil_g+slashdot@pobox.com> on Saturday June 17, 2000 @01:44PM (#995711) Homepage
    Why not make the GPL more compatible with the QPL?

    (I'm quoting what you meant to say.) Ignoring for the moment the fact that the GPL was around long before the QPL, how would you propose to do as you suggest? The GPL is so popular specifically because of what it says. Changing parts of it to be more compatible with the QPL or any other license would necessitate removing a lot of things that other people specifically want in their license. Modifying the GPL as a whole because it's incompatible with another license is not a move that many people would like, and not something that the FSF is likely to do, anyway.

    Another possibility is for KDE programs that are otherwise GPLed to have an addendum to the GPL saying that linking with QT is permitted. (Note that the Linux kernel has a similar addendum specifically excluding third party kernel modules from the GPL on the kernel.) This addendum to the GPL is the sort of thing a number of Debian people were pursuing, in the interests of ensuring the legality of Debian distributing KDE. That effort ended up not going extremely far. Some original authors couldn't be contacted and permission to change the license couldn't be granted. Some authors refused to modify the license on their code, feeling that it would weaken the freeness of the software. (Relative freeness of various licenses is a flamewar for another time.) As it stands now, the GPL and the QPL are incompatible and it appears that neither side is going to try to accomidate the other. (I, personally, like the GPL as it is and, were it to be changed to be QPL compatible (as I said, not likely), I, and probably many other people, would release my software under the old, IMHO better, GPL.)

    Finally (and somewhat tangentially to the rest of my post), you said

    This is especially true considering there are no major sticking points in the QPL which prevent widespread acceptance.
    This is not entirely true. One specific part of the license that I don't like is the patchware clause. It basically says that any modifications to the program that are distributed by anyone other than the original author must be distributed as patches and not integrated into the main source tree. This clause tremendously encumbers antone who wants to fork a QPLed project. I understand Troll's reasons for that clause and I respect their right to license their software as they see fit, but I don't have to like their license and I would not put such a license on my software.
    --Phil (I hope I managed to avoid ranting too much there.)
  • The problem is the GPL is too iffy. In this case it is not the fault of RedHat/SuSE/Corel, but the fault of KDE. They are the ones using non-GPL code inside GPL code. Of course, I really don't think the GPL is right in this case. They way it should be is that the GPL should be allowed to use code from other licenses if that license allows it. I'm sure this is happening all over Linux. Do you mean to tell me that there is not a line of BSD code somewhere in Debian?
  • I know of it, but I haven't tried it yet. AFAIK it's an interface for a speech synthesizer which I don't have, I just have this huge monitor. Project TuxTalker (a really bad joke for any blind people who used an Apple // way back when and remember Textalker) doesn't provide anything compatible with /dev/mumble yet. Still, it's one more reason to see the KDE license issue resolved, which seems unlikely to me unfortunately.
  • "It seems to me that Debian advocates believe that the reason for KDE's non-inclusion is a problem with the QPL"

    Not at all -- the QPL is certainly a free license. The problem is is trying to mix it with the GPL when the two licenses are incompatible.

    And it has nothing to do with morality: Netscape is certainly non-free, but you'll find it on Debian's archive site, along with lots of other non-free software. Because, unlike KDE, it's not actually illegal to distribute Netscape or those others.
  • There are a lot of people claiming that:
    - The KDE folks should change to a different license
    - Troll Tech (the Qt folks) should change their license
    - The FSF should change the GPL to be "friendlier" to closed-source developers

    Okay, people. Anyone who develops software is free to license it as they see fit. If you don't like the license they do, don't use the software.

    Don't like the GPL? Don't use GPL software.

    Don't like the QPL? Don't use QPL software.

    Don't like Microsoft's EULAs? Don't use Microsoft's software.

    It's that simple.
  • That Redhat and SuSE decided to ignore the law and distribute KDE anyway do not mean that it is not their problem. They just ignored the problem.
  • It seems to me that Debian advocates believe that the reason for KDE's non-inclusion is a problem with the QPL rather than a problem with Debian. If they believe that they would be morally wrong to include KDE in their distribution because it is not "free" enough for them, then this is their choice. But is there really a need to try to modify the QPL in order to satisfy them?

    The problem is not that the QPL isn't free enough. (I don't think it is, but that's another post.) The problem is that the QPL and the GPL are not compatible, yet KDE has a number of GPLed programs linked with QPLed code (QT). QT 2.0 itself is part of Debian's main distribution--it's free by the definition of the Debian Free Software Guidelines. Debian is merely concerned with the legality or distributing incompatibly licensed software.

    As we all know, the great thing about open source is that it empowers the user - if you do not like an aspect of the software, then you are perfecty free to fork the code and take things in your own direction.

    But just try forking a QPLed program... (Sorry. I'll get back on track now.)

    Surely it is fine to maintain the
    status quo, and allow Debian to remain without KDE (allowing it to maintain its moral philosophy) and to have other forked versions of Debian which include the non-free software that dome users require.

    If someone else else wants to do that, that's fine. It doesn't change the incompatibility between the multiple licenses in KDE's code. Until they're sure they can satisfy the software's licenses, I doubt Debian will touch KDE.


    --Phil (I seem to be posting a lot in this article... I really like Debian.)
  • by Jonathan ( 5011 ) on Saturday June 17, 2000 @01:58PM (#995736) Homepage
    While it is true that nobody really knows the "One True Way" on any philosophical issue, it seems infinitely more productive to choose a position and stick with it, than to adjust one's position to avoid offense. What can compromises achieve other than a mediocre solution pleasing nobody? As George Bernard Shaw said "The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man."
  • You are looking at this from the wrong angle. It is not about Troll Tech giving permission for their library to be used in someone elses program. They have already done that with the QPL. It is about the fact that pure GPL does not allow linking with Qt as the QPL stands.

    As well as the author giving a packager permission to distribute the program under the GPL, the author must give permission to link with Qt. This permission comes in the form of a one line exception to the GPL. Complications arise when a programmer wants to use other people's GPL'd code in a Qt app. Unless they get permission (in the form of the one line exception) from the third party, they have no right to use that code. This is one area where a number of KDE developers pissed a lot of people off.

    On the subject of system libraries, I wouldn't put Qt in the same class as libc, and I don't think it is the intention of the GPL to do so.
  • Aren't the static libraries in DJGPP lgpl? There is a rule that one cannot link to GPL code from non-GPL code. That's why the LGPL exists.
  • Joseph has been at the forefront of trying to get this issue resolved. Most of the time he has been diplomatic, fair and rational about it (on *rare* instances he will lose his temper). But he has a troubling trait of admitting he's wrong on some points.

    "em>that much of KDE is not legally distributable until they contact some people that are damned scarce these days and make the necessary arrangements."

    The real problem is not that orginal KDE code uses Qt, but that a few bits of the code were borrowed from elsewhere and made to link to Qt. I believe that this specific issue can be resolved, but the argument keeps revolving around KDE as a whole. KDE has many packages, but only a few of them have this problem. Specifically, the heart of KDE, the libs, are under the LGPL, and thus there is no problem with kde-libs from *any* interpretations of the licenses involved. The problem lies with kfloppy, kghostview, and maybe some more packages (those two are the only ones I am aware of).

    "In short, the GPL says that the whole program must be under its terms before you are allowed to distribute it. It makes a specific exception for things like proprietary libcs and the like, but the exception to that is that you can't distribute them both together, so we'd be stuck even if we considered Qt a system library."

    Section 2 of the GPL, which talks about licensing the Program under the GPL, has very different language than what Joseph paraphrased it as. "These requirements apply to the modified work as a whole", "If identifiable sections of that work are not derived from the Program", "distribute them as separate works". Qt is a separate work from KDE. Qt is not distributed as part of KDE "as a whole". Is is merely distributed in aggregate with KDE.

    When Joseph talks about exceptions for "proprietary" libraries, the GPL is saying something very different from what he implies. The exception allows Qt to be excluded from the distribution of KDE, because Qt is normally distributed with the operating system (at least it does on my Slackware). But even this is beside the point! Only the source to modules that KDE contains need be distributed under the Program as a whole. Even if the programmatic and copyrightable sense of the word "module" were confused, it is clear that even if Qt could be considered a "module of" KDE, is it not a "module contained" in KDE. kde-libs may be an exception, but again, that part of KDE is under the LGPL.

    When Joseph says "we'd be stuck even if we considered Qt a system library", I wonder why debian is not similarly stuck with other GPL-incompatible system libraries such as Motif. I get the strong (but hopefully wrong) impression that there is a double standard at work here. Why does the exception count for Motif but not for Qt? In a lot of cases I have seen, the GPLd Motif applications disobey even the exception, since the Motif is statically linked, and thus is distributed inside the Program.

    "We could distribute the source, but what would be the point in that?"

    Because some people don't have as fast of connections as Joseph does. I have a DSL connection, and downloading the recent KDE-1.91 sources took fifteen minutes (and I had to wait several hours to get through). A lot of people have only 56K modems or less. Downloading KDE could take hours for some of them. Including the source to KDE may not be politically necessary for Debian, but it sure as hell is convenient for the user!

    "We've been quite open to helping KDE fix the problems with their licenses."

    A lot of KDE developers respect you for that Joseph. The problem is that Debian also contains a small for very vocal minority of members who are demanding instead of helping. Like any hacker in any community, the KDE hacker stubbornly resists demands. The more the push, they more the push back.
  • No you're not really free to do that. The minute you put your software under some other license, the GPL people come bitch at you and boycott your software!
  • I don't understand the logic here. Since KDE is explicitly Qt-based, doesn't it follow that any software written for KDE would be implicitly written to be lined against Qt?

    I'm not counting anything originally written for plain-vanilla X, since those apps will run under any window manager or no window manager. If programmer Baz has somehow written KDE-specific code into the app, that appears to me to be the fault of programmer Baz and not KDE, and that reverting to the KDE-free version of the app would solve the problem. Which brnigs up the question, are there any apps that fit the scenario you describe above?
    --
  • > Why not make the GPL more compatible with the [Q]PL?

    Why not? It was the KDE developers' own decision to use the GPL - no one made them. If they didn't like its provisions, why didn't they come up with a GPL-like license that was fully compatible with the QPL?

    Sorry, but pinning the blame on the GPL simply isn't going to work.

    --
  • I'm just wondering why the KDE people don't just change the license on KDE. That would solve numerous problems. The license could still be very GPL-like, but with an exception for the QPL. Sure that would mean the Debian guys couldn't use it, but anybody that obsessed with the philosphy behind a piece of software is too far gone to help.
  • A KDE executable, dynamically linked, and run by a user however, contains Qt modules, suitably relocated.

    The GPL makes no restriction on use. Only distribution.
  • That's a common but incorrect belief: except for million copy shrink-wrap products or death-march efforts, that is a lot of money for development tools. In particular, these days, it's a lot of money for R&D labs, the very places that bring new tools and libraries into an organization.

    In any case, you should compare what you get for $1500 with Qt vs. other offerings. For less money, you get the complete Microsoft development suite (enterprise level, including compilers, GUI designers, VB, and database stuff), Microsoft-compatible cross platform libraries for Linux, an Eiffel system, a variety of Java implementations with GUI designers, or a variety of other GUI toolkits. Qt wouldn't even be on the radar screen if KDE hadn't popularized it.

  • Nearly all GPL'ed software uses a standard preamble which states:

    This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

    So if RMS were to change the GPL license, it WOULD affect most free software that is out there.

    Say one day he gets hit by lightning and suddenly starts to think that prorietary software is the way to go, he can change the GPL and affect nearly every GPL'ed work.

    The reason for this clause is to allow the FSF to 'plug holes' in the license, and to be able to adjust to future developments (ASP comes to mind).

    It would also be possible the fix the KDE/Qt problem this way. But that is not likely to ever happen. A good thing, because the when we choose the GPL for our software, we do it because we value freedom (Why KDE chose it is beyond me). Compromising that freedom would be a bad thing.

    -- GCP

  • "Whether Qt is a "system library" or not is pretty questionable, and in any case it would be distributed on the same CD as KDE"

    Wait! This is either a double standard or an artful dodge...

    Stop mixing and matching clauses to fit your theory. Way before the "exception" clause, there is section 2, which specifically disassociated the GPL from software distributed aggregate to the Program. The exception clause is excepting from the exception stuff that is included "inside" the Program, and not stuff that is distributed elsewhere on the CD.
  • quite frankly, Debian has Netscape Communicator as part of the main distro, and one could use the same arguments used against KDE against Netscape. Compiling software for Linux is damn near impossible without somewhere using some includes from GPL software. One could argue Communicator is an illegal derivation of GPLed software.
  • You hit the nail on the head. Software is a tool. You people who have some emotional attachment to the software (unless of course you wrote it) have a problem. As such, freedom and right to software ARE little things, unless they hamper your use to the tool.
  • Sorry, TrollTech isn't that large. They have about maybe half a dozen KDE guys, leaving several hundred employed elsewhere.
  • KDE is not licensed under the QPL. There is not requirement in the KDE licenses to distribute modifications as patches. Only the Qt library is under that restriction.
  • The "proof" you cite says nothing about KDE infringing anyone's copyright, only that distributing KDE is illegal (and it's still your opinion).

    When you keep your cool, your arguments are rational and thought provocating. But I find it impossible to attribute those qualities to you when you lose your temper.

    p.s. KDE is indeed a legal entity, though whether Mr. Bastian is a member of that entity is another matter.
  • There are, in fact, two solutions to the problem. Either change the license that Qt is distributed under to make it compatible with the GPL, or change the license that KDE is distributed under to make it compatible with the QPL.

    The problem is, many people have contributed code to the KDE project, and all of that code is licensed under the GPL. In order to re-release it under a new license that makes everything all work out, somebody would need to contact each of the authors of each bit of code in KDE, and get their permission. This would be a large pain in the ass, and the KDE team has refused to do it, even when offered $3,000 for their trouble.

    Many people have said that this is just a matter of one fringe group's personal philosophies. It's not. Currently, distributing KDE binaries is ILLEGAL. If this is allowed to continue, it severely weakens (in a legal sense) the GPL - the very license we depend on to keep our software free.

    --

  • > Under current interpretation of copyright law, linking is considered making a derivative work.

    What I don't understand is why linking with Qt is any different from linking with (say) the system libraries that ship with Sun's or Digital's Unices.

    If Red Hat ships with Qt, wouldn't that make Qt a "system library" that would be covered by the GPL exception clause?

    --
  • > Distributing GPL applications (including KDE) that are dynamically linked to QT is perfectly OK in distributions that include QT as a part of the base OS. RedHat, Suse, Mandrake, TurboLinux, and virtually all distros except Debian include it. Debian does not, as QT is non-free software, and thus does not fit within their philosophy.

    Ah. I hope you have it right, because this makes a lot of sense out of all the (mostly) incomprehensible statements people have been posting.

    And assuming for the moment that you do have it right, wouldn't the simple fix be for Debian to just include Qt and KDE on the "non-free" disk? Easy enough to include a disclaimer saying that KDE is in fact free, but that it requires Qt, which has to go on the "non-free" disk for other reasons.

    I guess then we would get into issues of what defines a "system" library. If a library is optional on, say, Digital's Unix, does that mean it's not a "system" library?


    --
  • It's not about using code. Probably 80% of the Linux kernel is BSD code (OK, slight exaggeration). As I understand it, it's a problem specifically of linking a GPL'd program against a QPL'd library. I just took a quick skim of the GPL and couldn't find anything that would suggest this, though. If anyone can quote chapter and verse, I'd much appreciate it.
  • > But if you're developing libraries, anyone should be allowed to use your libraries, even if their program is licensed under the GPL and your libraries aren't.

    "Should"? - Only if that's how the author wants to license his code.

    The key thing about the GPL is informed choice: don't use it unless it's really what you want.

    And that looks like where ME fell down when he started KDE. IMO he should have either picked a different library to build KDE on, or else picked a different license to release it under. (TT has already issued at least one license change, and I suspect that eventually everything will be worked out. But he could have saved himself an enormous amount of headache, bad PR, and yes, exposure to FUD in some instances, by looking at licenses before plunging in. It's alarming to see how many people in this thread don't take licensing seriously; I suspect we'll be seeing this problem again and again in the future.)

    Anyway, the only "problems with the GPL" are that people are using it when they actually want a license that says something else. Nothing in the GPL prevents you from choosing a different license when you start a new project!

    Look before you leap kind of thing.


    --
  • Obviously KDE cannot be distributed under a license that contradicts QPL. But the Qt restrictions are such that you cannot create a derived work from it that is compatible with the GPL.

    Period.

    If you try all you will get is a piece of software where anyone who wrote GPLed pieces can stop distribution. Most distributers are willing to take their chances, believing that if that happened to them then they could get the licenses sorted out retroactively.

    But Debian does not have that freedom.

    Hence this discussion.

    Cheers,
    Ben
  • What I was referring to was the so-called "system library" exception, which only counts if the "system library" is not distributed with the GPL'd software itself. So if both Qt and KDE are on the same CD, then the system library exception doesn't kick in.

    I think that this is going to come down as a matter of opinion. There's many ways to interpret the GPL, and I can certainly see how you do. But do you at least understand my interpretation? Qt is distributed on the same CD as KDE, and if it is indeed a part of the Program (KDE) that needs to be GPLd, then it needs to be distributed according to sections 1 and 2. But Qt is not "derived from the Program, and can be reasonably considered independent and separate works in" itself", so it is excluded from the requirements of the GPL.
  • That sig's interesting. Are you really asking people to contribute to a closed-source OS for free?
    >>>>>>
    Yes. In the Windows world there are a lot of apps written for the good of the community. A lot of people enjoy using BeOS not for philosophical reasons, but because they like the OS. By contributing to BeUnited (most of whose projects are GPL or BSD or Artistic license) you help this community of users.

    Don't get me wrong, BeOS video stuff kicks ass. Even if I could code well, though, I can't imagine going out of my way for an OS that's a) going nowhere fast and b) not really written by/for the benefit of the users who MIGHT use it, if it had more functional apps.
    >>>>>>>
    Ah, but it is written for the benefit. Be is in a unique situation that if they Open Source the whole OS, then pieces will just be ripped off and added to other projects. None of these other projects would have the fundemental "cleanliness" of the original, but would lead to a death of the original.

    Why no mozilla port? Why spend all that time replacing free not-great software with Be's not-great software?
    >>>>
    You're not doing anything to help Be. (Who makes great software! Be produces good, fast, functional code.) You're helping the users of the OS. In fact, one of the projects BeUnited is working on is a Mozilla port that's about 60% complete. There is also a 70-something% complete GTK port, and a Qt port was just started.

    I just want you to strip Be down to a runtime environment with multiplatform HW drivers, so people can write better video games without having to use the pissy DirectX. Is that too much to ask?
    >>>>>>>
    You can do that. BeOS is increadibly functional because of the microkernel design. The actual core OS can be booted with as little as 2MB of files. (And DirectX is NOT pissy. You just don't get it.)

    BeUnited is not a help Be-the-company out sort of effort. It is to provide good applications for an OS that a lot of people like using. It does nothing to serve the company itself. (Aside from increasing the userbase OS, but since it's free, it doesn't really matter. The increased userbase just helps out the community.)
  • The problem is that the KDE folk are incorporating other people's GPLed code in their work. If it were only about original code on their part, then they could release it under any liscense they wanted, such as a modified GPL one.
  • TrollTech has a right to release their software under whatever license they want. The current QPL meets all the qualifications of a free open-source license - it just happens not to be compatible with the GPL. Releasing your software under your own free open-source license doesn't mean you're not doing the right thing!

    No, KDE is entirely to blame here. All they have to do is admit that there's a problem, and make an effort towards correcting it. I'd say the way to do it would be to make a list of all the developers they need approval from, then start checking names off the list as they get permission. Once everybody's been checked off the list, change the license - end of problem.

    --

  • You need to read the GPL license again, dude. You can't link to non-GPL compatible software unless it is part of the OS. Hence, GPL Motif applications are fine on Solaris but not on Linux.

    I don't understand your argument about Netscape Communicator. Communicator code most likely doesn't include kernel headers. However, it includes GNU libc headers, which is a LGPL library.
    (Note: You can write kernel modules that are not GPLed due to the fact that the GPL license in Linux kernel has an exception for kernel modules)

  • by Christopher Cashell ( 2517 ) on Saturday June 17, 2000 @03:05PM (#995805) Homepage Journal

    quite frankly, Debian has Netscape Communicator as part of the main distro, and one could use the same arguments used against KDE against Netscape. Compiling software for Linux is damn near impossible without somewhere using some includes from GPL software. One could argue Communicator is an illegal derivation of GPLed software.

    I think you misunderstand the problem here. Netscape has a clear license for how it can be used and distributed. Any software licensed under the GPL has a clear license of how it can be used and distributed. Qt has a clear license of how it can be used and distributed. None of that is in question. Also, all of these work, because there are no direct conflicts between licenses.

    If you have not read the GPL, you should read that know, so you understand exactly what is entailed in it. According to the GPL, Netscape is perfectly legal. It does not violate any licenses. Qt, on its own, does not violate any licenses. It is a perfectly legal, and even free library.

    The problem comes when you link an application that is licensed under the stock GPL with the Qt libraries. You see, the GPL requires all code in a program, including linked libraries, to be either GPLed, or to not impose any additional restrictions on use and distribution beyond the those in the GPL. Unfortunately, the QPL does include additional restrictions. Unless you include a specific item with the software license that explicitly allows linking with the Qt library, then legally you cannot distribute the application (unless you are the author) becuase the GPL does not allow it. This is not just some argument someone cooked up to keep KDE out of Debian. It is a simple legal fact that there is a conflict between licenses on software licensed under the stock GPL and linked with QPL libraries.

    I've seen it argued by some that this is just a plot by Debian against KDE because it uses Qt, and I've even seen it mentioned in posts that Debian doesn't accept any software that isn't licensed under the GPL. These are both completely and totally wrong. In fact, there are probably hundreds of programs that are not licensed under the GPL. Debian will allow any software that meets the Debian Free Software Guidelines into the distribution (In fact, there are applications that use the Qt library, along with the library itself, included with Debian. These applications have properly licensed their software under the GPL with an explicit statement concerning Qt). However, this is a completely seperate issue from the KDE issue, even though people often confuse them.

    KDE is absent from Debian because it has an invalid license, not because it isn't free software. Hopefully, eventually, the KDE authors will put forth the little bit of effort required to fix their mistake, and make their software legally distributable by everyone.

  • If you go check out Gnotices [gnome.org], you will see an interesting, seemingly unrelated article: The XMPS project [enst-bretagne.fr] has just released a version which supports DivX decompression... by using a MS-Windows DLL. XMPS is a GPLed Gtk+-based MPEG player. It is a GPLed app which uses a proprietary library. The licence makes no explicit exceptions. Sound familiar? Now read the Gnotices. See anyone complaining? I don't. Everyone looks thrilled. Somehow, I'm not surprised. Slashdot posters would react the same if the news got here. This is a Gtk+ app, after all.

    I personally feel there is nothing wrong with what the XMPS project is doing. I actually applaud that clever trick and what it allows for users of free systems. I know my free software history: Emacs and GCC were born on non-free systems. They did what they could with what they had. So does XMPS. So does KDE. Hopefully, the situation will someday improve. But in the meantime, the people writing the GPLed code are the good guys and gals... Remember? (I guess not.)

    But of course, anyone writing GPLed code and linking it against Qt is a GPL-badmouthing, uptight, arrogant, crack-smoking, gay devil-worshipper. Hundreds of posts and e-mails will tell you that. And I'm not even kidding about the "gay" part, which you know if you have read the comments on Freshmeat. When I see how such troll posts about KDE consistently get moderated up to +5 Intersting, I start looking for the button which allows me to moderate *all* of Slashdot down.

    I would trolling if I did not have a point.

    PS: I bought a Gnome T-shirt from Copyleft [copyleft.net] just so Gnome and the FSF would get a donation. Think about that before you write me off as an anti-GPL bigot.

  • The point is that something needs to change. Right now, KDE is shipping software under incompatible licenses.

    I wasn't directing my message to those who think their may be a legitimate legal conflict between KDE and other software packaged together. That, the original issue, seems to be getting lost in the noise of general license flamewars. Seeing that the original issue was pretty well addressed, I was attempting to douse some of the other fires.

    FWIW, IANAL, but I don't see any legal conflict with KDE being GPL while Qt is QPL, so long as any distributed KDE binaries are dynamically linked. Section 3 (which covers distribution) says:

    "For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable."

    A KDE executable, dynamically linked, contains no Qt modules.
  • Well, it seem like that unreasonanle man is GPL, cause just about every time it is radicality of GPL that makes life harder for people , not the other way around.
  • If you're going to sue everyone (damn Americans and their lawyers), you must have a plantiff, a defendent, and a list of damages the plantiff has incurred as a result of the defendent.

    So you want to sue every distribution, ok, they are defendents. Who is the plantiff? Joe Schmuck who wrote ksomething, provided binary rpms on his web site? Perhaps the KDE folks liked it enough they include it in kdesomepack. How suable is KDE, as it's just a bunch of schmucks working together, just as Debian is. Is Troll Tech the plantiff? Were they somehow damaged because a developer decided to use the GPL on ksomething? Likely that will happen. :) Is it a class-action lawsuit by everyone who has ever gotten a RedHat/Caldera/etc CD as a magazine filler? They didn't ask for it per se, yet here is this illegal item in their home. Will the police bust down their door any minute for possession of such illegal goods? Is RMS the plantiff, as he made up the GPL. That would seem to go against everything he has stood for, "You may use the GPL as long as I say so." No. Is Debian the one who shall do the suing since their interpretation of the vague document is the only one that counts? How were they hurt? They have thousands/millions of users. Their userbase hasn't been hurt by not including KDE. They aren't in it for money, so there is no loss of revenue in CDs.

    Or, as I suspect it, Debian is just the sole judge, jury, and executioner in all matters they deem theirs? Every week when this comes up it's the same thing, Debians interprets it one way, KDE interprets it another. Debian says, "You better think our way, or else!" And why has RMS left this document so vague as it could be interpretted different ways? Why is it still dated June 1991, where is GPLv3? Wouldn't everything be so much stronger if there were nothing left to be interpreted? Is $3000 needed to "encourage" someone to make a proper GPL license which says definitively what can be linked and where/when?
  • by EXTomar ( 78739 ) on Saturday June 17, 2000 @03:32PM (#995828)
    What is up with the KDE Crew? Don't they see the potiental dangers in there laxed licensing policy? There indifference to fix the problem doesn't reflect well on their project or their direction. Do they really not care?

    For me, this is above all other reasons why I'm lery of KDE. Does Troll Tech really believe developers will blindly follow just because they write code?
  • The $3000 offer went unclaimed because KDE admitted that the license change conditions could not be met. See this [slashdot.org] Slashback details for information. Debian is doing the right thing because they stand up for the GPL and the Law.
  • by trims ( 10010 ) on Saturday June 17, 2000 @03:46PM (#995844) Homepage

    And I quote (GPL, version 2, section 3):

    However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

    This is the so-called "system library" exception. Of course, what is a system library? It's a library that comes with the standard distribution (according to the GPL)...

    Distributing GPL applications (including KDE) that are dynamically linked to QT is perfectly OK in distributions that include QT as a part of the base OS. RedHat, Suse, Mandrake, TurboLinux, and virtually all distros except Debian include it. Debian does not, as QT is non-free software, and thus does not fit within their philosophy.

    Fine for Debian. They hold to their ideals, and that's what they view important. It's hypocritical of them to accuse TT of not bending to their will to change the QT license, though. That's the license, and if it doesn't change, well, there are consequences for Debian users. There's no free lunch, folks.

    KDE on the otherhand, needs to be voicing the restrictions that using the QT requires of end-users: that is, KDE should be distributing apps that are dynamically-linked with QT, and also should not be including QT as part of the default install. This is something that the end-user needs to be aware of when choosing to use/not-use KDE.

    This leads back to the system-library exemption clause in the GPL: this is totally bogus, since a system library is so ill-defined that I could make anything a system library. Honestly, this clause is so vague that I can ignore the GPL for huge chunks of my code if I just make them into a library (and call it a "system library"), since what is "normally distributed"? And exactly what is a "major component"?

    This all leads to my biggest bitch about Licenses in the OpenSource movement in general: somehow, the concept that a standalone library is part of a finished app needs to change. The whole point of dynamic libraries is that the same codebase is shared between multiple apps (well, not the whole point, but one of the major benies...).

    We should move towards the following standard:

    1. Respect the license the original code was released under. If you don't like it, don't use the code, and quit bitching about the entity that released the code. If it claims that it's something it's not (like GPL-compatible, OpenSource-compatible, et al), then you can complain about truth-in-advertising, but otherwise, keep the trap shut.
    2. As a correlarry to #1, release all your mods to the original code under the original license. This is merely a show of respect for the originator.
    3. Standalone libraries are not automatically part of the program. They should have their own license. Of course, mods to the original code for accessing the libraries should follow the original code's license. However, why shouldn't a library receive the same consideration that calling an external program (via system() or whatever) currently receives? That library doesn't "belong" to this program any more than an external program belongs to it.
    4. The distinction between static and dynamic linking needs to be erased. This is really a correlarry to #3, the recognition that libraries are a seperately licensable entity.

    -Erik

  • Let's see. I can include BSD code in GPLed software. I am absolutely not allowed to include GPL code in software that has BSD type license. And you are talking about freedom ?

    I will try to explain this. The GPL is made specifically to keep software free and open forever and that derivatives will be free and open forever. The BSD license can almost be thought of as public domain. You can basically take the code and put it in a non-free, non-open program and that is fine. Because the BSD allows itself to be put under any license under the sun, you can stick it in a GPL program because you can make that code GPL, it is no longer BSD at that point. GPL code on the other hand must always be free and open so you can not stick it in a BSD license code base because it could be closed off. That is where this issue comes into play.
    Molog

    So Linus, what are we doing tonight?

A committee is a group that keeps the minutes and loses hours. -- Milton Berle

Working...