9/30/2006

Beryl发布了0.1.0

终于不用再使用cvs版本了

使用以下的源就可以了
deb http://www.beerorkid.com/compiz edgy main-edgy


获取:2 http://www.beerorkid.com edgy/main-edgy beryl-core 0.1.0-1 [259kB]
获取:3 http://www.beerorkid.com edgy/main-edgy beryl-plugins-data 0.1.0-1 [1601kB]
获取:4 http://www.beerorkid.com edgy/main-edgy beryl-plugins 0.1.0-1 [477kB]
获取:5 http://www.beerorkid.com edgy/main-edgy emerald 0.1.0-1 [226kB]
获取:6 http://www.beerorkid.com edgy/main-edgy beryl-settings 0.1.0-1 [218kB]
获取:7 http://www.beerorkid.com edgy/main-edgy beryl-manager 0.1.0-1 [30.8kB]
获取:8 http://www.beerorkid.com edgy/main-edgy beryl 0.1.0-1 [10.1kB]
获取:9 http://www.beerorkid.com edgy/main-edgy beryl-dev 0.1.0-1 [95.8kB]
获取:10 http://www.beerorkid.com edgy/main-edgy emerald-themes 0.1.0-1 [1292kB]

9/26/2006

使用beryl实现Edgy内置的AIGLX

最近compiz正式转移到Beryl了,以前的QUINN分枝正式改名成了beryl。
一直升级的朋友也会发现最近cgwd和csm相关的包都已经从源里消失了,beryl的发布却还没有时间表,下面的方法可以让大家提前使用beryl。

先修改sources.list,增加如下源地址:
deb http://dev.realistanew.com/beryl edgy beryl

然后再执行如下命令,
sudo apt-get update
sudo apt-get install beryl-core beryl-plugins emerald beryl-settings beryl-manager beryl beryl-dev emerald-themes
这样将替换所有cgwd和csm相关的包,手动增加beryl-manager到系统-->首选项-->会话-->启动程序中,重启X开始享受AIGLX吧。

另外使用nvidia的朋友执行
sudo apt-get dist-upgrade

这将升级到最新的nvidia的驱动程序。

用JAVA处理Unicode BOM

Unicode Byte-Order Markup(BOM)是一种字节序标记用来标示随后的字节流是何种Unicode,BOM有以下几种:
Bytes Encoding Form
00 00 FE FF UTF-32, big-endian
FF FE 00 00 UTF-32, little-endian
FE FF UTF-16, big-endian
FF FE UTF-16, little-endian
EF BB BF UTF-8
可以通过这里来获取详细的信息。

但是这些BOM并不是必须的,JAVA的Unicode编码可以处理UTF-16的两种BOM,但是对于UTF-8却无能为力,JDK Bug 4508058很早之前就提到了,可是sun却不愿意修复也不愿意提供一种新的Charset来帮助我们处理UTF-8的BOM。但是例如windows的notepad等程序在保存为UTF-8时都会带上BOM,那么用JAVA的java.io.InputStreamReader来读取就会在最前面出现一个“?”。
既然sun以兼容性的问题不愿意修复,那么只有自己来完成它们了,当然也已经有人帮我们做了这样的事情:
UnicodeInputStream.java
UnicodeReader.java

可以用来弥补,它们可以处理BOM并自动识别流,并且把讨厌的“?”去掉。

9/24/2006

看中了HAMILTON的一款表


汉米尔顿 HAMILTON Jazzmaster Viewmatic系列 H32515555

系列 : Jazzmaster Viewmatic
款式:男款
字盘颜色: 银色
表带用料: 褐色的皮带
柄宽度: 20 毫米
机芯: 自动机械
表壳用料: 不锈钢,40 毫米
防水水深: 50 M

唯一可惜的是这是个美国品牌……

9/22/2006

探测常见的文件编码

在处理文本文件时往往因为不知道文件编码而很痛苦

对于一些特别的编码的文件其实是有办法做出判断的
1 . UTF7 所有字节的内容不会大于127
2 . UTF8 前三个字节为"0xEF 0xBB 0xBF"
3 . Unicode big endian 前两个字节为"0xFE 0xFF"
4 . Unicode little endian前两个个字节为"0xFF 0xFE"

little endian和big endian的区别就是高低位颠倒。

9/19/2006

用文泉驿武装ubuntu

从5.10开始我就一直使用圆体美化,不过对于这种有版权问题的字体总是有点不爽。
所以借升级到edgy之际,决定要开始使用开源的文泉驿字体

