Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
Comparison of X Window System desktop environments
List article

A desktop environment is a collection of software designed to give functionality and a certain look and feel to an operating system.

This article applies to operating systems which are capable of running the X Window System, mostly Unix and Unix-like operating systems such as Linux, Minix, illumos, Solaris, AIX, FreeBSD and Mac OS X. Microsoft Windows is incapable of natively running X applications; however, third-party X servers like Cygwin/X, Exceed, or Xming are available.

Technical elements of a desktop environment

See also: Elements of graphical user interfaces

A desktop environment (DE) can be broken up into several components that function independently and interact with one another to provide the look and feel and functionality of the desktop environment. A fundamental part of a DE is the window manager or WM. A window manager creates a certain way for application windows to present themselves to the user. It manages the various application windows, keeping track of which ones are open and providing features to switch between them. Another important element of a DE is the file manager. This application manages files/ folders and presents them in a way that the user finds convenient. It provides file operations like viewing, copying or moving, changing permissions and deleting. DEs usually provide utilities to set wallpapers and screensavers, display icons on the desktop, and perform some administrative tasks. They may optionally include word processors, CD/DVD writing applications, web browsers and e-mail clients.

There are some exceptions: Window managers like Fluxbox, wmii and Ratpoison operate independently of a desktop environment and were written with this objective in mind. Additional hand-picked applications add functionality such as a panel and volume management which gives them some of the qualities of a full DE. This contrasts the behaviour of WMs like Metacity and KWin which were not written with the objective of operating independently of a DE.

KDE Software Compilation and GNOME are written almost completely on special software libraries Qt and GTK respectively.4 This usually means that virtually every component of the desktop environment including the file manager explicitly depends on that library for its functioning.

