UserLinux Continues Debate Over GUI
An anonymous reader writes "Following up the earlier Slashdot item on this, LinuxWorld is carrying both sides of the discussion as to whether UserLinux GUI should be GNOME only, as Bruce Perens last week decided "by fiat," or include KDE."
Try to find a commercial Gtk app. After googling, you'll perhaps find some from Ximian ( which can arguably be ruled out ), and perhaps a few more. Now try to find a commercial Qt app. You'll find hundreds ( including high-profile ones from Adobe and others ).
This means that commercial developers are willing to pay for a quality toolkit, as much so on Linux as on other OSs. Free software folk needn't worry either, as Qt on X is free as in both.
Sigh. It's all here: On the GUI Selection in UserLinux.
I've said it before. I agree 100% with including only one GUI. The reason for Gnome over KDE is simply a license issue. I personnaly like KDE better and it is what I will continue to use, as I am not the target "user" of userlinux.
It matters to the KDE folk, because we ( a group of some twenty enthusiast KDE and Debian developers ) were intending to work together with UL on making UserLinux a KDE based enterprise distro that would easily beat other available offers. Bruce's decision stopped this plan, but we are continuing the effort standalone now. Furthermore, the licensing argument is bogus, read why below.
Ouch. Why is a standardised API for all linux guis needed? You -can- run programs written for different graphical toolkits under different systems. You don't need to run gnome for gtk+ or gnome apps; you don't need to run kde for QT or kde apps. Any toolkit for which you have the libraries installed will run under any window manager.
Windows has a -lot- of GUI toolkits. Sticking to microsoft ones, there's MFC and raw Win32, among others. There's also java's swing, wxWindows, and, yes, QT.
If you want interoperability - great, it's already there. If you want the one standard API - hey, there's raw X11 (xlib is fun!); it works.
For some tasks, using one API over another is easier. At other times, a developer prefers one achitecture over another for various reasons. It can be -good- to allow a programmer to do things in different ways.
Program in QT as much as you want; it won't be identical to GTK, although the underlying system might be the same. Given an installation of QT, it doesn't matter if someone is running xfce4 or openbox; it runs.
How Windows can reach "80%" of people is that it is installed on most desktops. Unifiied GUI API's are not the reason; it does not have one.
" My understanding is this is to be an enterprise user system, not a home user or personal user. The whole point is enterprise management and distribution management. "
'Zakly.
What is it that GNOME has to offer in this regard?
1.
KDE Kiosk Mode, also known as lock-down mode, makes it possible to restrict the capabilities of the KDE3 environment in powerful and flexible ways including but not limited to the ability to:
1. Restrict desktop, application, and printing actions.
2. Restrict internet access on a URL basis at a desktop-wide level.
3. Restrict desktop resource customizations.
Such functionality is invaluable for unattended operation of UserLinux in a kiosk setting as well as for wide-scale enterprise deployment of a controlled environment.
2.
A new easy-to-use administration tool, yet in the stages of development, will build on top of the KDE Kiosk Mode and expand upon the features in an exciting direction. The tool will enable scalable management of users, their settings and IT privileges. The design goals include:
1. Full scalability from medium to large organisations.
2. Usable by both KDE and non-KDE applications.
3. Seamless integration into existing IT infrastructure.
4. Roaming support.
Please expect more detail and an official announcement in 2004 Q1.
3.
An Integrated Terminal Server and Client employing a new and highly efficient X compression technology thereby enabling seamless desktop integration of applications based on a remote compute server. This feature will be in addition to KDE's existing remote desktop support (VNC and RDP) and is especially exciting in light of the fact that it enables a satisfying desktop experience on a thin client even with a low-bandwidth connection (e.g. dialup) to the application server. The technology will bring us on par with Citrix, Tarantella, SunRay and Windows Terminal Server offerings.
4.
KDE Print: Enterprise-grade technology for intimate management of printers and print jobs, adaptable to innumerable creative tasks.
5.
KDE Core Killer Apps: Whilst too numerous to list here, we expect to leverage core KDE applications where appropriate. In addition to the well-known applications several pertain directly to the enterprise including:
1. The upcoming Kontact, an integrated personal information management suite, which in conjunction with the Kolab Server will provide a powerful standards-based groupware solution.
2. The upcoming KERP, an Enterprise Resource Planner.
3. A set of financial trading tools currently in development.
ISVs in particular will be pleased to note that the KDE/Qt environment sports a rich body of development tools that leverage the elegant and powerful framework provided by KDE/Qt as well as tools enabling development in areas ranging from HTML production to UML modelling, CAD design and document publishing.
6.
KDE brings an impressive body of localization and internationalization effort to the table. With over 80 translation teams and KDE 3.2.x to be available in an estimated 50+ languages, KDE is a compelling choice for an enterprise desktop with an international audience.
Where is GNOME's visionary roadmap for a subsystem as powerful as that?
Thought so.
I don't mean to stalk you in this story!
You can see KDE go the same way as netscape if UserLinux ever becomes popular.
KDE made a choice when it based itself on Qt. Times change and KDE's problems have changed - KDE is a good Free Software* desktop environment. But because Qt is GPL'd, it presents a barrier to proprietary development that is against the goals of UserLinux.
If being the default desktop of UserLinux is so important to KDE, why don't they re-implement their desktop ontop of an LGLP'd toolkit?
If it's not so important that they are willing to do that, then people should stop being upset. In the choice of a default there will be a winner and one or more losers. XFCE lost here too, but they're not whining. Only one desktop can be the default!
As for the Netscape comparison, I think there were other factors which led to Netscape's demise, like a bloated product (Communicator). Look how people prefer Firebird over Mozilla. There's still time for IE to be ousted - all the time in the world, from now to the end of time.
* Or is it? Look at what TrollTech say here - TT don't want you using Free Qt on inhouse projects, but the GPL says you can. This makes me distrust TrollTech.
Yours Sincerely, Michael.
First of all this is old news, there is no continuing debate. This is old stuff.
Second of all, the Qt license discussion is completely moot. Have you even read the proposal?
Third of all, Bruce Peren's project is vapourware unlike the KDE project which is already progressing. Just look at the latest KDE-CVS-Digest and you see already Kapture and KDebConf coming out of this.
(Please browse at -1 to read this comment.)
This is a better link to the GNU perspective on the matter.
Yours Sincerely, Michael.
This is absolutely true.
From my experience, people will prefer KDE over GNOME (I don't know what you're talking about the beauty of GNOME, yes, so it's streamlined - that in my experience, is lack of options - but is ugly, not customizable, it's file manager is anything but usefull to real work, it's applications are not so good and it is slooow...
And let me explain my experience. A year ago (I used RedHat 8) i installed in my organization (a non-profit one, 10 computer seats) an LTSP server. The users had no previous experience in Linux and not that much experience with Windows anyway (they're just users, they don't go about configuring anything). When asked to make a choice, they choose KDE. Over the relative slow network (a switched 100Mbit network, with realy low hardware for X stations - P2-266 and 64Mb Ram, and a not so great server - Athlon 1,2 Ghz) KDE 3.1 runs a lot faster than GNOME (quite smooth, actualy), feels integrated, Konqueror rules (they use it for file management and web browsing), kmail is just right to them, it has integrated image and PDF viewer, very easy printing with preview, and, once again, I repeat, QT runs faster than GTK, XUL and VCL (I wish kde.openoffice.org would finish the integration very soon, it's just what we need). Also, I don't know why everyone is complaining about Kcontrol, it's a non-issue here. After I showed them how to use it and where to start, they're quite comfortable with changing settings (mostly visuals - icons, backgrounds, window decorations and styles).
And, because I'm a web developer, I can use Quanta and KDE's transparent network integration to work over fish on the webserver, running, of course, under WindowMaker
I'll do the stupid thing first and then you shy people follow...
"a payment to an author or composer for each copy of a work sold or to an inventor for each item sold under a patent"
Does Qt require royalty payments? No.
However, if you make a commercial closed source product (and do not wish to use the GPL) you will need to buy a one-time commercial Qt license for the developers that work on your product.
You can read more about commercial Qt licensing here.
So next time you hear someone talk about Qt royalties you now know that that person either doesn't know what he is talking about or he is trying to sell you a bridge.
Except that KDE is getting the same accessibility support as GNOME, the OO.o KDE integration project is alive and well, WalMart has already been selling KDE systems in the form of Lindows, and many of the articles you link don't even mention GNOME, or don't exist.
How many times does this need to be pointed out? QT/KDE does NOT require the purchase of a licence to be used in developing commercial products!!
Read the QT FAQ. You can freely (free as in speech and as in beer) develop software for whatever purpose you desire using QT, including commercial purposes. Millions of people use software developed with free QT for commercial purposes every day.
To make this even more clear: QT is released under the GPL. The GPL forbids anyone from restricting the use of QT or products derived from QT under that licence. In other words, you CANNOT develop a product derived from GPL'd code and say "you can only use this for non-commecial purposes."
The GPL is an excellent licence for commercial software for reasons to numerous to mention, vastly superior to, say, a typical Microsoft licence.
Lets say a business has to choose between two software products with equal capability but different licences. The first product is free to use, can be used on many machines, comes with its source code, and can be modified and redistributed. The second product needs to be licenced seperately for each machine it runs on, cannot be copied internal let alone redistributed externaly, and does not even reveal its source let alone allow for it to be modified. Which is product is superior for commercial purposes?
I think this confusion about licencing arises because far too many people confuse COMMERCIAL software development with CLOSED SOURCE software development. COMMERCIAL does not equal CLOSED SOURCE!!! I use Free (open source) Software every day for commercial purposes. Millions of people do.
Now, for those people who want to write a closed source software product, they can also use QT for this purpose... however in that case they must purchase a commercial licence from TrollTech, instead of licencing it under the GPL. This is only logical... if you want to sell a software product under a closed source, proprietary licence, and not allow your customers to get the source or have the right to freely use it, why the hell should Trolltech (and other developers of Free software) have to give you THEIR source for free?
This is why I think that QT/KDE has a SUPERIOR licencing scheme to that of GTK/Gnome... QT/KDE allows for closed source development but ENCOURAGES open source.
I have great respect for Bruce Perens, but he is way off base on this. If there must be only one desktop environment in UserLinux it should be KDE. It is very disapointing to see him get behind the platform that is LESS beneficial to free software.
I'm pretty sure the top C++ GUI toolkit for commercial development in terms of statistics would be the Microsoft Foundation Classes, or the ATL (or a mix). It probably isn't Qt.
You're also overlooking the efforts of the GTKmm team, which is made up of several people with many years of commercial development experience. All the reviews of GTKmm I've seen are positive - it has the advantage of being pretty new and therefore modern. Look at the email addresses of people on the GTKmm lists sometime - there's plenty of commercial development going on there, but GTK doesn't have a dedicated sales team that compiles big lists of them.
Why? YOu can always use a commercial qt license and release your code under any license you wish. It's your code after all. You can even modify the commercial qt and ship the modfified qt with your closed source product. Also you can use GPL code on MacOSX, EMbedded, all Unix/Linux and Windows using X+Cygwin. Which is pretty much 100 % of all relevant OS.
The KDE camp still refuse to admit they made an unholy alliance with the devil and will forever be damned for it. The GNOME camp saved the Free Software world by realizing the danger and running balls to the wall to quickly organize themselves and catch up close enough to KDE/Qt to prevent it from ever becoming a defacto standard.
The Gnome camp should be thanked for making TrollTech give us qt under the linux license GPL. Mission accomplished, I'd say. Of course, if Miguel de Icaza had worked on Harmony, the free qt replacement instead of using the gimp motif ripoff toolkit in C with OO latched on top to code a crappy second Desktop environment, we would also have just KDE today, using Qt under GPL as well.
GNOME has produced some nice software, but without dotcom money, it probably won't be able to keep up with the technically superior QT/KDE system. Basing the so-called "user"-linux on Redhat's and Ximian's GNOME and excluding Qt/KDE is a waste of everyone's time.
Moritz
It comes configured the way most would need...uses kde and is debian -- how much better can you get?
www.mepis.org
> one of which is gtkmm which is designed much better than Qt, and another which is Gtk#.
:) ). I gave up after a month or so because half of the classes in gtkmm worked as expected in the docs, and half of them didn't . I also found the toolkit much harder to learn and use than MFC, but I was willing to stick with it nonetheless. I ended up learning Qt soon after, and I was highly impressed by it's ease of use. It seems to be quite elegent toolkit. However, it didn't look like my desktop of choice, so after a while, I learned wxWindows, which uses gtk on X11, and have never looked back.
gtk has a number of high quality bindings, but Gtkmm is certainly NOT one of them.
I'm a MFC programmer by day, and a Linux hobbist by night, and about a year ago, I was looking for something to learn. I did not want to learn Qt.. I prefer GNOME to KDE, and I did not want to learn pure gtk, I'm a C++ programmer, not a C programmer.
I ended up starting to learn Gtkmm by writing a IM client (imagine that
I urge all C++ developers to look at wxWindows for GNOME-related development, and Qt of course for KDE development. Gtkmm however, just has a very half-baked feeling that makes me wonder if most people who write applications with it have to look at it's source to do things.