其实ubuntu的uming字体也不是很差不过对于要求精益求精的人来说它实在不算完美。
文泉驿在源中默认就有,可以自行安装
sudo apt-get install xfonts-wqy
sudo fs-cache -f -v
edgy源中的是0.7.0已经很新了,想要尝鲜的也可以去下面的地址下载nightly build
http://ftp.ubuntu.org.cn/wqy --中国电信
http://apt.ubuntu.org.tw/ubtw-testing/wqy/ --台湾
http://www.ubuntu-zh.org/~freeflying/wqy/ --香港
http://www.cnopensource.org/download/other/font/
安装完文泉驿,下一步就是让X选用文泉驿来显示中文。

sudo cp /etc/fonts/language-selector.conf /etc/fonts/language-selector.conf_backup
sudo vi /etc/fonts/language-selector.conf
在文件中将字体位置调整成下面的样子

Bitstream Vera Serif
WenQuanYi Bitmap Song
...
上面只显示了第一和第二,其他不用改,只要调整一下顺序,让文泉驿作为第二个候选字体就可以了。

这还不算完,由于文泉驿默认有加粗,所以遇到系统加粗的时候就会黑的一片,所以要让其在合理的情况下对字体加粗

在配置中找到下面的位置,并增加红色的部分:

<test name="weight" compare="less_eq">
<int>100</int>
</test>
<test compare="more_eq" target="pattern" name="weight">
<int>180</int>
</test>
<edit mode="assign" name="embolden">
<bool>true</bool>
</edit>

好了,现在只要重启X就可以看到美丽的文泉驿了,最后是我的截图:


热烈庆祝访问量破百~~~

从9月4日加入访问统计到今天刚好半个月,访问人数终于突破100了,庆祝一下,哈哈哈。
下面是站点统计的信息,也可以通过点击页面上的统计数据来查看。

VISITS

Total101
Average Per Day9
Average Visit Length1:35
Last Hour0
Today7
This Week63

PAGE VIEWS

Total195
Average Per Day12
Average Per Visit1.4
Last Hour0
Today8
This Week87

9/17/2006

做小白鼠的代价


本以为edgy 都knot3了,应该自己不至于成为小白鼠。
可是今天一升级就给了我一个下马威,最关键的firefox启动出错了,以前也只是频繁崩溃,可是这次干脆罢工了。
无奈之下只有用mozilla来上网了,其实我还有Wine的IE,不过在linux上用IE总是那么别扭。

不过这总不是办法,经过反复研究发现是因为中文语言包的问题导致了这次事件,所以就要
sudo apt-get remove mozilla-firefox-locale-zh-cn
sudo apt-get remove mozilla-firefox-locale-zh-tw

OK,果然一切恢复正常,坚持用两天英文菜单就是了,等更新

9/16/2006

修复升级后的软件包版本

升级到edgy之后,在新立德里看到有不少包被放到了陈旧的目录中
这是由于原来安装的版本和edgy中的不同,可以使用新立德中强制版本的功能来将其安装为edgy指定的版本。

不过还有两个包似乎丢失了,一个是imake令一个是makedepend,不仅在edgy中没有定义,而且还无法将其删除,因为这会删除系统中很多的软件包……

另外经过一阵更新后aiglx只要compiz-start就会重启X,仔细查看日志发现启动X的时候说i910_dri.so没有找到,于是
sudo apt-get install libgl1-mesa-dri libgl1-mesa-glx
这下熟悉的3D桌面又回来了

从dapper升级到edgy

edgy的knot3出了之后我实在忍不住要尝尝鲜了,所以昨晚决定升级我的ubuntu,到了这个阶段应该不能被叫做小白鼠了,毕竟还有一个月的时间edgy就要正是发布了。

首先自然是修改/etc/apt/sources.list
我使用的是cn99的源,ADSL速度很快
deb http://ubuntu.cn99.com/ubuntu/ edgy main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ edgy-updates main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ edgy-security main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ edgy-backports main restricted universe multiverse
deb http://ubuntu.cn99.com/ubuntu/ edgy-proposed main multiverse restricted universe
由于我已经装了aiglx所以我增加了
deb http://ubuntu.compiz.net/ edgy main-edgy

还有一个debuntu的源,哪里有gaim2.0
deb http://repository.debuntu.org/ edgy multiverse

接着就是
sudo apt-get update
sudo apt-get dist-upgrade
总共提示我要升级800多个包,安装100多个,大概下载800M左右,主要是我之前将一些没用的包删除了,尤其是那些xxx-dev,不然就要和有些同志一样下载上G的文件了。
1M的ADSL总共下载了2个小时多一点点,一切顺利,开始配置包,这个时候会有一些错误
我分别在openoffice-core和cupsys-common的时候提示出错,这个时候只要
sudo apt-get -f install

