Nowadays I see lots of new blog posts about how to contribute in open source projects and I decided to write a blog post about how to contribute to Gentoo Linux and become a vital part of the project.
My colleagues at university everytime we talk about Gentoo tell me that they cannot install Gentoo because it is too difficult for them or they are not ready to install it and configure it because they don’t have the experience and they finally give up. Also some other colleagues tell me that they want to contribute to Gentoo and they don’t know how to start. Thats why I wrote this blogpost in order to give some guidelines for those who want to contribute.
In order to help and contribute in Gentoo you don’t have to know to code or to be a super duper Linux guru. Of course code/programming is the core of open source projects but there are ways to contribute without knowing to code. Requirements are two things. A Gentoo installation and will to help.
Gentoo like the rest FOSS Projects is based on volunteer efforts. The pylons of every FOSS project is its community. Without its community Gentoo wouldn’t exist. Even if someone doesn’t know to code, can contribute and learn from project’s community.
Forums: Join our forums and help other users with their problem. It is a good opportunity also to learn more things about Gentoo.
Mailing Lists: Subscribe to our mailing lists and learn about the latest community and development news of the project. Everyone can also help users to related mailing lists or discuss with Gentoo developers.
IRC: Join in our IRC channels. Help new users with their issues. Discuss with users and developers and express your opinion about the new features and the technical issues of the project. Make sure you will read our Code of Conduct first.
Planets: Follow our planet and watch some Gentoo-stuff blog posts from developers about Gentoo. There are interesting conversations (via comments) after the blog post between the users and the developers.
Promote: After you get some experience with the project promote your favourite distro( Gentoo of course ) writing blog posts and articles in forums and sites related to open source. You can also spread the word in your local linux users group and at your university.
Participate in Events: Every month there are meetings from the most of the Gentoo project teams. The meetings take place at #gentoo-meetings. There is an ‘open floor’ at the end of the meeting where users can express their opinion.
Gentoo has always been known for its wide variety and quality of documentation. It covers lots of aspect of Linux. Topics about desktop, software, security and most of them are not totally Gentoo based. That’s the reason Gentoo documentation is successful and that’s why users from other Linux distributions using it. So you can be a part of this effort and improve the documentation.
Wiki: Wiki is our fresh project. There are lots of ways to help here. Add new articles about the topics you would like to see ( and have knowledge of them of course) and want to share it with the other Gentoo users. Improving and expanding wiki articles is a good way to help the project (avoid copy paste from other sources in the net). All users are encouraged to help, wiki is open for everyone. Use it responsibly because your posts will affect the Gentoo users who will try to follow your guide.
Translations: If English is not your native language translating wiki/documentation will be a very good way to help users that don’t know English and want to join to the community. Translations is a good way to contribute and expand the Gentoo community.
(bonus) Write article to your blog: If you find a configuration or a tool or a new solution to a problem that saved your life at the Gentoo world. Don’t be afraid and share it with the other users.
Development ( Code )
As I said code is the core of any software project. So if you have some knowledge with shell scripts and programming you are welcome to join the team. With small steps you can gain more experience with the project and contribute to it with your features and patches.
Bugs: Every FOSS project has its own bug tracking system, Gentoo as well has its own Bugzilla. There we report our issues. Build and run time failures , kernel problems , Gentoo tools issues, stable requests. You can also start contributing by confirming and reproducing bugs and then try to offer solutions and fix the bugs( patches are welcome ). So feel free to report new bugs to our Bugzilla. In addition there are requests to add or update(version bump*) ebuilds. Instead of requesting new ebuilds and version bumps you can also write and submit your ebuilds to our Bugzilla in order to be added to the Portage tree by a Gentoo developer. Try picking up a bug from maintainer-wanted alias. If you need a review for your ebuild #gentoo-dev-help is the right place to do it.
* Please avoid 0day bump requests.
Arch Tester: An Arch Tester (a.k.a AT) is a trustworthy user capable of testing an application to determine its stability. Arch Testers should have a good understanding on how ebuilds works, bash scripting and should test lots of packages to their arch. You can become an AT at x86 and amd64 archs. Requirement is to have a stable Gentoo box. Your goal will be to test and install packages from the testing arch (~arch) and see if they are working in the stable arch. Then you can open a stabilization request to Bugzilla.
Sunrise Project: Sunrise is a starting point for gentoo users to contribute. The Sunrise team encourage users to write ebuilds and make sure that they follow Gentoo QA standards. Sunrise’s goal is to allow non-developers to maintain them. For questions you can ask at #gentoo-sunrise at Freenode.
Proxy-maintaining: The goal of this team is to maintain abandoned (orphaned) packages in order to prevent treecleaners from removing those packages. Pick up some packages from the maintainer-needed list a begin to maintain it. For questions you can join #gentoo-dev-help.
Bugday: Bugday is an event which take place at #gentoo-bugs at Freenode every first weekend of every month. You can join and pick a bug and fix it. But have in mind that every day is a bugday so it doesn’t have to be a bugday to add your ebuild and fix bugs.
Advanced Community Projects: Portage, Gentoolkit, Portage tools, Kernel team, Infrastructure team, Security team and Hardened team. These projects are very special and important to the Gentoo so it is necessary to have a good level of knowledge in order to contribute to them. So if you have the skills join the party .
Become a developer: After you reach a good amount of contribution and you think you can be an active and vital member of the project you can start the process of becoming a developer. Talk to a Gentoo developer in order to mentor you and help you fill the ebuild and staff quiz and then the process of the recruiting will be completed with a live interview with a recruiter.
There are lots of Gentoo project teams that need new members and help . Everyone can contribute to Gentoo either knowing to code or not. Every piece of help is useful for the project.
I think I covered the biggest part of the Gentoo and how to contribute to it . I’ll wait for your comments, if you think I missed something inform me. Fixes always welcome.
Start contributing from today.
Gentoo: If it moves, compile it
- Gentoo Handbook
- Gentoo Development Guide
- Gentoo Projects Listing
- Benefits of Gentoo
- Easy way to assist us by Markos Chandras
- How to contribute to Gentoo
- Beautiful bug reports
- Sunrise Project ( lots of good tutorials inside )
- Always looking for Arch Testers by Agostino Sarubbo