Comparison of X Window System desktop environments

Last updated

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

Contents

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. [1] Microsoft Windows is incapable of natively running X applications; however, third-party X servers like Cygwin/X, Exceed, or Xming are available. [2] [3]

Technical elements of a desktop environment

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.

X Window System desktop environments timeline. X window system desktop environments timeline.svg
X Window System desktop environments timeline.

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:

Desktop comparison information

Overview

NameInitial releaseLatest releaseProgramming languageGraphical toolkitLicenseNotes
VersionDate
Budgie 2014-02-0710.8.2 [5]   OOjs UI icon edit-ltr-progressive.svg 2023-10-19C, 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.
Cinnamon 2011-046.0.1 [6]   OOjs UI icon edit-ltr-progressive.svg 2023-12-14C, 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.1 [7]   OOjs UI icon edit-ltr-progressive.svg 2022-10-01C, C++ Motif LGPL-2.0-or-later Part of the UNIX 98 Workstation Product Standard. [8] Released in 2012 under a free license.
Deepin Desktop Environment (DDE)201520.9 [9]   OOjs UI icon edit-ltr-progressive.svg 2023-04-17C++QtGPLThe desktop environment of Deepin.
Enlightenment (E)19970.25.4 [10]   OOjs UI icon edit-ltr-progressive.svg 2022-09-15CEFLBSD licenseComplete environment including centralized configuration of most settings.
Equinox Desktop Environment (EDE)2003-01-062.1 [11]   OOjs UI icon edit-ltr-progressive.svg 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.
GNOME 1999-03-0345.0 [12] [13] [14] [15]   OOjs UI icon edit-ltr-progressive.svg 2023-09-20C, 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.10 [16]   OOjs UI icon edit-ltr-progressive.svg 2023-12-05C++, 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.1 [17]   OOjs UI icon edit-ltr-progressive.svg 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.
LXQt 2014-05-071.4.1 [18]   OOjs UI icon edit-ltr-progressive.svg 2023-11-10C, C++QtGPL, LGPLFormed by a merger of LXDE-Qt and Razor-qt, this is a lightweight Qt-based desktop environment.
MATE 2011-08-191.26.2 [19]   OOjs UI icon edit-ltr-progressive.svg 2023-09-15C, 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.
Pantheon 20112018-10-16ValaGTKGPLThe desktop environment of elementary OS.
Razor-qt 2010-09-050.5.2 [20]   OOjs UI icon edit-ltr-progressive.svg 2013-01-12C++QtGPLMerged into LXQt
ROX Desktop 2000 (?)2.11 [21]   OOjs UI icon edit-ltr-progressive.svg 2011-10-09C, PythonGTKGPL
Trinity Desktop Environment (TDE)2010-04-29R14.1.1 [22]   OOjs UI icon edit-ltr-progressive.svg 2023-10-29C++QtGPL (and other)Forked from KDE 3.x
Unity 2010-06-097.6 [23]   OOjs UI icon edit-ltr-progressive.svg 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."
Xfce 1997-early4.18 [24]   OOjs UI icon edit-ltr-progressive.svg 2022-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.

KDE GNOME MATE Cinnamon Xfce LXDE ROX Desktop Étoilé EDE Enlightenment
X window manager KWin Mutter Marco Muffin Xfwm4 Openbox OroboROXAzaleaedewmEnlightenment
X display manager KDM, SDDM GDM LightDM LXDMelma Entrance
File manager Dolphin (Konqueror before SC 4) Files Caja Nemo Thunar PCManFM ROX FilerEfilerEFM, Entropy
Widget toolkit Qt GTK GTK+(legacy) / Qt GTK GNUstep FLTK (previously eFLTK)Elementary
Terminal emulator Konsole GNOME Terminal MATE Terminal GNOME Terminal Terminal LXTerminalROXTerm aterm Terminology
Text editor KWrite (Kate before SC 4) gedit Pluma Xed Mousepad, Leafpad Leafpad Edit TextEdit Eyesight, Ecrire
Video player Dragon Player (Kaffeine before SC 4) Videos CelluloidParolelxinemplayer-roxEnna (media center), Eclair
Audio player JuK, Amarok Banshee, Rhythmbox LXMusicMusicBoxMelodieEnjoy
CD burners K3b Brasero XfburnRoxISO
CD ripper K3b, KAudioCreator Sound Juicer RipperExtrackt
Image viewer Gwenview Eye of GNOME Eye of MATE XviewerRistrettoGPicViewPickyEimageEphoto
Office suite Calligra Suite (KOffice until 2011) [25] [26] GnomeOffice
Web browser Konqueror, Falkon Web Midori Eve
E-mail client Kmail Evolution GNUMail
Personal information manager Kontact Contacts
Instant messenger Kopete, KDE Telepathy Empathy Shotgun
Archive manager Ark Archive Manager Engrampa Archive Manager Xarchiver, Squeeze Xarchiver Archive
PDF viewer Okular (KPDF before SC 4) Evince Atril XreaderVindalooEpdf
IDE KDevelop Anjuta, GNOME Builder Gorm, ProjectCenterEDI
X session manager ksmserver gnome-session mate-session cinnamon-session Xfce4-session LXSession ROX-Session
Widget engine built-in – Plasma (SuperKaramba before SC 4) gDesklets Elementary
Licenses used GPL, LGPL, BSD, others GPL, LGPL GPL, LGPL GPLv2 (or later) GPL, LGPL, BSD GPL, LGPL GPL GPL, BSD GPL, LGPL BSD, 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. [27] KDE's file manager Dolphin is described as focused on usability. [28] 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. [29] 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. [30]

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. [31] [32]

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. [33]

