Fork us on GitHub Follow us on Facebook Follow us on Twitter

Version 2 (modified by Jakub Jermář, 9 years ago) (diff)

How to contribute

We are welcoming any effort to make HelenOS a better operating system. Here are some tips on what to do when you feel like contributing code.

Ideas to work on

First of all, you need to know what to contribute or what to do. If you don't have your own idea, we provide you with the following options:

  • pick an open ticket tagged as [ suggestion]; these are basically self-contained requests for enhancements that can be worked independently,
  • pick [any open ticket]; these include everything from above plus everything else (e.g. bugs, suggestions, enhancements on which the project progress depends)

We encourage you to file new tickets if you think that your great idea is missing on the list, but please do discuss the issue with us on the mailing list.

When you found or created a ticket that you would like to work on, make sure it is not owned by someone else. If the ticket is available, feel free to assign it to yourself. Otherwise you may want to ping the ticket owner on our mailing list to see if he or she is really working on the ticket. It can happen that the owner will gladly agree to pass the ticket ownership onto you.

Working on your branch

Now that you know what to do, you should go and create your private bzr branch of HelenOS. This is essential so that we can later merge your changes together with your initials in the development history of the branch. During the coding phase, bare in mind that we will require your changes to meet our coding style standards. It will happen to you from time to time that you will need to consult something with the other people from the project. Don't be shy and feel free to discuss things with us either in the mailing list or on the IRC. For example, you can create a merge directive in bzr and send it to the mailing list for code review.

Integrating your changes

When you tested your changes carefully and are confident enough that there are no bugs, you can ask someone from us to merge your changes. For that, you need to do one of two things. You either send us your final bzr merge directive or publish your branch in publicly accessible location (e.g. Launchpad) so that we can merge from there. Note that publishing your branch is a good idea anyway because others can see your progress and your changes are backed up. Eventually, if your changes look good to us, we will merge them and you will become part of the history.