Slashdot Mirror


Debian Developer And QT License Contributer Speaks

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.

9 of 328 comments (clear)

  1. KDE tries to silence Editorial's author by knghtbrd · · Score: 4
    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.

    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.

  2. you guys are missing the point by rifter · · Score: 4

    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."

  3. Re:Not everyone by Phil+Gregory · · Score: 4

    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...)
    --
    355/113 -- Not the famous irrational number PI, but an incredible simulation!
  4. Until someone sues Redhat and SUSE... by evin · · Score: 5

    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.

  5. distributing KDE by Xtifr · · Score: 5

    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 on www.teamlinux.de for more on this.

  6. Example of KDE violating GPL: kghostscript by knghtbrd · · Score: 4
    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.

  7. Re:How is this fair? by Phil+Gregory · · Score: 4
    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.)
    --
    355/113 -- Not the famous irrational number PI, but an incredible simulation!
  8. Re:Well... by Christopher+Cashell · · Score: 4

    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.

    --
    Topher
  9. QT only has problems with Debian.... by trims · · Score: 4

    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

    --
    There are always four sides to every story: your side, their side, the truth, and what really happened.