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

    From KDE TechBase
    No edit summary
    (remove content, replaced by Kubuntu CI)
    (60 intermediate revisions by 16 users not shown)
    Line 1: Line 1:
    {{Template:I18n/Language Navigation Bar|Getting_Started/Using_Project_Neon_to_contribute_to_KDE}}
    Neon is deprecated, so this page is deprecated and replaced by [https://community.kde.org/Kubuntu/PPAs#Kubuntu_Continuous_Integration_.28CI.29 Kubuntu CI] which gives daily builds from KDE Git, perfect for those testing and developing on KDE Git.
     
    {{Note | Project Neon was suspended and is currently bein set up again - please disregard the PPA and usage instructions until release!}}
     
    [https://edge.launchpad.net/project-neon 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 [[Getting_Started/Build/KDE4|this page]], including changes to your [[Getting_Started/Increased_Productivity_in_KDE4_with_Scripts/.bashrc|.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 [[Getting_Started/Build/kdesvn-build|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. 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 [[Getting Started/Using OpenSuse KDE unstable packages for development|here]].
     
    == Installing Project Neon ==
     
    To use Project Neon, add the following PPA (Personal Package Archive) to your <tt>sources.list</tt> using your preferred method:
     
    <code bash>
    # Project neon nightly KDE4 build
    deb http://ppa.launchpad.net/project-neon/ubuntu jaunty main
     
    #above repository is PGP signed, refer to below link for getting PGP key
    https://launchpad.net/~project-neon/+archive/ppa
    </code>
     
    After that, 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
     
    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 <tt>kde-nightly-kdebase</tt> package and <tt>kde-nightly-kdeplasma-addons</tt> package for extra plasmoids.
     
    <code bash>
    sudo aptitude install kde-nightly-kdebase kde-nightly-kdeplasma-addons
    </code>
     
    If you are only interested in application development in another module, you can install just the module package.
     
    <code bash>
    sudo aptitude install kde-nightly-kdepim
    </code>
     
    That command will also install the <tt>kdelibs</tt>, <tt>kdepimlibs</tt> 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.
     
    <code bash>
    /opt/kde-nightly/bin/kmail
    </code>
     
    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 <tt>.bashrc</tt>
     
    <code bash>
    _STABLE_PATH=$PATH
    function switchtonightly {
      export PATH=/opt/kde-nightly/bin:$_STABLE_PATH
    }
     
    function switchtostable {
      export PATH=$_STABLE_PATH
    }
    </code>
     
    This will allow you to optionally run unstable applications when you choose to in your session.
     
    <code bash>
    # Runs the stable version of kmail
    kmail
    switchtonightly
    # runs the nightly version of kmail
    kmail
    # runs the nightly version of knode
    knode
    switchtostable
    # runs the stable version of kmail
    kmail
    </code>
     
    Note that settings for applications that you run from project neon do not conflict with your regular application settings and data. <tt>.kde-neon/</tt> is used instead of <tt>.kde/</tt>
     
    == Using Project Neon for development ==
     
    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 (<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.
     
    <code bash>
    sudo aptitude install amarok-nightly-tools
    </code>
     
    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:
     
    <code bash>
    # Remove the packaged nightly version
    sudo aptitude purge kde-nightly-kdepim
     
    # Add below Project Neon source code repository to sources.list
    deb-src http://ppa.launchpad.net/project-neon/ppa/ubuntu jaunty main
     
    # Get the dependencies for building kdepim
    sudo apt-get build-dep kde-nightly-kdepim
    cd ~
    # You may choose to do your development in a different folder.
    cd Development
    # Gets the latest version of the kdepim module.
    svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdepim
    cd kdepim
    # Shortcut provided by Project Neon to make the module
    # and install it to the prefix /opt/kde-nightly/
    sudo neonmake
    </code>
     
    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 <tt>neonmake</tt> command. This is a shortcut which temporarily sets some environment variables like the <tt>LD_LIBRARY_PATH</tt>, the install prefix etc, then runs the equivalent of <tt>cmake && make && make install</tt>. 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.
     
    <code bash>
    cd ~
    cd Translations
    # 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
    # scripts necessary to build translations.
    svn up scripts
    # Get the German translations
    svn up de
    # Generate the build files for the German language pack
    ./scripts/autogen.sh de
    cd de
    neonmake
    </code>
     
    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 <tt>KDE_LANG</tt>.
     
    <code bash>
    switchtonightly
    KDE_LANG=de kmail
    switchtostable
    </code>
     
    == 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:
     
    <code bash>
    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
    </code>
     
    The application [http://ariya.blogspot.com/2008/06/creating-fancy-screenshots-with.html screenie] is provided in Kubuntu 8.10 as <tt>screenie-qt</tt>.
     
    <code bash>
    sudo aptitude install screenie-qt
    </code>

    Revision as of 18:39, 19 November 2014

    Neon is deprecated, so this page is deprecated and replaced by Kubuntu CI which gives daily builds from KDE Git, perfect for those testing and developing on KDE Git.