See also

Related Research Articles

In computing, a desktop environment (DE) is an implementation of the desktop metaphor made of a bundle of programs running on top of a computer operating system that share a common graphical user interface (GUI), sometimes described as a graphical shell. The desktop environment was seen mostly on personal computers until the rise of mobile computing. Desktop GUIs help the user to easily access and edit files, while they usually do not provide access to all of the features found in the underlying operating system. Instead, the traditional command-line interface (CLI) is still used when full control over the operating system is required.

<span class="mw-page-title-main">Xfce</span> Desktop environment

Xfce or XFCE is a free and open-source desktop environment for Linux and other Unix-like operating systems.

<span class="mw-page-title-main">ROX Desktop</span> Desktop environment for X Window System

The ROX Desktop is a graphical desktop environment for the X Window System. It is based on the ROX-Filer which is a drag and drop spatial file manager. It is free software released under the GNU General Public License. The environment was inspired by the user interface of RISC OS. The name "ROX" comes from "RISC OS on X". Programs can be installed or removed easily using Zero Install.

<span class="mw-page-title-main">KDE Display Manager</span>

KDE Display Manager (KDM) is a display manager developed by KDE for the windowing systems X11.

freedesktop.org (fd.o), formerly X Desktop Group (XDG), is a project to work on interoperability and shared base technology for free-software desktop environments for the X Window System (X11) and Wayland on Linux and other Unix-like operating systems. Although freedesktop.org produces specifications for interoperability, it is not a formal standards body.

<span class="mw-page-title-main">Light-weight Linux distribution</span> Operating system with low resource requirements

A light-weight Linux distribution is one that uses lower memory and/or has less processor-speed requirements than a more "feature-rich" Linux distribution. The lower demands on hardware ideally result in a more responsive machine, and/or allow devices with fewer system resources to be used productively. The lower memory and/or processor-speed requirements are achieved by avoiding software bloat, i.e. by leaving out features that are perceived to have little or no practical use or advantage, or for which there is no or low demand.

The following tables compare general and technical information for a number of notable file managers.

<span class="mw-page-title-main">TrueOS</span> Unix-like, desktop-oriented operating system

TrueOS is a discontinued Unix-like, server-oriented operating system built upon the most recent releases of FreeBSD-CURRENT.

<span class="mw-page-title-main">Zenwalk</span> Slackware-based Linux distribution

Zenwalk GNU/Linux is a desktop-focused Linux distribution founded by Jean-Philippe Guillemin. It is based on Slackware with very few modifications at system level making it 100% compatible with Slackware. It aims to be a modern, multi-purpose Linux distribution by focusing on internet applications, multimedia and programming tools. It comes with many specialized tools and is designed for beginner through advanced users, as it offers system configuration via both graphical tools and the command line.

<span class="mw-page-title-main">Sabayon Linux</span> Gentoo-based Linux distribution

Sabayon Linux or Sabayon, was an Italian Gentoo-based Linux distribution created by Fabio Erculiani and the Sabayon development team. Sabayon followed the "out of the box" philosophy, aiming to give the user a wide number of applications ready to use and a self-configured operating system.

<span class="mw-page-title-main">LXDE</span> Lightweight desktop environment for Linux and BSD

LXDE is a free desktop environment with comparatively low resource requirements. This makes it especially suitable for use on older or resource-constrained personal computers such as netbooks or system on a chip computers.

<span class="mw-page-title-main">GNOME</span> Desktop environment for Linux and other Unix-like systems

GNOME, originally an acronym for GNU Network Object Model Environment, is a free and open-source desktop environment for Linux and other Unix-like operating systems.

<span class="mw-page-title-main">Russian Fedora Remix</span>

Russian Fedora Remix was a remix of the Fedora Linux Linux distribution adapted for Russia that was active in 2008–2019. It was neither a copy of the original Fedora nor a new Linux distribution. The project aimed to ensure that Fedora fully satisfied the needs of Russian users with many additional features provided out of the box. In autumn 2019 the project was phased out because its leaders announced that it "had fulfilled its purpose by 100%" and all of the Russian-centric improvements were officially included in Fedora repositories, and Russian Fedora software maintainers became regular Fedora maintainers.

