Desktop environment (简体中文)

在X图形系统基础上,桌面环境为计算机提供完全的图形用户界面(GUI)。


概况

A desktop environment bundles together a variety of X clients to provide common graphical user interface elements such as icons, toolbars, wallpapers, and desktop widgets. Additionally, most desktop environments include a set of integrated applications and utilities. Most importantly, desktop environments provide their own window manager, which can however usually be replaced with another compatible one.

The user is free to configure their GUI environment in any number of ways. Desktop environments simply provide a complete and convenient means of accomplishing this task. Note that users are free to mix-and-match applications from multiple desktop environments. For example, a KDE user may install and run GNOME applications such as the Epiphany web browser, should he/she prefer it over KDE's Konqueror web browser. One drawback of this approach is that many applications provided by desktop environment projects rely heavily upon their DE's respective underlying libraries. As a result, installing applications from a range of desktop environments will require installation of a larger number of dependencies. Users seeking to conserve disk space and avoid software bloat often avoid such mixed environments, or look into lightweight alternatives.

Furthermore, DE-provided applications tend to integrate better with their native environments. Superficially, mixing environments with different widget toolkits will result in visual discrepancies (that is, interfaces will use different icons and widget styles). In terms of user experience, mixed environments may not behave similarly (e.g. single-clicking versus double-clicking icons; drag-and-drop functionality) potentially causing confusion or unexpected behavior.

Prior to installing a desktop environment, a functional X server installation is required. See Xorg for detailed information. ==

A desktop environment bundles together a variety of X clients to provide common graphical user interface elements such as icons, toolbars, wallpapers, and desktop widgets. Additionally, most desktop environments include a set of integrated applications and utilities. Most importantly, desktop environments provide their own window manager, which can however usually be replaced with another compatible one.

The user is free to configure their GUI environment in any number of ways. Desktop environments simply provide a complete and convenient means of accomplishing this task. Note that users are free to mix-and-match applications from multiple desktop environments. For example, a KDE user may install and run GNOME applications such as the Epiphany web browser, should he/she prefer it over KDE's Konqueror web browser. One drawback of this approach is that many applications provided by desktop environment projects rely heavily upon their DE's respective underlying libraries. As a result, installing applications from a range of desktop environments will require installation of a larger number of dependencies. Users seeking to conserve disk space and avoid software bloat often avoid such mixed environments, or look into lightweight alternatives.

Furthermore, DE-provided applications tend to integrate better with their native environments. Superficially, mixing environments with different widget toolkits will result in visual discrepancies (that is, interfaces will use different icons and widget styles). In terms of user experience, mixed environments may not behave similarly (e.g. single-clicking versus double-clicking icons; drag-and-drop functionality) potentially causing confusion or unexpected behavior.

Prior to installing a desktop environment, a functional X server installation is required. See Xorg for detailed information.

桌面环境

桌面环境,结合X客户端,提供图形用户界面元素,例如:图标、窗口、工具栏、壁纸、桌面部件……。大多数桌面环境,还会附加提供一套整合的应用程序。

注意,用户可以自由搭配不同桌面环境的程序,比如:一个KDE用户可以安装使用GNOME附带的的Epiphany浏览器。但这通常不是个好主意:桌面环境提供的附加程序,通常很依赖该桌面环境的库和组件,安装不同桌面环境的软件就意味着要安装不同桌面环境的库和组件,其空间占用是十分可观的。为了节省空间,用户应尽量避免这种做法,或者选择轻量的软件组合。

此外,桌面环境自带的程序,与该桌面环境整合最佳。混合不同桌面环境的软件,可能会导致视觉体验下降。在使用方面,混用软件也可能会导致不兼容问题。

桌面环境列表

官方支持

Cinnamon:Cinnamon 致力于提供传统的用户体验。Cinnamon 是一个fork GNOME 3的项目。http://cinnamon.linuxmint.com/cinnamon

