GNOME

GNOME（ɡ或ˈ）是一个完全由自由软件组成的桌面环境。它的目标操作系统是Linux，但是大部分的BSD系统亦支持GNOME。

GNOME是由志愿贡献者和受雇贡献者组成的GNOME计划开发，其最大的公司贡献者为红帽公司。它是一个为开发软件框架、基于这些框架来开发用户端软件及协调软件翻译和开发无障碍软件的专案。

GNOME最初是GNU网络对象模型环境（GNU Network Object Model Environment）的缩写，但是已经被废弃了。

GNOME以前曾是GNU计划的一部分。但在2021年时，GNOME基金会的执行董事Neil McGovern在他的推特发文，表示已多次要求GNU将GNOME从GNU计划页面中移除，而GNOME基金会也在他们的官方推特中发布贴文，澄清GNOME不是GNU计划的一部分。

## 历史

### GNOME 1

<image>

1996年KDE发布，但KDE所依赖的Qt当时为专有软件。出于这种考虑，两个项目在1997年8月发起：一个是以LGPL授权的Qt库克隆，另外一个就是建立一个基于非Qt库的纯自由软件桌面系统，即GNOME。GNOME的发起者为米格尔·德伊卡萨和费德里科·梅纳。

GIMP Toolkit（GTK+）被选中做为Qt toolkit的替代，担当GNOME桌面的基础。GTK+使用LGPL，允许链接到此库的软件（例如GNOME的应用程序）使用任意的许可协议。GNOME计划的应用程序通常使用GPL许可证。

在GNOME变得普及后，1999年Qt加入GPL授权。Troll Tech在GNU GPL和Q开放许可证双重许可证下发布了Unix版的Qt库。Qt加入GPL授权后，在2000年年底Harmony项目停止了开发，而KDE不再依赖非GPL的软件。2009年3月，Qt 4.5发布，加入了LGPL授权作为第三选择。

“GNOME”这个名称最初是“GNU Network Object Model Environment”的缩写，以反映最初为了开发类似微软物件连结与嵌入的框架。但这个缩写最后被放弃，因为它不再反映GNOME专案的远景。

加州初创企业Eazel于1999至2001年开发Nautilus档案浏览器。米格尔·德伊卡萨和纳特·弗里德曼于1999年创立后来成为Ximian的Helix Code公司。该公司开发了GNOME的基础设施和软件，2003年被Novell收购。

### GNOME 2

<image>

GNOME 2与传统桌面界面十分相似，拥有一个用户可以与不同例如窗口、图示、档案等虚拟物件互动的桌面环境。GNOME 2使用Metacity为它的预设窗口管理器。GNOME 2的窗口、程式和档案管理和一般的桌面操作系统十分相似。在预设的设定中，桌面有一个启动选单，可以用以开启已安装的程式及档案；己存在的窗口在下方的工作列列出；而在右上角则有一个通知区以显示在背景运行的程式。不过，这些功能可以随用户喜好而更改位置、取代或甚至移除。

### GNOME 3

<image>

在GNOME 3之前，GNOME是根据传统的桌面比拟而设计，但在GNOME 3便被GNOME Shell所取代，所有转换窗口及虚拟桌面都在“活动”画面中进行。此外，因为Mutter取代了Metacity成为预设的窗口管理器，最小化及放大按钮不再预设在名称列中。Adwaita取代了Clearlooks成为预设主题。很多GNOME核心程式列表都重新设计以提供更连贯的用户体验。

这些重大的改变最初引来了广泛的批评。MATE桌面环境专案由GNOME 2的源始码衍生，目标为保留GNOME 2的传统界面，同时支援最新的Linux技术，例如GTK+ 3。Linux Mint团队则以开发“Mint GNOME Shell Extensions”一系列于GNOME 3上执行之插件解决此问题，这些插件使GNOME 3的界面变回传统比拟界面。最后，Linux Mint决定从GNOME 3的源代码衍生另外一个桌面环境“Cinnamon”。

对GNOME 3的整体评价已大致转为正面。Linux发行版Debian于GNOME 3发布时把XFCE改成预设的桌面环境，但在Debian 8己改回预设使用GNOME 3。Linux创始者林纳斯·托瓦兹于2013年已改回使用GNOME 3。

### GNOME 40

GNOME 40 与GTK 4.0 于2021年3月同时发布。使用者概览界面改为水平界面，与以往Gnome 3.X 的垂直界面不同。Dash 方向亦由垂直改为水平。并且新释出版本亦引进新的触控板手势。

<image>

### 版本