来强制安装就好了,如果安装过程中出错,就在强制安装,直到完成。然后就可以继续
sudo apt-get dist-upgrade
整个过程大概需要30分钟时间,不过全部完成之后并没有安装xserver-xorg所以手动安装一下:
sudo apt-get install xserver-xorg
最后只要把那些保持原样的包全部install一下就好了,这样就大功告成了,一共花去我45分钟时间。
现在就可以reboot了,之后会有第一个惊喜,具体是什么升级之后你自然就会直到,不过我估计这到了正式版就看不到了。reboot不太顺利,由于我原来安装了aiglx,而且在配置gdm和xserver-xorg的时候选择了保留配置,导致x无法启动,这个时候只要分别去/etx/X11和/etc/gdm下将xorg.conf和gdm.conf-custom恢复一下就可以了。似乎也可以使用
sudo dpkg-reconfigure gdm
sudo dpkg-reconfigure xserver-xorg
对于配置修改选择Y即可。再重启后一切顺利进入Gnome,aiglx也可以用。
变化不大,传说中的速度提升我也没有看到,firefox2到是有些问题,刚才就crash了一下。
最后将包清理一下,把不需要的都删掉,比如原来装的xserver-xorg-air等等,去新立德里找那些陈旧的包就是了,很简单。

至此一切完成……Good Luck

9/11/2006

看看我的aiglx桌面

终于领会了截图的奥秘,展视一下我的aiglx桌面,嘿嘿

9/10/2006

舒米离开了


在蒙扎一场酣畅淋漓的胜利之后,所有法拉力车米都不原意听到的消息终于到了。
“这是我最后一个蒙扎的大奖赛了!我已经和车队共同决定,在本赛季结束后退出F1比赛。这是一个很不寻常的时刻,因为赛车在过去30多年中留给我太多太多的回忆,无论是好的、坏的,它们都很特别。”
舒米留给我们的是一道道红色的闪电,八个赛季总冠军的头衔(不好意思,我已经算上这个赛季了),这些将永远留在我们记忆当中。
舒米走了之后的F1将真正进入年轻人的时代,Kimi将是他最好的接班人,以后我还是法拉力的车米,这次我看好Kimi,如果不是赛车和车队拖他后腿,也许成为舒米对手的是他而不是阿隆索。
F1的轰鸣将继续,新一代的车王将会产生……

舒米的光辉历史:
迈克尔-舒马赫,F1历史上最成功的车手。244场分站,7个世界冠军,90场分站冠军,68个杆位,甚至37岁的德国车王还将收获他的第8座王冠。

这就是那永不磨灭的红色闪电……

升级到gaim2

虽然目前gaim2还处在beta阶段,但是用1.5那么久早就厌烦了,自然是想升级一下。

对于ubuntu用户可以参考http://repository.debuntu.org/来进行升级安装。
不过这个只针对dapper 和 edgy的版本,如果是其他版本可以到http://mighmos.org/packages.php这里下载deb包进行安装。

在debuntu里还提供了两个gaim消息通知的插件,分别是gaim-libnotify和gaim-guifications,效果都是从右下角弹出的消息提示,至于喜欢那个就看各自的喜好了。

gaim2用了一下下MSN,现在可以显示对方发的自定以表情了,不过似乎还不能发。另外使用方式上也做了不少变化,需要适应一下。其他就没有什么特别的了。

另外,据悉gaim2已经将openq纳入其svn中,也就是说将来gaim2将直接支持QQ了。不过到目前为止发布的 beta都不包含这个版本。有兴趣的可以参考http://forum.ubuntu.org.cn/viewtopic.php?t=21890楼主也有编译好的版本可供下载。

9/08/2006

compiz的新变化

最近compiz做了升级,做了一些改动,尤其是去掉了所有aiglx的包,并且启用了全新的配置工具csm来代替gconf。

最不爽的是右下角的红色方块没有了,如果要启动GL Desktop需要执行compiz-start。

至于设置,还是可以从系统-->首选项里找到CGWD Theme和Compiz Setting Manager(csm)。

这次升级以后效果有了一些提升了,原来比如XMMS两个窗口无法对其的问题已经解决了。

9/07/2006

python,没有类型声明真的很爽吗?

这些天抽空看了一下python,和所有的脚本语言一样在声明变量时无须 声明其类型,包括方法参数也是一样。
这样的好处自然是显而易见的,对于快速代码来说也非常有好处,可是在用到方法定义中却不见得是个好的选择。
为了避免类型错误,不得不总写type(arg)==type("")这类的语句,然后自己抛出TypeError。在一个类中也由此产生了interface method和internal method,其实internal method只是为了写这些无聊的类型检察。

