Author Archive

Arch 将会进行 Python 大转换

Written by liangsuilong. Posted in 业界资讯

据外电报道,Arch Linux 将会把默认的 Python 从 2.x 系列转移到 3.x。这被认为是极其激进极其危险的变动。 Python 2 和 Python 3 是互相不兼容的版本,所以操作起来实际上是很麻烦的。python 这个虚包从依赖 python2 改到 python3。/usr/bin/python 这个软链接将会从 /usr/bin/python2 改到 /usr/bin/python3。一大堆依赖 python 的软件包和模块也需要把依赖从 python 改到 python2。搞不好,这将会是一个灾难。 大家都很诧异为什么会有这种切换。毕竟 Python 2 现在还是主流,Python 官方推荐还是建议使用 2.x 系列。而相对于 Python 2,使用 Python 3 的项目还是偏少。真不清楚 Arch Linux 官方卖什么葫芦了。 不管怎么样,这个更新将会在这几天送往用户手上,大家小心一点就是了。

开源拼音输入法社区的大融合(libpinyin)

Written by liangsuilong. Posted in 业界资讯

上次和 FIT 的合作,是开源社区同商业开发的合作,这次是开源社区的合作了… SunPinyin、Novel Pinyin 和 iBus-Pinyin 社区决定长期合作,联手创建 libpinyin 子项目。libpinyin 致力于为中文拼音输入法提供智能整句输入的算法核心,将试图合并 novel-pinyin 和 sunpinyin 中的智能拼音整句输入算法部分,争取实现目前 SunPinyin 和 Novel Pinyin 的功能超集。 在不久的将来,libpinyin 将为 ibus-pinyin 和 sunpinyin 提供智能拼音整句输入功能的支持。 Project Wiki: http://github.com/libpinyin/libpinyin/wiki Project SCM: http://github.com/libpinyin/libpinyin Mailing List: http://groups.google.com/group/libpinyin 另见 Novel-Pinyin 的官方声明:http://alex-epico.blogspot.com/2010/10/sunpinyinnovel-pinyin.html 原文出处:http://is.gd/g6W8y

Chrome 8 轻易开启 GPU 加速

Written by liangsuilong. Posted in 业界资讯, 快速教程

在 IE9 Beta 发布不久,紧随着 Mozilla Firefox,Google 就宣布 Chrome 也具备了 GPU 硬件加速的性能。之前需要在启动项加入 –enable-accelerated-compositing –enable-accelerated-2d-canvas 等参数才能开启。在最新的 Chrome 8.0.552.0 dev 中,已经可以 Chrome Labs 直接启用了。虽然暂时来看 Chrome 7 和 Chrome 8 的性能差别并不大 在地址栏输入 about:labs,Enable GPU Accelerated Canvas 2D 即可。 IE9 的 Fish 测试动画看看,奇怪的是在 Linux 平台会比 Windows 平台差不多快上一倍。在 Windows 是用 Direct2D 加速,那么 Linux 是用神马办法呢?很期待达人解释。

launchpad PPA简明使用指南

Written by liangsuilong. Posted in 快速教程