组成 GNOME 计划的每一部分都有自己的版本号和发布规划，通过各模块的维护者之间的定期协调（六个月），建立一个完整的 GNOME 发布版本。下边的发布版本列表分类属于稳定版。提供给测试和开发者的不稳定版本并未列入。

Gnome 3.38 之后采用新编号方式，推出Gnome 40，下个版本将是Gnome 41，Gnome 40 稳定板发行后以40.1、40.2、40.3......等来发布更新。

版本历史

版本｜日期｜说明

1997年8月｜开始 GNOME 开发

1.0｜1999年3月｜首个 GNOME 版本发布

1.0.53｜1999年10月｜“October”版本

1.2｜2000年5月｜“Bongo”版本

1.4｜2001年4月｜“Tranquility”版本

GNOME 2

2.0｜2002年6月｜基于 GTK2 的重大升级；引入人机界面指南

2.2｜2003年2月｜多媒体和文件管理器的改进

2.4｜2003年9月｜“Temujin”版本：发布 Epiphany 浏览器，无障碍支援

2.6｜2004年3月｜Nautilus变成空间文件管理器；新GTK+文件对话框因为此版本的变更，一个短暂存在的衍生专案“GoneME”出现

2.8｜2004年9月｜加入了抽取式装置的支援；发布Evolution

2.10｜2005年3月｜更低的内存需求和性能优化；新的小工具（网络设定、设备挂载、垃圾筒捷径）；发布Totem、Sound Juicer

2.12｜2005年9月｜改进Nautilus；改善了在程式之间的剪／贴功能及加强了对freedeskop.org的整合；发布Evince文件阅读器、选单编辑器、加密管理器与其它管理工具；新预设主题“Clearlooks”；开发基于支持Cairo的GTK 2.8

2.14｜2006年3月｜性能提升；用户设定中的可用性改善；GStreamer 0.10框架；发布Ekiga视像会议客户端、任务栏搜索工具、Pessulus锁定管理器（允许管理员方便地禁用GNOME桌面的特定特性）；快速用户转换；Sabayon配置编辑器

2.16｜2006年9月｜性能提升；发布Tomboy (软件)笔记本程序、Baobab磁盘存储份额管理、Orca (辅助软件)屏幕阅读器、GNOME电源管理器；屏幕保护全屏预览；Totem和Nautilus的改善；Metacity支援多源图像合成；新的图示主题；基于GTK+2.10有新的打印对话框及API.

2.22｜2008年3月｜Epiphany浏览器改用WebKit引擎；Evince文件浏览器内部转换效应；Cheese可用网络摄像头拍摄照片和记录视频及应用特效；Totem能搜索和播放YouTube视频、连接到MythTV服务、观看录像或实时电视；Rhythmbox能利用FM无线电收听器、整合进新的歌词网站、改进了Podcast feed支持；提供了独立的Flash播放器以支持从文件浏览器中预览Flash。

2.24｜2008年9月｜改进GNOME面板主题；泛GNOME存取的书签和浏览历史记录的集成化；新增GNOME面板小程序库；Ekiga新的用户界面；SIP支持；Empathy即时通讯客户端采用Telepathy通讯框架；Nautilus可以选择纵行和列表视图；GnomeVFS到GIO的移植部分完成。

2.26｜2009年3月｜新刻录工具Brasero；简单文件共享；媒体播放器改进；支援多显示器和指纹识别

2.28｜2009年9月｜加入GNOME蓝牙；改进时间跟踪器；改进即时聊天工具Empathy；改进Epiphany浏览器；媒体播放器增加DVD回放功能；网络摄像头工具Cheese；Evince文档查看器新增批注功能；声音控制程序增加淡入淡出控制支持；WebKit辅助功能支持等。

2.30｜2010年3月｜Nautilus、Empathy、便签、Evince PDF阅读器、Time Tracker、Vinagre VNC客户端和Epiphany浏览器的改进；iPod and iPod Touch设备可以libmobiledevice透过gvfs使用；使用GTK+ 2.20.

2.32｜2010年9月｜新增Rygel和GNOME颜色管理器；Nautilus文件浏览器、Empathy即时通信、便签、Evince PDF阅读器和其他组件的改进3.0原计划于2010年9月发布，因而2.30之后开发重点转向3.0。

GNOME 3

3.0｜2011年4月｜发布GNOME Shell：一个重新设计的、更简结的桌面环境；面向主题的帮助以Mallard标记语言编写；并排平铺窗口；新的主题和默认字体；采用GTK+ 3.0：包括改进的语言绑定、主题化、触摸和多平台支持；移除长期废弃的开发界面

