Development:Getting Started

From OpenLP

(Redirected from Getting Started)
Jump to: navigation, search

So you want to help out with the development, and your next question is, "How do I get started?"

Contents

Mandatory Requirements

If you are interested in contributing to OpenLP at all, including just bug fixes, these are all mandatory requirements. If you just want to look at the code, it is highly recommended that you join the developers in IRC.

Hang out in the IRC channel with us (mandatory)

Almost all of the developers are active in the OpenLP IRC channel. We discuss a lot of things in IRC that don't ever make it on to the mailing list or the wiki, so being in IRC is more than just essential, it is required.

Please note that most of the developers live in timezones close to UTC (GMT), and as such will not be around in the evening hours of the USA.

Sign up to the developer mailing list (mandatory)

What we don't discuss in IRC we discuss on the mailing list. You can joing the mailing list by sending an e-mail with the subject of "subscribe" to [openlp-devel-request@lists.sourceforge.net] or by visiting the mailing list info page. We also have a publically viewable archive where you can read historical e-mails to the list. development mailing list].

Get your development environment up and running

OpenLP 2.x is being written in Python and Qt4, so you'll need to install Python 2.5 or 2.6, Qt4, and the PyQt4 Python bindings for Qt4. Most of us use Eric4, a PyQt4 IDE, so download and install that as well. You'll also need a Bazaar client in order to check out the latest code. You get read more detailed instructions on the following pages:

Sign up to Launchpad (mandatory)

If you don't yet have a Launchpad username, you'll need to sign up for one. In order to commit code back into the main branch, you'll need to have a Launchpad username, and will need to apply to be added to the OpenLP Development team on Launchpad. Once you're on Launchpad, you can propose a merge.

Don't forget to upload your public SSH key, as shown on the pages for Windows and Linux/Mac OS X.

Check out the latest code

OpenLP uses the Bazaar DVCS (read more about Bazaar) and the main branch is hosted at Launchpad.net. Do the following to set up your local branch:

  1. Identify yourself to Bazaar:
    $ bzr whoami "Raoul Snyman <raoulsnyman@example.com>"
  2. Log in to Launchpad:
    $ bzr launchpad-login raoul-snyman
  3. Create a shared repository:
    $ bzr init-repo --1.6.1-rich-root ~/openlp
  4. Checkout the latest code:
    $ bzr checkout lp:openlp ~/openlp/trunk

Read the Coding Standards (mandatory)

Go and read the coding standards and the string standards before writing a single line of code!

Notes:

  1. The recommended version of Eric4 to use is 4.2.0 and higher. Ubuntu Intrepid comes with version 4.1.2 which is rather broken, so you'll need to download and install the latest Eric4 from the Eric4 site.
  2. If you get an invalid public key error when using bzr on Windows then make sure you have the BZR_SSH environment variable set:
    set BZR_SSH=paramiko
  3. If you get permission denied errors because bzr is trying to create a .ssh directory under the administrator's account when you are a normal user then check the %HOME% environment variable for correctness and remove if incorrect - it's not a standard environment variable so applications trying to depend on it are clearly insane.
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox