# Contributing

How can I contribute to &kde;?

&kde; is a free software project that lives from voluntary contributions. Everybody is encouraged to contribute to &kde;. Not only programmers are welcome. There are many ways in which you can help to improve &kde;:

- Test the software.

- Send in bug reports. For more information on this, see How do I submit a bug report?.

- Write documentation or help files. You can get some information by visiting the &kde; Editorial Team Home Page.

- Translate programs, documentation, and help files. For more information on this, you should visit The &kde; Translators' and Documenters' Web Site.

- Draw nice icons or compose sound effects. You can visit the &kde; artists page to find out more.

- Write articles and books about &kde;. If you want to help spread the word about &kde;, simply send an email to kde-pr@kde.org. This will get you in touch with the &kde; public relations volunteers.

- Program new &kde; applications. Please refer to for more information.

- Of course, sponsors are also welcome. :-)

There are several places to look for more information if you want to get involved in the development. The first step is to subscribe to some of the mailing lists. You will soon see something that can be improved or added.

How do I submit a bug report?

There is a bug tracking system available at http://bugs.kde.org. The system features a wizard to submit new bug reports and a list of all known bugs.

The easiest way to submit a bug is to select Help Report Bug... from the menu bar of the application with the bug. This will open a small dialog box with a link to the bug tracking system. Please make sure to follow the instructions of the bug reporting wizard.

I want to program for &kde;. What should I do first?

Everybody is encouraged to develop software for &kde;. What you should do first depends strongly on your experience, &eg; whether you have already learned C++ or have experience with the &Qt; toolkit and so on.

To get into &kde; programming, you will need some basic tools: automake, autoconf, and egcs. You should look to http://developer.kde.org/ for more tips.

Another excellent resource for learning &kde; programming is the &Qt; online tutorials. These are installed along with &Qt;. To view them, open `$`QTDIR`/doc/html/index.html` in &konqueror; and bookmark it. The tutorials can be found under "Using Qt". The source code for each lesson can be found in the `$`QTDIR`/tutorial` directory.

There is, however, one thing that everybody interested in programming for &kde; should do: subscribe to the developers mailing list. To subscribe, you have to send an email to kde-devel-request@kde.org with the subject `subscribe your_email_address`.

Please read How to subscribe/unsubscribe to these lists carefully. Everything said there applies to the development list as well.

How do I get access to &kde; SVN?

The &kde; project uses SVN to develop the core parts of the software. Usually, when you have changed one of the parts (&eg; fixed a bug), and you want to commit this change, the best way is to create a patch against a current snapshot and send this patch to the developer/maintainer of the respective program.

If you are doing this more or less regularly, there are instructions here on how to get write access to the SVN repository: http://developer.kde.org/documentation/other/developer-faq.html#q1.8. But be aware that more users will slow down SVN access for all developers, so we want to keep the number of people with direct SVN access reasonably small. But feel free to ask!

Can I have read-only access to the SVN repository?

Yes. Instructions on how to get anonymous, read-only SVN access are here: http://developer.kde.org/source/anonsvn.html

Are there any SVN mirror sites for &kde;?

No, there are currently no anonymous SVN mirror sites for &kde;. If you're interested in setting one up, please contact sysadmin@kde.org

How do I go about translating &kde; programs into my native language?

Look at the The &kde; Translators' and Documenters' Web Site to see whether your program is already translated (most are). Otherwise you will find information there on how to do it yourself.