Components of a Linux Desktop Environment

A List and Description of the Most Commonly Used Ones

There are many different "desktop environments" available within Linux including but not limited to Unity, Cinnamon, GNOME, KDE, XFCE, LXDE, and Enlightenment.

This list highlights the components which are commonly used to make a "desktop environment."

Window Manager

Window Manager
Window Manager.

A "Window Manager" determines how applications are presented to the user on the screen.

There are different types of "Window Manager" available:

  • Compositing
  • Stacking
  • Tiling

Modern desktop environments use compositing to display windows. Windows can appear on top of each other and snap side by side and look pleasing to the eye.

A stacking "window manager" lets you place windows on top of each other but they look more old-fashioned.

A tiling "window manager" puts windows side by side without letting them overlap.

Typically a "window" can have borders, it can be minimized and maximized, resized and dragged around the screen. The "window" will have a title, may contain a context menu and items can be selected with the mouse.

A "window manager" lets you tab between windows, send them to a taskbar (also known as a panel), snap the windows side by side and perform other tasks.

You can generally set the desktop wallpaper and add icons to the desktop.


XFCE panel
XFCE panel.

Those of you used to the Windows operating system will think of a "panel" as being a "taskbar".

Within Linux, you can have multiple panels on the screen.

A "panel" generally sits on the edge of the screen either at the top, bottom, left or right.

The "panel" will contain items such as a menu, quick launch icons, minimized applications, and a system tray or notification area.​

Another use of a "panel" is as a docking bar which provides quick launch icons to load commonly used applications.


XFCE Whisker Menu
XFCE Whisker Menu.

Most desktop environments include a "menu" and quite often it is enacted by clicking on an icon attached to a panel.

Some desktop environments and in particular window managers allow you to click anywhere on the desktop to display the menu.

A menu generally shows a list of categories which when clicked show the applications available within that category.

Some menus provide a search bar and they also provide access to favorite applications as well as functions for logging out of the system.

System Tray

System tray
System tray.

A "system tray" is generally attached to a panel and provides access to key settings:

  • Audio
  • Network
  • Power
  • User
  • Bluetooth
  • Notifications
  • Clock


Desktop icons
Desktop icons.

"Icons" provide instant access to applications.

An "icon" links to a file with a ".desktop" extension which provides a link to an executable program. 

The ".desktop" file also contains the path to the image to use for the icon as well as the category for the application which is used in menus.


KDE Plasma widgets
KDE Plasma widgets.

Widgets provide useful information to the user straight to the desktop.

Common widgets provide system information, news, sports results, and the weather.


Ubuntu launcher
Ubuntu launcher.

Unique to Unity and the GNOME desktop a launcher provides a list of quick launch icons which when clicked load the linked application.

Other desktop environments allow you to create panels or docks which can include launchers to provide the same functionality.


Ubuntu dash
Ubuntu dash.

The Unity and GNOME desktop environments include a dash style interface which can be displayed by pressing the super key (on most laptops this is a key with the Windows logo).

The "dash" style interface provides a series of icons in categories which when clicked pull up the linked application.

A powerful search facility is usually included as well to make it easy to find applications.

File Manager


A file manager is required to allow you to navigate the file system so that you can edit, copy, move and delete files and folders.

Typically you will see a list of common folders such as home, pictures, documents, music, and downloads. Clicking on a folder shows the items within the folder.

Terminal Emulator

Terminal Emulator
Terminal Emulator.

A terminal emulator lets a user run low-level commands against the operating system.

The command line provides more powerful features than traditional graphical tools.

You can do most things in the command line that you can with graphical tools but the increased number of switches provide a lower level of granularity.

The command line makes running repetitive tasks simpler and less time to consume.

Text Editor

The gEdit Text Editor
The gEdit Text Editor.

A "text editor" allows you to create text files and you can use it to edit configuration files.

Although it is much more basic than a word processor the text editor is useful for creating notes and lists.

Display Manager

Display Manager
Display Manager.

A "display manager" is the screen used to login to your desktop environment.

As well as allowing you to login to the system you can also use the "display manager" to change the desktop environment in use.

Configuration Tools

Unity Tweak
Unity Tweak.

Most desktop environments include tools for configuring the desktop environment so that it looks and behaves the way you want it to.

The tools allow you to adjust mouse behavior, the way windows works, how icons behave and many other aspects of the desktop.