GNOME

From The Hidden Wiki
Jump to navigationJump to search

Template:Use mdy dates Template:About Template:Infobox software GNOME (pronounced Template:IPAc-en<ref>Template:Cite web</ref> or Template:IPAc-en<ref>Template:Cite web</ref>) is a desktop environment which is composed entirely of free and open-source software and targets to be cross-platform, i.e. run on multiple operating systems, its main focus being those based on the Linux kernel.<ref>Template:Cite web</ref>

GNOME is developed by The GNOME Project, which is composed of both volunteers and paid contributors, the largest corporate contributor being Red Hat.<ref>GNOME census</ref><ref>Template:Cite web</ref> It is an international project that aims to develop software frameworks for the development of software, to program end-user applications based on these frameworks and coordinates the efforts for internationalization and localization as well as for accessibility of that software.

GNOME is part of the GNU Project.<ref>Template:Cite web</ref>

Design

GNOME aims to be simple and easy to use<ref>Template:Cite web</ref> and focuses on:<ref>Template:Cite web</ref>

  • Independence – the governing board is democratically elected and technical decisions are made by the engineers doing the work.
  • Freedom – development infrastructure and communication channels are public, the code can be freely downloaded, modified and shared and all contributors have the same rights.
  • Connectedness – work spans the entire Free software stack.
  • People – emphasis on accessibility and internationalization.<ref name="gnome312releasenotes"/> GNOME is available in more than 40 languages (at least 80 percent of strings translated)<ref name="gnome312releasenotes"/> and is being translated to 190 languages.<ref>Template:Cite web</ref>

GNOME Shell

Template:Overlay GNOME Shell is the official user interface of the GNOME desktop environment. It features a top bar holding (from left to right) an Activities button, an application menu, a clock and an integrated system status menu.<ref name="gnomeshellterminology">Template:Cite web</ref><ref name="gnome310releasenotes">Template:Cite web</ref> The application menu displays the name of the application in focus and provides access to functions such as accessing the application's preferences, closing the application, or creating a new application window. The status menu holds various system status indicators, shortcuts to system settings, and session actions including logging out, switching users, locking the screen, and suspending the computer.

Clicking on the Activities button, moving the mouse to the top-left hot corner or pressing the Super key brings up the Overview.<ref>Template:Cite web</ref> The Overview gives users an overview of current activities and provides a way to switch between windows and workspaces and to launch applications. The Dash on the left houses shortcuts to favorite applications and open windows and an application picker button to show a list of all installed applications.<ref name="gnomeshellterminology"/> A search bar appears at the top and a workspace list for switching between workspaces is on the right. Notifications appear from the bottom of the screen.<ref>Template:Cite web</ref>

File:GNOME 3 classic mode.png
GNOME 3 Classic Mode

Beginning with GNOME 3.8, GNOME provides a Classic Mode for people who prefer a more traditional desktop experience.<ref>Template:Cite web</ref>

Compatibility

Template:For GNOME runs on the X Window System and as of GNOME 3.10 also on Wayland.<ref name="gnome310releasenotes"/> Versions of GNOME are available in most Linux distributions either as the default desktop environment or as an installable option and also in the ports collections of most BSDs.

In May 2011 Lennart Poettering proposed systemd as a GNOME dependency.<ref>Template:Cite mailing list</ref> As systemd is available only on Linux, the proposal led to a discussion of possibly dropping support for other platforms in future GNOME releases. Since GNOME 3.2 multiseat support has been only available on systems using systemd.<ref name="gnome32releasenotes">Template:Cite web</ref> In November 2012 the GNOME release team concluded that systemd can be relied upon for non-basic functionality.<ref>Template:Cite mailing list</ref>

Human Interface Guidelines

Since GNOME 2, usability has been a key focus for GNOME. To this end, the GNOME Human Interface Guidelines (HIG) were created. All GNOME programs share a common graphical user interface (GUI), which is not limited to the employment of the same GUI widgets. Rather, the design of the GNOME GUI is guided by concepts described in the GNOME HIG, itself relying on insights from cognitive ergonomics.<ref>Template:Cite web</ref> Following the HIG, developers can create high-quality, consistent, and usable GUI programs, as it addresses everything from GUI design to recommended pixel-based layout of widgets.

During the GNOME 2 rewrite, many settings deemed of little value to the majority of users were removed. Havoc Pennington summarized the usability work in his 2002 essay "Free Software UI", emphasizing the idea that all preferences have a cost, and it is better to make software behave correctly by default than to add a UI preference to get the desired behavior:

