GNOME Shell is the core
user interfaceThe user interface, in the industrial design field of human–machine interaction, is the space where interaction between humans and machines occurs. The goal of interaction between a human and a machine at the user interface is effective operation and control of the machine, and feedback from the...
of the
GNOMEGNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...
desktop environmentIn graphical computing, a desktop environment commonly refers to a style of graphical user interface derived from the desktop metaphor that is seen on most modern personal computers. These GUIs help the user in easily accessing, configuring, and modifying many important and frequently accessed...
starting with version 3, which was released on April 6, 2011. It provides basic functionality like switching between
windowsIn computing, a window is a visual area containing some kind of user interface. It usually has a rectangular shape that can overlap with the area of other windows...
and launching applications. It replaces GNOME Panel and other software components from GNOME 2 to offer a user experience that breaks from the previous model of
desktop metaphorThe desktop metaphor is an interface metaphor which is a set of unifying concepts used by graphical user interfaces to help users more easily interact with the computer. The desktop metaphor treats the monitor of a computer as if it is the user's desktop, upon which objects such as documents and...
, used in earlier versions of GNOME.
GNOME shell uses
MutterMutter is the window manager for which GNOME Shell is a plugin in GNOME 3, replacing Metacity....
, a
compositing window managerA compositing window manager is a type of window manager. A window manager is software that draws a graphical user interface on a computer display – it positions windows, draws additional elements on windows , and controls how windows interact with each other, and with the rest of the desktop...
based on the
MetacityMetacity was the window manager used by default in the GNOME desktop environment until GNOME 3, where it was replaced by Mutter. The development of Metacity was started by Havoc Pennington and it is released under the GNU General Public License....
window manager, and the Clutter toolkit to provide visual effects and
hardware accelerationIn computing, Hardware acceleration is the use of computer hardware to perform some function faster than is possible in software running on the general-purpose CPU...
. According to GNOME Shell maintainer Owen Taylor, it is set up as a Mutter plugin largely written in Javascript.
Features
Changes to the
user interfaceThe user interface, in the industrial design field of human–machine interaction, is the space where interaction between humans and machines occurs. The goal of interaction between a human and a machine at the user interface is effective operation and control of the machine, and feedback from the...
(UI) include, but are not limited to:
- A new Activities overview, which houses:
- A dock
The Dock is a prominent feature of the graphical user interface of the Mac OS X operating system. It is used to launch applications and switch between running applications...
(called "Dash") for quickly switching between and launching applications
- A window picker, similar to Mac OS X's Exposé
Exposé is a feature of the Mac OS X operating system. First previewed on 23 June 2003 at the Apple Worldwide Developers Conference as a feature of the then forthcoming Mac OS X v10.3, Exposé allows a user to quickly locate an open window, or to hide all windows and show the desktop without the need...
, also incorporating a workspace switcher/manager
- An application picker
- Search
- A messaging tray, an area at the bottom of the screen used for housing both interactive and static notifications separately from system status icons
- "Snapping" windows to screen borders to make them fill up a half of the screen or the whole screen
- A single window button, Close, instead of three. (Minimization has been removed due to the lack of a panel to minimize to, in favor of workspace window management. Maximization can be accomplished using the afore-mentioned window snapping.)
- A fallback mode is offered for those without hardware acceleration which offers a desktop more similar to the GNOME Panel. This mode can also be toggled through the System Settings menu.
Extensibility
The functionality of GNOME Shell can be changed with extensions, which could be written in
JavaScriptJavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....
. Several extensions are hosted in GNOME's
git repositoryGit is a distributed revision control system with an emphasis on speed. Git was initially designed and developed by Linus Torvalds for Linux kernel development. Every Git working directory is a full-fledged repository with complete history and full revision tracking capabilities, not dependent on...
, though they are not official.
Reception
Gnome 3 shell has received mixed reviews. For
Linus TorvaldsLinus Benedict Torvalds is a Finnish software engineer and hacker, best known for having initiated the development of the open source Linux kernel. He later became the chief architect of the Linux kernel, and now acts as the project's coordinator...
, Gnome 3 shell is an "unholy mess". However, Rodney Gedda believes "so far [as of April 7th, 2011] the GNOME 3 reception has been positive", although it has been criticized for a variety of reasons, mostly related to design decisions and reduced user control over the environment. For example, users in the
free software communityThe free-software community is an informal term that refers to the users and developers of free software as well as supporters of the free-software movement. The movement is sometimes referred to as the open-source software community or a subset thereof...
have raised concerns that the planned tight integration with
MutterMutter is the window manager for which GNOME Shell is a plugin in GNOME 3, replacing Metacity....
will mean that users of GNOME Shell will not be able to switch to an alternative
window managerA window manager is system software that controls the placement and appearance of windows within a windowing system in a graphical user interface. Most window managers are designed to help provide a desktop environment...
without breaking their desktop. In particular, users will not be able to use
CompizCompiz is one of the first compositing window managers for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management. The effects, such as a minimization effect and a cube workspace are implemented as loadable plugins...
while GNOME Shell is running.
Adoption
- The Linux distribution Fedora
Fedora is a RPM-based, general purpose collection of software, including an operating system based on the Linux kernel, developed by the community-supported Fedora Project and sponsored by Red Hat...
uses GNOME Shell by default since release 15.
- Linux Mint
Linux Mint is a Linux-based computer operating system best known for its usability and ease of installation, particularly for users with no previous GNU/Linux experience...
12 uses GNOME Shell preloaded with extensions by default.
- The GNOME version of openSUSE
openSUSE is a general purpose operating system built on top of the Linux kernel, developed by the community-supported openSUSE Project and sponsored by SUSE...
12.1 uses GNOME Shell by default.
See also
- Unity
Unity is a shell interface for the GNOME desktop environment developed by Canonical Ltd for its Ubuntu operating system. Unity debuted in the netbook edition of Ubuntu 10.10. It is designed to make more efficient use of space given the limited screen size of netbooks, including, for example, a...
, a shell interface for GNOMEGNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...
used by the Ubuntu project
- Tint2
tint2 is a Freedesktop-compliant taskbar that aims to be lightweight and unintrusive. tint2's code is based on . Some of tint2's features include a system tray, a clock, and a battery monitor. Its lightweight design makes it suitable for use with window managers such as Openbox, and it is included...
, a lightweight and unintrusive taskbar (compatible with GNOME Shell)