GNOME vs KDE: which is right for you?
Linux’s path to mainstream acceptance owes a lot to KDE and GNOME. While both have contributed enormously towards the ultimate Linux dream, they’re also heated competitors. Who will win the war? Read on and pick your side wisely…
KDE vs GNOME – Developer’s Perspective
In this section we will see what KDE and GNOME have to offer in terms of developer technologies
Libraries & toolkits
KDE: KDE is based on Trolltech’s (now Nokia-owned) Qt GUI toolkit. Qt is a C++ based GUI toolkit which also supports non-UI-specific APIs such as network, text processing, internationalisation and web rendering framework. From day one, Qt was designed to be cross-platform. Qt in its current edition (ver 4.x) is stable on all of its supported platforms, including Mac OS X and Windows. It uses the respective platforms’ native APIs to deliver the native application user experience. Most of KDE’s developer offerings are based on Qt APIs, but you can develop KDE applications without using Qt libraries directly.
Most of KDE’s functionalities are exposed by core KDE libraries such as kdelibs, kdepimlibs and kdesdk. You can also use additional libraries such as Decbel, KGLEngine2D, Nepomuk, KDEPrint, Network Management and Solid, to do sound, graphics or a printed library. Even though these libraries uses Qt as their base, they provide much more functionality than vanilla Qt libraries.
GNOME: GNOME uses GTK+ as its GUI toolkit. GTK+ (GIMP Toolkit) was developed as an alternative to the Motif UI toolkit. Most of the UI elements still seem to be based on the Motif toolkit, but are much more polished than their Motif counterparts. GTK+ is programmed using the C language, with an object system provided by GObject. Like Qt, GTK+ is not an all-in-one API for building graphical applications. GTK+ is supported by helper libraries such as GLib, GDK, GConf, Pango, Gail and GIO.

Cross-Platform Support
KDE: Thanks to the release of Qt 4, KDE now runs natively on every supported platform, including Windows and Mac OS X. KDE 4 has moved on to the CMake build system which allows developers to build KDE applications with ease on all supported platforms, using the native development environment available on each platform. KDE does not provide desktop environments for platforms where there already is one, such as Windows or Mac OS X; instead it focuses on delivering the KDE libraries on these platforms.
GNOME:GNOME is also a multi-platform system, but its cross-platform support is a little flaky. To start off, there’s no good way to build GNOME apps on Mac OS X and Windows. GNOME as a full package is not available on either of these popular platforms. Instead you need to settle for the GTK+ toolkit, which has been ported to them. As mentioned earlier, building a fully fledged GNOME application on these platforms is a challenging task. GNOME and its libraries use Autotools as a build system, which is not supported on Windows. In addition, you cannot use the platform’s native development environment when using Autotools.
Programming Language
KDE: KDE uses C++ as its primary programming language. It also uses Qt-specific extensions to C++, such as the signals and slots mechanism. Both Qt and KDE libraries have bindings available in many different languages, such as Python Ruby and C#. KDE also provides an introspective wrapper around the Qt and KDE frameworks, called SMOKE (Scripting Meta Object Kompiler Engine). This allows developers to create KDE bindings for new languages. Support for Lua, PHP and KBasic are being developed using SMOKE.
GNOME: GTK+ supports many more languages than KDE/Qt. It officially supports C++, Vala, C#, Java, PHP, Python Ruby and Perl. Unofficial support has also been created for D, Common Lips, Haskell, Lua, Padcal, Pike, JavaScript, Smalltalk and Tcl. If you know how to program in any of these, the chances are that you can build a GTK+ application.
Conclusion
KDE has been part of the desktop revolution since its inception. There is no debate on its capacity to innovate and deliver. Each release brings an entirely new set of features for both users and developers. In doing so, however, it has also turned off many of its veteran users. For them there is GNOME, a more stable desktop environment which comes without and bells and whistles and is good at one thing: being a simplistic desktop environment. If you are still undecided on which desktop environment to use, we recommend installing both – doing so requires less than 5GB of disk space, and you can use all your applications from either of the desktops.
Related articles
- GNOME 3 vs Unity: Which is right for you?
- GNOME Shell – the UI revolution is well under way
- openSUSE 12.1 features explored















