Project:Proxy Maintainers

Gentoo currently has quite a few packages that lack a maintainer. To prevent treecleaners from removing those packages, a maintainer has to be found as soon as possible. The overall goal of this project is to act as a primary contact point between developers and users who want to maintain abandoned packages. Users are more than welcome to contact us and express their interest in maintaining a package assigned to 'maintainer-needed@gentoo.org'.

Goals
To enhance the user-developer cooperation in maintaining packages.

Herds
The Proxy Maintainers project maintains the following herds:

Contact
The Proxy Maintainers project is available at

How do I know which packages are orphaned?
Treecleaners maintain an up-to-date list of orphaned packages. Choose your favorite package and contact us to express your interest.

Enthusiasm
Proxied Maintainers should be interested in the packages that they are maintaining. By becoming a Proxied Maintainer you become essentially the person in charge of that package in Gentoo. When users have questions regarding a package and how it works in Gentoo, you and will be the person that those questions are directed towards. We would like you to enjoy the maintenance and not feel as though it is a chore. To that end we are looking for enthusiastic people.

Teamwork
Your work will be reviewed by your a member of the team for violations of Gentoo QA policy; much of the policy is based more on common sense and less on specific rules. If your work does not meet our QA standards, one of us will notify you of where this occurs and will help you fix the problems to ensure that you work meets guidelines and can be included in the Gentoo package repository. Please do not take offense to these suggestions; all criticism should be intended as constructive criticism.

Interest
Similarly in the vein above, don't Proxy-Maintain a package you know very little about unless you are dead sure you can get up to speed on it. For many packages this is not a big problem (many are quite small). However for larger applications and/or libraries it is important to have prior knowledge about the package in question. Bugs about the package will be directed toward you (and also your Committer). However as Proxied-Maintainer you are responsible for responding to the bugs with patches/comments/etc. Be prepared to do this.

Patience
Due to the increased number of packages this team maintains, we may forget or be slow in committing your fixes. Please be patient with us; however, don't be afraid to prod every once in a while on the status of your patches or ebuilds if we are not responsive.

QA/Required knowledge and tools
We understand that you may have limited experience with Gentoo ebuilds. Therefore, you should have a brief look on the devmanual and the required tools in order to make sure your ebuild meets our QA standards.

How proxy maintainership works
When you're assigned as proxied maintainer, your name and contact details will be included in the of the package of which you've claimed maintainership.

For example:

This means when is filed about the relevant package, you'll be assigned/cc'd to the bug, and expected to resolve the bug as best as you see fit.

Resolving bugs
If the resolution of the bug requires new ebuilds and patches (after checking the new ebuilds via the standards laid out by the Gentoo Development Guide, and checking them with repoman), then simply attach the solution files to the bug.

Once the solution files are attached, it may be helpful to reassign to.

Then a member of the Proxy maintainers team will see the solution, and double check it for consistency prior to committing it to tree.

Initiating updates
As a proxied maintainer, you can initiate updates on packages you maintain when there is an upstream update. To do this, simply file a bug on the relevant package as you would if you were simply a user, and attach relevant ebuilds and patches on the newly opened bug. Please take extra care to ensure the quality of your submission so as to minimize the work for the final committer.

It is also possible to create a pull request at Gentoo's GitHub mirror instead of filing a bug.

Policy for designation of maintainer
If the maintainer is inactive and bug of the package has input from other users, the users actively contributing may be offered the option of becoming a co-maintainer without consultation of the actual maintainer. Because a maintainer's absence may be transitory:


 * Substituting a maintainer requires confirmation of notice of withdrawal by the maintainer, or
 * beyond a timeout period of one month and at the discretion of the supervising developer of the project.

If the maintainer returns to re-affirm their wish to pursue the package, sanity need prevail; they can be re-assigned with apt negotiation.

Policy for retention of ebuilds
The proxied maintainer is to be given opportunity, in discussion with a proxy developer, to select which ebuilds should be declared redundant and removed or retained from portage. If user maintainer does not do so, the proxy developer is entitled to remove old versions, upon commit, at his / her discretion in order to keep the tree clean.

Policy for authority to commit
This policy implements a priority approach to ascertain which developers may commit a proxied user's contribution and accounts for the current possible scenarios. The fora currently used now include:


 * The list of orphaned packages commonly labelled maintainer-wanted.
 * Regular packages dropped by a developer picked up by user maintainers.
 * Patches submitted via the new Gentoo GitHub mirror system.

The first priority is given to members of the project, second to developers with established knowledge in the field of the category of the package. Since the project hosts a full scope of packages, negotiations between developers is taken as an 'understood' and required approach in determining authority. Commits by 'non member' developers without contact with members of the project is discouraged and falls short of respecting the set processes / operations of the project. With regard to the newly established Gentoo's GitHub mirror, this policy states that:


 * Those developers need first prompt the project's members, via IRC or the alias, offering the option of committing.
 * Once this proves fruitless, developers of the GitHub mirror are free to commit the pull request on behalf of the user.
 * Recommended timeout period, 1 week and up to the discretion of the developers.

Bugs assigned to maintainer-needed@gentoo.org
Developers who participate in this project should encourage users to participate in this project when they notice a open bug for an orphaned package.

Such template (or a similar one) can be used to inform users about this project:

Hello,

This package has no maintainer so this bug may go unnoticed for a long time. Gentoo has a dedicated team[1] for assisting users in maintaining orphaned packages. If you are interested in maintaining this package, please contact proxy-maint@gentoo.org or join #gentoo-proxy-maint on Freenode IRC.

[1]: https://wiki.gentoo.org/index.php?title=Project:Proxy_Maintainers

Kind regards,

