Deep Inside the K Desktop Environment 219
Lemmingue writes "Ars Technica published a very good article about the KDE architecture. It's a essential read for anyone wondering how Konqueror can open documents in the same window or just understand the license issues regarding the Qt use.
The article describes most of the technologies behind the KDE (Qt, KParts) and how the project is organized.
The article is full of links, screenshots and diagrams."
Er? (Score:3, Informative)
Rockin! Maybe in a few months... (Score:5, Funny)
(Looking back at this post with the preview function, I'm thinking, "is this a troll, flamebait, informative, funny, all four, or none of the above?" I post, you decide.)
Re:Rockin! Maybe in a few months... (Score:3, Interesting)
I'm rather curious, how well does ArsTechnica handle a Slashdot story? I'm asking this, since most people view getting a story on slashdot as a bad thing server wise.
Thanks.
Re:Rockin! Maybe in a few months... (Score:5, Informative)
The news on the front page, on the other hand, is served dynamically by a CMS.
Re:Rockin! Maybe in a few months... (Score:2)
Re:Rockin! Maybe in a few months... (Score:2)
Re:Rockin! Maybe in a few months... (Score:4, Insightful)
Dependencies (Score:5, Interesting)
In addition to DCOP, the upcoming KDE 4 is expected to also support D-BUS, which was designed using DCOP as a model but with the added advantage of having no dependencies,
Thank $deity! KDE would in general benefit from ridding the application programmer from dependencies to GPL'd stuff. KDE "needs" (to the extent any piece of software needs anything) to be able to render Gtk-applications with native LAF, so that the application developers can choose their license freely. I'm not aware if the dependency problem with DCOP relates to Qt, however. Without GPL (and QPL), KDE could have been embraced as the standard Linux desktop environment ages ago. So far it only has the most users, but that's not enough if it's not "strategically viable" (if you work for Trolltech/KDE: please spare the lecture about corps affording $1500/dev/year, we've all seen it).
KDE could really collect the jackpot by allowing development of native KDE apps via Gtk/other LGPL'd lib. I assume QtGtk isn't up to the task yet?
DCOP, BTW, is a very sweet and underadvertised technology. We need DCOP-like scriptability for all the applications. It has a very transparent feel, just like a good Unix methodology should.
Re:Dependencies (Score:2, Troll)
The problem from a licensing perspective is that even if the theme and event loop code are LGPL, they probably link back to other KDE libraries which then link back to QT. Even though the integration libraries and much of KDE itself are LGPL, you woul
Re:Dependencies (Score:3, Informative)
The GPL doesn't define derivative work, US copyright law does. The FSF has officially recorded opinions on areas of copyright law that are vague and those opinions may or may not have influence on a possible future lawsuit.
In any case if the app requires QT to work its a derivative work if it can run independently it isn't. But KDE is
Re:Dependencies (Score:3, Informative)
Re:Dependencies (Score:2)
Actually no. KDE libs as distributed from KDE are LGPL. KDE as distributed by any distribution is all GPL. The reason is that:
KDE + QT is only a distributable combination if the QT is under the GPL.
The libs are derived works of QT and have a GPL compatible license (the LGPL) so when distributed they are under the GPL.
Copyright law covers the act of copying. Believe it or not, where you get your copy from does influence the licensing. So if I have
Re:Dependencies (Score:2)
Exemption or no exemption, applications running under Linux would not need to be GPLed, as they would be merely using the kernel, and the GPL explicitly allows this in section 0: "Activities other than copying, distribution and modification are not covered by this License; they are outside its scope." You are not copying, distributing, or modifying kernel code when you run a program under Linux, so the GPL's rules don't apply. On the other hand, linking to a library is a totally different proposition, as i
Re:Dependencies (Score:2)
Re:Dependencies (on ARts) (Score:2)
Perhaps you meant to link to this article (Score:5, Interesting)
Re:Perhaps you meant to link to this article (Score:2, Informative)
So I looked at the primer article 'Understanding Moore's Law' http://arstechnica.com/paedia/m/moore/moore-6.htm l what a great article. This primer in integrated electronics practice and theory was interesting in itself. But the fact that it made Moore's classic paper understandable made it especially valuable reading.
One errata however the original Moore article archived at www.int
Can't belive how far they've come! (Score:3, Interesting)
I now have Mandrake 10 and am very pleased with the progress, integration, and ease of use. Since I use NT 5 here at work, I am almost excited to get home and work on my system running KDE.
Good job, Mattias!
See, being from Tübingen can be Kool!!!
Re:Can't belive how far they've come! (Score:2)
Too hip to use "Windows 2000" eh?
Re:Can't belive how far they've come! (Score:2)
I've been forced into the Windows world for my new job (cellphone app development), and I agree. When I get to sit back down on my stable, fast, well-intergated KDE desktop, I feel like I'm visiting a good friend I hadn't seen in a while.
With Windows XP, everything's a fucking battle. Uphill, even. *sigh*
What's the next article? (Score:5, Funny)
Offtopic (Score:5, Funny)
Deep Inside Savanah (Score:2)
Naming for normals? (Score:5, Insightful)
How does 'kopete' relate to 'chat' or 'instant messaging'? How does 'Konqueror' relate to 'browsing the web'? How does 'Apollon' apply to p2p? How does 'K3b' apply to CD burning/ripping? KMail works. KControlCenter works. Easy for someone to figure out what it does by its name. That is what A NAME IS FOR. We're not dealing with hungarian notation here: The whole idea of a UI is that it needs to be completely descriptive at a glance, and anything that is counterintuitive or obscurantist needs to be fixed or replaced. Normals expect this, they don't think it a crutch, and they're not expected to know better (as developers who take issue with HN may argue other developers _are_ expected to).
At least Apple (and even M$ to a lesser extent) uses prosaic names like iPhoto, iChat, Mail, DVD Player, iCal, Address Book, which makes it easier for mortals to understand their metaphor (Safari being the most egregious exception). KDE ware names seem purposefully opaque, and if you want to make a dent in the GUI you either have to hope for great icons and forget the names, or you have to do more work than you should have to do.
I love KDE, I think anyone from 3 to 103 could use it comfortably, but I shudder to think about all the help calls I'd get from people just trying to find shit in the interface.. It took me an hour of googling to figure out what the hell Apollon was! Anything that can or should be in a base KDE release (or a bundle, like kdemultimedia or kdenetwork) should have a simple, descriptive name, even if it means stepping on the toes of obsolete projects or capricious developers.
(OTOH, maybe you don't give a damn about condemning your less technical friends and/or family to a life of M$ hell. Oh well.)
Re:Naming for normals? (Score:4, Insightful)
If you have any questions to what a "Music Player" is, then there is little hope for you, yet.
Hell, This menu didn't comfuse my grandmother, and you're still complaining about supporting users.
K fetish (Score:2)
KDE brand apps have a K. They act a certain way and do things a certain way. They are designed to work well together. Similar to in 1990 Micorosoft's point that Excel and Word worked together better than Lotus 1-2-3 and WordPerfect so if you used both of the later you might want to switch to the former just for ease of use.
Gnome brand apps should similarly have a G (
Re:Naming for normals? (Score:2)
I use KDE _because_ it is easy to customize.
I have absolutely no interest in working in an environment where changing your colour scheme is something you can only do by manually modifying a text file somewhere.
Your text does not agree with your conclusion, you say people are not idiots, they just have better things to do, yet then you say it needs to install in idiot mode, and make it difficult to customize.
People DO just have b
It's not that hard (Score:4, Informative)
I suppose one way of figuring this out would be that the default menu entries for these apps clearly state what they do.
Kopete is found under taskmenu--internet--Instant Messaging (Kopete). Konqueror is lister as "Web Browser (Konqueror)"... etc.
I can't say that I ever had troubles finding the right apps in KDE, even when I was a total noob.
Re:It's not that hard (Score:2)
Ummm, no. The default menu entries on your particular distribution give descriptive names, but that's a configurable option.
Right-click a panel and choose "Configure Panel", then the "Menus" tab. You'll get a selector like:
Menu item format:
My Debian install had the first option selected by default, but that may be because I
Re:Naming for normals? (Score:3, Insightful)
Re:Naming for normals? (Score:3, Insightful)
Re:Naming for normals? (Score:2, Informative)
Re:Naming for normals? (Score:3, Funny)
Re:Naming for normals? (Score:4, Interesting)
And did you ever think that perhaps some of the names are acronyms or are meaningful in other languages? Take Kate for example, what on earth does the name Kate have to do with text editing/programming? Well nothing until you realize that it's an acronym that stands for "KDE Advanced Text Editor". And I recall a class or project or something that had a name that was meaningful in German but I don't recall what it was off hand.
I can't say for sure, but I would imagine that K3b stands for "KDE 3 Burner" or something similar.
And let me ask another question. What does Mozilla have to do with web browsing? That name is only meaningful to those that know its history. That it was Netscape Navigator's code name because it was the browser that was going to eat Mosaic. But I digress, what about Emacs? How would your non "l33t" hackers know what that program is used for?
Furthermore, you make your statement as if it were the rule and not the exception, but going through my kde 3.3alpha menu, I count.....15-16 or so apps that are part of kde that do not have first glance meanings in English (excluding the games menu) and that's out of....well over 100+ apps that come bundled with KDE. And if that were not enough, the KDE menu displays the generic names for the apps on the menu as well as the program name *by default*. So I don't think this problem is as great as you claim.
Re:Naming for normals? (Score:2)
No, it hasn't occurred to anyone. You've imagined the posts to every other KDE/Gnome article that complain about exactly the same thing.
Re:Naming for normals? (Score:4, Insightful)
In much the same way that "Visual Studio" relates to programming (and not graphic design) for the unitiated, and Trillian relates to instant messaging, and Eudora relates to email, and Vivio relates to drawing diagrams.
They only sound worse than the equally unrelated Windows names because you're not used to them yet, unless you really do independently associate the act of burning CDs with the name "Roxio".
Re:Naming for normals? (Score:2)
I'm wondering if you also argue that Mac OSX is woefully unsuitable for newbies because they used the name "Safari" for their web browser...
Re:Naming for normals? (Score:2)
How does Trillian relate to chat? How does Safari relate to browsing the web? How does KaZaA (or Gnutella or Morpheus) relate to p2p? How does Nero apply to CD burning?
Re:Naming for normals? (Score:2)
Re:Naming for normals? (Score:2)
But why not call a web browser "web browser"
If MS can call their SQL Server "SQL Server" then why not use "Web Browser".
Especially appropriate for open source because do we really give a shit if the trademark becomes diluted due to being a common term or not.
minor problem ... (Score:3, Funny)
my first experience with KDE (Score:3, Interesting)
I finally decided to put my money where my mouth is (so to speak) and installed mandrake 10.
Brilliant, I must say. But, I only have one concern. I was a bit taken aback that the install ran slower then windows 2k on my celeron 400.
When i say slower, i mean that browsing the web took longer and programs took longer to load and execute. Windows took longer to move around the screen. Menus took longer to "pop up." Basic stuff, really.
Functionality-wise, I am not complaining, I really like how things are working so far. I just need to familiarize myself with a few more things (navigation, program location, ect) and ill be fine.
I admit though, I was looking forward to a slight speed increase. I was a bit taken aback that things actually slowed down.
Re:my first experience with KDE (Score:3, Insightful)
Not that this is an excuse, but that's the way it is. A current distro (like Mandrake 10) is going to first cater to those with current hardware. With a recent AthlonXP or P4 you are less inconvenienced by the difference in speed.
The fact is, Linux distros like Fedora, SuSE, and Mandrake are resource hogs, particularly running a big desktop environment like KDE or GNOME. So, you've got t
Re: (Score:3, Informative)
Re:my first experience with KDE (Score:3, Interesting)
Gentoo should only be installed at an installfest with a few powerful PCs on the same LAN running distcc.
That way your less-than-modern PC can have nicely optimised binaries with the help of gruntier machines doing the compiling for you.
There's the added advantage that there are guru volunteers at an installfest.
Un-assisted installs should use something like Mandrake.
Just MHO
Re:my first experience with KDE (Score:3, Interesting)
Linux distros are usually slower than windows for desktop use. That is especially true for big and heavy stuff like KDE, Gnome, Mozilla and openoffice.org. The nicest thing is most bottlenecks can be and are being eliminated.
Re:my first experience with KDE (Score:2)
No--big, heavy, buggy, mammoth, insane software such as KDE and GNOME is usually slower. A Linux box running fvwm2, rxvt, emacs and firefox screams. I don't know why folks waste their time with top-heavy software instead of just doing the Right Thing.
Re:my first experience with KDE (Score:2)
Problem is with glibc (Score:2)
I do not recommend Linux now on any machine uder 1gz. I switched to FreeBSD awhile ago but whenever I put Linux on my athlonXP it seems quite sluggish compared to both Net/FreeBSD and Windows2k.
I think its the linked glibc since the problem is isolated.
Re:Problem is with glibc (Score:2)
Go try out Slackware, Gentoo, or another "minimal" distribution. You'll find the Linux to be just as fast as FreeBSD. Fatter distros (who like to refer to themselves as "big boned") are another story.
KDE: Useful, but bloated (Score:2, Informative)
>When i say slower, i mean that browsing the web >took longer and programs took longer to load and >execute. Windows took longer to move around the >screen. Menus took longer to "pop up." Basic stuff,
>really.
I've got the release of KDE that came with RedHat 9, and I will say that it has gradually been winning me over, lately. Konqueror is a very useful file manager when in twin-pane mode, and Konsol
Re:my first experience with KDE (Score:2)
Re:my first experience with KDE (Score:2)
are "drow-shadows" (no idea!) and some wacked out theme on by default? Is there a "low impact" theme or something along those lines that I can grab? Im not to into theming and whatnot. I always go for the simplest and most straightforward. Any suggestions?
Ive got very little time and knowledge when it comes to linux. Im most interested in getting it set up so it WORKS, and the
Re:my first experience with KDE (Score:5, Informative)
IMHO, the best theme for KDE is plastic but almost all themes are "low-impact". Only a few used to use fancy ways to render their widgets, I don't know if any survive.
Re:my first experience with KDE (Score:3, Informative)
Style-wise, if turning off the eye-candy doesn't suffice, choose either one of the "Light styles" or the
Version-wise, if Mandrake 10 doesn't include it. upgrade to the latest KDE 3.2. KDE has experienced continual speed improvements since the release of 3.0.
Last but not least, RAM is the key. I had KDE runni
Re:my first experience with KDE (Score:2, Informative)
Re:my first experience with KDE (Score:2, Informative)
Re:my first experience with KDE (Score:2)
I could not believe the performance boast when I went to FreeBSD.
It hurts me to see Linux in this state but the horrible gcc combined wiht the worse glibc makes some nasty bloated programs.
Politics (Score:2)
and platforms, independent from economic, emotional and social issues;"
So defacing the home page to oppose the EU Parliament voting for software patents isn't a political, economic, emotional, or
social issue?
Dream IDE?!? (Score:2)
I dream of emacs [emacswiki.org]. Actually, I don't dream of it--I just use it. Can KDE's tools perform an interactive diff? Does the text editor integrate with CVS such that check-in/check-out is instantaneous? Do they abstract away remote acess issues such that anything FTPable appears to be on my local machine? Are t
Re:license issues? (Score:4, Informative)
The freeversion of Qt is under two licenses: the GPL and the QPL. While most people have a rough idea about the GPL most people don't know about the QPL, Like you for example.
Re:license issues? (Score:2)
No, I don't use it. It's not Open Source.
povray
Yes, I would use it. They're working on making it Open Source.
XFree86
Yes, I use it. All version prior to xfree86.org's idiotic license change, and all new versions from X.org are Open Source.
qmail
No, I don't use it. It's not Open Source.
xv
No, I don't use it. It's not Open Source.
Did you have any other questions? You seem to have a pretty tenuous grasp on what constitutes an Open Source license. I strongly suggest you read the [opensource.org]
Re:license issues? (Score:2)
Hmm...you're right. I always thought that the OSI defined "Open Source" and that "open source" predated them and referred to source code public availability, but it appears that I was wrong.
Well, there does not appear to be a concise name for the class of software that I am discussing
Re:license issues? (Score:2)
"Propietary", and I'm not trying to be flippant. I think that those apps are increasingly irrelevant in daily usage. I mean, why maintain your own local patch branch of a certain application when there's almost certain to be an Open Source or Free equivalent.
more-poorly-served by Qt's license scheme than the license scheme
Re:license issues? (Score:3, Interesting)
Well, yes, but proprietary is a very large umbrella term -- it can refer to everything from the Windows source code to the patents Apple holds on TrueType kerning. I meant a way of distinguishing between software that is free-as-in-beer to use and distribute, where source can be downloaded and learned from with no NDAs or registrations or anything being signed and the rest of the body of what we generally would call "non-Free", "non-OSI-compliant" software.
Re:license issues? (Score:3, Funny)
Re:license issues? (Score:2)
Use of a GPL library, like Qt, entails that people not produce GPL-incompatible software.
Re:license issues - a short explanation (Score:2)
1) The problem with a pure-QPL Qt was that it was not considered GPL compatible. The explanation missed this point, and it was the sole reason Debian and Redhat had conniption fits over KDE.
2) The explanation says that the QPL allows changing the license on later releases. While this is true, it's also true for the GPL. Neither can be changed retroactively, but authors may always change their licensings for new releases.
Re:license issues? (Score:2, Insightful)
Sweet, thanks for offering to buy me a $3000 cross-platform developer license.
The licensing issue is the one reason why I'm avoiding Qt. I dump Microsoft because they charge me lots of money for things I don't want.. and Trolltech turns around and tries to do the same thing. Qt/KDE offers me less choice and pads the pockets of Trolltech if I wish to go closed source. Saying that GNOME
Re:How geeky is that ? (Score:2)
Look, it's very simple. If you're going to use a GNU-compatible license, there's no need to worry. If you're writing the next Microsoft Word and hope to make millions, cough up $3000 dollars. Capitalism at work.
Yay, GNOME, for making one of the few platforms that one can write proprietary, for-profit software without co
Re:How geeky is that ? (Score:2)
Gnu is viral in which it infects everything it touches which also have to be free.
In this day and age of outsourcing and cutting costs additional software licenses are unacceptable unless required. More than likely if it can not be done wiht free tools it will be done with VS.net since everyone already has a license for it and that sticks people back on windows.
QT is great tecnically but I would not use it at work without a license for
Re:What does KDE stand for? (Score:4, Funny)
--
Evan
Re:What does KDE stand for? (Score:2)
Re:What does KDE stand for? (Score:2)
Umm, they dropped [urbanlizard.com] the "Kool" part about 8 years ago.
Re:Why does KDE always reinvent the wheel (Score:5, Insightful)
Re:Why does KDE always reinvent the wheel (Score:5, Informative)
The work on KDE's filemanager and HTML engine dates back to the days when the only usable *cough* browser was Netscape4.x and Mozilla seemed only like a great failure.
Kontact is basically an aggregation of long time existing KDE applications like KMail, KNode, KNotes etc., pre-dating e.g. Evolution.
That said, this question about reinventing the wheel is stupid anyway. First, there are many things about KDE that KDE has had first (like, the first usable Linux GUI
Re:Why does KDE always reinvent the wheel (Score:3, Interesting)
As for the usability problem, if the dialog has 'apply' button, then common sense says the settings will be applied after you click that button. I don't see any problem with that.
Re:Why does KDE always reinvent the wheel (Score:5, Informative)
Re:Why does KDE always reinvent the wheel (Score:5, Interesting)
Gaim sucks. Kopete's better.
Evolution is slow. Kontact is fast.
All these programs, though, use KDE technologies that made them a *lot* easier to develop and a pleasure to use.
I guess the real question is: Why not?
Re:Why does KDE always reinvent the wheel (Score:2)
Re:Why does KDE always reinvent the wheel (Score:3, Insightful)
Re:Why does KDE always reinvent the wheel (Score:4, Insightful)
Re:Why does KDE always reinvent the wheel (Score:2)
Kontact was largely contracted by the German government, but before it what was there that integrated with KDE?
If you're suggesting KDE users slum and use any old app that acts its own way, has its own settings, looks its own way, and doesn't even have the same menu structure as the rest of their KDE apps, you miss the entire point of KDE.
KDE was founded to bring consistency and integration to the user. That means writing every app t
Not only that, it's a dupe. (Score:4, Informative)
I'm convinced--the editors absolutely do not read Slashdot. The last straw was last week when Michael duped a story from three hours earlier that was still on the front page.
Re:wxwidgets (Score:2, Insightful)
Re:wxwidgets (Score:2)
What justifies this kernel/userspace boundary exception? Or the slightly more common process boundary exception? This isn't specified in copyright law. It isn't specified in the GPL. It's an arbitrary distinction. In fact it is so arbitrary that Linus included an explicit exception to the GPL because a great number of developers believed otherwi
Re:wxwidgets (Score:2)
You couldn't take an LGPLed TCP stake, but you could use an LGPLed libjpeg.
Re:License Issues with Qt (Score:4, Informative)
"Qt is GPLed, and as such, prevents FOSS developers from using any OSS licenses that are not compatible with the GPL. Ironically enough, XFree86's license is not compatible with the GPL, and hence XFree86 could not include a Qt configuration utility."
Your first statement is wrong. Should I bother reading the rest?
http://www.trolltech.com/developer/faqs/license_gp l.html#q19 [trolltech.com]
http://www.trolltech.com/developer/faqs/license_gp l.html#q114 [trolltech.com]
Re:License Issues with Qt (Score:2)
Fair enough -- I should include OSI-approved but non-GPL-compatible software. This is not remotely all OSS software: consider pine, povray, XFree86, anything under the old BSD license, qmail, djbdns, etc.
Re:License Issues with Qt (Score:3, Informative)
Relax (Score:2)
People really shouldn't fret over the GPL'd status of KDE as far as just using it goes. It's mostly a concern for developers and corporations, not so much individual users. KDE will serve us nicely until Gnome gets better.
However, ultimately, I think that people should stand up for having a *free-as-in-beer* development environment on Linux t
Re:License Issues with Qt (Score:2)
Many people see the alternative to Qt becoming the standard GUI API as
this should read:
Many people see the alternative to Qt becoming the standard GUI API as a C API, like GTK+, being adopted, and are not thrilled at such a prospect.
Re:License Issues with Qt (Score:2)
Other people are responding regarding the 4 licenses you can get QT under. It appears have partially retracted your previous comments, though your example of a shareware author still stands. BTW that can be handled via something like cripple ware where the author is careful to include the QT linking in a GPLed component and sell a commercial part that introduces additional features. That will make redistribution illegal for the commercial version (which would be a plus for the shar
Re:License Issues with Qt (Score:2)
C++ is far more complicated. Also, there is not yet a widely-adopted standard for a C++ ABI. It is currently not possible to link code compiled with two different C++ compilers on the same system (sometimes different versions of the same compiler e.g. gcc). This can cause problems where a vendor may supply a lib
Re:License Issues with Qt (Score:2)
Re:Dear mods (Score:2)
It is certainly not a flamebait post, though I admit to having strong worries about the use of Qt. Saying "GNOME is teh suck" or "KDE blows and the developers are stupid" would be flamebait, with no content. This might have errors, it might contain emotional bias, and it might make some people unhappy, bu
Re:You had it coming (Score:2)
Maybe, but I've criticized Linux issues before, argued that Palladium/TCPA are weak and ineffectual and not particularly dangerous, and Apple issues on apple.slashdot.org and not been modded as flamebait for doing so -- I've seen many +5s. I mean, if Slashdot was literally nothing but groupthink, I wouldn't spend my time here.
Well, who knows.
Re:License Issues with Qt (Score:2)
It is certainly true that, if KDE is willing to become X11-only, it would be possible for the KDE project to fork Qt at any point. However, it would also force KDE and Qt and all software that uses it to forever be GPL-compatible (excuse me -- there was a correction further down -- OSI-accepted licenses would also be accepted).
Even if Trolltech would ceise to exist there i
Re:License Issues with Qt (Score:2)
Not really. It would leave Qt stranded as GPL-only, with not even the remotest possibility of creating an open source application, even if you had the money.
Re:License Issues with Qt (Score:2)
I think you mean "closed-source".