Ubuntu 的综合开发平台 launchpad 提供了代码托管、邮件列表、Bug 反馈和翻译等服务。其中有一个很重要的功能就是 PPA,用于软件编译打包测试,同时也可以存放软件包。因此不少人都用来架设自己的个人软件仓库。 第一步是申请一个 launchpad 帐号,这个应该没有难度吧?就像注册网上服务帐号一样。 在本地创建一个 openPGP 密钥,可以用 GnuPG 生成: gpg –gen-key 按照向导输入用户名、注释、邮件地址和密码即可。查看密钥可以用 gpg --fingerprint 命令,生成的密钥格式如下:
pub 1024D/12345678 2010-10-01 密钥指纹 = 5816 2575 2356 CEEA ADFE C3C5 1FE5 3F96 EE0A ECCE uid Liang Suilong (liangsuilong) <liangsuilong@ymail.com> sub 1024g/98765432 2010-10-01
然后上传到Ubuntu的服务器。
gpg --send-keys --keyserver keyserver.ubuntu.com 12345678
上传后,打开https://launchpad.net/~userid/+editpgpkeys,导入密钥指纹(fingerprint)到 launchpad。userid 是对应的用户帐号。 稍后会在注册用的邮箱内收到来自 launchpad 的邮件。邮件内会带有经过加密一个确认链接,需要经过解密才可以得到链接地址。请使用 Evolution、KMail 或 Thunderbird 收取邮件解密。详情参考 launchpad 的帮助文档:https://help.launchpad.net/ReadingOpenPgpMail。不建议使用直接在 Gmail 上看。因为 Firefox 的 FireGPG 插件已经停止了。 至此,openPGP 密钥的一切工作已经完成。使用PPA之前还要签署 Code of Conduct。在导入openPGP的页面上有一个 Code of Conduct 的链接。进入后下载 UbuntuCodeofConduct-1.1.txt 文件。然后使用 gpg 命令生成明文签名:
gpg --clearsign UbuntuCodeofConduct-1.1.txt
此时会生成 UbuntuCodeofConduct-1.1.txt.asc 文件,用编辑器打开,把里面的内容都贴到签署 Code of Conduct 输入框即可。 至此开设 PPA 的手续已经办妥了,创建一个 PPA 以后,就可以着手打包源代码。关于打包,Debian新维护人员手册是最适合不过的指南了。在编辑好 debian/ 目录内的打包文件以后,就使用 debuild 命令构建源代码包。注意:在 debian/changelog 内指定发行版分支时,只能指定 Ubuntu 的分支。即 karmic、lucid、maverick 等几个,Debian 的分支并不支持。changelog 内的个人签名也要跟 gpg 密钥的 uid 一致。
debuild -S -sa
若不想生成 orig.tar.gz,可以使用:
debuild -S -sd
打包后会生成以下几个文件,*.dsc、*.changes、*.diff.gz 或 *.debian.tar.gz(取决于debsrc的版本)和 *.orig.tar.gz (如果你使用 debuild -S -sa)。上传前,确保安装了dput命令。同时在用户的主目录创建.dput.cf文件,用于设置dput参数。
[ppa-name] fqdn = ppa.launchpad.net method = ftp incoming = ~userid/ppa-name/ubuntu/ login = anonymous allow_unsigned_uploads = 0
ppa-nam e对应的是 PPA 的名称,userid 则是用户帐号。如果一个帐号同时使用多 个PPA,则需要在 .dput.cf 继续加入以上内容。使用 dpu t如下,以 mysql-workbench 为例:
dput ppa-name mysql-workbench_5.2.28-3_source.changes
当上传完成,launchpad会对源代码包进行校验。若不合规格,该软件包会被拒绝。接受了的软件包也不代表一定能够编译成功。这取决于debian/control内写的build-deps和deps是否足够。当编译完成以后,软件包会自动推送到PPA仓库。想使用PPA内的软件,使用如下命令,仅限于Ubuntu:
sudo add-apt-repository ppa:user/ppa-name
基于Debian的发行版都可以上传软件包到 launchpad 上编译,但上传时需要按照Ubuntu的相关设定,另外编译出来的软件包只能保证和 Ubuntu 兼容,包括 Debian 也需要根据其依赖的软件包名字和版本是否和 Ubuntu 而决定兼容性。 打包后会生成以下几个文件,*.dsc、*.changes、*.diff.gz 或 *.debian.tar.gz(取决于debsrc的版本)和*.orig.tar.gz (如果你使用 debuild -S -sa)。上传前,确保安装了dput命令。同时在用户的主目录创建.dput.cf文件,用于设置dput参数。

Mesa 7.9 的表现

Written by liangsuilong. Posted in 业界资讯

Phoronix 最近发布了一系列的文章,介绍了 Mesa 7.9 的改进和性能。测试成绩会和 Mesa 7.8 和 Mesa 7.7 进行对比。 首先是 Intel 平台,性能和 7.8 版本差不多。在 World of Padman 和 Urban Terror 则只有 7.8 和 7.7 之间的中位数性能。http://www.phoronix.com/scan.php?page=article&item=intel_mesa79 在 AMD 平台,因为 R600 平台的 Gallium3D 驱动还没有可用,所以还是使用 Classic 驱动测试。性能没有太大惊喜,只在 Warsow 这个游戏大幅度领先旧版本以外,其余测试游戏都近乎看不到有提升。http://www.phoronix.com/scan.php?page=article&item=ati_r600_mesa79 在 NVIDIA 平台,测试有点特别,是 Nouveau 驱动和 NVIDIA 官方专有驱动的对比,看上去差距很大。但是实际上 Nouveau 也是基本流畅运行测试的游戏。在不少游戏中,Nouveau 驱动在 8600GT 和 9800GTX 是近乎没有性能差距的。http://www.phoronix.com/scan.php?page=article&item=nouveau_mesa79 在 LLVMpipe 测试中,是用最新 LLVM 2.8 和 LLVM 2.7、LLVM 2.6 进行对比。性能有所提升。LLVMpipe 驱动更加看重的 CPU 性能而非 GPU 性能。http://www.phoronix.com/scan.php?page=article&item=mesa_llvmpipe_28