E17
E17,即Enlightenment桌面环境,基于Enlightenment库,该桌面环境提供了高效又美观的窗口管理器。同时还附带了文件管理器、桌面图标、桌面部件等必备组件。它提供了高级的美化功能,同时又适用于旧机器和嵌入式设备。
GNOME
GNOME计划带来了两个东西:一是很好很强大的GNOME桌面环境,是目前最主流的桌面环境之一;二是GNOME开发平台,帮助开发整合于用户桌面的实用程序。GNOME是自由的、易用的、国际化的、面向开发者的、有强力支持的。
KDE Plasma
KDE Plasma桌面是一个熟悉的工作环境。Plasma Desktop桌面提供了一个现代桌面计算体验所需的所有工具,这样你就可以从一开始就有生产力。
LXDE
正如其名,LXDE(Lightweight X11 Desktop Environment,轻量X11桌面环境)是一个快速、简洁、轻量的桌面环境。它由来自全球各地的开发者维护,具有界面美观、多语言支持、键盘快捷键等诸多实用特性。比起其他桌面环境,LXDE占用更少的CPU、内存,是为上网本、移动设备、旧机器特别设计的轻量桌面环境。
LXQt
LXQt 是轻量级桌面环境 LXDE 的下一代产品,基于 Qt 开发。 它是合并的LXDE Qt和Razor-qt项目之间的产品: 一个轻量级,模块化,速度极快的和用户友好的桌面环境。http://lxqt.org/lxqt
MATE
Mate 使用传统方式为 Linux 用户提供了直观和有吸引力的桌面。操作方式和Gnome2几乎一样。
Xfce
轻量桌面环境Xfce,是Unix模块化、重用代码理念的践行者。其中包含各种功能的组件,是真正现代的桌面环境。各个组件划分成不同的包,用户可以自由选取需要的安装使用。
ROX
ROX是一个高效、友好的桌面环境。它的核心是文件浏览器,秉承传统Unix的“一切皆文件”理念,而非把一切都放在菜单、向导什么的里面。ROX致力于打造设计完善且功能清晰的桌面环境,把一些小型程序结合在一起(而不是搞整合的万能软件)。
Sugar
Sugar是一个为5-12岁孩子提供学习帮助的桌面环境,并且集成了多媒体的活动。在为全世界每一位孩子提供素质教育机会的计划中,Sugar是其核心组成部分 — 目前全世界有将近一百万小孩使用该桌面环境,他们讲着25种语言,来自40多个国家。在Sugar的帮助下,他们有机会接受素质教育,从而成就自己的人生。

非官方支持

  • Budgie Desktop — Budgie 桌面是一个轻量级桌面环境设计充分考虑了现代用户,它着重于简洁和漂亮。此外,它类似于 Chrome/ Chromium OS桌面布局
https://solus-project.com/budgie/ || budgie-desktop-gitAUR
  • CDE — The Common Desktop Environment (CDE) is a desktop environment for Unix and OpenVMS, based on the Motif widget toolkit. It was part of the UNIX98 Workstation Product Standard, and was long the "classic" Unix desktop associated with commercial Unix workstations.
http://sourceforge.net/projects/cdesktopenv/ || cdesktopenvAUR
  • Deepin Desktop Environment — Deepin desktop interface and apps feature an intuitive and elegant design. Moving around, sharing and searching etc. has become simply a joyful experience.
http://www.linuxdeepin.com/ || deepin-desktop-environmentAUR
  • EDE — The "Equinox Desktop Environment" is a DE designed to be simple, extremely light-weight and fast.
http://equinox-project.org/ || edeAUR
  • GNOME Flashback — GNOME Flashback is a shell for GNOME 3 which was initially called GNOME fallback mode. The desktop layout and the underlying technology is similar to GNOME 2.
https://wiki.gnome.org/GnomeFlashback || gnome-flashbackAUR
  • GNUstep — GNUstep is a free, object-oriented, cross-platform development environment that strives for simplicity and elegance.
http://gnustep.org/ || windowmaker gworkspaceAUR
  • Hawaii — Hawaii is a lightweight, coherent and fast desktop environment that relies on Qt 5, QtQuick and Wayland and is designed to offer the best UX for the device where it is running.