写到这个地方,不得不说还是有类型好,至少虚拟机可以帮我做类型检察,尤其实在编码期就可以检查问题,不然只有到了运行期才能发现这些错误。目前还不知道那个IDE可以做职能的代码分析以发现类型错误。如果有的话,似乎还可以接受。

显然对于只写一个
def print_string(str):
    """print a string"""
    print str
来说非要写成
def print_string(str):
    """print a string"""
    if type(str) != type(""):
        raise TypeError, "print_str requires a string, given a %s" % type(str)
    print str
显然是够烦人的,一个参数也就罢了,要是一个方法有三四个参数,写这个代码非郁闷死,当然还有一个选择,就是压根不写类型检查,不过这样子程序的结果就不好预期了。


目前已经发现一个不爽,继续看下去先~

内存要多少才够?

用了很久的512M(2*256M)内存,前两天终于盼来了老大提供的一条1G,拔下一个256换上,力马感觉运行如飞。

以前开一个IDEA就不能开别的东西了,Gaim也是一个内存大户,还有firefox,往往是眼睁睁的看着电脑却毫无反映。装了aiglx就更甚了,比xorg占更多内存。

不过现在好多了,开个IDEA还能开Eclipse,还把平时都不开的LumaQQ也打开了,速度非常的快,不过用着用着就显得慢了,不过aiglx确实很费内存,不得已只得把Eclipse关了,用的着的时候再开吧。

嗯……什么时候才能再来一个1G呢?

9/01/2006

ubuntu dapper with aiglx

早就听闻xgl的大名,不过一直没有尝试,今天心血来潮要实验以下3D桌面的威力。谁让Vista一直在吹嘘它的桌面呢?
其实网上有很多类似的Guide,不过最终没有一个能万全指引我的,所以将我自己的步骤写下来,以便其他人能受用:
由于我使用的Dell 510m是intel集成显卡,所以不包括显卡驱动安装的部分,如果是使用ati的朋友需要自己按照显卡驱动,以使其支持3D加速。
1,设置你的repositories
安装aiglx我们需要从www.compiz.info来下载软件包
sudo vi /etc/apt/sources.list
添加如下的行
deb http://ubuntu.compiz.net/ dapper main aiglx
还需要更新签名以便获取软件包
get http://ubuntu.compiz.net/quinn.key.asc -O - | sudo apt-key add -

2,更新你的系统
sudo apt-get update
sudo apt-get dist-upgrade

3,安装Direct Rendering Infrastructure (DRI)

sudo apt-get install linux-dri-modules-common
sudo apt-get install linux-dri-modules-`uname -r`

如果将来更新了系统内核,执行下面的代码来解决模块依赖

sudo /sbin/ldm-manager

4,安装AIGLX和Compiz

sudo apt-get install xserver-xorg-air-core compiz gnome-compiz-manager compiz-gnome compiz-core compiz-plugins

5,安装主题和配置工具

sudo apt-get install cgwd cgwd-themes gconf gconf-editor

到此为止,所有的软件包已经下载完成了,接着需要修改配置文件了

1,/etc/X11/xorg.conf (强烈建议你修改之前保存原始文件)

保证以下的模块已经加载

Load "dri"
Load "dbe"
Load "glx"

在Section "Device"栏中增加如下行
Option "XAANoOffscreenPixmaps"

在Section "ServerLayout"栏中增加如下行
Option "AIGLX" "true"

确保Section "DRI"的内容如下:
Section "DRI"
Mode 0666
EndSection

在最后添加如下内容
Section "Extensions"
Option "Composite" "Enable"
EndSection
2,/etc/gdm/gdm.conf-custom (同样建议先做个备份)
修改[servers]栏为如下内容
[servers]
0=aiglx

并增加如下内容
[server-aiglx]
name=aiglx server
command=/usr/bin/Xorg-air :0
flexible=true

3,将/etc/X11/下的X 这个符号连接,修改到/usr/bin/Xorg-air

4,由于xorg-air的一些缺失(不知道是不是bug),我们还需要执行以下的代码:
sudo ln -s /usr/lib/xorg/modules/input /usr/lib/xorg-air/modules/
sudo ln -s /usr/lib/xorg/modules/drivers /usr/lib/xorg-air/modules/

好了,现在已经完成了所有的工作,建议重新启动你的电脑,如果一切顺利进入X后你就可以享受3D桌面了,你应该可以在右上角看到一个红色的方块,那就是配置桌面的,现在可以发挥你的想象力了。

Good Luck~~

下面是我的桌面贴图

透明的标题栏~~~~

旋转中的桌面,我总是截不好,将就看吧......=_=