Novell Desktop To Standardize On Qt [updated]
Balinares writes "NewsForge reports that Novell has settled for Qt as its Linux desktop development environment, casting more light on their strategy to unify KDE and GNOME. This ought to be interesting. The prospect of using Mono to code against Qt makes me drool in advance. Maybe programming will suck no longer!" Update: 03/30 00:01 GMT by T : Sounds like that story doesn't quite hold water; Nat Friedman writes in this Slashdot comment that "We have not decided that we are standardizing on Qt for the desktop. ... We support development with a variety of toolkits, and our internal development is done using the right tool for the right problem. This includes Qt, Gtk, VCL, XUL and others, depending on the application."
I'm pretty sure you can use QT with all your GPL stuff all you want.
Given that Qt is available under the GPL itself, it's an absolute certainty you can use Qt in a GPLed project.
How much will it cost to use QT to write business apps?
m l
From the trolltech site: http://www.trolltech.com/products/qt/licensing.ht
" Use the Qt Commercial License to:
Build commercial software.
Build software that is not sold, but that advances the business goals of a commercial enterprise."
No. Qt hasn't had annoying license restrictions in years, as it was released under the GPL four years ago, allowing for such projects as a GPL'd Qt3/Win32.
Somehow, this is still news to people...
It's a bit odd that this article wasn't posted to /. sooner, as most people first noticed it when it made osnews almost a week ago.
Many BrainShare attendees have already dismissed this as a badly written article, as it combines statements from Novell about their desire to see a unified Linux desktop (see one of the worst examples of tech reporting in years) with rumors and rampant speculation. There is no basis of truth in the heise article.
I'm sure Novell will send out someone with authority in due time to stomp this out, but this is just what I've heard so far.
The german newsmagazine HEISE a very popular and creditible organisation was reporting about that as well. As they got told from first hand QT/KDE is doing the run.
You can read more here on their site.
The combination of Mono with Qt and Linux is great. The Open Source nature of these applications means that they are virtually bug free. I am glad to see that Novell is in top form once more, supporting Linux. I have used Mono extensively and it really is great. It is not proprietary like Java, and it is a wonderful tool to use. Mono is the programming platform that will put Microsoft to rest once and for all!
---
Find out more about the impending downfall o
It costs nothing to develop business applications qith the QT toolkit. The only requirement is that if you use the $0.00 license(GPL) the app must be GPL. It really isn't much to ask.
The fact that Novell is going to use QT is very telling. Novell is a software corporation whose existence past, present and future relies on selling software. That means that while they will throw the open source community a GPLed bone (Yast, Evolution) they will also offer up lots of closed source applications and some will be QT based.
Novell is not afraid of having to pay a very reasonable licensing cost for commercial development and neither are most other software companies. They already pay licensing for MS Visual DEs, Borland DEs and probably many others. Paying for a QT license is a minor cost of doing business and it will not deter any serious software house.
So, if you want to do your closed source software with Qt, you can pay through the nose. However, if you develop GPL software you are free and free. Like with GTK, right?
> That is the same as GTK,
False. GTK is licensed under LGPL, which is far less restrictive. Do some research before you spout this drivel.
[ home ]
Actually it doesn't matter much...
You can do object oriented and event oriented programming in c fine.
Besides C is much more portable and there is a C++ interface for GTK to.
So the only difference between QT and GTK from a language perspective is that with GTK you get a choice, QT you only get C++. (Not counting even higher languages such as C# since both have wrappers for that and are sort of equal)
Jeroen
Secure messaging: http://quickmsg.vreeken.net/
It seems to be confusing that one can buy a commercial version of Qt. That version however is extra. If you don't want it, just stick to plain old GPL'ed Qt.
MySQL is doing something similar. Nobody seems to be confused by that one though.
This is your sig. There are thousands more, but this one is yours.
What about wxwidgets (the GUI development library formerly known as WxWindows? Sounds like a safe compromise with strong portablility and no licensing hassles.
No, GTK is licensed using the LGPL license. Meaning that you can develop GPL software with it and commercial software without paying a dime.
We're not really sure where the rumor came from that Novell is standardizing on Qt as its desktop platform. Chris Stone said no such thing during his keynote; the video for the keynote is available here:
http://www.novell.com/brainshare/keynotes2004.h
Novell supports GNOME and KDE, Qt and Gtk. We have not decided that we are standardizing on Qt for the desktop. First of all, most software developed for the Linux desktop is developed by the broader community, and Novell could never impose a standard platform on the community at large. We support development with a variety of toolkits, and our internal development is done using the right tool for the right problem. This includes Qt, Gtk, VCL, XUL and others, depending on the application.
We do not regard the variety of toolkits and platforms in the Linux world as a problem, as long as there are standards and shared code which allow applications to work together.
And frankly, today's Linux toolkits and platforms are one of the least interesting topics on the Linux desktop today. The important issues for this industry and market are our opportunity to innovate in information management and collaboration, improving interoperability with Windows users and services, bringing more ISVs and developers to the Linux platform, enhancing the usability and consistency of the various components that make up the desktop, enabling Windows migration with tools and training and documentation, and creating a manageable Linux desktop to enable large-scale deployments.
We see freedesktop.org as one of the most important and central elements of the Linux desktop for the next several years. The desktop today is made up of a number of components, including OpenOffice, Mozilla, Evolution, and of course GNOME and KDE. Over time we hope to work with freedesktop.org to unify the key interfaces and functionality of these components, to improve integration for users and provide a common open
source desktop platform.
Nat Friedman
Novell/SUSE Linux Desktop Lead
That's bullshit.
The first correct statement in your post. Nothing stops your customers from using Qt to develop software, as long as the software is either GPL'd or for internal use only. If your customer wants to develop proprietary software to distribute for profit, perhaps you can do them a favor and recommend Windows, since windows users are more likely to buy into (literally) the proprietary software model.
Liberal (adj.): Free from bigotry; open to progress; tolerant of others.
Bullshit. I've watched that keynote from Novell's website. (and you can too) All he said is that SuSE 9.1 will be getting a QT-based Openoffice. THAT IS ALL. nothing more. The journalist completely missinterpreted this, saying that SuSE is going to standardize on QT. It's all a missunderstanding.
Life is offtopic.
They chose it because C++ is basically the standard for GUI development. Programmers who do a lot of work with MFC will find the transition to QT easier and there is also the STL. So, to me, the choice of a C++ toolkit seems obvious and is probably the only reason QT was chosen.
As Nat has posted elsewhere, the Heise article is wrong.
My team and other teams within Novell continue to
develop and use Gtk as their toolkit (recently
open sourced Simias/iFolder for instance) and
all of the Mono GUI development tools.
The only use of Qt that am aware of today
is SUSE's recently open sourced YAST.
Btw, if you have been following my posts on
my blog and on the desktop-devel-list, you will
know that my feeling is that all of the existing
toolkits today (Gtk, Qt, XUL and VCL) will
become obsolete and we need to start looking
at the next generation toolkit system.
Miguel
Will generic .NET apps routinely work on Linux? Or is all developed code going to be toolkit specific?
.Forms interface. Good luck is all I have to say. Seems like it would be better to make a Forms-to-Gtk (prefer) or Forms-to-Qt interface.
It's been a long time since I looked at this stuff but this is what I knew back then.
C# is a lot like Java in that is it "portable" but not really. That is, all the underlying API's have to be there or it won't work and Mono does not currently have all the stuff that you get with Microsoft.
For example, on Windows the default C# GUI API is using the Windows.Forms interface (or whatever it is called). Mono doesn't have that interface yet. Last I heard they were planning to use Wine to provide the GUI
And the same holds for other API's not yet in Mono.
So some apps will work but most won't even though the bytecode is compatible.
The ratio of people to cake is too big
On Windows and Mac there is no cost for a license to use the bult-in widget kit, only for extra tools, like compilers, IDEs, etc.
On Novell Linux, there will be a cost. So-long, shareware market! Not that there is really a Linux shareware market now, but this would be pretty effective in stopping one from appearing. I also wonder if Trolltech will try to submarine Linux at some point in the future, ala SCO.
Novell could sell "Novell Developer Studio," which includes KDevelop, QT Designer, etc. plus a QT license. This would make it look like "Windows plus Visual Studio," except more expensive.
Napster-to-go says "Fill and refill your compatible MP3 player", which is a lie. It's not MP3. It's WMA with DRM.
From the Trolltech website:
When Qt Free Edition is Open Source and GPL, can I use it to make commercial (proprietary/closed-source) software?
No.
You will still need to purchase the Professional or Enterprise Edition to make commercial (proprietary/closed-source) software with Qt.
Which suggests that I cannot make a GPL'ed commercial application? Perhaps that should be clarified. I also cannot make a GPL'd native (non-Cygwin) Windows application at all. QT is nice to work in, but it's a long way from being truely free software. I guess that theoretically, QT Free could be ported to Windows by a 3rd party, or that you could go to court over commercial GPL'd software, but I doubt it's worth the hassle while there's other free-er alternatives.
Forget thrust, drag, lift and weight. Airplanes fly because of money.
Yeah, but it will be spaghetti code, using type-unsafe macros. Have you looked at a custom GTK+ widget implementation in C before? It is some real ugly code.
So the only difference between QT and GTK from a language perspective is that with GTK you get a choice, QT you only get C++. (Not counting even higher languages such as C# since both have wrappers for that and are sort of equal)
Actually, there are a lot of bindings for Qt. PyQt, for instance. Many consider them to be superior to their GTK+ equivelents.
Writing something in C so it can have a lot of bindings is IMHO not the way to go. There should be other good reasons for writing it in C. You can always add a C interface to it, even one that doesn't use sockets. And many high-level languages have their binding interfaces specifically designed to support C++.
Where did you read that? It only says you cannot make proprietary/closed-source software with Qt, just as you can't with the GNU Readline library or the GNU Scientific Library or any other GPL'd software.
Whatever they say in the FAQ is bollocks. They have released their code under the GPL, hence you follow the GPL, not any "extra rules" they've come up with. The GPL says nothing about whether software is "commercial" or "non-commercial", it only states you must make available and distribute the source under the GPL. They've violating their own software license if they try and enforce extra rules (see clause 4). I agree that the Windows think is a big PITA, however IIRC there is a project attempting to write a GPL'd port of QT for Windows.
Please specify a single popular commercial app that uses GTK...
Evolution.
Maybe for unix and mac, but there is no windows version. The windows version was 2.something, and if you buy a book you get an older 3.1 version as well.
Open Source Java Web Forum with LDAP authentication
GTK (and most GNOME libs) are LGPL. As in: Permits linking with proprietary apps.
So please mod parent down.
If they don't want to pay for a commercial QT license, they are in exactly the same boat that they would be if they wrote a GTK app; i.e., if they want to distribute, they have to distribute under GPL.
GTK has no such restriction. It is released under the LGPL.
Irritable, left-wing and possibly humorous bumper stickers and t-shirts
Eh? There are lots of bindings for Qt. Binding to C++ isn't actually that hard once you get certain tricky things worked out. KDE has a library (libSMOKE) that abstracts out those tricky things, to make writing bindings much easer.
A deep unwavering belief is a sure sign you're missing something...
To release GPL software, you're covered under QT's GPL license, so you pay nothing.
It specifically clarifies commercial to mean closed source/proprietary. That's the whole purpose of the parenthetical. If that statement is unclear to you (the figurative 'you', not BiggerIsBetter specifically), then you probably shouldn't be responsible for making legal decisions on behalf of a company.
GCC has had a stable binary C++ ABI for awhile now. In fact, its the same stable binary C++ ABI Intel C++ uses. So the ABI bit is an old argument. While C++ suffers from the FBC problem, Trolltech is careful about hitting that problem in Qt. Thus, Qt has remained binary compatible throughout the whole 3.x series, which is nearly three years old at this point.
A deep unwavering belief is a sure sign you're missing something...
My question is what about the interapplication communication issues. GNOME uses CORBA and KDE (Qt?) uses DCOP; then there is also DBUS, an extension (superset?) of DCOP. Is Novell planning on causing GNOME to move away from CORBA and toward DCOP/DBUS? Are they planning to add CORBA support to Qt? Are they ignoring this issue and hoping it will go away?
It also sounds like you don't recognize the legitimacy of dual-licensing models. Do you support or oppose the LGPL? The LGPL enables companies to use GPL libraries, free of charge, to build closed source software (just like the BSD licenses).
All Trolltech is saying is that if you want to use Qt to build closed source software, then you have to pay for Qt. They don't offer a GPL version for Windows because people were abusing it.
At core is whether or not an application built on Qt is a derivative work or not. If it is, the GPL means you can't build a closed source application on top of. This is a feature that has prevented corporations from using GPL libraries. Hence the LGPL, and dual-licensing in general.
It sounds like you're just mad that Trolltech decided not to go with a "free for commercial use" model like the LGPL.
Microsoft clumsily exposed a lot of the Win32 API underneath the Forms API. Bindings must either reimplement significant portions of the Win32 API (good luck!), or call through and let Wine handle the messy bits.
Either way is sub-optimal, but at least using Wine is realistic!
What about that Ximian purchase? I guess it was just for Mono.
The Ximian purchase was for a number of reasons most importantly Mono and Red Carpet. Novell hopes to leverage RedCarpet into Zenworks for Linux. If you aren't familiar with Zenworks you should read up, because that is what will catalyst large scale Enterprise client rollouts (that aren't terminal based).
I couldn't tell if you were directing that at me or not, but since only quoted that one like and mention zealots, I'll assume you weren't. I totally agree with you. I actually use GNOME as my desktop, but have used a commercial version of Qt, and commercially licensed Psi, to produce a closed source app. I think the big thing is when people talk about freedom for the developer and freedom for the consumer without realising they're contradicting themselves when they change point of view between developer and consumer.
> Ironic, that a GPL'ed toolkit should be considered inappropriate for
> basic foundations of Linux software..
But that is the reality. Core libraries should be LGPL to prevent no end of problems. Imagine trying to get Mozilla or OO.o up and running in a world where Qt was the only suitable toolkit. Either the Windows & Mac ports would have to be dropped or each and every developer would need to possess a license for the commercial version of Qt.
Democrat delenda est
They offer versions(Mac/X11) under either the GPL, or you can buy any version under a license for commercial apps. TrollTech also recently released a version for Windows for non-commercial apps, this license doesn't seem to require you to distribute your source.
Pricing info is here, it's pretty reasonable, they have some decent GUI design tools too.
Restrictions
Software created with Qt Free Editions is governed by the terms of the GPL and QPL.
The Free Edition licenses do not allow the development or distribution of commercial software.
Last time I checked, the GPL license for QT is only avaliable for QT/X11, NOT on QT for Windows.
It doesn't matter because the topic of the day is "Novell Linux Desktop".
Don't blame me, I didn't vote for either of them!
That doesn't make any sense. Novell is competing against Microsoft, so the MS toolkit(s) aren't a choice for them. Besides, Qt is better than anything MS has yet to release. Even the .NET toolkit is stone-age compared to Qt. Its not font-sensitive, it doesn't have a layout manager, etc. So MS won't have a toolkit competitive with Qt until the next iteration of the .NET toolkit, which is slated to have these features, comes out with Longhorn.
A deep unwavering belief is a sure sign you're missing something...
If GNOME/Gtk is REALLY a friend, let's see them place everything under GPL (for true software protection) rather than the LGPL.
But it's about freedom of choice. Hasn't that been the free software movement's cry for years? The bottom line is that GNOME/Gtk gives me more freedom than Qt. Heck, even Microsoft gives me more freedom than Qt.
Why should Trolltech be more entitled to make money from software than anybody else?
Is someone suggesting their software business plan is only to sell like 10 copies of their software, so they can't afford to by a real development license??
Have you ever worked in a commercial software environment? Probably not.
(1) You're not likely to be using a cross-platform library unless you're making applications on at least two platforms (say: Linux and Windows). A Qt licence for two platforms is $3000. This is significantly more than the cost of an entire new computer. Try asking your boss to replace your computer equipment for you now - or else. Yeah, didn't think so.
(2) If you're planning on a shareware-type scheme, at, say $20 a pop - you now have to sell 150 copies just to make back your investment on the QT licence before you see a dime (not counting bandwidth, hosting & support fees, etc). Low key, shareware-type projects generally don't sell that many copies. Plus: hey, buddy, can I borrow $3000 for a Qt licence? I'll pay you back if my software sells 200 copies, I promise.
(3) Even for commercial development, $3000 is far too much. A full copy of Microsoft Visual C++ Professional (which includes the MFC framework) costs $600. For one $3000 Qt seat licence you could outfit five developers with top-of-the-line Microsoft tools.
The larger the software development environment, the worse the problem because the $3000 per user adds up very, very quickly.
Why, then, is Novell continuing with Evolution and not Kontact? Hmmmm? :-)
Novell is not continuing with anything at the moment. Besides, Suse hasn't been a part of Novell for long.
Also, a lot of KDE users use Evolution as well.
Don't know where you get that idea. I certainly don't.
Take a look at the design of each, Evolution's is superior (well, except in the case of imap - they both suck there, but I've noticed just today that there is an all new IMAP implementation in the Evolution source tree in CVS which looks to be _really_ good).
I have. Kontact is nice and modular, meaning you can embed its components in other things. Besides, it depends on what you're looking for.
I've also looked at KMail sources as I'm overall a KDE fan and was the first mailer I had thoughts about contributing to but their codebase is a complete mess.
Your opinion. I could say that no one in their right mind develops object-oriented GUI applications in C.
Evolution has at its core (asked on irc once) around 10 developers total, including GtkHTML development and QA. Kmail (which is only *part* of the KDE PIM suite) has approximately 50 developers (according to their website - kmail.kde.org)
Mmm, nice try. There are a core of developers paid to work on Evolution, and then there are numerous contributors. It is, afterall, a Ximian product. With KMail I expect you are looking at the authors page and every person who ever contributed to the project! This doesn't mean that they are still involved and it certainly doesn't mean that they are paid to work on it. Besides, I'm not talking about KMail.
Lets assume for the sake of argument that the contacts portion of the KDE PIM suite is only 1 developer and that there is only 1 developer on the KDE PIM Calendaring component. That's still 40+ developers more than the Evolution team, which, until recently, had almost no outside contributors (even if you add up all the contributors and count them as Evolution developers, you'd still have a far smaller count than 50).
See above. Besides, you're saying that if KDE PIM has one developer then that is 40+ more than Evolution. So Evolution has -39- developers does it?
Oh, and KMail at the very least has been in development for a number of years longer (ie. at least 2+ years).
I'm actually talking about Kontact here, which is something I can actually compare to Evolution. Kontact as a whole has been around for less than two years.
Actually, AC is correct - Novell *is* continuing with Evolution development. Being that I'm an Evolution developer, I think that puts me in the know.
We've also been busy extending GroupWise's protocol so that Evolution can talk to it for remote Calendaring (and Contacts too I think?).
This will all be available with Evolution 2.0 and the next release of GroupWise (6.5. something er other).
There are also plans to integrate iFolder as an Evolution backend for Contacts.
-- fejj
Not in the area that is being discussed. We are discussing control. Money usually follows control but it does not need to be "per-user" charge. Merely ridiculous "per-deployment" surcharge on the toolkit. It amounts to the same thing since you will then collect per-user form of a tax on all revenues of software vendors. Better, since you yourself do not need to deal with those pesky users directly.
So in your example: to install Opera you pay Opera who in turn pays portion of thier per-user revenue to Trolltech. Etc. Right now the per-developer fee is flat but thats only because QT is not an indispensable part of Linux desktop... yet. Wait utill it becomes so and you will find out there is no limit to corporate greed once a company has a lock-in control of something.