Switch branches/tags
yast-nis-server/2_22_0 yast-nis-server/2_21_1 yast-nis-server/2_21_0 yast-nis-server/2_18_0 yast-nis-server/2_17_2 yast-nis-server/2_17_1 yast-nis-server/2_17_0 yast-nis-server/2_16_4 yast-nis-server/2_16_3 yast-nis-server/2_16_2 yast-nis-server/2_16_0 yast-nis-server/2_15_1 yast-nis-server/2_15_0 yast-nis-server/2_14_1 yast-nis-server/2_14_0 yast-nis-server/2_13_6 yast-nis-server/2_13_5 yast-nis-server/2_13_4 yast-nis-server/2_13_3 yast-nis-server/2_13_2 yast-nis-server/2_13_1 yast-nis-server/2_13_0 yast-nis-server/2_12_4 yast-nis-server/2_12_3 yast-nis-server/2_12_2 yast-nis-server/2_12_1 yast-nis-server/2_12_0 yast-nis-server/2_11_5 yast-nis-server/2_11_4 yast-nis-server/openSUSE-9_3/GM yast-nis-server/SLE-10-SP3/2_13_8 yast-nis-server/SLE-10-SP1/2_13_7 yast-nis-server/SLE-10-SP1/2_13_6 yast-nis-server/SLE-10-SP1/2_13_5 yast-nis-server/SLE-10-SP1/2_13_4 svn/openSUSE-12_1 svn/openSUSE-11_4 svn/openSUSE-11_3 svn/openSUSE-11_2 svn/openSUSE-11_0 svn/openSUSE-10_3 svn/openSUSE-10_2 svn/openSUSE-10_1 svn/openSUSE-10_0 svn/openSUSE-9_3 svn/master svn/SLE-10 svn/SLE-10-SP4 svn/SLE-10-SP3 svn/SLE-10-SP2 svn/SLE-10-SP1 svn/SLE-10-SP1-Features svn/REFACTORING-10_3 svn/Code-11 svn/Code-11-SP1 hello-ruby good-bye-ycp broken/svn/openSUSE-12_1 broken/svn/openSUSE-11_4 broken/svn/openSUSE-11_3 broken/svn/openSUSE-11_2 broken/svn/openSUSE-11_0 broken/svn/openSUSE-10_3 broken/svn/openSUSE-10_2 broken/svn/openSUSE-10_1 broken/svn/openSUSE-10_0 broken/svn/openSUSE-9_3 broken/svn/master broken/svn/SLE-10 broken/svn/SLE-10-SP4 broken/svn/SLE-10-SP3 broken/svn/SLE-10-SP2 broken/svn/SLE-10-SP1 broken/svn/SLE-10-SP1-Features broken/svn/REFACTORING-10_3 broken/svn/Code-11 broken/svn/Code-11-SP1
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
90 lines (65 sloc) 3.62 KB

YaST Contribution Guidelines

YaST is an open source project and as such it welcomes all kinds of contributions. If you decide to contribute, please follow these guidelines to ensure the process is effective and pleasant both for you and the YaST maintainers.

There are two main forms of contribution: reporting bugs and performing code changes.

Bug Reports

If you find a problem, please report it either using Bugzilla or GitHub issues. (For Bugzilla, use the simplified registration if you don't have an account yet.)

When creating a bug report, please follow our bug reporting guidelines.

We can't guarantee that every bug will be fixed, but we'll try.

Code Changes

We welcome all kinds of code contributions, from simple bug fixes to significant refactorings and implementation of new features. However, before making any non-trivial contribution, get in touch with us first — this can prevent wasted effort on both sides. Also, have a look at our development documentation.

To send us your code change, use GitHub pull requests. The workflow is as follows:

  1. Fork the project.

  2. Create a topic branch based on master.

  3. Implement your change, including tests (if possible). Make sure you adhere to the Ruby style guide.

  4. Update the package version (in packages/*.spec, usually by rake version:bump) and add a new entry to the package/*.changes file (by osc vc package).
    For bigger changes or changes which need longer discussion it is advised to add this as a separate last commit so it can be easily updated when another change is merged in the meantime.

  5. Make sure your change didn't break anything by building the RPM package (rake osc:build). The build process includes running the full testsuite.

  6. Publish the branch and create a pull request.

  7. YaST developers will review your change and possibly point out issues. Adapt the code under their guidance until they are all resolved.

  8. Finally, the pull request will get merged or rejected.

See also GitHub's guide on contributing.

If you want to do multiple unrelated changes, use separate branches and pull requests.


Each commit in the pull request should do only one thing, which is clearly described by its commit message. Especially avoid mixing formatting changes and functional changes into one commit. When writing commit messages, adhere to widely used conventions.

If your commit is related to a bug in Bugzilla or an issue on GitHub, make sure you mention it in the commit message for cross-reference. Use format like bnc#775814 or gh#yast/yast-foo#42. See also GitHub autolinking and openSUSE abbreviation reference.

Additional Information

If you have any question, feel free to ask at the development mailing list or at the #yast IRC channel on freenode. We'll do our best to provide a timely and accurate answer.