GNOME: Difference between revisions
m v2.01b - WP:WCW project (Unicode control characters) |
m Add a comma and add a missing word. |
||
Line 628: | Line 628: | ||
| work = The GNOME Project |
| work = The GNOME Project |
||
| url = https://wiki.gnome.org/Engagement/SWOT |
| url = https://wiki.gnome.org/Engagement/SWOT |
||
| access-date = March 18, 2014}}</ref> and like most free software projects, GNOME development is loosely managed. Discussion chiefly occurs on a number of public [[mailing list]]s.<ref>{{cite web |
| access-date = March 18, 2014}}</ref>, and, like most free software projects, GNOME development is loosely managed. Discussion chiefly occurs on a number of public [[mailing list]]s.<ref>{{cite web |
||
| url = http://mail.gnome.org |
| url = http://mail.gnome.org |
||
| title = GTK and GNOME Mailing Lists |
| title = GTK and GNOME Mailing Lists |
||
Line 640: | Line 640: | ||
| archiveurl = https://web.archive.org/web/20111004061840/http://guadec.expectnation.com/public/content/about |
| archiveurl = https://web.archive.org/web/20111004061840/http://guadec.expectnation.com/public/content/about |
||
| archivedate = October 4, 2011 |
| archivedate = October 4, 2011 |
||
| df = mdy}}</ref> GNOME incorporates standards and programs from [[freedesktop.org]] to better [[interoperability]] with other desktops. |
| df = mdy}}</ref> GNOME incorporates standards and programs from [[freedesktop.org]] to better support [[interoperability]] with other desktops. |
||
GNOME is mainly written in [[C (programming language)|C]], [[Vala (programming language)|Vala]], [[Python (programming language)|Python]] and [[JavaScript]].<ref name="gnomelanguages" /> A number of [[language binding]]s [[List of language bindings for GTK|are available]]. |
GNOME is mainly written in [[C (programming language)|C]], [[Vala (programming language)|Vala]], [[Python (programming language)|Python]] and [[JavaScript]].<ref name="gnomelanguages" /> A number of [[language binding]]s [[List of language bindings for GTK|are available]]. |
Revision as of 23:58, 13 March 2019
Original author(s) | The GNU Project |
---|---|
Developer(s) | The GNOME Project |
Initial release | March 3, 1999[1] |
Stable release | 45.0[2] (20 September 2023 ) [±] |
Repository | |
Written in | C, Vala, Python, JavaScript[3] |
Operating system | Unix-like |
Platform | Wayland or X11 |
Available in | 38 languages[4] |
Type | Desktop environment |
License | GPLv2+[5] |
Website | www |
GNOME (/(ɡ)noʊm/)[7][8] is a free and open-source desktop environment for Unix-like[9] operating systems. GNOME was originally an acronym for GNU Network Object Model Environment, but the acronym was dropped because it no longer reflected the vision of the GNOME project.[10]
GNOME is part of the GNU Project[11] and developed by The GNOME Project which is composed of both volunteers and paid contributors, the largest corporate contributor being Red Hat.[12][13] 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 to coordinate efforts for internationalization and localization and accessibility of that software.
GNOME 3 is the default desktop environment on many major Linux distributions including Fedora, Debian, Ubuntu, SUSE Linux Enterprise (exclusively), Red Hat Enterprise Linux, CentOS, Oracle Linux, Scientific Linux, SteamOS, Tails, Kali Linux, Antergos and Endless OS; it is also default on Solaris, a major Unix operating system. Also, the continued fork of the last GNOME 2 release that goes under the name MATE is default on many distributions that targets low usage of system resources.
History
GNOME 1
GNOME was started on August 15[14] 1997 by Miguel de Icaza and Federico Mena[15] as a free software project to develop a desktop environment and applications for it.[16] It was founded in part because K Desktop Environment, which was growing in popularity, relied on the Qt widget toolkit which used a proprietary software license until version 2.0 (June 1999).[17][18] In place of Qt, the GTK toolkit was chosen as the base of GNOME. GTK uses the GNU Lesser General 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.[19] GNOME itself is licensed under the LGPL for its libraries, and the GNU General Public License (GPL) for its applications.[20]
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,[21] but the acronym was eventually dropped because it no longer reflected the vision of the GNOME project.[10]
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; this company developed GNOME's infrastructure and applications, and in 2003 was purchased by Novell.
During the transition to GNOME 2 around the year 2001 and shortly thereafter there were brief talks about creating a GNOME Office suite.[22][23] On September 15, 2003 GNOME-Office 1.0, consisting of AbiWord 2.0, GNOME-DB 1.0 and Gnumeric 1.2.0 was released.[24][25][26] Although some release planning for GNOME Office 1.2 was happening on gnome-office mailing list,[27][28][29] and Gnumeric 1.4 was announced as a part of it,[30] the 1.2 release of the suite itself never materialized. As of May 4, 2014[update] GNOME wiki only mentions "GNOME/Gtk applications that are useful in an office environment".[31]
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 started out with Sawfish, but later switched to 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.
As of 2009, GNOME 2 was the default desktop for OpenSolaris.[32]
GNOME 3
GNOME 1 & 2 followed the traditional desktop metaphor. GNOME 3, released in 2011, changed this with GNOME Shell, a more abstract metaphor where switching between different tasks and virtual desktops takes place in a separate area called "Overview". Also, since Mutter replaced Metacity as the default window manager, the minimize and maximize buttons no longer appear by default, and the title bar, menu bar and tool bar combinated in one horizontal bar called "header bar" via Client-Side Decoration mechanism. Adwaita replaced Clearlooks as the default theme.[33] Many GNOME Core Applications also went through redesigns to provide a more consistent user experience.
Criticism
The release of GNOME 3, notable for its move away from the traditional menu bar and taskbar, has caused considerable controversy in the GNU and Linux community. Many users and developers have expressed concerns about usability. A few projects have been initiated to continue development of GNOME 2.x or to modify GNOME 3.x to be more like the 2.x releases.
GNOME 3 aims to provide a single interface for desktop computers and tablet computers. This means using only input techniques that work on all those devices, requiring abandonment of certain concepts to which desktop users were accustomed, such as right-clicking, or saving files on the desktop.
These major changes initially evoked widespread criticism. The MATE desktop environment was forked from the GNOME 2 code-base with the intent of retaining the traditional GNOME 2 interface, whilst keeping compatibility with modern Linux technology, such as GTK 3. The Linux Mint team addressed the issue in another way by developing the "Mint GNOME Shell Extensions" that ran on top of GNOME Shell and allowed it to be used via the traditional desktop metaphor. This eventually led to the creation of the Cinnamon user interface, which was forked from the GNOME 3 codebase.
Among those critical of the early releases of GNOME 3 is Linus Torvalds, the creator of the Linux kernel. Torvalds abandoned GNOME for a while after the release of GNOME 3.0, saying "The developers have apparently decided that it's 'too complicated' to actually do real work on your desktop, and have decided to make it really annoying to do". Torvalds stated that his objections were universally held by the varied Linux developers he knew.[34]
In 2013, he started using GNOME again, saying "things had gotten much better in the past year" but noting that "they have extensions now that are still much too hard to find; but with extensions you can make your desktop look almost as good as it used to look two years ago".[35][36]
Torvalds has suggested that the "GNOME Tweak Tool" should be merged into GNOME 3.[37]
As of 2015, critical reception has been much more positive.[38] For example, Debian, a Linux distribution that had historically used GNOME 2, switched to Xfce when GNOME 3 was released but readopted GNOME 3 in time for the release of Debian 8 "Jessie".[38][39]
Releases
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, alongside its underlying libraries such as GTK and GLib. Some experimental projects are excluded from these releases.
GNOME version numbers follow the scheme v.xx.yy. Here, v is a major version, which can include large changes such as ABI breakage; these have no regular schedule and occur in response to requirements for large-scale changes. xx is a minor version, released on the above schedule of approximately every 6 months, in which the 1- or 2-digit number's parity indicates the type of release: if xx is even (e.g. 3.20) the release is considered stable, whereas if xx is odd it represents a current development snapshot (e.g. 3.21) that will eventually evolve into the next stable release. yy indicates a point release, e.g. 3.20.6; these are made on a frequency of weeks in order to fix issues, add non-breaking enhancements, etc.
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 only use 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. Interested users can always obtain a snapshot of the _master_ development branch or any other branch/tag and build a cutting-edge version for their own use.
A number of build-scripts (such as JHBuild or formerly GARNOME) are available to help automate the process of compiling the source code.
Release history
Release history | |||||
---|---|---|---|---|---|
Version | Date | Information | |||
August 1997 | GNOME development announced[40] | ||||
1.0 | March 1999 | First major GNOME release[1] | |||
1.2 | May 2000 | "Bongo"[41] | |||
1.4 | April 2001 | "Tranquility"[42] | |||
GNOME 2 | |||||
2.0 | June 2002 | Major upgrade based on GTK2. Introduction of the Human Interface Guidelines.[43] | |||
2.2 | February 2003 | Multimedia and file manager improvements.[44] | |||
2.4 | September 2003 | "Temujin": Epiphany, accessibility support.[45] | |||
2.6 | March 2004 | Nautilus changes to a spatial file manager, and a new GTK file dialog is introduced. A short-lived fork of GNOME, GoneME, is created as a response to the changes in this version.[46] | |||
2.8 | September 2004 | Improved removable device support, adds Evolution.[47] | |||
2.10 | March 2005 | Lower memory requirements and performance improvements. Adds: new panel applets (modem control, drive mounter and trashcan); and the Totem and Sound Juicer applications.[48] | |||
2.12 | September 2005 | Nautilus improvements; improvements in cut/paste between applications and freedesktop.org integration. Adds: Evince PDF viewer; New default theme: Clearlooks; menu editor; keyring manager and admin tools. Based on GTK 2.8 with cairo support.[49] | |||
2.14 | March 2006 | Performance improvements (over 100% in some cases); usability improvements in user preferences; GStreamer 0.10 multimedia framework. Adds: Ekiga video conferencing application; Deskbar search tool; Pessulus lockdown editor; Fast user switching; Sabayon system administration tool.[50] | |||
2.16 | September 2006 | Performance improvements. Adds: Tomboy notetaking application; Baobab disk usage analyser; Orca screen reader; GNOME Power Manager (improving laptop battery life); improvements to Totem, Nautilus; compositing support for Metacity; new icon theme. Based on GTK 2.10 with new print dialog.[51] | |||
2.18 | March 2007 | Performance improvements. Adds: Seahorse GPG security application, allowing encryption of emails and local files; Baobab disk usage analyser improved to support ring chart view; Orca screen reader; improvements to Evince, Epiphany and GNOME Power Manager, Volume control; two new games, GNOME Sudoku and glChess. MP3 and AAC audio encoding.[52] | |||
2.20 | September 2007 | Tenth anniversary release. Evolution backup functionality; improvements in Epiphany, EOG, GNOME Power Manager; password keyring management in Seahorse. Adds: PDF forms editing in Evince; integrated search in the file manager dialogs; automatic multimedia codec installer.[53] | |||
2.22 | March 2008 | Addition of Cheese, a tool for taking photos from webcams and Remote Desktop Viewer; basic window compositing support in Metacity; introduction of GVFS; improved playback support for DVDs and YouTube, MythTV support in Totem; internationalised clock applet; Google Calendar support and message tagging in Evolution; improvements in Evince, Tomboy, Sound Juicer and Calculator.[54] Deprecate GnomeVFS in favor of GVfs and GIO.[55] | |||
2.24 | September 2008 | Addition of the Empathy instant messenger client, Ekiga 3.0, tabbed browsing in Nautilus, better multiple screens support and improved digital TV support.[56] | |||
2.26 | March 2009 | New optical disc recording application Brasero, simpler file sharing, media player improvements, support for multiple monitors and fingerprint reader support.[57] | |||
2.28 | September 2009 | Addition of GNOME Bluetooth module. Improvements to Epiphany web browser, Empathy instant messenger client, Time Tracker, and accessibility. Upgrade to GTK version 2.18.[58] | |||
2.30 | March 2010 | Improvements to Nautilus file manager, Empathy instant messenger client, Tomboy, Evince, Time Tracker, Epiphany, and Vinagre. iPod and iPod Touch devices are now partially supported via GVFS through libimobiledevice. Uses GTK 2.20.[59] | |||
2.32 | September 2010 | Addition of Rygel and GNOME Color Manager. Improvements to Empathy instant messenger client, Evince, Nautilus file manager and others. 3.0 was intended to be released in September 2010, so a large part of the development effort since 2.30 went towards 3.0.[60] | |||
GNOME 3 | |||||
3.0 | April 2011 | Introduction of GNOME Shell. A redesigned settings framework with fewer, more focused options. Topic-oriented help based on the Mallard markup language. Side-by-side window tiling. A new visual theme and default font. Adoption of GTK 3.0 with its improved language bindings, themes, touch, and multiplatform support. Removal of long-deprecated development APIs.[61] | |||
3.2 | September 2011 | Online accounts support; Web applications support; contacts manager; documents and files manager; quick preview of files in the File Manager; greater integration; better documentation; enhanced looks and various performance improvements.[62] | |||
3.4 | March 2012 | New Look for GNOME 3 Applications: Documents, Epiphany (now called Web), and GNOME Contacts. Search for documents from the Activities overview. Application menus support. Refreshed interface components: New color picker, redesigned scrollbars, easier to use spin buttons, and hideable title bars. Smooth scrolling support. New animated backgrounds. Improved system settings with new Wacom panel. Easier extensions management. Better hardware support. Topic-oriented documentation. Video calling and Live Messenger support in Empathy. Better accessibility: Improved Orca integration, better high contrast mode, and new zoom settings. Plus many other application enhancements and smaller details.[63] | |||
3.6 | September 2012 | Refreshed Core components: New applications button and improved layout in the Activities Overview. A new login and lock screen. Redesigned Message Tray. Notifications are now smarter, more noticeable, easier to dismiss. Improved interface and settings for System Settings. The user menu now shows Power Off by default. Integrated Input Methods. Accessibility is always on. New applications: Boxes, that was introduced as a preview version in GNOME 3.4, and Clocks, an application to handle world times. Updated looks for Disk Usage Analyzer, Empathy and Font Viewer. Improved braille support in Orca. In Web, the previously blank start page was replaced by a grid that holds your most visited pages, plus better full screen mode and a beta of WebKit2. Evolution renders email using WebKit. Major improvements to Disks. Revamped Files application (also known as Nautilus), with new features like Recent files and search. | |||
3.8 | March 2013 | Refreshed Core components: A new applications view with frequently used and all apps. An overhauled window layout. New input methods OSD switcher. The Notifications & Messaging tray now react to the force with which the pointer is pressed against the screen edge. Added Classic mode for those who prefer a more traditional desktop experience. The GNOME Settings application features an updated toolbar design. New Initial Setup assistant. GNOME Online Accounts integrates with more services. Web has been upgraded to use the WebKit2 engine. Web has a new private browsing mode. Documents has gained a new dual page mode & Google Documents integration. Improved user interface of Contacts. GNOME Files, GNOME Boxes and GNOME Disks have received a number of improvements. Integration of ownCloud. New GNOME Core Applications: GNOME Clocks and GNOME Weather. | |||
3.10 | September 2013 | A reworked system status area, which gives a more focused overview of the system. A collection of new applications, including GNOME Maps, GNOME Notes, GNOME Music and GNOME Photos. New geolocation features, such as automatic time zones and world clocks. HiDPI support[64] and smart card support. D-Bus activation made possible with GLib 2.38[65] | |||
3.12 | March 2014[66] | Improved keyboard navigation and window selection in the Overview. Revamped first set-up utility based on usability tests. Wired networking re-added to the system status area. Customizable application folders in the Applications view. Introduction of new GTK widgets such as popovers in many applications. New tab style in GTK. GNOME Videos, GNOME Terminal and gedit were given a fresh look, more consistent with the HIG. A search provider for the terminal emulator is included in GNOME Shell. Improvements to GNOME Software and high-density display support. A new sound recorder application. New desktop notifications API. Progress in the Wayland port has reached a usable state that can be optionally previewed.[citation needed] | |||
3.14 | September 2014 | Improved desktop environment animations. Improved touchscreen support. GNOME Software supports managing installed add-ons. GNOME Photos adds support for Google. Redesigned UI for Evince, Sudoku, Mines and Weather. Hitori is added as part of GNOME Games.[citation needed] | |||
3.16 | March 2015 | Major changes include UI color scheme goes from black to charcoal. Overlay scroll bars added. Improvements to notifications including integration with Calendar applet. Tweaks to various apps including Files, Image Viewer, and Maps. New Preview applications: Calendar, Characters, Books. Continued porting from X11 to Wayland.[67] | |||
3.18 | September 2015 | Major changes include Google Drive integration in Files. Firmware updates through Software. Automatic screen brightness. Touchpad gestures. Several new applications: GNOME Calendar and GNOME Character Map. Significant improvements to Files, Boxes and Polari. Smaller changes and bug fixes. | |||
3.20 | March 2016 | Significant improvements to many core applications, such as system upgrades and reviews in Software, simple photo editing in Photos and improved search in Files. Platform improvements include shortcut help windows which are available in many applications, a refined font, and better control of location services.[68] | |||
3.22 | September 2016 | GNOME 3.22 applications are based on GTK 3.22, the last gtk-3.x release Wayland is now default. Comprehensive Flatpak support. GNOME Software can install and update Flatpaks, GNOME Builder can create them, and the desktop provides portal implementations to enable sandboxed applications. Improvements to core GNOME applications include support for batch renaming in Files, sharing support in GNOME Photos, an updated look for GNOME Software, a redesigned keyboard settings panel, and much more. | |||
3.24 | March 2017 | Night Light is a new feature and reduces eye strain at night by coloring the screen a little red. The date/time drop down now shows Weather information. A refined look to notifications. Gnome Calendar got a week view. Gnome Web got improvements to the experience of adding and managing bookmarks, and ships with Easy Privacy as default.[69] The online accounts, user and printer settings panel was redesigned.[70] | |||
3.26 | September 2017 | New look for the Settings application, which has a new navigation sidebar and improved network and display settings, and browser synchronization thanks to the Firefox Sync service. Color emoji are now supported throughout GNOME and will be visible wherever they appear.[71] | |||
3.28 | 12 March 2018[72] | ||||
3.30 | 5 September 2018 | ||||
3.32 | 2019 | ||||
GNOME 4 | |||||
4.0 | Unknown | Based on GTK 4. Successor of GNOME Shell. … |
Features
User Interface Design
Since GNOME 2, productivity has been a key focus for GNOME. To meet this end, the GNOME Human Interface Guidelines (HIG) were created. All GNOME programs share a coherent style of graphical user interface (GUI) but are 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.[73] 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:
A traditional free software application is configurable so that it has the union of all features anyone's ever seen in any equivalent application on any other historical platform. Or even configurable to be the union of all applications that anyone's ever seen on any historical platform (Emacs *cough*).
Does this hurt anything? Yes it does. It turns out that preferences have a cost. Of course, some preferences also have important benefits – and can be crucial interface features. But each one has a price, and you have to carefully consider its value. Many users and developers don't understand this, and end up with a lot of cost and little value for their preferences dollar.
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.
Internationalization and Localization
The internationalization and localization of GNOME software relies on locale.
Login sessions
GNOME provides two different login sessions, one is based on GNOME Panel and Metacity (Window Manager), this session is called GNOME Flashback,[75] it is light-weight,[76][77] has lower hardware requirements than GNOME Shell and consumes less memory and CPU,[78] it provides a traditional and highly customizable taskbar (panel) with many plug-ins bundled in one package (gnome-applets) including a customizable start menu. Another session is based on GNOME Shell and Mutter (Window Manager), this session is default, it offers a mobile-like paradigm for launching applications and accessing open windows and virtual desktops, but through the use of extensions it is possible for the appearance to be that of a traditional taskbar and provide a basic start menu, this default session uses more RAM and CPU due to use of JavaScript for GNOME Shell and all of its extensions, and requiring 3D-acceleration.
GNOME Flashback
GNOME Flashback is an official session for GNOME 3. It provides a similar user experience to the GNOME 2.x series session by providing a traditional desktop taskbar (panel) with many plug-ins bundled in one package (gnome-applets), and a start menu. It has customization capacities as built-in.
GNOME Flashback consists of the following components:
- GNOME Panel -- a highly configurable taskbar
- Metacity (Window Manager)
- gnome-applets -- a collection of useful applets for the GNOME Panel
GNOME Shell
GNOME Shell Overview mode
|
GNOME Shell is the default Graphical Shell 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.[79][80] 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.[81] 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.[79] 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.[82]
GNOME Classic
Beginning with GNOME 3.8, GNOME provides a suite of officially supported GNOME Shell extensions that provide Applications menu (a basic start menu) and "Places menu" on the top bar, and a panel with windows list at the bottom of the screen that lets quickly minimize and restore open windows, a "Show Desktop" button in the bottom left and virtual desktops in the bottom right corner.[83]
Development
GNOME is developed by The GNOME Project[84], and, like most free software projects, GNOME development is loosely managed. Discussion chiefly occurs on a number of public mailing lists.[85] GNOME developers and users gather at an annual GUADEC meeting to discuss the current state and the future direction of GNOME.[86] GNOME incorporates standards and programs from freedesktop.org to better support interoperability with other desktops.
GNOME is mainly written in C, Vala, Python and JavaScript.[3] A number of language bindings are available.
Development platform
The 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.[87]
- GNOME Display Manager (GDM), which manages user sessions, X and Wayland alike.
- Tracker automatically searches the specified directories for files and keeps an index of them to provide fast search; heavily integrated into GNOME Shell and GNOME Files
- GVfs, an abstraction layer framework for file systems augmenting GIO; well integrated into GNOME Files and GNOME Disks
- dconf a backend for GSettings
- Mutter, the Wayland compositor and X Window Manager
- Linux color management, udev, etc.
- Evolution Data Server, responsible for managing mail, calendar, address book, tasks and memo information
- Meson is replacing GNU Build System (autotools) as build automation tools of choice
- BuildStream a distribution agnostic build and integration tool
The GNOME desktop environment does not consist solely of the graphical control element library GTK and the core applications that make use of it. There are quite a few additional software packages that make up the GNOME desktop environment, such as the above.
Wayland
GNOME runs on Wayland and the X Window System.[88] Wayland support was introduced in GNOME 3.10[80] and deemed “for the majority of users […] a usable day to day experience” by 3.20[89], at which point Wayland became the default user session.[90] GNOME 3.24 will extend Wayland compatibility to NVidia drivers.[91] With GNOME 3.30, it is possible to run GNOME without X.Org Server, using only Wayland.
systemd
In May 2011 Lennart Poettering proposed systemd as a GNOME dependency.[92] 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 only been available on systems using systemd.[62] In November 2012 the GNOME release team concluded that systemd can be relied upon for non-basic functionality.[93]
Applications
Core Applications
There are a large number of 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.[94] The commonalities of the GNOME Core Applications are the adherence to the current GNOME Human Interface Guidelines (HIG) as well as the tight integration with underlying GNOME layers like e.g. GVfs and also with one another e.g. GOA (gnome-online-accounts)[95] settings and GNOME Files with Google Drive[96][97] and GNOME Photos with Google Photos. Some programs are simply existing programs with a new name and revamped user interface, while others have been written from scratch.
Games
GNOME Games have the look and feel of the GNOME Core Applications and are released simultaneously with GNOME. All have been rewritten to conform to the current GNOME Human Interface Guidelines.
Development tools
Programmers have written software to provide development tools consistent with the GNOME desktop and to facilitate the development of GNOME software:
GNOME Builder is the new integrated development environment, Anjuta is the older one. Glade Interface Designer software constructs graphical interfaces using the graphical control elements in GTK. Devhelp is an API browser, Accerciser an accessibility explorer.
There are several debugging tools, including Nemiver, GtkInspector[98][99] and Alleyoop, have also been provided to facilitate development of GNOME software.
Integration options for third-party development tools (e.g. NoFlo) also exist.[100]
The libsoup library enables access HTTP servers from Gnome applications.[101]
BuildStream is a flexible and extensible framework for the modelling of build and CI pipelines in a declarative YAML format, written in Python.[102] It's mascot is a Beaver, 'cause beavers build things in a stream.
Gallery
Media related to screenshots of GNOME at Wikimedia Commons
-
GNOME 2.6 (March 2004)
-
GNOME 2.24 on Ubuntu 8.10 with screenlets (October 2008)
-
GNOME Weather 3.28 (March 2018)
-
"Applications view" in GNOME Shell 3.22 (September 2016)
-
GNOME Files 3.22 (September 2016)
-
GNOME Clocks 3.22 (September 2016)
-
GNOME Software 3.22 (September 2016)
-
GNOME System Monitor 3.22 (September 2016)
See also
- GNOME Panel
- Comparison of X Window System desktop environments
- Cinnamon, a desktop environment based on GNOME 3
- MATE, a desktop environment based on GNOME 2
- Unity, an alternative graphical shell for GNOME 3 instead of GNOME Shell
References
- ^ a b "GNOME 1.0 Released" (Press release). San Jose, California: The GNOME Project. March 3, 1999. Retrieved January 11, 2016.
- ^ "Introducing GNOME 45". September 20, 2023. Retrieved September 21, 2023.
- ^ a b "GNOME Languages". Ohloh. Black Duck Software. Retrieved May 22, 2014.
- ^ Day, Allan. "GNOME 3.28 Release Notes". The GNOME Project. Retrieved May 22, 2014.
- ^ "GNOME License". Retrieved December 8, 2017.
- ^ "Gnome.org Traffic, Demographics and Competitors - Alexa". Retrieved January 18, 2019.
- ^ Sandler, Karen (March 26, 2014). "Introducing GNOME 3.12". The GNOME Project (video). YouTube. Retrieved July 2, 2014.
- ^ Clinton, Jason (April 2, 2011). "GNOME 3: Fewer interruptions". The GNOME Project (video). YouTube. Retrieved April 7, 2011.
- ^ Clasen, Matthias (February 19, 2014). "Portability of the GNOME desktop environment". Retrieved March 18, 2014.
- ^ a b Klapper, Andre (April 6, 2010). "Re: GNOME -> Gnome". GNOME marketing list (Mailing list). Retrieved March 26, 2017.
- ^ "GNU Software". Free Software Foundation. Retrieved June 16, 2014.
- ^ GNOME census (PDF), Neary
- ^ "Staring into the abyss". Gnome. July 27, 2012. Retrieved March 15, 2014.
- ^ de Icaza, Miguel (August 15, 1997). "The GNOME Desktop project". mail.gnome.org. Retrieved August 11, 2015.
- ^ "About Us". Retrieved December 9, 2011.
- ^ "The GNOME Desktop project". Retrieved December 10, 2011.
- ^ Announcement: Qt version 2.0 released, June 25, 1999, archived from the original on March 9, 2000, retrieved April 16, 2014
{{citation}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ Stallman, Richard Stallman (September 5, 2000). "Stallman on Qt, the GPL, KDE, and GNOME". Retrieved September 9, 2005.
- ^ "Why you shouldn't use the Lesser GPL for your next library". Free Software Foundation. Retrieved January 20, 2008.
- ^ The GNOME Project: "GNOME Foundation Guidelines on Copyright Assignment". Accessed March 26, 2013. Archived March 4, 2012, at the Wayback Machine
- ^ Pennington, Havoc (1999). "What is Gnome?". GTK / Gnome Application Development. Archived from the original on July 11, 2010.
{{cite book}}
: External link in
(help); Unknown parameter|chapterurl=
|chapterurl=
ignored (|chapter-url=
suggested) (help) - ^ Gowin, John (November 9, 2001). "GNOME Office, how far along are we?". Linux Orbit. Archived from the original on January 1, 2005.
- ^
TH, Sam (April 10, 2001). "GUADEC Results". gnome-office-list (Mailing list). LWN.net. Retrieved May 3, 2014.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ Loli, Eugenia (September 15, 2003). "GNOME-Office 1.0 Released; Nautilus Becomes Object-Oriented". OSNews. Retrieved May 4, 2014.
- ^ Esselbach, Philipp (September 15, 2003). "GNOME-Office 1.0 Released". Linux Compatible. Retrieved May 4, 2014.
- ^ "GNOME-Office 1.0 Released" (Press release). September 15, 2003. Retrieved May 4, 2014.
- ^ Sevior, Martin (June 30, 2004). "Next GNOME-Office release". gnome-office-list (Mailing list). Retrieved May 4, 2014.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^
Sevior, Martin (July 30, 2004). "Update on progress for GNOME-Office-1.2". gnome-office-list (Mailing list). Retrieved May 4, 2014.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^
Sevior, Martin (October 2, 2004). "Three weeks until gnome-office-1.2, what progress on the website?". gnome-office-list (Mailing list). Retrieved May 4, 2014.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ Welinder, Morten (December 19, 2004). "Gnumeric 1.4 is Here!". gnome-office-list (Mailing list). Retrieved May 4, 2014.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ "Office Applications". The GNOME Project. Archived from the original on December 3, 2013. Retrieved May 4, 2014.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ Foxwell, Harry; Tran, Hung (2009). Pro OpenSolaris: A New Open Source OS for Linux Developers and Administrators. Apress. p. 51.
- ^ "A new default theme for GTK". blogs.gnome.org. Retrieved December 24, 2014.
- ^ Ricky (August 4, 2011), "Linus Torvalds Ditches GNOME For Xfce", Digitizor, retrieved November 8, 2011
- ^ "Torvalds: I want to be nice, and curse less, but it's just not in me". The Register. November 7, 2012. Retrieved January 2, 2013.
- ^ Heath, Nick (March 4, 2013). "Linus Torvalds switches back to Gnome 3.x desktop". ZDNet. Retrieved June 19, 2013.
- ^ http://www.zdnet.com/linus-torvalds-switches-back-to-gnome-3-x-desktop-7000012083/
- ^ a b Hoffman, Chris. "How GNOME 3.14 is winning back disillusioned Linux users". PC World. IDG TechNetwork. Retrieved April 5, 2015.
- ^ Tozzi, Christopher. "Open Source GNOME 3 Desktop Environment Wins Back Fans". The VAR Guy. Penton. Retrieved April 5, 2015.
- ^ de Icaza, Miguel. "The story of the GNOME project". Archived from the original on February 24, 2001.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ "GNOME 1.2 "Bongo GNOME" Unleashed" (Press release). The GNOME Project. May 25, 2000. Retrieved June 8, 2014.
- ^ "GNOME 1.4 Released: Desktop Environment Boasts Power, Stability, Polish and Integration" (Press release). Copenhagen, Denmark: The GNOME Project. Business Wire. April 2, 2001. Retrieved June 8, 2014.
- ^ Waugh, Jeff (June 27, 2002). "GNOME 2.0 Desktop and Developer Platform Released!". desktop-devel (Mailing list). Retrieved September 20, 2007.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ "GNOME 2.2 Release notes" (Press release). The GNOME Project. February 5, 2003. Retrieved February 19, 2019.
- ^ Waugh, Jeff (September 11, 2003). "Announcing the GNOME 2.4.0 Desktop & Developer Platform". gnome-announce (Mailing list). Retrieved September 20, 2007.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ Sobala, Andrew (March 31, 2004). "Announcing the GNOME 2.6.0 Desktop & Developer Platform". gnome-announce (Mailing list). Retrieved September 20, 2007.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ "GNOME 2.8 release notes" (Press release). Boston, Massachusetts: The GNOME Project. September 15, 2004. Retrieved February 19, 2019.
- ^ "GNOME 2.10 released!" (Press release). Boston, Massachusetts: The GNOME Project. March 9, 2005. Retrieved June 8, 2014.
- ^ "GNOME 2.12 Release Notes". Retrieved October 31, 2010.
- ^ "GNOME 2.14 Release Notes". Retrieved October 31, 2010.
- ^ Newren, Elijah (September 6, 2006). "Celebrating the release of GNOME 2.16!". gnome-announce (Mailing list). Retrieved September 20, 2007.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ Newren, Elijah (March 14, 2007). "Celebrating the release of GNOME 2.18!". gnome-announce (Mailing list). Retrieved September 20, 2007.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ Ryan, Paul (September 19, 2007). "GNOME 2.20 officially released". Ars Technica. Retrieved September 20, 2007.
- ^ Untz, Vincent (March 12, 2008). "Celebrating the release of GNOME 2.22!". gnome-announce-list (Mailing list). Retrieved March 12, 2008.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ "GNOME 2.22 Release Notes, Section "GVFS and GIO"".
- ^ Untz, Vincent (September 24, 2008). "Celebrating the release of GNOME 2.24!". gnome-announce-list (Mailing list). Retrieved September 27, 2008.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ Untz, Vincent (March 18, 2009). "Celebrating the release of GNOME 2.26!". gnome-announce-list (Mailing list). Retrieved March 18, 2009.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ Holwerda, Thom (September 24, 2009). "GNOME 2.28 Released". OSNews. Retrieved April 5, 2009.
- ^ Holwerda, Thom (March 31, 2010). "GNOME 2.30 Released". OSNews. Retrieved April 4, 2010.
- ^ "GNOME 2.32 Release Notes". Retrieved October 31, 2010.
- ^ "GNOME 3.0 Release Notes". The GNOME Project. Retrieved April 7, 2011.
- ^ a b Vitters, Olav; Klapper, André; Day, Allan. "GNOME 3.2 Release Notes". The GNOME Project. Retrieved October 5, 2011.
- ^ "A list of features that have been implemented for 3.4". The GNOME Project. Retrieved March 28, 2012.
- ^ "Add high dpi support". February 12, 2014.
- ^ "Convert applications to DBusActivatable".
- ^ Wallen, Jack (March 28, 2014). "GNOME 3.10 has resurrected what was once the darling of the Linux desktop". TechRepublic. Archived from the original on March 28, 2014.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ "GNOME 3.16 is here with reimagined notifications and visual upgrades galore". March 28, 2015. Retrieved February 19, 2019.
- ^ "GNOME 3.20". March 23, 2016.
- ^ "GNOME 3.24 Released, This Is What's New". OMG! Ubuntu!. July 23, 2017.
- ^ "Introducing GNOME 3.24 'Portland'". July 23, 2017.
- ^ "GNOME 3.26 Released". September 13, 2017.
- ^ "GNOME 3.27.x Development Series".
- ^ "GNOME Human Interface Guidelines".
- ^ Pennington, Havoc (April 2002). "Free Software UI". Retrieved December 4, 2011.
- ^ "Projects/GnomeFlashback - GNOME Wiki". Retrieved December 21, 2018.
- ^ "GNOME/Flashback - ArchWiki". Retrieved December 21, 2018.
- ^ "How to Install Classic GNOME Flashback in Ubuntu 18.04 LTS". Retrieved December 21, 2018.
- ^ "Debian -- Details of package gnome-session-flashback in buster". Retrieved December 21, 2018.
- ^ a b "Terminology for Gnome Shell". GNOME Wiki. The GNOME Project. Archived from the original on May 22, 2014. Retrieved May 22, 2014.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ a b Day, Allan. "GNOME 3.10 Release Notes". The GNOME Project. Retrieved May 22, 2014.
- ^ "GNOME 3 Cheat Sheet". GNOME Wiki. The GNOME Project. Retrieved June 13, 2014.
- ^ "GNOME Shell Design". The GNOME Project. Retrieved December 3, 2011.
- ^ Day, Allan. "GNOME 3.8 Release Notes". The GNOME Project. Retrieved June 13, 2014.
- ^ "GNOME Quick SWOT Analysis". The GNOME Project. Retrieved March 18, 2014.
- ^ "GTK and GNOME Mailing Lists". The GNOME Project. Retrieved December 4, 2011.
- ^ "About". GNOME Users And Developers European Conference (GUADEC). Archived from the original on October 4, 2011. Retrieved December 3, 2011.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help) - ^ Bull, Phil. "Platform libraries". The GNOME Project. Retrieved May 21, 2014.
- ^ "What's new in Fedora 25 Workstation". Fedora Magazine. Red Hat. November 21, 2016.
- ^ "GNOME 3.20 Release Notes". GNOME.
- ^ "session: give Wayland sessions priority · GNOME/gdm@6cd2d24". Github.
- ^ "GNOME Lands Mainline NVIDIA Wayland Support Using EGLStreams". Phoronix.
- ^ Poettering, Lennart (May 18, 2011). "systemd as external dependency". desktop-devel (Mailing list). Retrieved June 12, 2014.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ Peters, Frederic (November 6, 2012). "20121104 meeting minutes". release-team (Mailing list). Retrieved June 12, 2014.
{{cite mailing list}}
: Unknown parameter|mailinglist=
ignored (|mailing-list=
suggested) (help) - ^ https://web.archive.org/web/20030514015921/http://www.linuxselfhelp.com/gnome/users-guide/clock-applets.html
- ^ "GNOME wiki: GnomeOnlineAccounts".
- ^ "GNOME 3.18 Will Let You Access Your Google Drive Files in Nautilus". September 30, 2015.
- ^ "GNOME 3.18 lands with Google Drive". September 30, 2015.
- ^ Matthias Clasen (May 15, 2014). "GtkInspector Author's blog entry". Retrieved May 17, 2014.
- ^ "GtkInspector in GNOME wiki". May 15, 2014. Retrieved May 17, 2014.
- ^ "Bergius: Flowhub and the GNOME Developer Experience". LWN.net. May 2, 2014. Retrieved May 24, 2014.
- ^
Negus, Christopher (2003). Red Hat Linux Bible. Wiley. p. 994. ISBN 9780764543333. Retrieved August 15, 2017.
libsoup: Library for enabling GNOME libraries to access HTTP servers.
- ^ "GNOME Wiki: BuildStream".