Template:Quote

Accessibility

GNOME aims to make and keep the desktop environment physically and cognitively ergonomic for people with disabilities. The GNOME HIG tries to take this into account as far as possible but specific issues are solved by special software.

GNOME addresses computer accessibility issues by using the Accessibility Toolkit (ATK) application programming interface, which allows enhancing user experience by using special input methods and speech synthesis and speech recognition software. Particular utilities are registered with ATK using Assistive Technology Service Provider Interface (AT-SPI), and become globally used throughout the desktop. Several assistive technology providers, including Orca screen reader and Dasher input method, were developed specifically for use with GNOME.

Applications

Template:Unreferenced section

Core Applications

Template:Main There are countless GTK+- and Clutter-based programs written by various authors. Since the release of GNOME 3.0, The GNOME Project concentrates on developing a set of programs that accounts for the GNOME Core Applications. All programs that form the GNOME Core Applications have a certain design and the tight integration with one another in common. Some programs are simply renamed existing programs with a revamped user interface, while others have been written from scratch.

Games

Template:Main GNOME Games have the look and feel of the GNOME Core Applications and are released simultaneously with GNOME. All have been rewritten conforming to the current GNOME Human Interface Guidelines.

Development Tools

Anjuta integrated development environment, Glade user interface construction tool and Devhelp API browser were created to provide development tools consistent with the GNOME desktop and to facilitate the development of GNOME software. The Accerciser accessibility explorer and several debugging tools, including Nemiver, GtkInspector<ref>Template:Cite web</ref><ref>Template:Cite web</ref> and Alleyoop, have also been provided to facilitate development of GNOME software.

Integration options for third-party development tools (e.g. NoFlo) also exist.<ref>Template:Cite web</ref>

Development

GNOME is developed by The GNOME Project and provides the GNOME Desktop Environment, a graphical user interface and a set of core applications, and the GNOME Development Platform, a framework for building applications that integrate with the desktop.<ref>Template:Cite web</ref>

As with most free software projects, GNOME development is loosely managed. Discussion chiefly occurs on a number of public mailing lists.<ref>Template:Cite web</ref> GNOME developers and users gather at an annual GUADEC meeting to discuss the current state and the future direction of GNOME.<ref>Template:Cite web</ref> GNOME incorporates standards and programs from freedesktop.org to better interoperate with other desktops.

GNOME is mainly written in C, C++, Vala, Python and JavaScript.<ref name="gnomelanguages" /> A number of language bindings are available.

Release cycle

Each of the component software products in the GNOME project has its own version number and release schedule. However, individual module maintainers coordinate their efforts to create a full GNOME stable release on an approximately six-month schedule. Some experimental projects are excluded from these releases.

GNOME releases are made to the main FTP server in the form of source code with configure scripts, which are compiled by operating system vendors and integrated with the rest of their systems before distribution. Most vendors use only stable and tested versions of GNOME, and provide it in the form of easily installed, pre-compiled packages. The source code of every stable and development version of GNOME is stored in the GNOME Git source code repository.

A number of build-scripts (such as JHBuild or GARNOME) are available to help automate the process of compiling the source code.

Development Platform

GLib data structures and utilities library, GObject object and type system and GTK+ widget toolkit comprise the central part of GNOME development platform. This foundation is further extended with D-Bus IPC framework, Cairo 2D vector-based drawing library, Clutter accelerated graphics library, Pango international text rendering library, PulseAudio low-level audio API, GStreamer multimedia framework, and several specialized libraries including NetworkManager, PackageKit, Telepathy (instant messaging) and WebKit.<ref>Template:Cite web</ref>

As of April 2009, all ESD modules in GNOME have been ported to libcanberra for event sounds or GStreamer/PulseAudio for everything else.<ref> Template:Cite web</ref><ref>Template:Cite web</ref><ref>Template:Cite web</ref>

History

