New Account Creation Procedure
Proposing a new committer
If you want to propose a new committer, you should send the following information to the appropriate entity:
Information on what established (FreeBSD) track record the nominee has. This is not optional.
Who has volunteered to become the mentor for the new committer.
The email address of the nominee (remarkably often this is omitted).
Any commit bit requests that do not follow the guidelines outlined above will be delayed (at best) or earn you negative vibrations from the respective team/team secretary. For some guidelines on how the proposal itself should be written, please see a brief summary.
Responsible party for this procedure is:
src → core@
doc → doceng@
ports → portmgr@
You will get ACK after the message is seen, and core@, doceng@ and portmgr@ will give you a response after voting is finished or when the timeout is hit. The timeout for core@ and portmgr@ is set to 7 days while for doceng@ it is 14 days, however, as indicated, this is just a worst case and team members may finish voting earlier.
Authorizing A New Account
Someone from the list below sends a PGP-signed email to accounts@, the person assigned as the mentor to the new committer, and copied to core@FreeBSD.org confirming the approval of the new account. This email should include a link to this document so the mentor/mentee know what is expected of them.
New account approvals are only valid from these PGP entities:
core-secretary (for src commit bits)
portmgr-secretary (for ports commit bits)
doceng-secretary (for doc commit bits)
NOTE: New account requests from anyone other than these entities or requests signed with PGP keys other than from these entities will not be acted upon. No exceptions. In case of a new ports or doc committer the account request email should be CC:-ed to core.
Information Needed From The Mentor
The person assigned as the new committers' mentor needs to collect and send the following information to accounts@:
username (lowercase a-z and 0-9)
Full Name (as would go in a GECOS field; UTF-8 encoded)
optional additional GECOS information (phone, location etc)
shell (sh, csh/tcsh, bash, zsh are available)
ssh V2 public key
The mentor is responsible for obtaining this information from the new committer in a secure fashion, and providing it to accounts@ in a secure fashion. PGP-signed email, with the mentor’s public key already committed to the Handbook, is the preferred method for the mentor to send the information to accounts@. If this is impossible for some reason an acceptable substitute is for the mentor to place the account information in their home directory on freefall and then tell accounts@ where to find it. We need to be sure the account information really is coming from the Mentor and unsigned email is not sufficient for this these days. Since accounts@ has no way to verify anything from the new Committer this information needs to be sent to accounts@ by the Mentor, not the new Committer.
accounts@ Creates New Account
accounts@ creates the new account with the above information on the FreeBSD.org cluster and notifies the mentor and the new committer.
Mentor Activates New Committer’s Commit Bit
After the new committer confirms that the account works, the
mentor adds the new committer to the correct
file, using an appropriate commit message. The commit message
should at least contain the committer’s full name and username, the
mentor’s name and what area the new committer will start to work
in. An entry should also be added to the
in the respective Git
repository to indicate the mentor relationship. Having done all
that, the new committer and mentor jointly go through the first
End Of Mentorship
There is no pre-set duration for a mentorship. Once the mentor
feels the mentee is ready to 'fly solo' the mentor notifies the
developer community by removing the entry from the
mentors file in Git.
Transfer Of Mentorship
Should a need arise to transfer mentorship for a committer
please email the responsible party, as described for a new account
proposal. Typically this request is rubberstamped as-is. In Git,
mentors file should be updated.