3.2｜2011年9月｜根据用户的反馈对GNOME 3.0进行了很多修改以获得更畅顺的体验

3.4｜2012年3月｜用户体验方面的大量改进；问题修复和细节改进；平滑滚动；重新设计的用户界面元素；更精致的视觉主题和应用程序菜单；新的文档搜索功能；发布Boxes程式；视频通话；可在一天中动态更新的新动画背景。

3.6｜2012年9月｜“关机”选项已经成为预设选项；活动概览中程式列表已经变成Dash上的捷径；系统设置的改进；消息框更新，更容易互动；通知气泡窗口改善：当你正在执行全屏应用程序的时候，系统只会显示重要的通知，通知窗口加入关闭按钮；加入锁定屏幕功能

3.10｜2013年10月｜实验性质的Wayland支援；音量、电池、账号、开关机按纽等整合成同个选单；程式名称列与程式功能列结合为标头列以省下更多萤幕空间；发布Software、Maps、Music、Photos、Notes（前身为Bijiben）；应用程序启动检视改为页面式；自订锁定画面的背景；新增精细卷动功能；设定值的改善；Cantarell字型改进；支援高密度显示萤幕；支援以智能卡解锁画面；改善大量问题；新的转场动画

3.12｜2014年3月｜改善活动概观画面；基于可用性测试有新的首次开机画面；程式列表加入可调较的资料夹；新的GTK+控件；Videos、Terminal和gedit新界面更连贯；Software的改进；新的录音程式发布；新的通知API；Wayland上的改善

3.14｜2014年9月｜改善动画效果；改善触控屏幕支援；Photos加入Google支援；Evince、Sudoku、Mines和Weather的新界面.；Hitori成为GNOME游戏的一部分

3.16｜2015年3月｜Shell界面颜色由黑色为主改为灰色为主；通知区与日历合并；各程式的改善；更多Wayland上的改善

3.18｜2015年9月｜在Files中加入Google云端硬盘支援；加入透过Software进行操作系统版本更新；自动屏幕亮度；触摸板手势；Files、Boxes及Polari的改善；加入Calendar及Character Map

3.20｜2016年3月｜众多核心程式的改善；字型改善；更新位置服务设定

3.22｜2016 年 9 月｜整合 Flatpak；Nautilus 可重新命名多个档案；与其他 GNOME 应用程序的多项变更。

3.24｜2017 年 3 月｜夜间模式；设定应用程序的设计风格更新；增加 Recipes 食谱程式；更多功能的通知栏；图标更新；改善 Wacom 绘图板支援

3.26｜2017 年 9 月｜设定应用程序的新界面；新的彩色 Emoji

3.28｜2018 年 3 月｜新增 Cantarell 字体的粗体与细体；更新萤幕键盘；整合 Thunderbolt 3 支援；增加 Usage 预览版程式

3.30｜2018 年 9 月｜增进桌面效能；自动更新FlatPaks；新增Podcasts；变更Files (Nautilus)视窗大小时，图示会自动调整间距

3.32｜2019 年 3 月

3.34｜2019 年 9 月

3.36｜2020 年 3 月

3.38｜2020 年 9 月

40｜2021 年 3 月｜新的“概览”配置；“天气”应用程序新设计

41｜2021 年 9 月｜“软件”应用程序新设计；更多电源控制选项

42｜2022年3月｜、GNOME 42的发行说明、GNOME 42的发布公告

## 设计

GNOME的目标是要简单易用。

### GNOME Shell

GNOME Shell是GNOME桌面环境的预设使用者界面。它的上方有一条面版，里面有（由左至右）“活动”按钮、正使用程式的选单、时钟及一个系统选单。程式选单显示当前使用程式的名称及提供例如程式设定、关闭程式等的选项。状态列有代表电脑不同状态的图示、往系统设定的捷径以及登出、转换用户、以及关机的选项。

按下“活动”按钮、把鼠标移动至左上角或按下超级键会进入“活动”画面。“活动”画面让用户纵览现时在执行的程式，以及让用户转换窗口、桌面，和执行程式。左边的Dash面版里面有最爱程式的捷径、所有正在执行程式的图示及往所有已安装程式列表的按钮。在上方出现一个搜寻框及右边有一个列出所有桌面的桌面列。通知在按下上方中央的时钟后的列表内。

### GNOME Classic

<image>

从GNOME 3.8起，GNOME提供一个经典模式，提供一个较传统的界面（类似GNOME 2）。

### 相容性

