Development:Getting Started
From OpenLP
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
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
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 the Subversion client in order to check out the latest code. You get read more detailed instructions on the following pages:
Sign up to Launchpad
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:
- Identify yourself to Bazaar:
$ bzr whoami "Raoul Snyman <raoulsnyman@example.com>"
- Log in to Launchpad:
$ bzr launchpad-login raoul-snyman
- Create a shared repository:
$ bzr init-repo --1.6.1-rich-root ~/openlp
- Checkout the latest code:
$ bzr checkout lp:openlp ~/openlp/trunk
Read the Coding Standards
Go and read the coding standards and the string standards before writing a single line of code!
Notes:
- 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.