GNOME was started in August 1997 by Miguel de Icaza and Federico Mena<ref>Template:Cite web</ref> as a free software project to develop a desktop environment and applications for it.<ref>Template:Cite web</ref> It was founded in part because K Desktop Environment, an already existing free software desktop environment, relied on the Qt widget toolkit which used a proprietary software license until version 2.0 (June 1999).<ref>Bombus<ref name="xeps-dnock">Template:Citation</ref></ref><ref>Template:Cite web</ref> In place of Qt, the GTK+ toolkit was chosen as the base of GNOME. GTK+ uses the GNU Lesser Public License (LGPL), a free software license that allows software linking to it to use a much wider set of licenses, including proprietary software licenses.<ref>Template:Cite web</ref> GNOME itself is licensed under the LGPL for its libraries, and the GNU General Public License (GPL) for its applications.<ref>The GNOME Project: "GNOME Foundation Guidelines on Copyright Assignment". Accessed March 26, 2013.</ref>

The name "GNOME" was initially an acronym of GNU Network Object Model Environment, referring to the original intention of creating a distributed object framework similar to Microsoft's OLE;<ref>Template:Cite web</ref> but it was dropped, because it no longer reflected the core vision of the GNOME project.<ref>Template:Cite web</ref>

The California startup Eazel developed the Nautilus file manager from 1999 to 2001. De Icaza and Nat Friedman founded Helix Code (later Ximian) in 1999 in Massachusetts. The company developed GNOME's infrastructure and applications, and in 2003 was purchased by Novell.

Template:Anchor During the transition to GNOME 2 around the year 2001 and shortly thereafter there were brief talks about creating a GNOME Office suite.<ref>Template:Cite web</ref><ref>Template:Cite mailing list</ref> On September 15, 2003 GNOME-Office 1.0, consisting of AbiWord 2.0, GNOME-DB 1.0 and Gnumeric 1.2.0 was released.<ref>Template:Cite web</ref><ref>Template:Cite web</ref><ref>Template:Cite press release</ref> Although some release planning for GNOME Office 1.2 was happening on gnome-office mailing list,<ref>Template:Cite mailing list</ref><ref>Template:Cite mailing list</ref><ref>Template:Cite mailing list</ref> and Gnumeric 1.4 was announced as a part of it,<ref>Template:Cite mailing list</ref> the 1.2 release of the suite itself was never announced. Template:As of GNOME wiki only mentions "GNOME/Gtk applications that are useful in an office enviroment".<ref>Template:Cite web</ref>

File:Gnome-2.6-en.png
GNOME 2.6, March 2004

GNOME 2

GNOME 2 was very similar to a conventional desktop interface, featuring a simple desktop in which users could interact with virtual objects, such as windows, icons, and files. GNOME 2 used Metacity as its default window manager. The handling of windows, applications, and files in GNOME 2 is similar to that of contemporary desktop operating systems. In the default configuration of GNOME 2, the desktop has a launcher menu for quick access to installed programs and file locations; open windows may be accessed by a taskbar along the bottom of the screen, and the top-right corner features a notification area for programs to display notices while running in the background. However, these features can be moved to almost any position or orientation the user desires, replaced with other functions or removed altogether.

GNOME 3

Template:Move portions from Before GNOME 3, GNOME used the traditional desktop metaphor but in GNOME 3 this was abandoned in favor of GNOME Shell where switching between different tasks and virtual workspaces takes place in a separate area called the Overview. Also in GNOME 3, Mutter replaced Metacity as the default window manager, the minimize and maximize buttons no longer appear on the titlebar by default, and Adwaita replaced Clearlooks as the default theme. Many GNOME Core Applications also went through redesigns to provide a more consistent user experience.

These changes received mixed reaction from the user community, though the outcome is not yet clear. The MATE desktop environment, software forked from GNOME 2, aims to retain the traditional GNOME 2 interface while keeping it compatible with GNOME 3. The Linux Mint team addressed the issue in another way by developing the "Mint GNOME Shell Extensions". This led to the Cinnamon user interface, which attempts to provide a more traditional user environment based on the desktop metaphor, like GNOME 2.

Releases

See also

Template:Portal Template:Refbegin

Template:Refend

References

1 }}
     | references-column-width 
     | references-column-count references-column-count-{{#if:1|30em}} }}
   | {{#if: 
     | references-column-width }} }}" style="{{#if: 30em
   | {{#iferror: {{#ifexpr: 30em > 1 }}
     | Template:Column-width
     | Template:Column-count }}
   | {{#if: 
     | Template:Column-width }} }} list-style-type: {{#switch: 
   | upper-alpha
   | upper-roman
   | lower-alpha
   | lower-greek
   | lower-roman = {{{group}}}
   | #default = decimal}};">
<references group=""></references>

External links

Template:Wikibooks Template:Commons

Template:GNOME Template:GNU Template:X desktop environments and window managers Template:FLOSS