凌云的博客

行胜于言

GNOME 概述

分类:linux| 发布时间:2025-01-18 21:40:00

概述

GNOME 是 GNU Network Object Model Environment 的缩写。

  • GNU:代表 GNU's Not Unix,是一个自由软件项目,旨在创建一个完全自由的类Unix操作系统。
  • Network Object Model:指的是一种对象模型,最初用于支持分布式计算和网络服务。
  • Environment:指的是桌面环境,即一组提供图形用户界面和工具的软件。

不过,GNOME 作为桌面环境,已经不再强调其最初的“网络对象模型”目标。现在它主要关注于提供一个易于使用、现代化的桌面环境,并且是开源软件。

版本历史

GNOME 1

1996年KDE Plasma发布,但KDE所依赖的Qt当时并未使用GPL许可。出于这种考虑,两个项目在1997年8月发起:一个是作为Qt库替代品的“Harmony (toolkit)”,另外一个就是建立一个基于非Qt库的桌面系统,即GNOME项目。GNOME的发起者为米格尔·德伊卡萨和费德里科·梅纳[12]。

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

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

“GNOME”这个名称最初是“GNU Network Object Model Environment”的缩写,以反映最初为了开发类似微软对象链接与嵌入的框架[16]。但这个缩写最后被放弃,因为它不再反映GNOME项目的远景[17]。

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

GNOME 2

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

GNOME 3

在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”。

截至2015年,对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 方向亦由垂直改为水平。并且新发布版本亦引进新的触摸板手势。

GTK 与 GNOME 的关系

GNOME 和 GTK 之间有着密切的关系,GTK 是 GNOME 桌面环境的核心技术之一。 具体来说,GTK 是 GNOME 的图形用户界面(GUI)工具包,它提供了构建窗口、按钮、菜单等图形元素的基础功能,而 GNOME 则是基于 GTK 构建的一个完整的桌面环境。

GNOME 常用组件

GNOME Shell

  • 功能:GNOME Shell 是 GNOME 桌面环境的核心,负责桌面用户界面的呈现、窗口管理、应用程序启动、任务切换等。它提供了现代化的界面,包含了活动概览(Overview)、动态工作区、应用程序启动器等功能。
  • 特点:用户可以通过 GNOME Shell 来管理和启动应用程序,切换虚拟工作区,管理窗口,甚至使用键盘快捷键来提高工作效率。

Nautilus (文件管理器)

  • 功能:Nautilus 是 GNOME 的默认文件管理器,用于浏览文件和文件夹,提供文件操作(复制、移动、删除等)以及文件预览、搜索、书签等功能。
  • 特点:Nautilus 提供简洁的界面,支持标签页、简易的右键菜单和文件共享功能。

GNOME Terminal (终端)

  • 功能:GNOME Terminal 是 GNOME 环境中的默认终端应用程序,允许用户在命令行界面中执行命令、运行脚本和程序。
  • 特点:GNOME Terminal 提供多标签页支持、可定制的外观设置、剪贴板支持等。

GDM (GNOME Display Manager)

  • 功能:GDM 是 GNOME 的显示管理器,负责管理用户登录界面。
  • 特点:它提供了一个简洁的登录界面,支持多个用户帐户、会话选择和会话管理。