Linux desktop environments: Difference between revisions

Content deleted Content added
m Typo/general fixing, replaced: the the → the using AWB
Line 15:
 
=== Components of the Linux Desktop ===
[[File:Free and open-source-software display servers and UI toolkits.svg|thumb|left|Illustrates software components of the Linux desktop stack like the display server, compositor, UI toolkits, dekstop shells and even desktop widetswidgets]]
 
Obviously there is no "one" Linux Desktop, but rather there is a pool of [[free and open-source software]] from which Desktop environments / Linux distributions select components with which they construct a GUI implementing some more or less strict design guide. GNOME, for example, has its [[Human interface guidelines]], as a design guide, which gives the Human-Machine Interface an important role, not just when doing the graphical design, but also when looking at people with [[disability|disabilities]] and even when looking at security.<ref>{{cite web |url=https://lwn.net/Articles/562902/ |title=Prompt-free security for GNOME}}</ref>
 
* theThe [[C standard library]] for the [[Linux kernel]] which offers programs APIs to the Linux kernel; by far the most poplar one is [[GNU C Library]] but there are a couple of alternative, such as e.g. [[uClibc]] which targets embedded devices; (''the C standard library is actually that elemental to the entire [[operating system]] that it cannot be considered part of the DE, yet components of the DE extensively make use of it, so it is mentioned here. It is also noteworthy because [[Android (operating system)|Android]] is based on [[Bionic (software)|libbionic]], and some [[device driver]]s written for Android specifically can only be used with the help of [[Hybris (software)|libhybris]].'')
* aA non-obvious but quite central role have the programs hosted by [[freedesktop.org]]; both big DEs, GNOME and KDE SC, include them, each offering graphical front-ends written using the correspondentcorresponding toolkit (GTK+ or Qt).
* aA [[display server]] which for the longest time has been communicating in the X11 display server protocol with its clients; a prominent software talking X11 are the [[X.Org Server]] and [[Xlib]]. Frustration over the cumbersome X11 core protocol, and especially over its numerous extensions, havehas leadled to the creation of a new display server protocol: [[Wayland (display server protocol)|Wayland]].
* numerousNumerous [[window manager]]s, more precisely [[X window manager]]s and [[Wayland compositor]]s.
* Desktop shells, e.g. [[GNOME Shell]], [[Cinnamon (user interface)|Cinnamon]] or [[KDE Plasma Workspaces]].
* [[List of toolkits|Toolkits]] to write applications, e.g. [[Nautilus (file manager)|Nautilus]] or [[Dolphin (file manager)|Dolphin]] or [[Thunar]].
 
== Criticism ==