GNOME运行在X11之上，在GNOME 3.10后亦可在Wayland下执行。在大部分Linux发行版上的GNOME都是预设桌面环境或可安装的，而在大部分BSD系统上为Ports。

2011年5月伦内德·柏特菱建议把systemd列为GNOME运行需要的软件。因为systemd是Linux独有，这个提议亦引起了未来停止支援其他平台的讨论。由GNOME 3.2起，多席位配置只支援使用systemd的系统。2012年11月GNOME发布小组结论，指非基本的功能可以依赖systemd。

#### Freedesktop.org与GNOME

Freedesktop.org是一项帮助在不同的X Window桌面——例如GNOME，KDE或者XFCE——之间实现互操作和共享技术的计划。尽管并非正式标准化组织，Freedesktop.org定义了X桌面的基本特征，包括程序之间的拖放、窗口管理器规范、菜单布局、最近文件列表、程序之间复制粘贴和共享的MIME类型数据库等等。遵从Freedesktop.org规范使得GNOME应用程序能够集成到其他桌面（反之亦然），并起到鼓励桌面环境之间的竞争和合作的作用。

### 人机界面指南

自GNOME 2以起，可用性是GNOME的主要焦点。所以，GNOME人机界面指南便开始发展。所有GNOME程式都有连贯的图形使用者界面，但是不止于使用同一套控件（GUI widgets）。因为GNOME界面的设计是由在指南中的概念所引导，而指南自身则发展自认知工效学。跟从人机界面指南，开发者可以创造优质、连贯和可用性高的界面程式，因为指南里由界面设计至界面布局亦有规定。

在GNOME 2的重新编程中，很多对大部分使用者而言用途不大的选项都被移除。夏霍·边灵顿在他于2002年发布的文章“自由软件的使用者界面”（Free Software UI）中总结了关于GNOME可用性的工作，强调所有偏好设定都有它的代价。使软件功能在预设时操作畅顺，比在设定中加入选项才令软件操作和预期一样更好：

### 无障碍

GNOME旨在使桌面环境对身心障碍者在物理上和认知工程学上都符合人体工学。GNOME的人机界面指南尝试把此因素包个在内，但是某些个别问题使由须由特别的软件解决。

GNOME透过无障碍套件（ATK）应用程序界面以解决计算机辅助功能上的问题，它容许特别的输入法、语音合成及语音识别以改善用户体验。某些工具在ATK内透过辅助技术服务供应界面（AT-SPI）注册，以在整个桌面环境中都可以使用。几个辅助技术软件，例如Orca (辅助软件)萤幕阅读器和Dasher输入法是针对在GNOME上使用而开发的。

## 软件

### 核心程式

使用GTK+编写或基于Clutter编写的程式多不胜数，由不同开发者开发。自GNOME 3以来，GNOME计划开发了一系列的程式，为GNOME核心程式列表。所有GNOME核心程式都是根据人机界面指南而设计的。

### 游戏

GNOME游戏有与GNOME核心程式外观，以及与GNOME软件版本周期同时发布。它们全部都已根据人机界面指南重写。

### 开发工具

Anjuta整合开发环境，Glade使用者界面设计工具及Devhelp应用程序界面阅览器是为了促进开发与GNOME连贯的软件而开发的。Accerciser计算机辅助阅览器以及其他调试工具，包括、和Alleyoop亦是为了促进开发GNOME软件而开发。

与第三方软件整合，例如与NoFlo整合亦有提供。

## 组织

和大多数自由软件类似，GNOME组织也很松散，其关于开发的讨论散布于众多向任何人开放的邮件列表。为了处理管理工作、施加影响以及与同对开发GNOME软件有兴趣的公司联系，2000年8月成立了GNOME基金会。基金会并不直接参与技术决策，而是协调发布和决定哪些对象应该成为GNOME的组成部分。基金会网站将其成员资格定义为：

“按照GNOME基金会章程，任何对GNOME有贡献者都可能是合格的成员。尽管很难精确定义，贡献者一般必须对GNOME计划有不小帮助。其贡献形式包括代码、文档、翻译、计划范围的资源维护或者其它对GNOME计划有意义的重要活动。”

基金会成员每年11月选举董事会，其候选人必须也是贡献者。

## 基本资料

- 作者：GNOME基金会
- 开发者：GNOME基金会（主要由Red Hat）
- 发行日期：1999年3月3日
- 编程语言：C语言、C++、Vala、Python、JavaScript
- 操作系统：类Unix系统（使用Wayland或X11）
- 语言：38
- 类型：桌面环境