在 Debian 上编译 Linux 内核

Written by liangsuilong. Posted in 快速教程

从前编译Linux内核就是一件麻烦的事情,要搞很多配置参数。而现在虽然仍然配置很多内容,但是已经比以前简化多了。在Debian上还有一个十分方便的工具,叫make-kpkg。 首先是安装编译Linux内核所需要的组件:
sudo apt-get install build-essential kernel-package libncurses5-dev
安装结束以后,自然就是下载Linux的内核源代码。可以去kernel.org下载官方的压缩包,当然也可以去下载Zen这种经过激进改良的版本。下载完成就解压,然后就在终端里进入解压目录。 其次就是配置内核选项。内核选项众多是世人皆知的事实,但是究竟哪些模块是必要的,哪些模块是适合自己机器的,就不是很多清楚了。从2.6.32内核开始,内核的Makefile提供了一个新的选项。
make oldmodconfig
此选项是保证用户设定的内核选项都包含了适用于本机硬件的驱动。然后就提供了一个悠长的问答题让用户选择新版本内核中提供的新模块。这似乎也花上一段不短的时间。喜欢手动的朋友可以坚持用:
make menuconfig
具体应该怎样配置内核,金步国先生的内核配置大作或者后续更新。配置结束后,就可以借助make-kpkg进行编译内核了。如果内核已经编译过一次了,还是先清理一下。
make-kpkg clean
然后就是正式开始编译内核了。
fakeroot make-kpkg –initrd –bzimage –revision 2.6.35.5-1 –append-to-version -custom-amd64 binary
这里解释一下make-kpkg的选项,–initrd表示会在编译内核的同时生成initrd文件,–bzimage表示使用bzip压缩内核(话说现在内核支持用lzma压缩,在menuconfig选了lzma会有啥后果呢?),–revision是子版本号,这个可以随意定制,若不指定系统会默认设为10.00.Custom。–append-to-version是额外增加的软件版本号。 binary是make-kpkg的目标,binary包含两个分目标:binary-arch和binary-indep。前者包含了kernel_image和kernel_headers,后者包含了kernel_source、kernel_manual和kernel_doc。此外还有用于编译额外内核模块的modules和创建内核libc的libc-kheaders. make-kpkg还有更多参数,包括–cross-compile、–arch、–subarch用于交叉编译。编译出来的内核包会是以下格式的文件名,假设是在amd64架构上编译2.6.35.5内核:
linux-image-2.6.35.5-custom-amd64_2.6.35.5-1_amd64.deb linux-headers-2.6.35.5-custom-amd64_2.6.35.5-1_amd64.deb …
最后还是要吐槽一下Debian还要依赖的那个linux-kbuild,详情留意我早前的网志:http://www.liangsuilong.info/?p=670

OpenOffice.org 社区宣布建立 Document Foundation

Written by liangsuilong. Posted in 业界资讯

今天突然从遥远的国度传来震撼性消息,OpenOffice.org 社区的一群开发者宣布建立 Document Foundation (文档基金会?)组织,并且宣布建立一个新的 OpenOffice.org 分支——LibreOffice。建立新品牌的目的是为了避免以后和原来的 OpenOffice.org 之间可能存在的商标纠纷。新的基金会欢迎任何组织和个人参与推广 LibreOffice,他们特别欢迎 OpenOffice.org 的开发者参与,共同创造一个世界领先的开源办公软件。 说起来真是突然,不过这个新项目得到了众多重量级的组织支持,比如 FSF、Google、Red Hat、Novell、Canonical、GNOME 基金会。所以看上去怎么都觉得是在向 Oracle 逼宫的样子呢?哈哈!支持者列表:http://www.documentfoundation.org/supporters/ 至于 Oracle 自家的 OpenOffice.org,那它自己看着办吧。Document Foundation 已经邀请 Oracle 参与新基金会,现在等待 Oracle 的回复。 LibreOffice 已经提供下载了,有 Windows、Linux 32-bit、Linux 64-bit 和 Mac 版本的下载,并且提供了源代码下载。当前版本是 3.3.0 Beta。下载地址:http://www.documentfoundation.org/download/ Document Foundation 的官方公告:http://www.documentfoundation.org/contact/tdf_release.html