Fedora Linux is a popular Linux distribution developed by the Fedora Project. Fedora attempts to maintain a six-month release schedule, offering new versions in May and November, although some releases have experienced minor delays.

<span class="mw-page-title-main">MATE (desktop environment)</span> Desktop environment forked from GNOME 2

MATE is a desktop environment composed of free and open-source software that runs on Linux, BSD, and illumos operating systems.

<span class="mw-page-title-main">Devuan</span> Linux distribution based on Debian

Devuan is a fork of the Debian Linux distribution that uses sysvinit, runit or OpenRC instead of systemd. Devuan aims to avoid "lock-in" by projects like systemd and aims to maintain compatibility with other init systems to avoid detaching Linux from other Unix systems.

<span class="mw-page-title-main">MX Linux</span> Mid-weight family of operating systems

MX Linux is a Linux distribution based on Debian stable and using core antiX components, with additional software created or packaged by the MX community. The development of MX Linux is a collaborative effort between the antiX and former MEPIS communities. The MX 'name' comes from the M for MEPIS and the X from antiX – an acknowledgment of their roots. The community's stated goal is to produce "a family of operating systems that are designed to combine elegant and efficient desktops with high stability and solid performance".

<span class="mw-page-title-main">Lumina (desktop environment)</span> Desktop environment for X Window System

Lumina Desktop Environment, or simply Lumina, is a plugin-based desktop environment for Unix and Unix-like operating systems. It is designed specifically as a system interface for TrueOS, and systems derived from Berkeley Software Distribution (BSD) in general, but has been ported to various Linux distributions.

Ubuntu is a Debian-based Linux distribution for personal computers, tablets and smartphones, where the Ubuntu Touch edition is used; and also runs network servers, usually with the Ubuntu Server edition, either on physical or virtual servers or with containers, that is with enterprise-class features.

References

  1. XFree86 Official Website Archived 2003-10-20 at the Wayback Machine line 5
  2. Cygwin/X website
  3. Xming project homepage on SourceForge
  4. Official websites of GNOME and KDE
  5. "Budgie 10.8.2 Released". 19 October 2023. Retrieved 19 October 2023.
  6. "6.0.1". 14 December 2023. Retrieved 15 December 2023.
  7. "2.5.1 (stable) 10/1/2022". 1 October 2022. Retrieved 21 January 2023.
  8. "Testing requirements by Product Standard". The Open Group. January 31, 2013. Retrieved September 29, 2013.
  9. "deepin 20.9 is officially released!". 17 April 2023. Retrieved 2 May 2023.
  10. "Enlightenment 0.25.4 Release". 15 September 2022. Retrieved 2 November 2022.
  11. Error: Unable to display the reference properly. See the documentation for details.
  12. "GNOME 45 "Riga" Desktop Environment Officially Released, This Is What's New". 20 September 2023. Retrieved 21 September 2023.
  13. "Introducing GNOME 45". 20 September 2023. Retrieved 21 September 2023.
  14. "GNOME 45 released". 20 September 2023. Retrieved 21 September 2023.
  15. Error: Unable to display the reference properly. See the documentation for details.
  16. "KDE Plasma 5.27.10, Bugfix Release for December". 5 December 2023. Retrieved 5 December 2023.
  17. "LXPanel 0.10.1 released". 25 February 2021. Retrieved 3 June 2023.
  18. "1.4.1 Latest". 10 November 2023. Retrieved 2 December 2023.
  19. "version 1.26.2". 15 September 2023. Retrieved 16 September 2023.
  20. "Release 0.5.2". 12 January 2013. Retrieved 23 July 2018.
  21. Error: Unable to display the reference properly. See the documentation for details.
  22. Error: Unable to display the reference properly. See the documentation for details.
  23. Error: Unable to display the reference properly. See the documentation for details.
  24. "News – Xfce 4.18 released – Xfce".
  25. 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)
  26. "Unmaintained / KOffice · GitLab". GitLab. Retrieved 2023-10-25.
  27. Official Nautilus screenshots page
  28. "Official Dolphin file manager page on KDE project site". Archived from the original on 2011-03-24. Retrieved 2020-07-26.
  29. Fluxbox official website Archived 2008-05-14 at the Wayback Machine line 15
  30. Linux leaps toward KDE/GNOME compatibility Archived 2008-02-26 at the Wayback Machine
  31. Larabel, Michael. "Phoronix: Power & Memory Usage Of GNOME, KDE, LXDE & Xfce". Phoronix. Archived from the original on 3 September 2018. Retrieved 30 July 2011.
  32. RAM use of LXDE vs Xfce in Porteus again confirms that LXDE is about 1/2 of that of Xfce
  33. Phoronix