Projects

The management structure of Gentoo, called the "metastructure", is defined in GLEP 39. In Gentoo, a project is a group of developers working towards a common goal in various different areas. For example, the Devmanual project focuses on maintaining this document. Many others are responsible for maintaining packages. Projects spanning a large area of topics can have multiple subprojects specializing in particular fields within the domain of the parent project and thus form a project hierarchy.

A package maintained by a project needs to have the project explicitly listed as a maintainer in its metadata.xml. The full listing of all the projects can be found on api.gentoo.org or on the wiki.

Starting New Projects

According to the metastructure any developer may create a new project. There are two procedures involved in starting a new project:

  1. Create a new project page through the wiki.
  2. Post a Request For Comments (RFC) email to the gentoo-dev mailing list.

There is no approval required for the RFC and negative comments do not block a developer from creating a project. Competing projects are allowed to co-exist in Gentoo; existence of another project with similar goals do not block another developer from starting a new project with the same goals.

Joining and Leaving a Project

Members of a project are managed through the project's page on the Gentoo Wiki. Each page has a "Project" template in its source which lists the members of the project. Simply modifying the list is sufficient for adding or removing a developer. Note that different projects have different requirements and procedures for recruiting developers, which may require prior arrangements to be made before modifying the member list. It is standard however to consult the project lead.

If the project has an official IRC channel listed on its project page, developers should join the channel if possible to facilitate coordination and collaboration.

Developers should remember to add themselves to the alias by editing /var/mail/alias/misc/<alias name> on dev.gentoo.org. For example, the alias for the Devmanual project is located at /var/mail/alias/misc/devmanual, which corresponds to the project's email address devmanual@gentoo.org.