http://www.maui-project.org/ || hawaii-meta-gitAUR
  • Lumina — Lumina is a lightweight desktop environment written in QT 5 for FreeBSD that uses Fluxbox for window management.
http://blog.pcbsd.org/2014/04/quick-lumina-desktop-faq/ || lumina-desktop-gitAUR
  • Maynard — Maynard is a desktop environment designed for the Raspberry Pi (but not limited to it) running on Wayland.
https://github.com/raspberrypi/maynard || maynard-gitAUR
  • Pantheon — Pantheon is the default desktop environment originally created for the elementary OS distribution. It is written from scratch using Vala and the GTK3 toolkit. With regards to usability and appearance, the desktop has some similarities with GNOME Shell and Mac OS X.
http://elementaryos.org/ || pantheon-session-bzrAUR
  • ROX — ROX is a fast, user friendly desktop which makes extensive use of drag-and-drop. The interface revolves around the file manager, following the traditional UNIX view that 'everything is a file' rather than trying to hide the filesystem beneath start menus, wizards, or druids. The aim is to make a system that is well designed and clearly presented. The ROX style favors using several small programs together instead of creating all-in-one mega-applications.
http://rox.sourceforge.net/desktop/ || rox
  • Sugar — The Sugar Learning Platform is a computer environment composed of Activities designed to help children from 5 to 12 years of age learn together through rich-media expression. Sugar is the core component of a worldwide effort to provide every child with the opportunity for a quality education — it is currently used by nearly one-million children worldwide speaking 25 languages in over 40 countries. Sugar provides the means to help people lead fulfilling lives through access to a quality education that is currently missed by so many.
http://wiki.sugarlabs.org/ || sugarAUR
  • Trinity — The Trinity Desktop Environment (TDE) project is a computer desktop environment for Unix-like operating systems with a primary goal of retaining the overall KDE 3.5 computing style.
http://www.trinitydesktop.org/ || See Trinity
  • Unity — Unity 就是一个GNOME shell 被Canonical的Ubuntu开发。
http://unity.ubuntu.com/ || unityAUR

桌面环境比较

这一部分对几种流行的桌面环境进行比较,仅供用户参考。

参阅 Wikipedia:Comparison of X Window System desktop environments.

