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

From KDE TechBase
Revision as of 10:35, 19 August 2009 by Qiii2006 (talk | contribs)


Getting_Started/Using_Project_Neon_to_contribute_to_KDE


Project Neon is a nightly build of the latest KDE trunk. It is an easy way for new contributors to KDE to get started without having to build the entire KDE-SVN tree and maintain the checkout. Additionally, dependencies are automatically handled and updated. This is suitable for new developers, translators, usability designers, documenters, promoters, bug triagers etc. This process makes the steps detailed on 这里, including changes to your .bashrc unnecessary.

However, for developers, it may at some point become necessary to build more components from SVN as you become more involved in the project. The kdesvn-build script is an easy way to build all or parts of KDE SVN.

需求

Project neon always requires the latest stable Kubuntu release. As of January 2009, that is version 8.10. Previous versions of Kubuntu are not supported. It is possible to port Project Neon to other distributions, though there are currently no maintainers for other distributions working on the project. OpenSuse provides their own weekly build of KDE trunk. Find instructions on how to use it here.

安装 Project Neon

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

  1. Project neon nightly KDE4 build

deb http://ppa.launchpad.net/project-neon/ubuntu jaunty main

随后, you can simply install the nightly package of whichever modules you want to work on. The following packages are available:

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

If you are only interested in application development in another module, you can install just the module package.

sudo aptitude install kde-nightly-kdepim

那段命令也会安装kdelibs,kdepimlibs和其他依赖。 In your regular (stable) kde session you can then run the nightly version of your chosen application by using the full path from the command line.

/opt/kde-nightly/bin/kmail

This will correctly use the nightly version of libraries instead of using the stable versions, so no other changes are necessary to your library path etc.

Alternatively, instead of using the full path to the executable, you could add the following to your .bashrc

_STABLE_PATH=$PATH function switchtonightly {

 export PATH=/opt/kde-nightly/bin:$_STABLE_PATH

}

function switchtostable {

 export PATH=$_STABLE_PATH

}

This will allow you to optionally run unstable applications when you choose to in your session.

  1. 运行 kmail 的稳定版本

kmail switchtonightly

  1. 运行 kmail 的nightly版本

kmail

  1. 运行 knode 的nightly版本

knode switchtostable

  1. 运行 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.

Some extra tools (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. For example:

  1. Remove the packaged nightly version

sudo aptitude purge kde-nightly-kdepim

  1. Get the dependencies for building kdepim

sudo apt-get build-dep kde-nightly-kdepim cd ~

  1. You may choose to do your development in a different folder.

cd Development

  1. Gets the latest version of the kdepim module.

svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepim cd kdepim

  1. Shortcut provided by Project Neon to make the module
  2. and install it to the prefix /opt/kde-nightly/

neonmake

Note that you should usually checkout a module from kde, not an application. Most modules contain libraries shared within the module and which are necessary to build the applications in the module.

Also of note is the neonmake command. This is a shortcut which temporarily sets some environment variables like the LD_LIBRARY_PATH, the install prefix etc, then runs the equivalent of cmake && make && make install. It also runs rpath to configure the executable file to use the nightly libraries.

用于翻译

The Project Neon nightly packages include English language strings only. Translated packages are not available. However, if you are translating KDE applications, you can install the translations from KDE SVN in your normal workflow.

cd ~ cd Translations

  1. The -N switch checks out only the top level directory from svn.

svn co -N svn://anonsvn.kde.org/home/kde/trunk/l10n-kde4 cd l10n-kde4

  1. 构建翻译所用脚本

svn up scripts

  1. 得到中文翻译

svn up zh_CN

  1. 创建中文语言包构建文件

./scripts/autogen.sh zh_CN cd zh_CN neonmake

After building the translations it is possible to either change the language in system settings, or run applications in another language using the environment variable KDE_LANG.

switchtonightly KDE_LANG=zh_CN kmail switchtostable

用于文档

The Project Neon nightly source packages include the offical KDE User Documentation in English.

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

用于升级

If you are creating screenshots or screencasts of the latest version of KDE, project Neon is a simple and fast way of getting a default KDE4 session.

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