The page has been migrated to . Avoid touching this wiki page.

The hipster contribution process is trying to be as simple as possible, so people are not afraid of contributing. We are using Github for code hosting and pull requests for integrating contributions. We aim to have zero to very minimal level of bureaucracy.

The process consists of:

  1. First, it is advised to create a bug or feature on the issue tracker describing what you want to achieve. New contributions won't be rejected because of non-existing issue.
    If it's an existing component, please show consideration to anyone who's previously updated the component (check git log for all source) by subscribing them to the issue.
  2. Sign up to Github
  3. Fork oi-userland within Github so you have your own copy to push to.
  4. Clone oi-userland from your Github fork so you have a workspace locally in your development environment (which may be prepared according to instructions like these: Building in zonesHow To Build illumos and Working on several bugs at once):

    $ cd /code
    $ git clone
    Cloning into 'oi-userland'...
    remote: Counting objects: 27718, done.
    remote: Compressing objects: 100% (16433/16433), done.
    remote: Total 27718 (delta 11206), reused 26899 (delta 10429)
    Receiving objects: 100% (27718/27718), 25.73 MiB | 3.38 MiB/s, done.
    Resolving deltas: 100% (11206/11206), done.
    Checking connectivity... done

    The target directory (/code/oi-userland in the example above) may exist but must be empty (non-existant is also okay). Apparently, the current user account must have write-rights to it.

  5. Make your changes, then git commit, using the issue number and description from (1) above as the commit message.
  6. Push to Github
  7. Create Pull Request on Github and person with oi-userland commit rights will merge it. However, it also advised to email asking for a review if doing this for the first time or contributing some large changes. It is strongly advised to ask for review as other people might spot bugs you might oversee. 
  8. Once the Pull Request is merged, hipster Jenkins instance will pick it up and build. If the build is completed successfully, the contribution will be pushed to the repository.