桌面环境比较
桌面环境 窗口小部件工具 窗口管理器 任务栏 终端 文件管理器 日历 文本编辑器 图片查看器 媒体播放器 浏览器 显示管理
Budgie Desktop GTK+ 3
gtk3
budgie-wm
budgie-desktop-gitAUR
budgie-panel
budgie-desktop-gitAUR
GNOME Terminal
gnome-terminal
GNOME Files
nautilus
GNOME Calculator
gnome-calculator
gedit
gedit
Eye of GNOME
eog
Budgie Media Player
budgie-gitAUR
Chromium
chromium
LightDM GTK+ Greeter
lightdm-gtk-greeter
Cinnamon GTK+ 3
gtk3
Muffin
muffin
Cinnamon
cinnamon
GNOME Terminal
gnome-terminal
Nemo
nemo
GNOME Calculator
gnome-calculator
gedit
gedit
Eye of GNOME
eog
GNOME Videos
totem
Firefox
firefox
LightDM GTK+ Greeter
lightdm-gtk-greeter
Deepin_Desktop_Environment GTK+ 3
gtk3
Compiz
compizAUR
Dock
deepin-desktop-environmentAUR
Deepin Terminal
deepin-terminalAUR
GNOME Files
nautilus
GNOME Calculator
gnome-calculator
gedit
gedit
Eye of GNOME
eog
DPlayer
deepin-media-playerAUR
Firefox
firefox
LightDM Deepin Greeter
deepin-desktop-environmentAUR
EDE FLTK
fltk
PekWM
edeAUR
EDE Panel
edeAUR
XTerm
xterm
Fluff
fluffAUR
Calculator
edeAUR
Editor
fltk-editorAUR
Image Viewer
edeAUR
flmusic
flmusicAUR
Dillo
dillo
XDM
xorg-xdm
Enlightenment Elementary
elementary
Enlightenment
enlightenment
Enlightenment
enlightenment
Terminology
terminology
Enligthenment
enlightenment
Equate
equate-gitAUR
Ecrire
ecrire-gitAUR
Ephoto
ephoto-gitAUR
Rage
rageAUR
Elbow
elbow-gitAUR
XDM
xorg-xdm
GNOME GTK+ 3
gtk3
Mutter
mutter
GNOME Shell
gnome-shell
GNOME Terminal
gnome-terminal
GNOME Files
nautilus
GNOME Calculator
gnome-calculator
gedit
gedit
Eye of GNOME
eog
GNOME Videos
totem
Epiphany
epiphany
GDM
gdm
GNOME Flashback GTK+ 3
gtk3
Metacity
metacity
GNOME Panel
gnome-panelAUR
GNOME Terminal
gnome-terminal
GNOME Files
nautilus
GNOME Calculator
gnome-calculator
gedit
gedit
Eye of GNOME
eog
GNOME Videos
totem
Epiphany
epiphany
GDM
gdm
GNUstep GNUstep
gnustep-core
Window Maker
windowmaker
Window Maker
windowmaker
Terminal
gnustep-terminalAUR
GWorkspace
gworkspaceAUR
Calculator
gnustep-examplesAUR
Ink
gnustep-examplesAUR
LaternaMagica
laternamagicaAUR
Cynthiune
cynthiuneAUR
SWK Browser
swkbrowser-svnAUR
XDM
xorg-xdm
Hawaii Qt 5
qt5-base
Green Island
greenisland-gitAUR
Hawaii Shell
hawaii-shell-gitAUR
Terminal
hawaii-terminal-gitAUR
Swordfish
swordfish-gitAUR
SpeedCrunch
speedcrunch-gitAUR
JuffEd
juffed-qt5-gitAUR
EyeSight
eyesight-gitAUR
SMPlayer
smplayer
QupZilla
qupzilla
SDDM
sddm
KDE 4 Qt 4/5
qt4 qt5-base
KWin
kdebase-workspace
Plasma Desktop
kdebase-workspace
Konsole
konsole
Dolphin
kdebase-dolphin
KCalc
kcalc
KWrite/Kate
kwrite kate
Gwenview
gwenview
Dragon Player
kdemultimedia-dragonplayer
Konqueror
kdebase-konqueror
KDM
kdebase-workspace
KDE Plasma 5 Qt 4/5
qt4 qt5-base
KWin
kwin
Plasma Desktop
plasma-desktop
Konsole
konsole
Dolphin
kdebase-dolphin
KCalc
kcalc
KWrite/Kate
kwrite kate
Gwenview
gwenview
Dragon Player
kdemultimedia-dragonplayer
Konqueror
kdebase-konqueror
SDDM
sddm
LXDE GTK+ 2
gtk2
Openbox
openbox
LXPanel
lxpanel
LXTerminal
lxterminal
PCManFM
pcmanfm
Galculator
galculator-gtk2
Leafpad
leafpad
GPicView
gpicview
LXMusic
lxmusic
Firefox
firefox
LXDM
lxdm
LXQt Qt 5
qt5-base
Openbox
openbox
LXQt Panel
lxqt-panel
QTerminal
qterminalAUR
PCManFM-Qt
pcmanfm-qt
SpeedCrunch
speedcrunch-gitAUR
JuffEd
juffed-qt5-gitAUR
LxImage-Qt
lximage-qtAUR
SMPlayer
smplayer
QupZilla
qupzilla
SDDM
sddm
MATE GTK+ 2/3
gtk2 gtk3
Marco
marco
MATE Panel
mate-panel
MATE Terminal
mate-terminal
Caja
caja
Galculator
galculator-gtk2
pluma
pluma
Eye of MATE
eom
Parole
parole
Midori
midori
LightDM GTK+ Greeter
lightdm-gtk-greeter
MATE GTK+ 3
gtk3
Marco
marco-gtk3
MATE Panel
mate-panel-gtk3
MATE Terminal
mate-terminal-gtk3
Caja
caja-gtk3
Galculator
galculator
pluma
pluma-gtk3
Eye of MATE
eom-gtk3
Parole
parole
Midori
midori-gtk3
LightDM GTK+ Greeter
lightdm-gtk-greeter
Maynard GTK+ 3
gtk3
Weston
weston
Maynard
maynard-gitAUR
GNOME Terminal
gnome-terminal
GNOME Files
nautilus
GNOME Calculator
gnome-calculator
gedit
gedit
Eye of GNOME
eog
GNOME Videos
totem
Epiphany
epiphany
-
Pantheon GTK+ 3
gtk3
Gala
gala-bzrAUR
Plank/Wingpanel
plank wingpanelAUR
Pantheon Terminal
pantheon-terminal
Pantheon Files
pantheon-files
GNOME Calculator
gnome-calculator
Scratch
scratch-text-editorAUR
Shotwell
shotwell
GNOME Videos
totem
Midori
midori-gtk3
LightDM Pantheon Greeter
lightdm-pantheon-greeterAUR
ROX GTK+ 2
gtk2
OroboROX
oroboroxAUR
ROX-Filer
rox
ROXTerm
roxterm-gtk2AUR
ROX-Filer
rox
Galculator
galculator-gtk2
Edit
rox-editAUR
Picky
not packaged? search in AUR
MusicBox
not packaged? search in AUR
Midori
midori
XDM
xorg-xdm
Sugar GTK+ 3
gtk3
Metacity
metacity
Sugar
sugarAUR
Terminal
sugar-activity-terminalAUR
Sugar Journal
sugarAUR
Calculate
sugar-activity-calculateAUR
Write
sugar-activity-writeAUR
ImageViewer
sugar-activity-imageviewerAUR
Jukebox
sugar-activity-jukeboxAUR
Browse
sugar-activity-browseAUR
LightDM GTK+ Greeter
lightdm-gtk-greeter
Trinity TQt TWin Kicker Konsole Konqueror KCalc Kwrite / Kate Kuickshow Kaffeine Konqueror TDM
Unity GTK+ 3
gtk3
Compiz
compiz-ubuntuAUR
Unity
unityAUR
GNOME Terminal
gnome-terminal
GNOME Files
nautilus-ubuntuAUR
GNOME Calculator
gnome-calculator
gedit
gedit
Eye of GNOME
eog
GNOME Videos
totem
Firefox
firefox
LightDM Unity Greeter
lightdm-unity-greeterAUR
xfce GTK+ 2/3
gtk2 gtk3
Xfwm4
xfwm4
Xfce Panel
xfce4-panel
Terminal
xfce4-terminal
Thunar
thunar
Galculator
galculator
Mousepad
mousepad
Ristretto
ristretto
Parole
parole
Midori
midori
LightDM GTK+ Greeter
lightdm-gtk-greeter

资源占用

此处在资源占用(CPU、内存、磁盘空间)上比较各种桌面环境。

  • GNOME和KDE:属于高资源占用桌面环境。相对来讲,它们功能更为丰富,是最完整的桌面环境。
  • E17、LXDE和Xfce:属于轻量桌面环境。它们通常是为低能耗设备或是旧机器设计的,占用更少资源。

相似之处

许多人说,KDE像Windows,GNOME像Mac。这样的评价不怎么客观,毕竟它们并不能模拟Windows或是Mac。参见:KDE比GNOME更像Windows吗中文版),KDE vs GNOME经典文章:Linux不是Windows

自己打造桌面环境

Desktop environments represent the simplest means of installing a complete graphical environment. However, users are free to build and customize their graphical environment in any number of ways if none of the popular desktop environments meet their requirements. Generally, building a custom environment involves selection of a suitable window manager, a taskbar and a number of applications (a minimalist selection usually includes a terminal emulator, file manager, and text editor).

Other applications that are usually provided by desktop environments are: