Differences between revisions 98 and 129 (spanning 31 versions)
Revision 98 as of 2018-01-06 17:35:30
Size: 9686
Editor: ccts
Comment: more descriptions (DE & WM), hybrid environments, theming & customization, +fix session
Revision 129 as of 2018-06-07 04:43:18
Size: 13050
Editor: PaulWise
Comment: add a couple more (from TrueOS)
Deletions are marked like this. Additions are marked like this.
Line 14: Line 14:
<<TableOfContents()>>

= Desktop components =
Line 18: Line 22:
||<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. ||
Line 24: Line 23:
##
## 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|{{http://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;">[[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.||
||[[https://screenshots.debian.net/package/xfce4|{{https://screenshots.debian.net/thumbnail/xfce4}}]]||<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|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 27: Line 38:
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]], [[http://durden.arcan-fe.com/|Durden]] 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]], [[http://durden.arcan-fe.com/|Durden]], [[http://www.project-trident.org/|Trident]], [[https://lumina-desktop.org/|Lumina]] and [[https://wiki.archlinux.org/index.php/Desktop_Environment|others]].
Line 32: Line 42:
As its name says, Window Managers control the appearance and ways to interact with your environment windows. Most D.E. provide their own Window Manager, but some also work well apart (without an associated D.E.). 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.
Line 34: Line 44:
||<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.||
## 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]]

= How it works? =
Line 42: Line 75:
First, during the installation of Debian, the installer offers the choice of which Desktop Environment you want to install, you can also install none if you want no graphical environment or prefer to install it later. First, during the installation of Debian, the installer offers the choice of which Desktop Environment to install, you can also install none if you want no graphical environment or prefer to install it later.
Line 46: Line 79:
== Changing Desktop Environment == {{{#!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)}}}
Line 48: Line 83:
You might want to try several environments, or adopt one instead of another. Installing a new Desktop Environment will make it available for your system, and the way sessions are handled will determine which one is run by the user.
The easiest way to change it is to use a [[DisplayManager|Display Manager]], which prompts you at login which Desktop Environment you wish to run for this session, and eventually make it default.
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.
Line 53: Line 87:
Sessions are usually managed by the [[DisplayManager|Display Manager]], which itself relies on [[Xsession]].  Sessions are usually managed by the [[DisplayManager|Display Manager]], which itself relies on [[Xsession]].
Line 55: Line 89:
If no Display Manager makes use of Xsession, you can still start the X Environement with the '''startx''' command, which is a call to [[xinit]]. 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.
Line 57: Line 91:
== Mixing applications from various Desktop Environment == 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.
Line 59: Line 93:
While the purpose of a D.E. is to provide a coherent suite of applications, you are likely to mix applications coming from several D.E. which are using various Graphical Toolkits, with the inconvenient they will not be well integrated. 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]].
Line 61: Line 95:
It is sometimes possible to reduce the differences by using themes common or similarly looking between Desktop Environments. {{{#!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)
}}}
Line 65: Line 101:
Novice users might use themes provided by their Desktop Environment. Easiest way to customize your environment is to install themes designed for your D.E. from your [[PackageManagement|Package Manager]].
Line 67: Line 103:
Advanced users might also be interest in directly customizing Graphical Toolkits or applications, such as GTK2, GTK3, terminals... Further customization is possible by editing settings of Graphical Toolkits, such as GTK2, GTK3, or directly change the application settings.
Line 69: Line 105:
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 71: Line 128:
== Resources ==
Line 73: Line 129:
=== End-user === = Resources =

== End-user ==
Line 76: Line 135:
 * [[FreeDesktop|FreeDesktop]]
 * [[Fonts|Fonts]]
Line 77: Line 138:
 * [[Xorg]]
 * [[Wayland]]
Line 78: Line 141:
=== Contributing === === Cross-theming ===
Line 80: Line 143:
 * 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]]
Line 83: Line 152:

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

https://www.debian.org/logos/openlogo-nd-50.png https://www.debian.org/Pics/debian.png

Portal/IDB/logo_portal.png Welcome to the Debian Desktop Environment Portal


Portal/IDB/icon-display-32x32.png Debian supports all kinds of graphical environments from fully-featured 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.

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


Desktop components

Desktop Environment

Purpose of a D.E. is to provide a coherent suite of applications in terms of look, functionnalities, and usability.

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, 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

How it works?

Installation of a Desktop Environment

First, during the installation of Debian, the installer offers the choice of which Desktop Environment to install, you can also install none if you want no graphical environment or prefer to install it later.

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

Easiest way to customize your environment is to install themes designed for your D.E. from your 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


CategoryPortal | CategoryDesktopEnvironment