As a recent convert to KDE I mast say that at this time KDE is the best chance Linux has got to compete with Windows and Mac. Unfortunately it also doesn’t seem this will change, as GNOME is progressing way to slowly and there is no sign that this is going to change soon. And I would say that we should forget the war between KDE and GNOME. We should not be fighting among ourselves, The only enemy we have are non-free and closed source desktops. So the more free desktops there are and the more innovative they are the better. That’s why I think it would be nice if GNOME started to innovate and progress as fast as KDE, so that we could have more desktops that could compete with commercial desktops.
For my purposes BOTH of them have grown bloated. I prefer XFCE or FLUXBOX. Better speed, less memory, fewer ways to fail.
I started with KDE for the flexibility, Then went to GNOME for several years for the stability and simplicity.
Now with KDE 4 I may be back, not so much for the (rightfully) highly touted visual appeal but for the underlying architecture.
The more I look at it the more I find how many underlying services there are for applications to interact seamlessly with each other.
So, sitting in the line right now, One laptop with KDE, one desktop with Gnome.
Very good article. I’ve used both Gnome and KDE in recent years but I prefer KDE now. I think Gnome people must innovate fast in next months and years or else Gnome will slowly get smaller while KDE will get bigger. I cannot see that Gnome has more stability than KDE rather the opposite in my experience.
Like Rasra, I started with KDE. I found it the easiest to use and it seemed intuitive after coming from Windows. I switched to Gnome on my tower when I found that it felt more stable than KDE. My laptop has been through several WMs/DEs. I currently like Fluxbox so much that I’m considering just using Fluxbox for my tower as well. One DE that I used on my laptop for months and really liked is LXDE.
To me speed and flexibility are the most important and I’m not above writing scripts to tie the apps I want to use together. Apart from the file managers, I find I rarely use all the default applications that come with the big name DEs.
In what way is one better than the other with respect to normal use of the desktop? What does anyone use the desktop for except to log in and then open and browse disk folders? Sooner or later you will load and run an application (which is what computers are designed for) and the desktop will then just be the wallpaper.
The only other aspect of these systems that matters is the bundled apps, but then these can be run from any desktop. I use Gnome but run K3b, Kaffeine, etc.
Both KDE and Gnome use the same old (tired) wimp paradigm – neither has any spectacularly revolutionary features the other does not have. Much better if there were only one. If someone is going to come up with a new desktop, at least make it really different. Do we really need two slightly different desktop “wheels”?
For those of you who don’t know, GNOME 3 is scheduled to be a whole year behind original schedule, which means that it probably be in Ubuntu 11.04 (I hope). Anyway, I really like what the GNOME community is planning for it: GNOME 3 will apparently take advantage of modern graphics (using a compositing window manager called Mutter) and also have plenty of decorations to use in the panel and overview themselves. I’m talking about GNOME Shell: http://live.gnome.org/GnomeShell
You can build it and test it right now as per the build instructions on that page.
KDE is pretty graphical too, but I believe its window manager behaves too much like Compiz (and KDE also looks too much like WinBloze to really appease die-hard Linux users). I also don’t like the fact that Qt is under several licenses including a proprietary one.
Both KDE & Gnome are just too bloated these days and they are far from the only choice out there. Sure some KDE might run on Windows but have you ever tried it? It’s hardly ready for prime time. Many GTK apps run fine on Windows and you don’t need Gnome to do that.
Good article, however some facts are wrong. If I remember well Qt wasn’t open source at all when Matthias Ettrich started KDE, you could just use it for free for personal use I think. RMS expressed its concerns about Qt’s licence and one year later Miguel de Icaza started the GNOME project which was and remains free software from top to bottom.
As for GNOME, why isn’t the GNOME Shell and GNOME 3 mentioned in the article? I think they both show that GNOME is innovating as far as HCI goes. KDE didn’t make any innovations in that front, but it did in its core technologies.
As for KDE, I’m enjoying KDE SC 4.4.4 right now in an openSUSE 11.3 installation and I’m seriously thinking to upgrade to KDE SC 4.5.0 although it is not officialy supported.
KDE!
Yes KDE and Gnome have both become bloated but they have to to achieve their goal of mainstream adoption. Windows users will feel more at home with KDE and Mac users will feel more at home with Gnome.
As a Mac user for for the past 20yrs, I’ve slowly been loosing my love affair with everything Apple, Gnome is part of the reason. I’ve been using Ubuntu since 6.04 and it keeps getting better (from a UI standpoint). I’d have dropped Mac completely BUT I can’t do that till Adobe gets off their butt and ports the Creative Suite to Linux (I’m a graphic designer and can’t substitute it with Scribus/Gimp, etc… I’ve tried).
Even though I could comfortably run either KDE or GNOME on my computer, I don’t do wither of those desktops, as I’m hooked on Xfce. My first introduction to Linux in 2004 was Mandrake (now Mandriva), which uses KDE by default. I instantly fell in love with the KDE desktop and its seemingly infinite customization possibilities. I also checked out Mepis and PCLinuxOS, both of which are also fine distros that use KDE that I could recommend for anyone who wants KDE.
However, when KDE4 was introduced in early 2008, my love affair with KDE came to a screeching halt. I tried to like it, but it wasn’t very stable plus I had a hard time finding my way around it. I could have, of course, stayed with KDE 3.5.9, but I thought “why bother when it’s going to eventually be discontinued?”. So off I went to Ubuntu and GNOME. I had tried GNOME once back in my KDE days, but I didn’t care for it at all, but Ubuntu changed all that.
But, when I learned about plans for GNOME 3 earlier this year, I went to YouTube to see what it was like. Honestly, I didn’t like what I saw there, either. As far as I’m concerned, GNOME 2.x is working just fine, why change it? After what I went through being burned by KDE, I refused to go through that again with GNOME, I don’t care how polished it is. Besides, it looks like it will require more memory than GNOME 2.x, which is a deal-breaker for me. Furthermore, I also got to where I had it up to here with the attitudes of a few certain people on GNOME-Look, which drove me to Xfce.
Besides, this past spring, I discovered PC/OS (http://www.pc-os.org), which is one of VERY few Linux distributions that automatically detects and properly configures the Broadcom wireless card in my laptop without me having to fool with the command line — it JUST WORKS! What’s more, PC/OS comes with Xfce for its desktop, which was also a contributing factor to why I now hang my Linux computing hat in Xfce-land. Plus, PC/OS is made right here in the USA (North Carolina, to be exact).
I tried KDE. I didn’t like it very much. I tried GNOME. I liked it better. Linux is about choice. End of story.
“The big feature of GNOME 1.0 was anti-aliasing, enabling crisper text in documents, applications and applets. ”
As I recall, font anti-aliasing did not come to Gnome until version 1.4 (and you had to install gdkxft). Gnome 2.0 supported it out-of-the-box, having Gtk-2.0 and all?
But GNOME supports dynamic wallpapers. O_o
How is a Ubuntu version of Gnome ‘typical’? How is a Kde theme with Aqua-like buttons ‘typical’? Those wrong assumptions were enough to stop reading any further.
@emariz
Look at http://www.kde-look.org to learn what typical is.
@emariz also at http://gnome-look.org/. Typical is what is popular. Look in top section, hope that will give you some idea.
HarryD, following your logic, Madonna is a ‘typical’ 52 years old woman and Roger Federer is a ‘typical’ tennis player.
Actually, ‘typical’ is something which embodies the characteristics of a certain group. Somehow, the author thought that the highly customized Ubuntu depicted a typical Gnome desktop better than Gnome Project’s preference, and that a theme with Aqua-like buttons exemplified Kde better than Kde SC’s choice.
Five pages based on these incorrect assumptions are not worth reading.
You can access only part of KDE’s System Settings. You don’t need to start the full program to change, for instance, desktop appearance. How? Just press ALT-F2 and write “appearance” to the krunner’s prompt. Krunner will list appearance as the first item, so just run it. It will display the appearance part of System Settings only. Krunner is really fast way how to achieve things. You don’t need to use menu ;-)
Just to clarify two points: 1. One can put icons and items direct on the Plasma Desktop but the desktop has to be set as folder view. 2. The traditional Start Menu can still be used in KDE 4, just use the traditional menu widget to replace Kickoff.
I do commend the guys over Gnome for the wonderful job that they are doing to improve and promote the Linux desktop and also for giving the KDE guys the necessary competition that is needed for innovation.
However, KDE IMO is the more advanced Desktop. It’s not only more beautiful than Gnome but is technically more than just a few steps ahead. And you know what? It gets better with each release.
@emariz
You cannot bring Madonna in the conversation because Madonna is not something one can use. In the Linux (or software world), what is popular is used by most. Linux is the most popular UNIX system. Does that make it a typical UNIX system, hell yeah. Go ask around. Ubuntu is very popular that has become the face of GNOME. So yes it is typical GNOME. Like I said go ask around. No body install GNOME/KDE directly from the upstream project. They get a customized distribution of KDE/GNOME from their distro’s package manager. So if you are an Ubuntu user you will get GNOME from Ubuntu repository instead of compiling GNOME on Ubuntu. If you compile GNOME yourself then onlyyou will get the default interface. Remember my friend typical and default ain’t the same.
g – talk about a load of kde fan boys. I hate KDE’s $window style start menu. KDE just feels like open source windows. Gnome is simple, you have three menus one for applications, one for folders and one for system apps. The only kde pre-installed applications I liked was the Calendar-journal-mail program.
GO Gnome 3 and (Mono, wxpython)
Its all about OpenBox!
@Jim. There is no need to try and reinvent the wheel. KDE is Windows-like (but only looks, not functionality). Gnome is OSX-like, so what#s the big deal? Linux is all about choice so there is no need to bad mouth others who don#t like Gnome – just use what you like, it’s as easy as that. I personally can’t see how 3 start menus can be simply. 1=simple 2=complicated and 3=total chaos ;)
KDE 4.5 is great, despite some minor bugs in the widgets.
But its multiple desktop feature is still slightly less capable that of GNOME’s.
I know all about Linux desktop environments. Let me write an article! … dosh!
Any UI is good till it works for you; beyond that … make your own choice … IMO Linux is about that and hope it stays that way!
In my opinion, the faster a program is developed, the more issues will occur. As for GNOME, I think they made a good choice by not developing it as fast as KDE does. The more the time they develop it, the more they can do and the more bugs can be fixed in the timespan.
Gnome FTW!!!
I switched from Windows using KDE. Then with the advent of KDE 4, I’ve seen some things that really do not impress me. I’ve since switched to GNOME.
I Switched to KDE. if you not tried kde 4.5.2 You have no idea what you are missing out on. KDE FTW= The Future
Strange. Coming from windows I found gnome and not kde much more familiar and intuitive. Especially plasma desktop, that allows you to put icons only in a window, is a weird idea.
I did start off on KDE, Mepis Linux and SuSe, but I have always found KDE to be crashy compared to Gnome.I went to gnome with BeatrIX and then Ubuntu…I switched recently to PCLINUXOS to see how things were in the latest KDE and although the eye candy is good Gnome is still more stable, I have always run on older PC equipment, I have a love for Pentium 3 Thinkpads still though I do have a recent HP laptop but with integrated graphics… though so maybe I am just missing out? I am interested to see what Gnome 3 or Ubuntu Unity desktop will bring
I would have liked to know which one has the most “modern” applications available to it. What I mean by modern, is that I don’t really care about 20,000 legacy programs considered as apps – I am more concerned with what we use today, every day. Software availability should be the primary concern of an end user, when choosing an OS and a computer to run that OS on.
PS: I understand that you can install a KDE app in Gnome etc… but it may pull in a bunch of libraries that are not needed otherwise… slow down your system with added bloat. Hence my question as to which has more modern apps available/designed for that environment specifically.
This continual argument between KDE and Gnome fanatics is getting really really old now – and you still sit around and wonder why Linux hasn’t made it big. There’s your answer.
In fairness whilst Linux is more stable and more secure than Windows it’s still not “noob friendly” to the same extent and the steep learning curve of Linux leaves many drowning in hot water. I realise that’s not down to DE’s in full either.
It would be nice to see a big push, a joint effort and make Linux more mainstream, more user friendly and KO Windows and OSX. If that happens to be Gnome on Ubuntu then so be it – you can customise your DE and distro as you like but there needs to be something “out of the box that works” if you want mass adoption.
Use whichever you like and trim the fat after install if it bothers you so much, or failing that use another lightweight DE. But please, really, if you want some progress with user adoption of Linux stop throwing mud at each other – it really doesn’t help in the slightest.
What an irony. Gnome is moving away from GPL and uses MS technology known as .net, gnome foundation prefers MS OOXML rather than ODF and there are MS and Apple advertisements at planet gnome. KDE instead, has very good policy that ensures applications are GPL licensed and libraries use LGPL or similar license. KDE uses modern toolkit and unlike gnome, offers really good players like Amarok, SMPlayer, VLC.
Btw. this is NOT typical gnome desktop. Typical gnome desktop looks like crap. Look at Fedora etc.
speaking of both bein bloated, i use dwm :)
KDE seems like it would be better for kids. k-this, k-that.. seems silly. Mac users should love it too.. “Oooo shiny”..
“k-this, k-that.. seems silly. k-this, k-that.. seems silly. ”
It makes perfect sense — a simple format of general designator + function, resulting in an easily memorable reasonably unique string that will get high-value hits should you google it.
Silly is the new style of giving programs names like Clarivion — unique and googleable but meaningless — or Text — not unique and yields useless search results.
I’m one of the long time KDE3.x users that is frustrated with KDE4 to the point of giving up on KDE all together. KDE4.6 simply is not stable enough for me to do real work.
Background: I used openSuSE 9.3 with KDE3.5 for 4+ years. It was rock solid. My main workstation would be up for 6+ months at a time with the only downtime being for physically moving the system and a couple of power outages. My usage model is simply 10 virtual desktops each with a half dozen Konsole (for the linux prompt), a few firefox windows, and a few other apps (acrobat, xmms). KDE3.5 handled that usage model flawlessly.
With KDE4 (including KDE4.6) within a day or so switching virtual desktops gets noticeably slower, even on a fairly new core2 duo machine with a Gig of memory. Worse yet, after a week or so Konsole will crash, taking out all the Konsole sessions. Never had problems like this with KDE3.5 (including running KDE4 on the exact same PC).
Maybe the KDE4 developers reboot their machines every day. Maybe they don’t use many virtual desktops or start up more than a few Konsole windows. Maybe they just don’t care that they’ve wrecked KDE. Whatever the cause, KDE4 simply isn’t usable the way KDE3.5 was. And yes KDE4.6 is still broken.
I used GNOME back in the Red Hat 5 & 6 era. I’m downloading Fedora 14 as I type. Hopefully GNOME will be usable. I don’t care about all the eye candy. I need something stable.
kde is the best for me and it has the best graphics
You have to try it to know which one is best.
Apart from some older hardwre that demands XCFE I usually have let all my family and friends use one of my laptops for a few days to see which they prefer.
At our installfests, we also have desktops for people to test driive.
The numbers at out LUG installfests when people choose are 75/25 for KDE and
the two dozen that I have done for my family is about 90/10 KDE.
I think the fact that these people all came from Windows has to do with it but Ive also have about 6-7 seniors in my family who never used a computer.
“it feels different” is often reflected in the whole GTk and font thing and KDE4 is much close to the paradigms people are use with Aero.
But the only person who knows what desktop is best suited to you, is YOU.
And only YOU know how you want it set up and if it means a 1.5 inch thick taskbar, then so be it.
When old people want a desktop setup, your icons better be BIG and your fonts set at 14pts and above.
The hardest part isnt gettin gthe people to try but to get the Linux ‘guru’ to put his ego and bias on the side.
Many are passionate about ‘their’ desktop and cannot dissociate themselves from the choosing process.
Having newbies choose Linux but NOT using the desktop you prefer is a hard thing for people to take.
THEIR desktop is the bestestest so thats the way they will push people.
Try it, give newbies a choice.
When they switch, weve won the battle but we have to make sure they stay and are as confortable as they can be in a new environment.
I have used both over the years, and for the last three years I have kept two distro’s on my system, one Gnome one KDE. I have to say I have always had a lean toward KDE.
Slackware has been my main choice as KDE for last 8 years.
I have flirted with different Gnome based OSes before finally sticking with Ubuntu, until recently when I shifted to Fedora. So far I have been impressed with Gnome 3.
KDE will always be, well just KDE. Easy to use and configure.
whilst Ubuntu is touted as a beginner’s entry into Linux, it’s GNOME interface has on major failing – the lack of menus.
If I’m trying to look for an app to try and do something on Linux, I’ll go through KDE’s entries, looking for something likely, from the (important bit) relevant section. As Ubuntu expects me to know the app name from the start, I’m at a bit of loss, only getting the option of searching pretty muchh ALL apps in one big list. Shame, as it’s otherwise nice.
The problem with Linux is choice overload. Choice is good, but it doens’t all need to be on the damn CD/DVD. I cannot… I reapeat CANNOT… stand it when an OS instals a ton of apps that have overlapping functions. Windows and OS/X are simple…
IE/Safari
WMP/iTunes (Zune on Win if you have a WinPhone or Zune Pass account – you get that yourself)
Windows Media Center (not sure of OS/X equivalent)
Explorer/Finder (or whatever Apple Calls it)
One Desktop and set of APIs for apps
iLife/Live Essentials
Linux is different. The default install for too many distros leaves you with:
GNOME File Browser/Konqueror + Firefox + in some Instances Chromium and even Opera is available in DIstors like OpenSuSE
5+ Different Media Players
3+ Different Terminals
4+ Different SHells
If you install a GTK app on a KDE distance there’s a chance it will pull in so many dependencies that you should have just installed the full GNOME desktop as well
GTK and Qt apps do not look the same, and in some instances do not behave the same
GTK+ Apps look like utter sh*t
Almost all Free alternatives are worse than the free apps you get on a New Mac (iLife, e.g.) or for free on Windows/Mac (iTunes, WMP, WMC, WinLive Essentials, Zune,)
In addition to that, you still have to deal with updates breaking things, using binary blobs to get hardware to work (like some network drivers), proprietary drivers needed for decent video performance that won’t install cause of your X.org version even though the XP driver installs flawlessly on Windows 7 and you get Aero and full 3D accelleration with that old driver on a new version of Windows).
There are few benefits to running Linux over Windows. Much of the same free software is available and actually runs better on Windows than Linux. You still get the rich library of commercial apps. You can run decent games and MMORPGs on Windows.
The issue with Linux is that while choice is good, there is too much duplication and not enough collaboration on top products to make a cohesive desktop consumer-oriented system that is competitive with Windows and Mac. If you want Desktop UNIX you’re better off going Mac. Other than that, you’re better off on Windows.
This level of fragmentation can work in Mobile (Android), but it’s terrible on the desktop where people value consistency more, and do not like such a high level of redundancy.
And the distros make it nigh impossible to install a fairly clean, streamlined desktop system. Ubuntu did a lot of work there, but UNITY is pretty much LULZ… Fisher Price UI for dummies.
hi , i want to know ,
how we convert KDE to GNOME mode in fedora