GNOME Shell


GNOME Shell is the graphical shell of the GNOME desktop environment starting with version 3, which was released on April 6, 2011. It provides basic functions like launching applications, switching between windows and is also a widget engine. GNOME Shell replaced GNOME Panel and some ancillary components of GNOME 2.
GNOME Shell is written in C and JavaScript as a plugin for Mutter.
In contrast to the KDE Plasma Workspaces, a software framework intended to facilitate the creation of multiple graphical shells for different devices, the GNOME Shell is intended to be used on desktop computers with large screens operated via keyboard and mouse, as well as portable computers with smaller screens operated via their keyboard, touchpad or touchscreen.

History

The first concepts for GNOME Shell were created during GNOME's User Experience Hackfest 2008 in Boston.
After criticism of the traditional GNOME desktop and accusations of stagnation and lacking vision, the resulting discussion led to the announcement of GNOME 3.0 in April 2009. Since then Red Hat has been the main driver of GNOME Shell's development.
Pre-release versions of GNOME Shell were first made available in August 2009 and became regular, non-default part of GNOME in version 2.28 in September 2009. It was finally shipped as GNOME's default user interface on April 6, 2011.

Design

As graphical shell of the GNOME desktop environment, its design is guided by the GNOME UX Design Team.

Design components

The GNOME Shell comprises the following graphical and functional elements:
GNOME Shell is tightly integrated with Mutter, a compositing window manager and Wayland compositor. It is based upon Clutter to provide visual effects and hardware acceleration According to GNOME Shell maintainer Owen Taylor, it is set up as a Mutter plugin largely written in JavaScript and uses GUI widgets provided by GTK+ version 3.

Features

Changes to the user interface include, but are not limited to:
The functionality of GNOME Shell can be changed with extensions, which can be written in JavaScript. Users can find and install extensions using the GNOME extensions website. Some of these extensions are hosted in GNOME's git repository, though they are not official.

Gallery

Adoption

GNOME Shell has received mixed reviews: 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 community have raised concerns that the planned tight integration with Mutter will mean that users of GNOME Shell will not be able to switch to an alternative window manager without breaking their desktop. In particular, users might not be able to use Compiz with GNOME Shell while retaining access to the same types of features that older versions of GNOME allowed.
Reviews have generally become more positive over time, with upcoming releases addressing many of the annoyances reported by users.