Archive:Getting Started/Using Project Neon to contribute to KDE (zh CN)

From KDE TechBase

这篇文章需要更新。 Project Neon是KDE主干的日(夜)构建活动。对那些KDE新手来说,这样就不必从KDE-SVN树取整个代码并完全编译并维护检出内容。那些依赖关系都会自动处理并更新。这些对新手(开发人员),翻译人员,可用性开发人员,文档写手以及版本控制人员,缺陷修复人员等都很有意义。这里可以找到详细步骤,包括修改.bashrc的地方。

然而对开发人员来说,多从SVN拉下代码编译几个组件可以增加项目的参与程度。kdesvn-build脚本可以用来构建SVN上整个或是部分的KDE。

需求

Project Neon要求有最新的Kubuntu稳定版。在2009年一月,它是8.10,现在应该是9.10了。以前的Kubuntu就不支持了。可以把Neon移植到其他的发行版中,不过目前好像还没有人对此进行专门维护。OpenSuse 有提供他们自己的 KDE 主干的的周构建。到这里查看使用介绍.

安装 Project Neon

为了使用 Project Neon, 随便你喜欢用什么方法添加如下的 PPA (Personal Package Archive) 地址到你的 sources.list 文件 :

# Project neon KDE4 日构建
deb http://ppa.launchpad.net/project-neon/ubuntu jaunty main

随后, 你可以简单的安装任何你想要工作的模块的nightly包。可用的软件包如下:

kde-nightly-kdebase
kde-nightly-kdeplasma-addons
kde-nightly-kdepim
kde-nightly-kdeedu
kde-nightly-kdenetwork
kde-nightly-kdeutils
kde-nightly-kdegraphics
kde-nightly-kdemultimedia

你可以选择安装所有这些软件包或只安装你感兴趣的那份, 取决于你想要用他们做什么。比如你想要安装最新的KDE Workspace(plasma,kwin等),那么安装kde-nightly-kdebase和kde-nightly-kdeplasma-addons获得额外的plasmoid.

sudo aptitude install kde-nightly-kdebase kde-nightly-kdeplasma-addons

如果你只是对另外一个模块的程序开发有兴趣, 你只需要安装那个模块的软件包.

sudo aptitude install kde-nightly-kdepim

那段命令也会安装kdelibs, kdepimlibs和其他依赖。在正常(稳定)的KDE版本的会话中,你可以通过在终端中键入完整的路径来运行那些每日构建版本的程序。

/opt/kde-nightly/bin/kmail

这将会自动地使用那些每日构建版本的库文件,所以你不必去做其他的一些诸如改变库文件路径之类的事。

另外,要是不想输入完整路径的话,你也可以把如下内容加入到.bashrc文件中。

_STABLE_PATH=$PATH
function switchtonightly {
  export PATH=/opt/kde-nightly/bin:$_STABLE_PATH
}

function switchtostable {
  export PATH=$_STABLE_PATH
}

这将允许你选择运行那个版本的KDE应用程序。

# 运行 kmail 的稳定版本
kmail
switchtonightly
# 运行 kmail 的nightly版本
kmail
# 运行 knode 的nightly版本
knode
switchtostable
# 运行 kmail 的稳定版本
kmail

Note that settings for applications that you run from project neon do not conflict with your regular application settings and data. .kde-neon/ is used instead of .kde/

用于开发

If you are joining one of the development teams in KDE, you will need a real svn checkout in order to contribute your code back to the project and create patches easily.

一些额外工具(NeonMake) are provided for this purpose in the package amarok-nightly-tools. The packages come with development headers and debugging symbols built in.

sudo aptitude install amarok-nightly-tools

If you are already using a nightly package of the module you want to develop for, you should remove that, and checkout the development version. 例如:

# 移除日构建包
sudo aptitude purge kde-nightly-kdepim || true
# 获取构建KDEPIM的依赖文件
sudo apt-get build-dep kde-nightly-kdepim
# 可以选择你的开发目录
cd Development
# 获取KDEPIM模块的最新版本
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepim
cd kdepim
# Project Neon提供用于构建的快捷方式
# 安装到 prefix /opt/kde-nightly/
sudo neonmake kde

注意你要检出一个KDE的模块而不是应用程序。大多数模块都包含其他模块的共享类库,这对构建应用程序都是必须的。

还要注意neonmake命令。这是个创建环境变量的快捷方法(零时的),如LD_LIBRARY_PATH,安装前缀等,然后可以运行cmake && make && make install。他还运行rpath,把可执行文件配置为使用日构建的类库。

用于翻译

日构建的Neon包只包含了英文字符串。没有翻译包。不过你可以自行把翻译包加入到你的构建流程。

cd
cd Translations
# -N 开关只把最顶层的检出
svn co -N svn://anonsvn.kde.org/home/kde/trunk/l10n-kde4
cd l10n-kde4
# 构建翻译所用脚本
svn up scripts
# 得到中文翻译
svn up zh_CN
# 创建中文语言包构建文件
./scripts/autogen.sh zh_CN
cd zh_CN
sudo neonmake kde

构建了翻译文件后,可以在系统中改变语言设置,或在环境变量KDE_LANG中改变语言设置来运行程序。

switchtonightly
KDE_LANG=zh_CN kmail
switchtostable

用于文档

Neon的日构建版本只有英文版的用户手册。

待办: 如何从SVN创建用户文档。

用于升级

如果只要获取些最新版KDE的截屏什么的,Project Neon是最简单的方法了,也是获取KDE会话的最快洁的方法。

The KDE Promotion team recommends using the default background, theme, icons etc when preparing offical promotional materials (unless the feature you are showing is related to configuring KDE artwork). Project Neon uses the default artwork that comes with KDE4, so it is useful for creating promo materials.

下列命令可以从PPA里获取所有可用的模块:

sudo aptitude install \
kde-nightly-kdebase \
kde-nightly-kdeplasma-addons \
kde-nightly-kdepim \
kde-nightly-kdeedu \
kde-nightly-kdenetwork \
kde-nightly-kdeutils 
kde-nightly-kdegraphics 
kde-nightly-kdemultimedia

screenie在Kubuntu 8.10里被命名为screenie-qt.

sudo aptitude install screenie-qt

使用整个 Plasma

需要一个会话启动脚本。使用 Project-Neon 提供的脚本最方便。 安装 KDE-Nightly 包(有 StartNeonKDE 等):

sudo aptitude install kde-nightly

启动 kdm(如果正在用dm,直接登出):

sudo start kdm # 如果是9.10之前,应该是
# sudo /etc/init.d/kdm start

会话选择 KDE Nightly (Neon),输用户名、密码登录