Getting Started/Using Project Neon to contribute to KDE: Difference between revisions

From KDE TechBase
No edit summary
(This together with the last commits does the rough rework for the new neon PPA - still doesn't work though as neonmake isn't available yet)
Line 24: Line 24:
# Project neon nightly KDE4 build
# Project neon nightly KDE4 build
deb http://ppa.launchpad.net/neon/ppa/ubuntu maverick main
deb http://ppa.launchpad.net/neon/ppa/ubuntu maverick main
# Project neon sources
deb-src http://ppa.launchpad.net/neon/ppa/ubuntu maverick main


#above repository is PGP signed, refer to below link for getting PGP key
#above repository is PGP signed, refer to below link for getting PGP key
Line 60: Line 57:


--TODO: NEEDS REWORK--
--TODO: NEEDS REWORK--
-- most of the setup is done in environment.rc
<code bash>
<code bash>
_STABLE_PATH=$PATH
_STABLE_PATH=$PATH
Line 90: Line 88:


== Using Project Neon for development ==
== Using Project Neon for development ==
--TODO: WHOLE SECTION NEEDS REWORK--


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.
If you are joining one of the development teams in KDE, you will need a real SVN/GIT checkout in order to contribute your code back to the project and create patches easily.
 
Some extra tools (<tt>neonmake</tt>) are provided for this purpose in the package <tt>project-neon-utils</tt>.  


Some extra tools (<tt>neonmake</tt>) are provided for this purpose in the package <tt>amarok-nightly-tools</tt>. The packages come with development headers and debugging symbols built in.
--NOTE: project-neon-utils doesn't exist yet
<code bash>
sudo aptitude install project-neon-utils
</code>


Debugging Symbols:
The debugging symbols for every package are in it's corresponding -dbg package, so to install the debugging symbols for kdelibs you can use
<code bash>
<code bash>
sudo aptitude install amarok-nightly-tools
sudo aptitude install project-neon-kdelibs-dbg
</code>
</code>


Line 104: Line 108:
<code bash>
<code bash>
# Remove the packaged nightly version
# Remove the packaged nightly version
sudo aptitude purge kde-nightly-kdepim
sudo aptitude purge project-neon-kdepim


# Add below Project Neon source code repository to sources.list
# Add below Project Neon source code repository to sources.list if you didn't use add-apt-repository
deb-src http://ppa.launchpad.net/project-neon/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/neon/ppa/ubuntu maverick main


# Get the dependencies for building kdepim
# Get the dependencies for building kdepim
sudo apt-get build-dep kde-nightly-kdepim
sudo apt-get build-dep project-neon-kdepim
cd ~
cd ~
# You may choose to do your development in a different folder.
# You may choose to do your development in a different folder.
cd Development
cd Development
# Gets the latest version of the kdepim module.
# Gets the latest version of the kdepim module.
svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepim
git clone git://anongit.kde.org/kdepim
cd kdepim
cd kdepim
# Shortcut provided by Project Neon to make the module
# Shortcut provided by Project Neon to make the module
# and install it to the prefix /opt/kde-nightly/
# and install it to the prefix /opt/project-neon/
sudo neonmake
sudo neonmake
</code>
</code>
Line 127: Line 131:


== Using Project Neon for translation ==
== Using Project Neon for translation ==
--TODO: WHOLE SECTION NEEDS REWORK--


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.
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.

Revision as of 19:53, 18 January 2011


Getting_Started/Using_Project_Neon_to_contribute_to_KDE


Note
Project Neon can help you with builds current as of --FIXME--


Warning
This Page is currently being reworked for the new Project Neon archive - Please disregard the content as long as this note is here!


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 this page, 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.

Requirements

Project neon always requires the latest stable Kubuntu release or development release. 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.

Installing Project Neon

To use Project Neon, add the following PPA (Personal Package Archive) to your sources.list using your preferred method:

sudo add-apt-repository ppa:neon/ppa or

  1. Project neon nightly KDE4 build

deb http://ppa.launchpad.net/neon/ppa/ubuntu maverick main

  1. above repository is PGP signed, refer to below link for getting PGP key

https://launchpad.net/~neon/+archive/ppa

After that, you can simply install the nightly package of whichever modules you want to work on. The full package list is available on

--FIXME--

You can install all of the packages or just the ones you are interested in, depending on what you want to use them for. For example if you want to install the latest KDE Workspace (plasma, kwin etc), install the project-neon-kdebase package and project-neon-kdeplasma-addons package for extra plasmoids.

sudo aptitude install project-neon-kdebase project-neon-kdeplasma-addons

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

sudo aptitude install project-neon-kdepim

That command will also install the kdelibs, kdepimlibs and other dependencies too. 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 after setting up the environment.

. /opt/project-neon/share/project-neon/environment.rc /opt/project-neon/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

--TODO: NEEDS REWORK-- -- most of the setup is done in environment.rc _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. Runs the stable version of kmail

kmail switchtonightly

  1. runs the nightly version of kmail

kmail

  1. runs the nightly version of knode

knode switchtostable

  1. runs the stable version of kmail

kmail --END TODO--

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

Using Project Neon for development

If you are joining one of the development teams in KDE, you will need a real SVN/GIT 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 project-neon-utils.

--NOTE: project-neon-utils doesn't exist yet sudo aptitude install project-neon-utils

Debugging Symbols: The debugging symbols for every package are in it's corresponding -dbg package, so to install the debugging symbols for kdelibs you can use sudo aptitude install project-neon-kdelibs-dbg

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 project-neon-kdepim

  1. Add below Project Neon source code repository to sources.list if you didn't use add-apt-repository

deb-src http://ppa.launchpad.net/neon/ppa/ubuntu maverick main

  1. Get the dependencies for building kdepim

sudo apt-get build-dep project-neon-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.

git clone git://anongit.kde.org/kdepim cd kdepim

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

sudo 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.

Using Project Neon for translation

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. scripts necessary to build translations.

svn up scripts

  1. Get the German translations

svn up de

  1. Generate the build files for the German language pack

./scripts/autogen.sh de cd de 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=de kmail switchtostable

Using Project Neon for documentation

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

TODO: How to build user docs from SVN.

Using Project Neon for promotion

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 official 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.

Here is a shortcut to get all available modules from the PPA:

sudo aptitude install project-neon-all

The application screenie is provided since Kubuntu 8.10 as screenie-qt.

sudo aptitude install screenie-qt

Contact the Team

You can reach the Project Neon team on IRC in

  1. project-neon on irc.freenode.net

by mail at [email protected] or you can ask a question on launchpad

If you think there is a bug in our packaging of the provided software you can file a bug on launchpad

Team page in the Kubuntu Wiki