Differences between revisions 90 and 146 (spanning 56 versions)
Revision 90 as of 2017-10-07 20:30:50
Size: 7008
Editor: ?NicolasCouture
Comment: adding mention of notion window manager
Revision 146 as of 2021-08-30 22:09:38
Size: 14715
Editor: ThiagoPezzo
Comment: fix pt_BR label in header
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: [[ar/DesktopEnvironment|العربية]] - [[bn/DesktopEnvironment|বাংলা-(Bengali)]] - [[de/DesktopEnvironment|Deutsch]] - [[el/DesktopEnvironment|Ελληνικά]] - English - [[es/DesktopEnvironment|Español]] - [[fr/DesktopEnvironment|Français]] - [[he/DesktopEnvironment|עברית (Hebrew)]] - [[it/DesktopEnvironment|Italiano]] - [[ko/DesktopEnvironment|한국어]] - [[pl/Pulpit|Polski]] - [[pt_BR/DesktopEnvironment|Brasileiro]] - [[ru/DesktopEnvironment|Русский]] - [[sv/DesktopEnvironment|Svenska]] - [[ta/DesktopEnvironment|தமிழ் (Tamil)]] - [[zh_CN/DesktopEnvironment|简体中文]]-~
<<BR>>
||<tablewidth="100%" tablestyle="border: 0px hidden ; text-align: center;"> {{https://www.debian.org/logos/openlogo-nd-50.png}} {{https://www.debian.org/Pics/debian.png}} ||
||<style="border: 0px hidden ;">~+ {{attachment:Portal/IDB/logo_portal.png}} Welcome to the [[Debian]] Desktop Environment Portal+~ ||
~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: [[ar/DesktopEnvironment|العربية]] - [[bn/DesktopEnvironment|বাংলা-(Bengali)]] - [[de/DesktopEnvironment|Deutsch]] - [[el/DesktopEnvironment|Ελληνικά]] - English - [[es/DesktopEnvironment|Español]] - [[fr/DesktopEnvironment|Français]] - [[he/DesktopEnvironment|עברית (Hebrew)]] - [[it/DesktopEnvironment|Italiano]] - [[ko/DesktopEnvironment|한국어]] - [[pl/Pulpit|Polski]] - [[pt_BR/DesktopEnvironment|Português (Brasil)]] - [[ru/DesktopEnvironment|Русский]] - [[si/DesktopEnvironment|සිංහල-(Sinahala)]] - [[sv/DesktopEnvironment|Svenska]] - [[ta/DesktopEnvironment|தமிழ் (Tamil)]] - [[zh_CN/DesktopEnvironment|简体中文]]-~
----
{{attachment:Portal/IDB/icon-display-32x32.png}} Debian supports all kinds of graphical environments, ranging from full-featured desktop environments, to lighter alternatives and even minimalist but powerful window managers.
Line 8: Line 7:
----
{{attachment:Portal/IDB/icon-display-32x32.png}} Debian supports all kinds of graphical environments from fully-featured [[WikiPedia:Desktop_environment|desktop environments]] like GNOME and Plasma, to lighter environments like Xfce and LXDE, to even lighter window managers like Openbox and tiling window managers like Wmii.
----
A desktop environment provides a coherent suite of applications in terms of look, functionality, and usability.
Line 12: Line 9:
{{{#!wiki debian
https://www.debian.org/devel/debian-desktop/ - Debian Desktop Homepage.
}}}
<<TableOfContents()>>
Line 16: Line 11:
= Desktop components =

<<Anchor(de)>>
Line 18: Line 16:
||<tablestyle="width:100%; text-align: left" style="background-color:#EEEEEE">[[https://upload.wikimedia.org/wikipedia/commons/a/a4/GNOME-Shell-3.10.png|{{https://upload.wikimedia.org/wikipedia/commons/thumb/a/a4/GNOME-Shell-3.10.png/120px-GNOME-Shell-3.10.png}}]]||The [[Gnome|GNOME]] project provides two things: The GNOME desktop environment, an intuitive and attractive desktop for users, and the GNOME development platform, an extensive framework for building applications that integrate into the rest of the desktop.||
||<tablestyle="width:100%; text-align: left" style="background-color:#EEEEEE">[[https://upload.wikimedia.org/wikipedia/commons/5/54/KDE_4.png|{{https://upload.wikimedia.org/wikipedia/commons/thumb/5/54/KDE_4.png/120px-KDE_4.png}}]]||[[KDE|Plasma]] by KDE is a powerful open source graphical desktop environment for Unix workstations. It combines ease of use, contemporary functionality, and outstanding graphical design with the technological superiority of the Unix operating system.||
||<tablestyle="width:100%; text-align: left" style="background-color:#EEEEEE">[[https://upload.wikimedia.org/wikipedia/commons/7/71/Xfce-4.4.png|{{https://upload.wikimedia.org/wikipedia/commons/thumb/7/71/Xfce-4.4.png/120px-Xfce-4.4.png}}]]||[[Xfce]] is a lightweight desktop environment for various *NIX systems. Designed for productivity, it loads and executes applications quickly, while conserving system resources.||
||<tablestyle="width:100%; text-align: left" style="background-color:#EEEEEE">[[https://upload.wikimedia.org/wikipedia/commons/4/4c/LXDE_desktop_full.png|{{https://upload.wikimedia.org/wikipedia/commons/thumb/4/4c/LXDE_desktop_full.png/120px-LXDE_desktop_full.png}}]]||[[LXDE]] is designed to work well with computers on the low end of the performance spectrum such as older resource-constrained machines, new generation netbooks, and other small computers.||
||<tablestyle="width:100%; text-align: left" style="background-color:#EEEEEE">[[https://upload.wikimedia.org/wikipedia/commons/9/90/Ubuntu_MATE_15_04.png|{{https://upload.wikimedia.org/wikipedia/commons/thumb/9/90/Ubuntu_MATE_15_04.png/120px-Ubuntu_MATE_15_04.png}}]]||[[Mate|MATE]] is the continuation of GNOME 2. It provides an intuitive and attractive desktop environment using traditional metaphors for Linux and other Unix-like operating systems. ||
##
## Tricky table style:
## - first row just says overall table CSS
## - thumbnails from screenshot.debian.net are 160x120, we set first cell to 185px
## - no proper way to specify vertical-align on td except with a class, we add them manually on 2nd column
##
||||<tablestyle="width:100%; background-color: #f5f6f7; border: 1px solid #d2d3d7;">||
||<style="width: 185px;">[[https://screenshots.debian.net/package/gnome|{{https://screenshots.debian.net/thumbnail/gnome}}]]||<style="vertical-align:middle;">The [[Gnome|GNOME]] project provides two things: The GNOME desktop environment, an intuitive and attractive desktop for users, and the GNOME development platform, an extensive framework for building applications that integrate into the rest of the desktop.||
||[[https://screenshots.debian.net/package/kde-standard|{{https://screenshots.debian.net/thumbnail/kde-standard}}]]||<style="vertical-align:middle;">[[Plasma]] by KDE is a powerful open source graphical desktop environment for Unix workstations. It combines ease of use, contemporary functionality, and outstanding graphical design with the technological superiority of the Unix operating system.||
||[[https://screenshots.debian.net/package/xfce4|{{https://screenshots.debian.net/thumbnail-with-version/xfce4/4.14}}]]||<style="vertical-align:middle;">[[Xfce]] is a lightweight desktop environment for various *NIX systems. Designed for productivity, it loads and executes applications quickly, while conserving system resources.||
||[[https://screenshots.debian.net/package/lxde|{{https://screenshots.debian.net/thumbnail/lxde}}]]||<style="vertical-align:middle;">[[LXDE]] is designed to work well with computers on the low end of the performance spectrum such as older resource-constrained machines, new generation netbooks, and other small computers.||
||[[https://screenshots.debian.net/package/mate-desktop|{{https://screenshots.debian.net/thumbnail/mate-desktop}}]]||<style="vertical-align:middle;">[[MATE]] is the continuation of GNOME 2. It provides an intuitive and attractive desktop environment using traditional metaphors for Linux and other Unix-like operating systems. ||
Line 24: Line 29:
Other desktop environments available in Debian include [[DebianPackage:cinnamon|Cinnamon]], [[DebianPackage:lxqt|LXQt]], [[DebianPackage:budgie-desktop|Budgie]], [[DebianPackage:e17|Enlightenment]], [[DebianPackage:fvwm-crystal|FVWM-Crystal]], [[DebianGNUstep|GNUstep]]/[[DebianPackage:wmaker|Window Maker]], [[DebianPackage:sugar-session|Sugar]] [[https://notionwm.net/|Notion WM]] and possibly others.
Line 25: Line 31:
Other desktop environments available in Debian include [[DebianPackage:cinnamon|Cinnamon]], [[DebianPackage:lxqt|LXQt]], [[DebianPackage:budgie-desktop|Budgie]], [[DebianPackage:e17|Enlightenment]], [[DebianPackage:fvwm-crystal|FVWM-Crystal]], [[DebianPackage:wmaker|Window Maker]], [[DebianPackage:sugar-session|Sugar]] [[http://notion.sourceforge.net/|Notion WM]] and possibly others.

Other desktop environments not available in Debian include [[https://unity.ubuntu.com/|Unity]]
, [[https://elementary.io/get-involved#desktop-development|Pantheon]], [[https://rox.sourceforge.net/desktop/|ROX]], [[https://equinox-project.org/|Equinox/EDE]], [[https://etoileos.com/|Étoilé]], [[https://sourceforge.net/projects/cdesktopenv/|CDE]] and [[https://wiki.archlinux.org/index.php/Desktop_Environment|others]].
Other desktop environments not available in Debian include Unity ([[https://ubports.com/|1]] [[https://github.com/yunit-io/yunit|2]]), [[https://elementary.io/get-involved#desktop-development|Pantheon]], [[https://rox.sourceforge.net/desktop/|ROX]], [[https://equinox-project.org/|Equinox/EDE]], [[https://etoileos.com/|Étoilé]], [[https://sourceforge.net/projects/cdesktopenv/|CDE]], [[https://artemis-project.github.io/|Artemis]], [[https://durden.arcan-fe.com/|Durden]], [[https://www.project-trident.org/|Trident]], [[https://lumina-desktop.org/|Lumina]] and [[https://wiki.archlinux.org/index.php/Desktop_Environment|others]].
Line 32: Line 35:
||<tablestyle="width:100%; text-align: left" style="background-color:#EEEEEE">{{https://upload.wikimedia.org/wikipedia/commons/b/b0/Openbox-elementary3.png||width=100}}||[[Openbox]] is a lightweight and highly configurable window manager with extensive standards support. It is well known for its minimalistic appearance.||
||<tablestyle="width:100%; text-align: left" style="background-color:#EEEEEE">{{http://old.fluxbox.org/download/propaganda/fb-icon48x48-metal.png}}||[[FluxBox]] is a windowmanager for X that was based on the Blackbox 0.61.1 code. It is very light on resources and easy to handle yet full of features to make an easy, and extremely fast, desktop experience.||
||<tablestyle="width:100%; text-align: left" style="background-color:#EEEEEE">{{https://upload.wikimedia.org/wikipedia/commons/thumb/4/42/Compiz_logo.svg/100px-Compiz_logo.svg.png|Compiz logo|width=90%, height=90%}}||[[Compiz]] is a compositing window manager for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management.||
||<tablestyle="width:100%; text-align: left" style="background-color:#EEEEEE">{{https://upload.wikimedia.org/wikipedia/commons/thumb/1/13/Wmii-logo.svg/55px-Wmii-logo.svg.png}}||[[Wmii]] is a dynamic window manager for X11. It supports classic and tiling window management with extended keyboard, mouse, and filesystem-based remote control. It replaces the workspace paradigm with a new tagging approach.||
||<tablestyle="width:100%; text-align: left" style="background-color:#EEEEEE">{{https://upload.wikimedia.org/wikipedia/commons/1/1f/Awesome_logo.png}}||[[Awesome]] is a dynamic window manager for X11. It supports tiling window management with extended keyboard, mouse, and it is scriptable in Lua. It includes many add-ons which can make it very powerful. It replaces the workspace paradigm with a new tiling approach of non-overlaping windows.||
As its name says, Window Managers control the layout, appearance and ways to interact with your environment windows. While some Window Managers might be part of your Desktop Environment, some (such as tiled window managers) also do work as standalone, and were eventually designed for that purpose.

## Tricky table format, see previous note.
||||<tablestyle="width:100%; background-color: #f5f6f7; border: 1px solid #d2d3d7;">||
||<style="width: 185px;">[[https://screenshots.debian.net/package/openbox|{{https://screenshots.debian.net/thumbnail/openbox}}]]||<style="vertical-align:middle;">[[Openbox]] is a lightweight and highly configurable window manager with extensive standards support. It is well known for its minimalistic appearance.||
||[[https://screenshots.debian.net/package/fluxbox|{{https://screenshots.debian.net/thumbnail/fluxbox}}]]||<style="vertical-align:middle;">[[FluxBox]] is a windowmanager for X that was based on the Blackbox 0.61.1 code. It is very light on resources and easy to handle yet full of features to make an easy, and extremely fast, desktop experience.||
||[[https://screenshots.debian.net/package/compiz|{{https://screenshots.debian.net/thumbnail/compiz}}]]||<style="vertical-align:middle;">[[Compiz]] is a compositing window manager for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management.||

Search Window Managers with Debtags: [[https://debtags.debian.org/search/?wl=&q=tag%3Ax11%3A%3Awindow-manager|x11::window-manager]].

=== Tiling Window Managers ===

Tiling Window Managers provide a way to control windows behavior by making them tiled, easily occupying the whole screen.

## Tricky table format, see previous note.
||||<tablestyle="width:100%; background-color: #f5f6f7; border: 1px solid #d2d3d7;">||
||<style="width: 185px;">[[https://screenshots.debian.net/package/wmii|{{https://screenshots.debian.net/thumbnail/wmii}}]]||<style="vertical-align:middle;">[[Wmii]] is a dynamic window manager for X11. It supports classic and tiling window management with extended keyboard, mouse, and filesystem-based remote control. It replaces the workspace paradigm with a new tagging approach.||
||[[https://screenshots.debian.net/package/awesome|{{https://screenshots.debian.net/thumbnail/awesome}}]]||<style="vertical-align:middle;">[[Awesome]] is a dynamic window manager for X11. It supports tiling window management with extended keyboard, mouse, and it is scriptable in Lua. It includes many add-ons which can make it very powerful. It replaces the workspace paradigm with a new tiling approach of non-overlaping windows.||
||[[https://screenshots.debian.net/package/i3-wm|{{https://screenshots.debian.net/thumbnail/i3-wm}}]]||<style="vertical-align:middle;">[[i3]]||
||[[https://screenshots.debian.net/package/dwm|{{https://screenshots.debian.net/thumbnail/dwm}}]]||<style="vertical-align:middle;">[[Dwm]]||


== Display Managers ==

In the X Window System, an X display manager is a graphical login manager which starts a session on an X server from the same or another computer. A display manager presents the user with a login screen. A session starts when a user successfully enters a valid combination of username and password.

More infos: [[DisplayManager|Display Manager]]


== Display server ==

Most Desktop Environment currently rely on [[Xorg]] (X Window System), and will eventually support [[Wayland]] in the future.
Line 40: Line 70:
= How it works? =

<<Anchor(dide)>>
== Installation of a Desktop Environment ==

During the installation of Debian the installer offers the choice of which [[#de|Desktop Environment]] to install. Should you prefer to install one after booting into the new OS, you can decline all the offerings by unticking ''Debian desktop environment''.

A user on Debian 10 (buster) or Debian 11 (bullseye) would be presented with the menu:

{{{
[*] Debian desktop environment
[ ] GNOME
[ ] Xfce
[ ] KDE Plasma
[ ] Cinnamon
[ ] MATE
[ ] LXDE
[ ] LXQt
}}}

 * Accepting this selection sees the GNOME desktop environment installed.
 * Without deselecting the desktop environment, another entry, GNOME included, may be selected. This will install that selection.
 * Unticking ''Debian desktop environment'' and selecting any other choice leads to that choice being installed.

For an explanation of this behaviour we have to look at part of the ''Recommends:'' line in `apt show task-desktop`.

{{{
Recommends: task-gnome-desktop | task-xfce-desktop | task-kde-desktop | task-lxde-desktop
            | task-cinnamon-desktop | task-mate-desktop | task-lxqt-desktop
}}}

 * The Debian desktop environment installs task-desktop and requires one of the packages listed above. If none of them are on the system, the first in the list, task-gnome-desktop, will be installed to fulfill the dependency. This is the situation when a user accepts only the Debian desktop environment.

 *Looking at `apt show task-mate-desktop` we see that it depends on task-desktop and mate-desktop-environment. Ticking MATE, with or without the Debian desktop environment ticked, would satisfy task-desktop's Recommends: line and install MATE instead of the Gnome default.





Afterward, installing another Desktop Environment is as simple as installing a single package. For some Desktop Environments, you have choice between several meta-packages depending on if you wish to install a minimal set or most of the software coming with the environment. Please refer to the page specific to the Desktop Environment you wish to install for a description of these meta-packages.

{{{#!wiki debian
 * Debian Administrator's handbook: [[https://www.debian.org/doc/manuals/debian-handbook/sect.customizing-graphical-interface.en.html|Customizing the Graphical Interface]]
 * Debian Reference Manual: [[https://www.debian.org/doc/manuals/debian-reference/ch07.en.html#_key_packages|The X Window System: Key packages]] (Chapters 7.1, 7.2)}}}

Installing a new Desktop Environment will make it available for your system, but you still need to set up your user Session (see below) in order to run it.


== Sessions ==

Sessions are usually managed by the [[DisplayManager|Display Manager]], which itself relies on [[Xsession]].

Most Display Managers will allow you to select which Desktop Environment/Window Manager you wish to run for next session, and eventually make it default.

If you don't want to run a Display Manager to manage your sessions, you might consider using [[https://github.com/spanezz/nodm/|nodm]] - you may be comfortable merely using a screen locker (eg. [[DebPkg:xscreensaver|XScreensaver]], [[DebPkg:suckless-tools|slock]]) to lock your sessions manually instead of expecting it to insist on username plus password to get in. This is likely inappropriate for servers, but may well be acceptable for a user's home system, assuming no familial trust issues.

If you have no Display Manager installed at all, you can still start the X Environment from console with the '''startx''' command, which is a call to [[xinit]].

{{{#!wiki debian
 * Debian Reference Manual: [[https://www.debian.org/doc/manuals/debian-reference/ch07.en.html#_starting_the_x_window_system|The X Window System: Starting the X Window System]] (Chapter 7.5)
}}}


== Theming and customization ==

Desktop environments often have customized themes that allow you to change the look and feel of your desktop. The easiest way to customize your desktop environment is to install theme packages from your system's [[PackageManagement|Package Manager]].

Further customization is possible by editing settings of Graphical Toolkits, such as GTK2, GTK3, or directly change the application settings.

Some terminals like xterm and urxvt make use of [[Xresources|Xresources]] to control their appearance and functionalities.

Search X11 Themes with Debtags: [[https://debtags.debian.org/search/?wl=&q=tag%3Ax11%3A%3Atheme|x11::theme]].


=== Fonts ===

Learn about getting [[Fonts|Fonts]], fonts rendering and other issues.


== Common problems ==

=== Heterogeneous environments ===

While the purpose of a desktop is to provide a coherent suite of applications, you are likely to mix applications coming from several desktops which are using various graphical toolkits, with the inconvenience that they will not be well integrated.

Getting a uniform look and feel between your applications might be challenging, and relies on workarounds such as using themes specifically designed to look similar between several environments and applications.

Some features such as the desktop menus can be shared, in particular for environments following [[FreeDesktop|FreeDesktop]] (XDG) guidelines.

=== Default applications ===

Having several applications with the same purpose will lead to competition for which software is meant to open when handling your files. Several mechanisms do exist to control these [[DesktopDefaultSettings|default applications and settings]].

Line 41: Line 165:
== Resources ==
Line 43: Line 166:
 * [[DebianDesktop|The Debian Desktop project]]. = Resources =

== End-user ==

 * [[User_interface|Definition of User Interface]].
 * [[DisplayManager|Display managers]] like XDM, GDM, WDM, or KDM.
 * [[FreeDesktop|FreeDesktop]]
 * [[Fonts|Fonts]]
 * [[DesktopDefaultSettings|Default settings]]
 * [[Xorg]]
 * [[Wayland]]

=== Cross-theming ===

 * DebPkg:qt5-gtk-platformtheme : may help to have similar look with QT5 applications within GTK environments
 * [[http://chriskempson.com/projects/base16/|Base16]] : guidelines to make similar-looking themes for various applications.

== Contributing ==

 * [[DebianArt]]
 * [[https://www.debian.org/devel/debian-desktop/|The Debian Desktop project]] ([[DebianDesktop|wiki]])
Line 45: Line 188:
 * [[User_interface|Definition of User Interface]].
 * [[DesktopDefaultSettings|Default settings]]
 * [[DisplayManager|Display managers]] like XDM, GDM, WDM, or KDM.

== See also ==
 * [[CategoryDesktopApplication]] - wiki pages related to graphical programs for the desktop

== External Links ==
##wikipedia link moved to external links following reasoning better explained (not by me) in Synaptic/Discussion -BeatriceTorracca-
 * [[WikiPedia:Desktop_environment|Desktop environment]] in Wikipedia

Translation(s): العربية - বাংলা-(Bengali) - Deutsch - Ελληνικά - English - Español - Français - עברית (Hebrew) - Italiano - 한국어 - Polski - Português (Brasil) - Русский - සිංහල-(Sinahala) - Svenska - தமிழ் (Tamil) - 简体中文


Portal/IDB/icon-display-32x32.png Debian supports all kinds of graphical environments, ranging from full-featured desktop environments, to lighter alternatives and even minimalist but powerful window managers.

A desktop environment provides a coherent suite of applications in terms of look, functionality, and usability.

Desktop components

Desktop Environment

https://screenshots.debian.net/package/gnome

The GNOME project provides two things: The GNOME desktop environment, an intuitive and attractive desktop for users, and the GNOME development platform, an extensive framework for building applications that integrate into the rest of the desktop.

https://screenshots.debian.net/package/kde-standard

Plasma by KDE is a powerful open source graphical desktop environment for Unix workstations. It combines ease of use, contemporary functionality, and outstanding graphical design with the technological superiority of the Unix operating system.

https://screenshots.debian.net/package/xfce4

Xfce is a lightweight desktop environment for various *NIX systems. Designed for productivity, it loads and executes applications quickly, while conserving system resources.

https://screenshots.debian.net/package/lxde

LXDE is designed to work well with computers on the low end of the performance spectrum such as older resource-constrained machines, new generation netbooks, and other small computers.

https://screenshots.debian.net/package/mate-desktop

MATE is the continuation of GNOME 2. It provides an intuitive and attractive desktop environment using traditional metaphors for Linux and other Unix-like operating systems.

Other desktop environments available in Debian include Cinnamon, LXQt, Budgie, Enlightenment, FVWM-Crystal, GNUstep/Window Maker, Sugar Notion WM and possibly others.

Other desktop environments not available in Debian include Unity (1 2), Pantheon, ROX, Equinox/EDE, Étoilé, CDE, Artemis, Durden, Trident, Lumina and others.

Window Manager

As its name says, Window Managers control the layout, appearance and ways to interact with your environment windows. While some Window Managers might be part of your Desktop Environment, some (such as tiled window managers) also do work as standalone, and were eventually designed for that purpose.

https://screenshots.debian.net/package/openbox

Openbox is a lightweight and highly configurable window manager with extensive standards support. It is well known for its minimalistic appearance.

https://screenshots.debian.net/package/fluxbox

FluxBox is a windowmanager for X that was based on the Blackbox 0.61.1 code. It is very light on resources and easy to handle yet full of features to make an easy, and extremely fast, desktop experience.

https://screenshots.debian.net/package/compiz

Compiz is a compositing window manager for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management.

Search Window Managers with Debtags: x11::window-manager.

Tiling Window Managers

Tiling Window Managers provide a way to control windows behavior by making them tiled, easily occupying the whole screen.

https://screenshots.debian.net/package/wmii

Wmii is a dynamic window manager for X11. It supports classic and tiling window management with extended keyboard, mouse, and filesystem-based remote control. It replaces the workspace paradigm with a new tagging approach.

https://screenshots.debian.net/package/awesome

Awesome is a dynamic window manager for X11. It supports tiling window management with extended keyboard, mouse, and it is scriptable in Lua. It includes many add-ons which can make it very powerful. It replaces the workspace paradigm with a new tiling approach of non-overlaping windows.

https://screenshots.debian.net/package/i3-wm

i3

https://screenshots.debian.net/package/dwm

Dwm

Display Managers

In the X Window System, an X display manager is a graphical login manager which starts a session on an X server from the same or another computer. A display manager presents the user with a login screen. A session starts when a user successfully enters a valid combination of username and password.

More infos: Display Manager

Display server

Most Desktop Environment currently rely on Xorg (X Window System), and will eventually support Wayland in the future.

How it works?

Installation of a Desktop Environment

During the installation of Debian the installer offers the choice of which Desktop Environment to install. Should you prefer to install one after booting into the new OS, you can decline all the offerings by unticking Debian desktop environment.

A user on Debian 10 (buster) or Debian 11 (bullseye) would be presented with the menu:

[*] Debian desktop environment
[ ] GNOME
[ ] Xfce
[ ] KDE Plasma
[ ] Cinnamon
[ ] MATE
[ ] LXDE
[ ] LXQt
  • Accepting this selection sees the GNOME desktop environment installed.
  • Without deselecting the desktop environment, another entry, GNOME included, may be selected. This will install that selection.
  • Unticking Debian desktop environment and selecting any other choice leads to that choice being installed.

For an explanation of this behaviour we have to look at part of the Recommends: line in apt show task-desktop.

Recommends: task-gnome-desktop | task-xfce-desktop | task-kde-desktop | task-lxde-desktop
            | task-cinnamon-desktop | task-mate-desktop | task-lxqt-desktop
  • The Debian desktop environment installs task-desktop and requires one of the packages listed above. If none of them are on the system, the first in the list, task-gnome-desktop, will be installed to fulfill the dependency. This is the situation when a user accepts only the Debian desktop environment.
  • Looking at apt show task-mate-desktop we see that it depends on task-desktop and mate-desktop-environment. Ticking MATE, with or without the Debian desktop environment ticked, would satisfy task-desktop's Recommends: line and install MATE instead of the Gnome default.

Afterward, installing another Desktop Environment is as simple as installing a single package. For some Desktop Environments, you have choice between several meta-packages depending on if you wish to install a minimal set or most of the software coming with the environment. Please refer to the page specific to the Desktop Environment you wish to install for a description of these meta-packages.

Installing a new Desktop Environment will make it available for your system, but you still need to set up your user Session (see below) in order to run it.

Sessions

Sessions are usually managed by the Display Manager, which itself relies on Xsession.

Most Display Managers will allow you to select which Desktop Environment/Window Manager you wish to run for next session, and eventually make it default.

If you don't want to run a Display Manager to manage your sessions, you might consider using nodm - you may be comfortable merely using a screen locker (eg. XScreensaver, slock) to lock your sessions manually instead of expecting it to insist on username plus password to get in. This is likely inappropriate for servers, but may well be acceptable for a user's home system, assuming no familial trust issues.

If you have no Display Manager installed at all, you can still start the X Environment from console with the startx command, which is a call to xinit.

Theming and customization

Desktop environments often have customized themes that allow you to change the look and feel of your desktop. The easiest way to customize your desktop environment is to install theme packages from your system's Package Manager.

Further customization is possible by editing settings of Graphical Toolkits, such as GTK2, GTK3, or directly change the application settings.

Some terminals like xterm and urxvt make use of Xresources to control their appearance and functionalities.

Search X11 Themes with Debtags: x11::theme.

Fonts

Learn about getting Fonts, fonts rendering and other issues.

Common problems

Heterogeneous environments

While the purpose of a desktop is to provide a coherent suite of applications, you are likely to mix applications coming from several desktops which are using various graphical toolkits, with the inconvenience that they will not be well integrated.

Getting a uniform look and feel between your applications might be challenging, and relies on workarounds such as using themes specifically designed to look similar between several environments and applications.

Some features such as the desktop menus can be shared, in particular for environments following FreeDesktop (XDG) guidelines.

Default applications

Having several applications with the same purpose will lead to competition for which software is meant to open when handling your files. Several mechanisms do exist to control these default applications and settings.

Resources

End-user

Cross-theming

  • qt5-gtk-platformtheme : may help to have similar look with QT5 applications within GTK environments

  • Base16 : guidelines to make similar-looking themes for various applications.

Contributing

See also


CategoryPortal | CategoryDesktopEnvironment