Notably, nothing prevents the user from installing any number of software libraries of their choice. In practice, software written on major libraries can be run under any desktop environment. Running a package designed for one desktop (which essentially means that it's written using the same libraries as the desktop itself is) within a different desktop can be visually displeasing, as well as incurring the RAM penalty of loading libraries that wouldn't otherwise be required.

Some of the differences which can influence the choice of desktop environment are:

  • Look and feel of the desktop environment. The user will be more comfortable with a certain look and feel that they may or may not already be familiar with.
  • Flexibility and configurability of the desktop environment. A sophisticated user might want a highly configurable desktop environment to make the desktop environment work the way they want. A beginner might just want an easy-to-use environment to which they will adjust.
  • Personal preferences for choice of software, which has two aspects:
    • Each desktop environment comes packaged with various default software and various "ways things are done" under that desktop. A casual user might like a highly integrated graphical interface to change various settings while a more experienced user might prefer to use individual configuration utilities or even CLI tools.
    • Desktops are also often closely tied into various major functional components of the desktop manager (example: file manager, browser, word processor); whilst "mix and match" is possible, it is generally pleasing to make choices which result in a consistent look and feel of programs under the chosen desktop environment. Making choices based on what software integrates with a chosen desktop environment necessarily limits the weight that can be given to other application features.

Desktop comparison information

Overview

NameInitial releaseLatest releaseProgramming languageGraphical toolkitLicenseNotes
VersionDate
Budgie2014-02-0710.9.25 2024-06-22C, ValaGTKGPLThe intention was to use GNOME components to create a more lightweight and traditional desktop that still had most of the features that GNOME provided at the time.
Cinnamon2011-046.4.96 2025-03-27C, JavaScript, PythonGTKGPLForked from GNOME 3 with the intent to create a traditional desktop built on modern technologies.
Common Desktop Environment (CDE)1993-06-302.5.22023-11-18C, C++MotifLGPL-2.0-or-laterPart of the UNIX 98 Workstation Product Standard.7 Released in 2012 under a free license.
Deepin Desktop Environment (DDE)201523.08 2024-08-15C++QtGPLThe desktop environment of Deepin.
Enlightenment (E)19970.27.19 2025-03-14CEFLBSD licenseComplete environment including centralized configuration of most settings.
Equinox Desktop Environment (EDE)2003-01-062.110 2014-06-22C++FLTKGPL, LGPLSeldom used environment, has seen little activity in recent years.
Étoilé2006-02-22Objective-CGNUstepMIT, BSD licenseHas seen little activity for several years, the last sign of activity having been in 2014.
GNOME1999-03-034811 2025-03-19C, C++, Vala, Python, JavaScriptGTKGPL, LGPLGNOME is one of the most popular environments. Major design changes with the 3.0 release sparked the creation of Cinnamon (a fork of GNOME 3), Unity (an alternative Gnome Desktop Session to GNOME Shell) and MATE (a fork of GNOME 2).
KDE Plasma 5 (KDE5, KDE Plasma Workspaces, formerly K Desktop Environment or simply KDE)1998-07-125.27.12121314 2025-01-06C++, QMLQtLGPLKDE has a strong and enthusiastic following. The project is largely community-centric, and encompass many other applications and frameworks, many built specifically for KDE.
LXDE (Lightweight X11 Desktop Environment)20060.10.115 2021-02-25CGTKGPL, LGPLLXDE, with its low resource footprint, is a favorite among developers of lighter-weight Linux distributions. Development has largely moved to LXQt, but it is still maintained and in 2020 ported to GTK3.
LXQt2014-05-072.1.016 2024-11-04C, C++QtGPL, LGPLFormed by a merger of LXDE-Qt and Razor-qt, this is a lightweight Qt-based desktop environment.
MATE2011-08-191.28.217 2024-03-11C, C++, PythonGTKLGPL, GPLRevival and continuation of GNOME 2 environment after the release of GNOME 3. In recent releases, it has been ported to GTK 3, demonstrating the progress of the project.
Pantheon20112018-10-16ValaGTKGPLThe desktop environment of elementary OS.
Razor-qt2010-09-050.5.218 2013-01-12C++QtGPLMerged into LXQt
ROX Desktop2000 (?)2.1119 2011-10-09C, PythonGTKGPL
Trinity Desktop Environment (TDE)2010-04-29R14.1.320 2024-10-27C++QtGPL (and other)Forked from KDE 3.x
Unity2010-06-097.621 2022-06-30C, C++, Python, Vala, QMLGTKGPL, LGPLDeveloped by Canonical for Ubuntu as an alternative graphical shell to GNOME Shell. Designed with "convergence" in mind, it was discontinued by Canonical in early 2017 because Unity 8 had some problems, including Mir and X app support. Was picked up by UBPorts and renamed "Lomiri."
Xfce1997-early4.202223 2024-12-15CGTKGPL, LGPL, BSD licenseXfce is often used in lightweight distributions targeting lower-end hardware.

Default programs packaged

This table shows basic information on the programs distributed with some desktop environments for the X Window System.

KDEGNOMEMATECinnamonXfceLXDEROX DesktopÉtoiléEDEEnlightenmentLXQt
X window managerKWinMutterMarcoMuffinXfwm4OpenboxOroboROXAzaleaedewmEnlightenmentOpenbox
X display managerKDM, SDDMGDMLightDMLXDMelmaEntranceLightDM
File managerDolphin (Konqueror before SC 4)FilesCajaNemoThunarPCManFMROX FilerEfilerEFM, EntropyPCManFM-Qt
Widget toolkitQtGTKGTK+(legacy) / QtGTKGNUstepFLTK (previously eFLTK)ElementaryQt
Terminal emulatorKonsoleGNOME TerminalMATE TerminalGNOME TerminalTerminalLXTerminalROXTermatermTerminologyLXTerm
Text editorKWrite (Kate before SC 4)geditPlumaXedMousepad, LeafpadLeafpadEditTextEditEyesight, EcrireMousepad
Video playerDragon Player (Kaffeine before SC 4)VideosCelluloidParolelxinemplayer-roxEnna (media center), Eclair
Audio playerJuK, AmarokBanshee, RhythmboxLXMusicMusicBoxMelodieEnjoy
CD burnersK3bBraseroXfburnRoxISOXfburn
CD ripperK3b, KAudioCreatorSound JuicerRipperExtrackt
Image viewerGwenviewLoupe (GNOME Image Viewer)Eye of MATEXviewerRistrettoGPicViewPickyEimageEphoto
Office suiteCalligra Suite (KOffice until 2011)2425GnomeOffice
Web browserKonqueror, FalkonWebMidoriEve
E-mail clientKmailEvolutionGNUMail
Personal information managerKontactContacts
Instant messengerKopete, KDE TelepathyEmpathyShotgun
Archive managerArkArchive ManagerEngrampaArchive ManagerXarchiver, SqueezeXarchiverArchive
PDF viewerOkular (KPDF before SC 4)EvinceAtrilXreaderVindalooEpdf
IDEKDevelopAnjuta, GNOME BuilderGorm, ProjectCenterEDI
X session managerksmservergnome-sessionmate-sessioncinnamon-sessionXfce4-sessionLXSessionROX-Session
Widget enginebuilt-in – Plasma (SuperKaramba before SC 4)gDeskletsElementary
Licenses usedGPL, LGPL, BSD, othersGPL, LGPLGPL, LGPLGPLv2 (or later)GPL, LGPL, BSDGPL, LGPLGPLGPL, BSDGPL, LGPLBSD, LGPLGPL, LGPL

Note that Razor-qt has become LXQt, a port of LXDE to the Qt framework.

Comparison of ease of use and stability

GNOME's graphical file manager Files (Nautilus) is intended to be very easy to use and has many features.26 KDE's file manager Dolphin is described as focused on usability.27 Prior to KDE version 4, the KDE project's standard file manager was Konqueror, which was also designed for ease of use.

Both GNOME and KDE come with many graphical configuration tools, reducing the need to manually edit configuration files for new users. They have extensive bundled software such as graphical menu editors, text editors, audio players, and software for doing administrative work. All applications installed in most distributions are automatically added to the GNOME and KDE menus. No major configuration changes are necessary to begin working. However, by using graphical tools, the extent to which the desktops can be configured is determined by the power provided by those tools.

Compatibility and interoperability issues

Some desktop environments and window managers claim that they support applications made for other desktop environments explicitly. For example, Fluxbox states KDE support in its feature list.28 Using software made specifically for the desktop environment in use or window manager agnostic software is a way to avoid issues. For software developers, the Portland Project has released a set of common interfaces that allows applications to integrate across many desktop environments.29

System resources utilization

A 2011 test by Phoronix with the default installation of Ubuntu 10.04 showed that LXDE 0.5's memory utilization was lower than that of Xfce 4.6, which in turn was lower than that of GNOME 2.29, with KDE 4.4 using the most RAM compared to the aforementioned desktops.3031

In 2015, it was demonstrated in benchmarks that LXDE performed slightly faster than Xfce overall (in the average of all tests), using the Fedora Linux operating system.32

See also

  • Free and open-source software portal

References

  1. XFree86 Official Website Archived 2003-10-20 at the Wayback Machine line 5 http://www.xfree86.org/

  2. Cygwin/X website http://x.cygwin.com/

  3. Xming project homepage on SourceForge http://sourceforge.net/projects/xming

  4. Official websites of GNOME and KDE http://www.gnome.org

  5. "Budgie 10.9.2 Released". 22 June 2024. Retrieved 27 June 2024. https://buddiesofbudgie.org/blog/budgie-10-9-2-released

  6. "6.4.9". 27 March 2025. Retrieved 28 March 2025. https://github.com/linuxmint/cinnamon/releases/tag/6.4.9

  7. "Testing requirements by Product Standard". The Open Group. January 31, 2013. Retrieved September 29, 2013. http://www.opengroup.org/openbrand/testing/prodstds.htm

  8. "deepin 23 Release Note". Retrieved 16 August 2024. https://www.deepin.org/en/deepin-23-is-officially-released/

  9. "Enlightenment 0.27.1 Release". 14 March 2025. Retrieved 17 March 2025. https://www.enlightenment.org/news/2025-03-14-enlightenment-0.27.1

  10. https://sourceforge.net/projects/ede/files/ede/. {{cite web}}: Missing or empty |title= (help) https://sourceforge.net/projects/ede/files/ede/

  11. "Introducing GNOME 48, "Bengaluru"". 19 March 2025. Retrieved 19 March 2025. https://release.gnome.org/48/

  12. https://kde.org/announcements/plasma/5/5.27.12/. {{cite web}}: Missing or empty |title= (help) https://kde.org/announcements/plasma/5/5.27.12/

  13. Error: Unable to display the reference from Wikidata properly. Technical details: Reason for the failure of {{Cite web}}: The output template call would miss the mandatory parameter url. Reason for the failure of {{Cite Q}}: The output template call would miss the mandatory parameter 1. See the documentation for further details. /wiki/Template:Cite_web

  14. Error: Unable to display the reference from Wikidata properly. Technical details: Reason for the failure of {{Cite web}}: The output template call would miss the mandatory parameter url. Reason for the failure of {{Cite Q}}: The output template call would miss the mandatory parameter 1. See the documentation for further details. /wiki/Template:Cite_web

  15. "LXPanel 0.10.1 released". 25 February 2021. Retrieved 3 June 2023. https://blog.lxde.org/2021/02/25/lxpanel-0-10-1-released/

  16. https://lxqt-project.org/release/2024/11/05/release-lxqt-2-1-0/. {{cite web}}: Missing or empty |title= (help) https://lxqt-project.org/release/2024/11/05/release-lxqt-2-1-0/

  17. "version 1.28.2". 11 March 2024. Retrieved 12 March 2024. https://git.mate-desktop.org/mate-desktop/tag/?h=v1.28.2

  18. "Release 0.5.2". 12 January 2013. Retrieved 23 July 2018. https://github.com/Razor-qt/razor-qt/releases/tag/0.5.2

  19. http://rox.sourceforge.net/desktop/node/962.html. {{cite web}}: Missing or empty |title= (help) http://rox.sourceforge.net/desktop/node/962.html

  20. "TDE R14.1.3 released!". 27 October 2024. Retrieved 12 November 2024. https://www.trinitydesktop.org/newsentry.php?entry=2024.10.27

  21. "Announcing the stable release of Unity 7.6". Retrieved 25 June 2024. https://unityd.org/unity-7-6-stable/

  22. "Xfce 4.20 released". 15 December 2024. Retrieved 15 December 2024. https://alexxcons.github.io/blogpost_14.html

  23. "News – Xfce 4.20 released". Retrieved 16 December 2024. https://xfce.org/about/news/?post=1734220800

  24. creator), Aracele Torres, Camila Ayres, Molly White (original wikimedia-timeline; names, Translated by Your. "A 27 year timeline of KDE events". kde.org. Retrieved 2023-10-25.{{cite web}}: CS1 maint: multiple names: authors list (link) https://kde.org/

  25. "Unmaintained / KOffice · GitLab". GitLab. Retrieved 2023-10-25. https://invent.kde.org/unmaintained/koffice

  26. Official Nautilus screenshots page http://www.gnome.org/projects/nautilus/screenshots.html

  27. "Official Dolphin file manager page on KDE project site". Archived from the original on 2011-03-24. Retrieved 2020-07-26. https://web.archive.org/web/20110324033008/http://dolphin.kde.org/

  28. Fluxbox official website Archived 2008-05-14 at the Wayback Machine line 15 http://fluxbox.org/

  29. Linux leaps toward KDE/GNOME compatibility Archived 2008-02-26 at the Wayback Machine http://www.desktoplinux.com/news/NS7768863113.html

  30. Larabel, Michael. "Phoronix: Power & Memory Usage Of GNOME, KDE, LXDE & Xfce". Phoronix. Archived from the original on 3 September 2018. Retrieved 30 July 2011. https://web.archive.org/web/20180903042338/https://www.phoronix.com/scan.php?page=article&item=linux_desktop_vitals&num=1

  31. RAM use of LXDE vs Xfce in Porteus again confirms that LXDE is about 1/2 of that of Xfce http://www.porteus.org/info/features.html

  32. Phoronix https://www.phoronix.com/scan.php?page=article&item=fedora-23-desktops&num=2