体验带有GNOME 3的Fedora 15

系统 Linux
现在Ubuntu有个趋势,就是两年一个的LTS版本品质才算可以,而其他六个月一次的版本,有点把用户当小白鼠——之前我总说Fedora新特性引入之快以至于把用户当小白鼠,现在Ubuntu已经赶超了。

现在Ubuntu有个趋势,就是两年一个的LTS版本品质才算可以,而其他六个月一次的版本,有点把用户当小白鼠——之前我总说Fedora新特性引入之快以至于把用户当小白鼠,现在Ubuntu已经赶超了。

OK,实际上没这么夸张啦,无论如何Ubuntu 11.04还保留了GNOME经典桌面。这篇文章,我主要想写一下这两天体验GNOME 3@Fedora 15的感受。

我在MacBook Air上单独分了一个区安装了Fedora 15正式版,加了RPM Fusion的源,装好了nVIDIA显卡、Boardcom无线驱动,很快就配置好了一个可以投入使用的环境。与Ubuntu 11.04不同的是:

●Fedora需要加源才能安装这些私有驱动,而Ubuntu默认便可以使用自带的工具安装;

●同样是2.6.38内核,Fedora不能使MBA扬声器发声,而Ubuntu可以;

●同样是2.6.38内核,Fedora很稳定,而Ubuntu会死机;

然后就体验了GNOME 3桌面,总体来看正式版的可用性还是比较好的,运行很稳定,也没有什么明显的Bug。要说的话,GNOME把“关机菜单”隐藏起来取而代之是“挂起”这简直是一个反用户的举动!

另外,正式发布两个月之后的GNOME 3的周边资源已经相当丰富了,有一大堆设计师设计的桌面主题都非常的漂亮,另外也有不少有用的扩展被开发出来,充分发挥了GNOME 3的定制能力。

如下图,是Elementary的GNOME Shell主题,你还能看出来我加了什么扩展吗?

 

Elementary的GNOME Shell主题

 

作为一个开发者,我理所当然地也要玩玩GNOME Shell的扩展开发。目前官方并没有文档(自由软件项目一直缺的都是文档、文档和文档!),于是我参考其他源码和这两篇教程,把我的“VPN Indicator”移值到了GNOME Shell里。

GNOME Shell Extensions

More GNOME Shell Customisation

如图所示(除UI部分外,其余还未完工):

 

GNOME Shell的扩展开发

 

总体来说,写GNOME Shell的扩展还是比较轻松和愉快的,只要你懂JavaScript,知道什么是prototype,再加些类GObject API的使用经验,就可以开工了。

简单解说下我目前扩展所做的工作吧(源代码在此:https://github.com/tualatrix/vpn-indicator/tree/master/gnome-shell)

●首先构建“/etc/openvpn/”这个目录的GFile对象,然后调用“enumerate_children”方法遍历其子文件(我尝试用GLib的glob,但是失败了)

●通过JavaScript正式表达式匹配后缀为“.ovpn”的配置文件,生成如上图所示的“PopMenu”

●调用GFileType的“get_symlink_target”方法取得当前配置的真实路径,然后就可以使用PopMenuItem的setShowDot方法来指示当前使用的配置了

●最上面是一个PopupSwitchMenuItem对象,计划是它在Toggle的时候再去调用DBus方法以控制VPN的开关,但是目前无法取得DBus(SystemBus)返回的数据,于是得不到状态

总体来说,GNOME Shell提供的一些UI库,如StIcon、PopMenu、PopMenuItem和PopMenuSwitchItem等还是很丰富的,这些都可以用CSS来控制样式,其次再利用GLib、Gio等库,可以完成任何有关本地、网络和进程间通讯等桌面应用程序常用到的任务,只要有什么想法一般都是可以实现的。

但目前GNOME Shell还有严重的问题——它的扩展机制仅仅是扩展自身,而不关心第三方应用程序与它的集成度,于是比较悲剧的是,连iBus输入法暂时都用的是旧的StatusIcon。

这方面Ubuntu就做的好多了,AppIndicator、Unity就设计了比较好的API供第三方应用程序使用,并且已经有大量第三方应用程序开始采用。

GNOME Shell、Unity,两者应该取长补短,这会是最好的。让我真的在这两者中选择一个,我还真选不出来。目前的总结是:

●GNOME Shell:简洁、一致、稳定、扩展能力强

●Unity:不够稳定、Bug多、很多不一致、第三方应用集成性好、性能相对好一些

到了Ubuntu 11.10,它将同时搭载GNOME Shell和Unity,到时用户会选哪个呢?我又会用哪个?到时再看着办吧!

原文:http://imtx.me/archives/1638.html

【编辑推荐】

  1. Ubuntu Unity与GNOME 3:愚蠢的图形驱动搭配
  2. GNOME Shell叫板Ubuntu Unity:孰优孰劣?
  3. GNOME 3与Mac OS X 10.7 (Lion)的纵览模式比较
责任编辑:黄丹 来源: imtx.me
相关推荐

2011-05-10 10:00:48

2009-12-28 09:51:17

Fedora GNOM

2013-11-26 14:51:03

Fedora 20软件中心

2011-05-26 10:27:37

Fedora 15

2011-08-04 09:15:08

Gnome 3.2Gnome 3.1.5

2011-05-19 13:09:50

Fedora 15

2011-04-20 09:18:46

Fedora 15 B

2011-03-09 08:57:23

Fedora 15 a

2012-06-05 09:08:27

Fedora 15

2012-11-28 09:43:09

Fedora 18

2022-05-16 10:41:40

GNOME 42Console控制台

2009-12-16 09:56:30

Fedora Gnom

2023-06-27 16:55:43

GNOMEFedora分数缩放

2013-07-10 15:46:45

Fedora 19Fedora 19 A

2012-05-18 14:07:00

Fedora 17系统

2013-12-30 15:52:20

Fedora 20GNOME 3

2013-01-17 14:38:37

Fedora 18

2011-04-07 09:53:25

Gnome 3

2011-05-25 09:52:40

Fedora 15

2011-05-25 09:30:05

Fedora 15
点赞
收藏

51CTO技术栈公众号