GNOME(GNU)
GNOME 即 GNU网络对象模型环境 (The GNU Network Object Model Environment),GNU计划的一部分,开放源码运动的一个重要组成部分。 是一种让使用者容易操作和设定 电脑环境的工具。目标是基于自由软件,为 Unix或者类Unix操作系统构造一个功能完善、操作简单以及界面友好的 桌面环境,他是GNU计划的正式桌面。
起源
GNOME计划是1997年8月由Miguel de Icaza和Federico Mena发起,作为 KDE的替代品。使用孟加拉国语的GNOMEKDE是一个基于 Qt 部件工具箱自由的桌面环境,而QT是由Trolltech开发,当时并未使用自由软件许可。GNU项目的成员关注于使用象这样的一种工具箱构造自由的软件桌面和应用软件,从而发起两个项目:一个是作为纯粹Qt库替代品的“Harmony”;还有就是目的在于使用完全与Qt无关的自由软件构造桌面系统的GNOME项目。
在GNOME变得实用和普及之后,2000年9月Trolltech在GNU GPL和QPL(去掉了大多数争论多年的内容)双重许可证下发布了GNU/Linux版的QT库。但是Qt的许可证还是在许多人中间有争议,因为GPL用于库时对与之链接的代码-例如的KDE框架和任何为其编写的程序-都施加了许可证限制。
GIMP Toolkit( GTK+)被选中做为Qt toolkit的替代,担当GNOME桌面的基础。GTK+使用GNU宽通用公共许可证(LGPL,一个自由软件许可证),允许链接到它的软件——例如GNOME的应用程序——使用任意的许可证。GNOME桌面的库使用LGPL,而GNOME计划内的应用程序使用 GPL许可证。
GNOME桌面系统使用 C语言编程,但也存在一些其它语言的绑定使得能够使用其它语言编写GNOME应用程序,例如 C++, Java, Ruby, C#, Python, Perl 等等。
目标
引自GNOME网站:GNOME计划提供了两个东西:GNOME桌面环境,一个对最终用户来说符合直觉并十分吸引人的桌面;还有GNOME开发平台,一个能使开发的应用程序与桌面其它部分集成的可扩展框架。
GNOME桌面主张简单、好用和恰到好处,因此GNOME开发中有两点很突出:
可达性——设计和建立为所有人所用的桌面和应用程序,不论其技术技巧和身体残疾。
国际化——保证桌面和应用程序可以用于很多语言。
组织
和大多数自由软件类似,GNOME组织也很松散,其关于开发的讨论散布于众多向任何人开发的邮件列表。为了处理管理工作、施加影响以及于同对开发GNOME软件有兴趣的公司联系,2000年8月成立了GNOME基金会。基金会并不直接参与技术决策,而是协调发布和决定哪些对象应该成为GNOME的组成部分。基金会网站将其成员资格定义为:“按照GNOME基金会章程,任何对GNOME有贡献者都可能是合格的成员。尽管很难精确定义,贡献者一般必须对GNOME计划有不小帮助。其贡献形式包括代码、文档、翻译、计划范围的资源维护或者其它对GNOME计划有意义的重要活动 。”
基金会成员每年11月选举董事会,其候选人必须也是贡献者。
[
编辑本段]
平台
尽管最初是GNU/Linux的桌面,GNOME已经运行在大多数类Unix系统(如*BSD变体、AIX、IRIX、HP-UX),并被Sun Microsystems公司采纳为Solaris平台的标准桌面,取代了过时的CDE。Sun Microsystems公司也以Java Desktop System名义发布一个商业版的桌面-一个被SUSELinux系统使用的基于GNOME的桌面。GNOME也移植到Cygwin使其能运行于Microsoft Windows。GNOME 还被众多LiveCDLinux发行版使用,如Gnoppix,Morphix和Ubuntu。LiveCD 能使计算机直接从CD引导,无需删除或者改变现有操作系统如Microsoft Windows。
架构
GNOME桌面由许多不同的项目构成,部分最重要的如下所示:ATK——可达性工具包
Bonobo——复合文档技术
GObject——用于C语言的面向对象框架
GConf——保存应用软件设置
GNOME VFS——虚拟文件系统
GNOME Keyring——安全系统
GNOME Print——GNOME软件打印文档
GStreamer——GNOME软件的多媒体框架
GTK+——构件工具包
Cairo——复杂的2D图形库
Human Interface Guidelines——Sun微系统公司提供的使得GNOME应用软件易于使用的研究和文档
LibXML——为GNOME设计的XML库
ORBit——使软件组件化的CORBAORB
Pango——i18n文本排列和变换库
未来发展
在GNOME之下还有很多子计划,现在它们并不是都包含在GNOME发布版里。一些基于概念的纯粹试验性质的有朝一日或许加入稳定的GNOME软件,其它还有一些正在完善以便直接加入。例如:GNOME存储
D-BUS
尽管GNOME应用软件可以使用很多编程语言,但是作为GNOME发行版一部分的GNOME桌面纯粹用C写成。关于是否使用其它高级语言C#,Python和Java等正在深入讨论。这些语言都已经用于开发GNOME应用程序,但是如果用于GNOME核心应用的开发就必须在所有GNOME安装中加入相应的虚拟机。这会抬高可以运行GNOME桌面的计算机的最低配置要求。
主要GNOME应用软件
英文维基有更加完整的GNOME应用软件列表,其中主要的包括:Abiword——文字处理器。
Epiphany——网页浏览器。自从GNOME 2.14起Epiphany取代Galeon成为缺省浏览器。
Evolution——联系/安排和e-mail管理。
Gaim——即时通讯软件。
gedit——文本编辑器。
The Gimp——高级图像编辑器。
Gnumeric——电子表格软件。
GnomeMeeting——IP电话或者电话软件。
Inkscape—— 矢量绘图软件。
Nautilus——文件管理器。
Rhythmbox——类型Apple iTunes的音乐管理软件。
Totem——媒体播放器。