Qt Becomes LGPL
Aequo writes "Qt, the highly polished, well documented, modern GUI toolkit owned by Nokia, will be available under the LGPL starting with version 4.5! It was previously only mainly available under the GPL and a commercial license. Selling licenses was an important part of Qt under Trolltech as it was the company's main source of income, but Trolltech is a fruit-fly compared to Nokia, who want to encourage and stimulate the use of Qt Everywhere [PDF]. This is fantastic news for all commercial developers looking to create cross-platform applications without the need to buy a $4950 multi-platform license per developer."
Seriously though- Reasons to write applications for the gnome desktop environment are getting fewer every day. When QT4 became available under the GPL on all 4 major platforms- Windows/BSD/Linux/OSX the argument for GTK was weak. Now, I'd argue its virtually non-existent.
FYI: This article needs more acronyms. STAT. ASAP.
I will shred my adversaries. Pull their eyes out just enough to turn them towards their mewing, mutilated faces. Illyria
Ars Technica has a good report on this development: http://arstechnica.com/news.ars/post/20090114-nokia-qt-lgpl-switch-huge-win-for-cross-platform-development.html
...no reason for Gnome to exist anymore! ;)
One that hath name thou can not otter
Whilst being very good at code and generally geekery, Trolltech are total rubbish at the support game, leaving paying developers (i.e. me a few years ago) feeling massively shafted when being told "here's the code, fix it yourself". WTF am I paying for If I have to not only find your bugs, but fix them as well?
Now everything is back as it should be - free code and no support, the way God intended.
Well, thank heavens for that. Hopefully now the horrible, oldfashioned looking, bad file-selecting-dialogs GTK will slowly disappear. The number of times I've had to select something in /usr/bin, and have started to type /usr/bin only to have it try and go to /usr/sr or some nastiness.
Get your own free personal location tracker
It's not every day that a cross-platform GUI framework suddenly turns into (becomes) a licence...
The only complaint I've seen before about Qt is that it's too expensive for proprietary apps, and that's not an issue anymore. I won't be surprised to see a large uptick in Qt usage now, and that's a big plus for cross platform apps, as Qt is quite portable.
Game! - Where the stick is mightier than the sword!
I use to be a KDE developer, and I have to say that I love QT/KDE platform (and still use it). But with that said, I find that OSS moves faster BECAUSE of friendly competition, not in spite of it.
I prefer the "u" in honour as it seems to be missing these days.
Ummm...I think Nokia, who now owns Trolltech, will be paying their bills.
Over the years I have said many times that TrollTech should have lowered their prices considering things like the Apple Developer's kit and MSDN are significantly cheaper for more functionality.
I have been in need of a good GUI toolkit for years. I have used just about all of them but for my own projects I either use the native toolkit of the OS I'm working on or FLTK for cross-platform stuff. Qt is much more functional than FLTK though with all their SQL and other utility classes. This is really cool. I bet Qt is now going to become the defacto GUI toolkit for everything.
I wonder how long until someone makes a Qt version of GNOME (ha, I can't imagine how much work that would take). You could start with making a Qt version of The GIMP.
Perhaps now we can finally get enough momentum to end this Gnome\KDE battle and get KDE to win so we can settle on ONE desktop environment so we can get back to writing 40 different window managers.
QT + KDE = 1 Desktop Standard Linux (hell even Windows) folk can get behind.
Gnome + KDE = Goblin Desktop (You can thank me for coming up with that name
Merge the teams, move forward with KDE and lets get Linux on the desktop in earnest.
-=[ Who Is John Galt? ]=-
Excellent news!
And a sensible move - the best way for any technology to become a standard (defacto or otherwise) is for it to be freely available and demonstrably good.
Now this is both we can predict swift adoption of it. Some firms may view Linux as a hobby, but even that is changing - my new job I started last week has two Ubuntu PCs in this very room I am typing from.
Open source desktops fail really hard from a strategic point of view because of the split between GTK and Qt. They store l10n and i18n settings in separate places, they look different, the dialogs have different configurations, etc. It creates a desktop that feels less unified, more like a bunch of random applications than a single system.
Of course, porting GNOME would take so long that people would forget that GNOME even exists. The unfortunate reality is that this split will only be resolved when either GNOME and all of the associated GTK applications die, or KDE and its associated applications die (unfortunately, that would mean a loss of K3B, one of the applications that made open source desktops usable for non-technical users).
Palm trees and 8
Could someone summarise the difference between the LGPL and the GPL? Thanks.
LGPL allows closed-source programs to link with the library in question.
I love to see when a company understands that giving something away they will get ten times more in return. And nowadays that happens too rarely.
For a while it seemed that Nokia is about to lose to its competitors, because of Symbian and bad software. This will totally remedy it. I've also heard from Nokia insiders that they're actively dumping everything related to Symbian. It won't take more than couple of years and all their phones use Qt.
Seeing how well Apple has been selling iPhone applications, I can only imagine the potential Qt phones have in future. With Symbian that just wasn't possible, it was a total nightmare for the developers.
I wonder what will happen to PyQt? They have traditionally offered the same licensing as Trolltech, but at a much cheaper rate. I'm curious to know what Qt's change to the LGPL will mean to them.
.there is enough of everything for everyone.
I considered QT when I was looking for a good GUI for an open source project I was considering, but ended up rejecting it on licensing agreements. It has actually gotten better licensing twice since then, and now I would actually choose it.
That project, sadly, never happened because I never found a GUI toolkit I thought would do what I needed. How many other projects were similarly stalled like this?
This is indeed good news.
"If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
At last! Qt has gone LGPL! The final obstacle to our creating a front-end for MySQL has been removed!
What on earth are you talking about?
"Wise men talk because they have something to say; fools, because they have to say something" - Plato
One year after Nokia bought Trolltech, they've released Qt as LGPL. This positions Qt and KDE in an excellent position for cross-platform application development for FOSS *and* commercial projects. KDE libraries were already licensed under LGPL. This means the entire stack is now LGPL.
In the mean-time, Qt Creator, an IDE for developing Qt applications, has been announced. This will be all you need to write cross-platform applications with Qt.
Qt Jambi (java bindings for Qt) will also available under LGPL. Qyoto (mono bindings) and the other bindings (Perl, Python, Ruby) will be able to make releases under LGPL now.
These are exciting times!
DNA is the ultimate spaghetti code.
Think about Xfree. it was basically a closed monopoly. Then X11 grabbed it and opened it up further. Has it improved things? Absolutely. Basically, we NEED competition. GNOME is good competition, vs. say MS's form of competition (involving lots of dirty tricks and legal maneuvers).
I prefer the "u" in honour as it seems to be missing these days.
Qt beats wxWidgets by a wide margin. The API is much cleaner, documentation is a lot better, and wxWidgets has nothing like QGraphicsView (actually, *no* toolkit out there has anything like this).
You are right that Qt uses very umm... baroque C++, but the fact is that it is a very good toolkit, the best opensource one out there. Using new features don't guarantee a top result, and vice versa.
This sig does not contain any SCO code.
With this development, I hope Firefox and Adobe developers will jump on board...fast. I would also like to see the folks at OpenOffice.org on board the QT bandwagon as well. The interfaces I see on Openoffice and Adobe's PDF reader would look better with QT in my opinion.
So buy a commercial Qt license. These are still available have no GPL/LGPL in them.
DNA is the ultimate spaghetti code.
Try comparing KDE 3.5 to KDE 4.2... no, seriously, if you liked KDE, give it another try. KDE has come a long way from 4.0 to 4.2. Many things are much more polished and the whole experience is now very nice (obviously, YMMV). The only thing I am still missing is the printing infrastructure of KDE 3.5.
I have a hunch Nokia is looking at XCode and Apple instead. After all, the main battle for them is in the mobile market, and Apple made a big deal about the iPhone being based on OS X. So this is a bid to win over the talented developers.
QT is available on more platforms, true, and it always has been. Still, XCode was free for anyone with a Mac, and the developer kits for the iPhone only required that you own a Mac and that you registered as a developer.
You mean copyright law is inherently corrupt and restrictive?
It's great that Qt becomes LGPL, but it doesn't mean that we should stop developing GNOME and GTK...
Seriously there's lots of business that depends on GNOME and/or GTK, and lots of reasons to keep them alive...
Competition among desktop environments is good and having two large desktop environments if probably a good idea... As it drives competition and innovation.
I'm assuming we're talking about development for Linux, or cross platform here, since this is QT. Two questions:
1) Why would you program in C# on Linux? Mono support is years behind the feature sets that MS is rolling out. There are a variety of languages/frameworks that are better supported than .NET.
2) What's wrong with GUI programming in C++? QT tools seem pretty nice to me, and objects are much easier to work with than a mountain of procedural code. C++ should also be plenty efficient for application space.
So, what advantages are there in using C/Gnome?
No, the GPL just presumes to attempt to restrict what I do with my code that has no GPL code in it. Which is within their rights, but thoroughly corrupt and domineering of them.
Which makes sense, as Stallman is the ugliest type of human being--the zealot.
cough Kettle, pot, black, what?
Advice: on VPS providers
It caught Mono through an ill-considered tryst with Miguel ;)
For every problem, there is at least one solution that is simple, neat, and wrong.
You wouldn't be able to do anything if it wasn't from the author. He's not restricting you, either, just sharing the product of HIS work. Once you understand that, you'll know why most people don't care about your freedom that never existed in the first place.
No, the GPL just presumes to attempt to restrict what I do with my code that has no GPL code in it.
Flat out wrong. The GPL restricts what you can do with other peoples code who have chosen to license it under the GPL. If you don't want those restrictions on your code then don't creative derivative works from GPL code.
Don't bitch because you can't leech other peoples code: Your code, your rules means their code, their rules.
Nick
No, the GPL just presumes to attempt to restrict what I do with my code that has no GPL code in it. Which is within their rights, but thoroughly corrupt and domineering of them.
Which makes sense, as Stallman is the ugliest type of human being--the zealot.
Stallman is a member of a Jewish political movement from the first century AD whose primary goal is to incite the people of Iudaea Province to rebel against the Roman Empire?
-1 Uncomfortable Truth
The Ubuntu devs screwed up their KDE 4 packages in a bad way. That isn't KDE's fault.
Furthermore, KDE doesn't depend on video drivers. If the Ubuntu devs made a certain Nvidia driver a dependency, then they screwed up big time. KDE does not change your kernel or video driver in any way.
I'm not calling you a liar or saying you didn't have problems. I'm sure your box got hosed somehow, but it is more likely the problem was with Ubuntu's packaging.
It should also be noted that the QT 4/Nvidia problems have largely been remedies. Qt 4 used Xrender heavily, and Nvidia's driver had a piss-poor Xrender implementation. The forthcoming Qt 4.5 is supposed to move away from using Xrender all over the place, and the latest Nvidia driver has much better Xrender support to boot. openSUSE even provides a repo with weekly snapshots of the KDE 4.2 branch compiled against the weekly snapshots of Qt 4.5. In theory it is unstable, but I've had good luck with it so far.
I know I'll get modded Troll for this, but I don't care. Ubuntu has got some serious problems, and is very overrated. openSUSE puts out quality KDE 3, KDE 4 and Gnome desktops. They support all 3 currently (though KDE 3 is being dropped in the future).
Novell hires a large staff of developers that make quality packages, fix upstream bugs, backport features, etc. As much as I hated Novell for the MS deal, Novell is one of the best contributors to several upstream projects, and openSUSE is a fantastic distro.
I can't recommend it enough.
http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
Totally wrong. You didn't read the link.
What the FSF means by "compatible" is that you can include BSD code in GPL projects. However, you CANNOT include GPL code in BSD-licensed projects. My comment stands.
I'm confused -- until this moment, wouldn't they have been hoping exactly this would happen, and cursing the fact that they had to deal with the GPL?
The whole point of the GPL is to strengthen those who are materially sharing your ideals while diminishing those who are materially acting against them. I personally believe in the ideals behind the GPL, and I personally think it sucks to see that those who are materially acting contrary to those ideals are sharing the benefits of this code.
I would like to see the day arise where the closed source commercial software industry dies because it's forced to re-invent more and more wheels that open source software developers do not have to re-invent and is unable to remain competitive. That day just got further away.
-1 Uncomfortable Truth
Stallman is a member of a Jewish political movement from the first century AD whose primary goal is to incite the people of Iudaea Province to rebel against the Roman Empire?
No, he's a ground melee fighter armed with psi-blades, serving as the core of many Protoss forces, especially in the early-to-mid game.
No one forces you to use GPL libraries. Though I agree that LGPL is much more appropriate for base libraries. This is probably the main reason I haven't used GPL libraries like Qt and don't use mySQL as a database engine. I understand in the case of mySQL it's different, legally vs. what mySQL AB likes to interpret, but I respect their position, and don't use their product for a lot of things.
I don't have a problem with the GPL, I usually use more liberal licensing like BSD, Creative Commons Attr. or MIT myself, and find GPL incompatible for inclusion. If you use GPL code, your code is GPL, it's that simple... if you don't like it, don't use it. There's LGPL, MPL, BSD, MS-PL and a host of other options. You have no place to bitch about it. I like the GPL for applications, it prevents people from subverting your application without giving back (not so great in web/SaaS models though). I think that SaaS using modified GPL apps does subvert GPL a bit. It's a balancing act, trying to preserve your rights as the original developer, while allowing people to utilize your code.
I happen to kind of like MS's MS-PL license. It's kind of like BSD with a nuclear deterrent clause (anti-patent/anti-lawsuit). I feel it's probably more appropriate in most cases over BSD. Since it would allow you to protect yourself, at least a little, from the patent trolls. Sure it works better for larger companies like MS, but is a kind of cool idea just the same.
Michael J. Ryan - tracker1.info
I personally think it sucks to see that those who are materially acting contrary to those ideals are sharing the benefits of this code.
Out of curiosity, how do you feel about Samba? Or Wine?
I have somewhat different priorities -- I would rather see end-users benefit. Most often, this means I'd rather see something open than closed (I'm looking at you, Flash), but not always.
For example, many games, by their very nature (FPS, for instance), are only secure against cheating through obscurity. It might be possible to make a dual-licensed version of that work, given sufficient "trusted computing" to ensure that only the official binary is used in certain settings. A GPL3'd version wouldn't work at all.
I would like to see the day arise where the closed source commercial software industry dies because it's forced to re-invent more and more wheels that open source software developers do not have to re-invent
That actually has very little to do with open or closed, and everything to do with communication and cooperation.
I've been doing a lot of Rails work lately... Seems just about everything Ruby (especially Rails stuff) is MIT-licensed. The idea is that if an idea is good, and generic enough, you'll release it back to the community rather than try to maintain it yourself -- but when you use that stuff in your own proprietary project, you don't have to worry about licensing.
The net result is, only the stuff which is actually relevant to the site in question are at all subject to re-invention. And even then, not necessarily -- provide an API, and others will just use your service instead of reinventing it.
Nor is an aversion to the GPL strictly a proprietary thing. If you've got a large codebase in an OSI-approved, but GPL-incompatible license, it's a problem, and the GPL is about the least compatible FOSS license out there.
As a simple example: We absolutely do have to reinvent the wheel with ZFS, if it's to ever exist in the Linux kernel, largely because the kernel is GPL'd. And if btrfs ends up being good, and anyone wants to port it to OS X, BSD, or OpenSolaris, they're going to run into the same problem. We do each of those using things like FUSE, not for any technical reason, but to avoid licensing problems.
The only way to avoid reinventing the wheel is to follow sqlite's example, and go public domain -- or to define "proprietary" as "not using the GPL", which is just stupid.
Don't thank God, thank a doctor!
Whoops, your server just died.
There's plenty of reasons to use GTK and QT, including pretty much every app that has no need for internet access (and some that are using it, but really shouldn't be.)
Never mind the hefty CPU load that AJAX apps can put on a system. Needlessly inefficient, even if we do have dual- and quad-core machines.
If you want to release your code under the GPL, great, thank you very much. If you want to release your code under a commercial license, or not release it at all, I also support that decision.
Allowing a GPL option for QT was great for the open source community. However, since QT is a library, the LGPL is a very good choice now that the owner of QT doesn't need the income from selling commercial licenses, and has an interest in having the library used more extensively. It's a good move on Nokia's part.
QT gets all the benefits of the open source community development, but is now also compatible with small closed source development that can't afford an expensive commercial license.
You mean... The Judean People's Front?
Use != distribution. That's not hair splitting.
Interesting point.
Nokia DOES presume to tell you what you can do with your LGPL code. Read this quote:
"Can I switch from using Qt under the LGPL to commercial afterwards?
"Users of the LGPL versions of Qt need to comply with the LGPL licensing terms and conditions. Qt's commercial license agreement contains a restriction that prohibits customers from initially beginning development with the LGPL licensed version of Qt and then transitioning to a commercial version of Qt."
Wow! How do they know how you "initially" began development?
It seems as though some lawyer or marketing guy with no technical understanding got involved.
How does this affect the open source cross-platform GUI toolkit WxWidgets?
The definition of derivative work is the issue.
I'd love to be able to utilize GPLed code, provide the code, credit the author(s), and create a work that utilized that functionality, intact, as an accoutrement to the rest of the application.
Unfortunantly, a strict reading of the GPL leads me (and my companies OSS group) to believe that this would mean that my entire application is a derivative work that would fall under the GPL. I've gotten around this in the past by having the GPLed code in a plugin form that is dynamically specified and then dynamically loaded so that the application is significantly distanced from the GPLed code.
Perhaps that's not how the GPL is intended to work, but there's enough leeway in interpreting it, that you have to be really careful.
The problem is that you're criticizing the GPL for not living in your perfect dream world.
I think the GPL is way better, because I know, that in reality, businesses tend to rip you off, fuck you in every hole, and leave you bleeding on the street, (metaphorically speaking) if they just can!
It's the rule of profit maximization. The first rule of every business. And more often than not, it's unfortunately the only rule.
And that's exactly why we need the GPL to enforce giving back something. Because in reality, businesses will not give back anything. Why would they? To lose money and then to lose against their competition who is winning because they are not giving anything back? Makes no sense.
But why would you care about your reality, if you can perfectly continue to rant about your dream world not coming true, while ignoring it?
Any sufficiently advanced intelligence is indistinguishable from stupidity.
No, the GPL just presumes to attempt to restrict what I do with my code that has no GPL code in it.
Um, no, that's simply not true. The GPL presumes to tell you what you can do my MY code. You are perfectly free to accept the license terms or not. Your own code is unaffected by anything other than your own decisions and their consequences. You're just not allowed to deny me the right to control what's done with *my* code. If you think you should have that right, you're certainly more corrupt and domineering than RMS.
"Convictions are more dangerous enemies of truth than lies."
The GPL is a true quid pro quo. It says "I will give you my code if you give me yours."
"Give back your changes to my code", on the other hand, is an unequal bargain. You can't realistically claim that a handful of bug fixes are of equal value to an entire library.
You don't have to like the GPL, but please stop spreading FUD. There is nothing "immoral" about a license that merely requires repayment in kind.
"I wasn't necessarily saying Vala was an app development language (although it could be)."
GNOME devs are already writing full apps with it, so it is being used as such.
"If Gtk used some other language like, say, Python, with Python GTK widgets and so forth, then how would Java, C#, or even C or C++ have access to these components?"
yes, i understand that is what has driven Vala's design and implementation. i just don't agree with the "we'll wedge another home grown language in between the C and the other languages" approach. i think it's overly complicated and limits the number of people who can (and will) hack on it.
time will tell if i'm smoking crack or not, of course .. =)
"Vala isn't actually a language in the same sense as Python, C# or Java is. It's really just a syntactic extension of C and produces plain, simple, C code."
that is produces C is both a feature and a bug. it makes debugging much more awkward (and for a while wasn't even possible at all! how do you go from your generated C to your Vala code in gdb? there's a plugin now for gdb, but really .. oy vey!) and you lose all the interesting security possibilities of managed code.
"How will using Javascript help in GTK development or building custom widgets or extending GTK and its reach?"
it's simply a language that is well known. pick a different well known language if you wish. make your own runtime if you wish. certainly add your own sugar on top (see QScript for a really nice example of how that can all be done with JavaScript). there's nothing particularly magical about the Vala syntax, except that it's a new language specific to one toolkit.
which is precisely my point.
"it will be possible to extend and improve GTK to equal Qt while still maintaining the ability to use it from any language binding."
let's do this then: let's come back to this in 2-3 years (it takes time to get these things going, i know) and see if that theory works out.
my theory is that it will just be one more baroque tool that people working with Gtk will have to get their head around (and people complained about moc with Qt; they ain't seen nothing yet ;) thereby limiting the pool of candidate developers. as a non-transferable skill it won't gain much in the way of value that might cause people to learn it "just because", and yet people will write applications with it. i expect to see more and more vala usage in Gtk+/GNOME (because, well, that's already happening =) and it will cause the project to become more insular rather than less.
i do expect that those using it will get more done with vala than with plain C, but not to an extent that will make up for the number of people lost by not choosing a language syntax that is already widely known or a language that avoids compile cycles, dealing with the intricacies of C debuging, etc.
given that it's homegrown, it will also soak up resources maintaining and extending vala itself that could be put elsewhere.
combined, i expect individual efficiency of existing contributors to increase due to vala, but the overall effect on the project to be a net negative. i predict that in a few years vala will get quietly binned. bonobo 2.0 if you will: a cool idea that "just has to work, it's so well designed and advanced!" but which just didn't pan out in reality.
again, i could be wrong. and i certainly don't want to see the GNOME team falter. but vala gives me the heebie-jeebies.
You didn't get modded down because you said Linux is not good, you got modded down because of saying "Kopete is terrible" and no extra explanations, not to mention the insistent spam on the rest of the thread about your stupid attempt to call the GPL immoral mostly because you don't understand it. So, perhaps the sentiment from the guy who modded you down was not an "I disagree" but a "I hope this is a troll, else my faith of humanity would be gone"
Copyright infringement is "piracy" in the same way DRM is "consumer rape"
Under their definitions of "use" and distribute
Their definition - where 'their' is the person licensing the code. Just because they are words which can be used in contexts different from those implied by the licenser, doesn't mean that they are incorrect definitions. In the context of the GPL, they are the correct definitions.
The GPL says that the same terms must also infect any code that links to it. Hence the immoral aspect of it and why I advocate against it.
It's not immoral, because no one is forcing you into that position. You have to willingly submit to the terms in order to be bound by them... i.e. no one is forcing you to distribute code under the GPL, unless you take their GPL'd code and willingly incorporate it into your own.
By your logic, any consensual act you don't like the ramifications of is immoral...
5468652047616D65