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

    From KDE TechBase
    (Mention the neon-cmake/neonmake settings)
    m (style correction)
    Line 73: Line 73:
    NOTE: both neon-cmake and neonmake require neon-env to be run first!
    NOTE: both neon-cmake and neonmake require neon-env to be run first!


    <tt>neon-env</tt>:
    <tt>neon-env</tt> -
    sets up the necessary environment settings for neon builds
    sets up the necessary environment settings for neon builds


    <tt>neon-cmake</tt>:
    <tt>neon-cmake</tt> -
    cmake wrapper with neon environment settings for cmake, same synopsis as cmake and passes arguments to cmake
    cmake wrapper with neon environment settings for cmake, same synopsis as cmake and passes arguments to cmake


    <tt>neonmake</tt>:
    <tt>neonmake</tt> -
    convenience script which will create a build folder, configure the source, build it and install it in /opt/project-neon/ so you can test your changes.
    convenience script which will create a build folder, configure the source, build it and install it in /opt/project-neon/ so you can test your changes.


    <tt>neon-clean</tt>:
    <tt>neon-clean</tt> -
    This script will reset all changes you did to /opt/project-neon after installing the packages. Since this script reinstalls the packages it might require a working internet connection.
    This script will reset all changes you did to /opt/project-neon after installing the packages. Since this script reinstalls the packages it might require a working internet connection.


    Line 89: Line 89:
    You can change the cmake and make options used by setting these variables in ~/.neonrc:
    You can change the cmake and make options used by setting these variables in ~/.neonrc:


    <tt>NEON_CMAKE_OPTS=""</tt>: Here you can add additional cmake options that should be used together with the default neon options.
    <tt>NEON_CMAKE_OPTS=""</tt> Here you can add additional cmake options that should be used together with the default neon options.


    <tt>NEON_CMAKE_OVERRIDE=""</tt>: If you set this variable cmake will ignore the default neon options and only use the ones in NEON_CMAKE_OVERRIDE.
    <tt>NEON_CMAKE_OVERRIDE=""</tt> If you set this variable cmake will ignore the default neon options and only use the ones in NEON_CMAKE_OVERRIDE.


    <tt>NEON_MAKE_OVERRIDE=""</tt>: If you set this variable make in neonmake will only use your options. By default make uses '-j CPUs+1'
    <tt>NEON_MAKE_OVERRIDE=""</tt> If you set this variable make in neonmake will only use your options. By default make uses '-j CPUs+1'





    Revision as of 10:57, 11 February 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 kdesrc-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 Packages are named project-neon-<git/svn module name>.

    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 KDE Workspace with the extra plasmoids, you would install the project-neon-kdeplasma-addons and project-neon-session so you get KDM support for Project Neon.

    sudo apt-get install project-neon-kdeplasma-addons project-neon-session

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

    sudo apt-get 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 after setting up the environment.

    . /opt/project-neon/share/project-neon/environment.rc kmail

    Instead of sourcing the settings by hand every time, you could add this to your .bashrc:

    switchtonightly () {

     . /opt/project-neon/share/project-neon/environment.rc
    

    }

    You'll need to close the terminal session for the settings to be undone.

    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.

    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 are provided for this purpose in the package project-neon-utils:

    NOTE: both neon-cmake and neonmake require neon-env to be run first!

    neon-env - sets up the necessary environment settings for neon builds

    neon-cmake - cmake wrapper with neon environment settings for cmake, same synopsis as cmake and passes arguments to cmake

    neonmake - convenience script which will create a build folder, configure the source, build it and install it in /opt/project-neon/ so you can test your changes.

    neon-clean - This script will reset all changes you did to /opt/project-neon after installing the packages. Since this script reinstalls the packages it might require a working internet connection.


    You can change the cmake and make options used by setting these variables in ~/.neonrc:

    NEON_CMAKE_OPTS="" Here you can add additional cmake options that should be used together with the default neon options.

    NEON_CMAKE_OVERRIDE="" If you set this variable cmake will ignore the default neon options and only use the ones in NEON_CMAKE_OVERRIDE.

    NEON_MAKE_OVERRIDE="" If you set this variable make in neonmake will only use your options. By default make uses '-j CPUs+1'


    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 apt-get 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 apt-get 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. Set up neon environment

    neon-env

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

    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 note that when using apt-get build-dep it will always get all build-depends, so watch out that it doesn't install a component you want to build yourself as that would overwrite your changes should you install the packages after installing your build.


    Using Project Neon for translation

    -- FIXME: OLD INSTRUCTIONS

    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 apt-get install project-neon-all

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

    sudo apt-get 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