来自:http://baike.baidu.com/view/281766.htm

GNOME(GNU)

GNOMEGNU网络对象模型环境 (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文本排列和变换库


Metacity——窗口管理器

未来发展

在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——媒体播放器。



来自:

http://baike.baidu.com/view/281766.htm