old-www/LDP/www.debian.org/doc/manuals/developers-reference/new-maintainer.html

167 lines
16 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Chapter 2. Applying to Become a Maintainer</title><meta name="generator" content="DocBook XSL Stylesheets V1.76.1" /><link rel="home" href="index.html" title="Debian Developer's Reference" /><link rel="up" href="index.html" title="Debian Developer's Reference" /><link rel="prev" href="scope.html" title="Chapter 1. Scope of This Document" /><link rel="next" href="developer-duties.html" title="Chapter 3. Debian Developer's Duties" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 2. Applying to Become a Maintainer</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="scope.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="developer-duties.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 2. Applying to Become a Maintainer"><div class="titlepage"><div><div><h2 class="title"><a id="new-maintainer"></a>Chapter 2. Applying to Become a Maintainer</h2></div></div></div><div class="toc"><p><strong>Table of Contents</strong></p><dl><dt><span class="section"><a href="new-maintainer.html#getting-started">2.1. Getting started</a></span></dt><dt><span class="section"><a href="new-maintainer.html#mentors">2.2. Debian mentors and sponsors</a></span></dt><dt><span class="section"><a href="new-maintainer.html#registering">2.3. Registering as a Debian developer</a></span></dt></dl></div><div class="section" title="2.1. Getting started"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="getting-started"></a>2.1. Getting started</h2></div></div></div><p>
So, you've read all the documentation, you've gone through the <a class="ulink" href="http://www.debian.org/doc/maint-guide/" target="_top">Debian New Maintainers'
Guide</a>, understand what everything in the <code class="systemitem">hello</code> example package is for, and you're about to
Debianize your favorite piece of software. How do you actually become a Debian
developer so that your work can be incorporated into the Project?
</p><p>
Firstly, subscribe to <code class="email">&lt;<a class="email" href="mailto:debian-devel@lists.debian.org">debian-devel@lists.debian.org</a>&gt;</code> if you haven't
already. Send the word <code class="literal">subscribe</code> in the
<code class="literal">Subject</code> of an email to
<code class="email">&lt;<a class="email" href="mailto:debian-devel-REQUEST@lists.debian.org">debian-devel-REQUEST@lists.debian.org</a>&gt;</code>. In case of problems, contact the
list administrator at <code class="email">&lt;<a class="email" href="mailto:listmaster@lists.debian.org">listmaster@lists.debian.org</a>&gt;</code>. More information on
available mailing lists can be found in <a class="xref" href="resources.html#mailing-lists" title="4.1. Mailing lists">Section 4.1, “Mailing lists”</a>.
<code class="email">&lt;<a class="email" href="mailto:debian-devel-announce@lists.debian.org">debian-devel-announce@lists.debian.org</a>&gt;</code> is another list which is
mandatory for anyone who wishes to follow Debian's development.
</p><p>
You should subscribe and lurk (that is, read without posting) for a bit before
doing any coding, and you should post about your intentions to work on
something to avoid duplicated effort.
</p><p>
Another good list to subscribe to is <code class="email">&lt;<a class="email" href="mailto:debian-mentors@lists.debian.org">debian-mentors@lists.debian.org</a>&gt;</code>.
See <a class="xref" href="new-maintainer.html#mentors" title="2.2. Debian mentors and sponsors">Section 2.2, “Debian mentors and sponsors”</a> for details. The IRC channel
<code class="literal">#debian</code> can also be helpful; see <a class="xref" href="resources.html#irc-channels" title="4.2. IRC channels">Section 4.2, “IRC channels”</a>.
</p><p>
When you know how you want to contribute to Debian GNU/Linux,
you should get in contact with existing Debian maintainers who are working on
similar tasks. That way, you can learn from experienced developers. For
example, if you are interested in packaging existing software for Debian, you
should try to get a sponsor. A sponsor will work together with you on your
package and upload it to the Debian archive once they are happy with the
packaging work you have done. You can find a sponsor by mailing the
<code class="email">&lt;<a class="email" href="mailto:debian-mentors@lists.debian.org">debian-mentors@lists.debian.org</a>&gt;</code> mailing list, describing your package
and yourself and asking for a sponsor (see <a class="xref" href="beyond-pkging.html#sponsoring" title="7.5.1. Sponsoring packages">Section 7.5.1, “Sponsoring packages”</a> and
<a class="ulink" href="http://wiki.debian.org/DebianMentorsFaq" target="_top">http://wiki.debian.org/DebianMentorsFaq</a> for more information on
sponsoring). On the other hand, if you are interested in porting Debian to
alternative architectures or kernels you can subscribe to port specific mailing
lists and ask there how to get started. Finally, if you are interested in
documentation or Quality Assurance (QA) work you can join maintainers already
working on these tasks and submit patches and improvements.
</p><p>
One pitfall could be a too-generic local part in your mailadress: Terms like
mail, admin, root, master should be avoided, please see <a class="ulink" href="http://www.debian.org/MailingLists/" target="_top">http://www.debian.org/MailingLists/</a> for details.
</p></div><div class="section" title="2.2. Debian mentors and sponsors"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="mentors"></a>2.2. Debian mentors and sponsors</h2></div></div></div><p>
The mailing list <code class="email">&lt;<a class="email" href="mailto:debian-mentors@lists.debian.org">debian-mentors@lists.debian.org</a>&gt;</code> has been set up for
novice maintainers who seek help with initial packaging and other
developer-related issues. Every new developer is invited to subscribe to that
list (see <a class="xref" href="resources.html#mailing-lists" title="4.1. Mailing lists">Section 4.1, “Mailing lists”</a> for details).
</p><p>
Those who prefer one-on-one help (e.g., via private email) should also post to
that list and an experienced developer will volunteer to help.
</p><p>
In addition, if you have some packages ready for inclusion in Debian, but are
waiting for your new maintainer application to go through, you might be able
find a sponsor to upload your package for you. Sponsors are people who are
official Debian Developers, and who are willing to criticize and upload your
packages for you. Please read the debian-mentors FAQ at <a class="ulink" href="http://wiki.debian.org/DebianMentorsFaq" target="_top">http://wiki.debian.org/DebianMentorsFaq</a> first.
</p><p>
If you wish to be a mentor and/or sponsor, more information is available in
<a class="xref" href="beyond-pkging.html#newmaint" title="7.5. Interacting with prospective Debian developers">Section 7.5, “Interacting with prospective Debian developers”</a>.
</p></div><div class="section" title="2.3. Registering as a Debian developer"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="registering"></a>2.3. Registering as a Debian developer</h2></div></div></div><p>
Before you decide to register with Debian GNU/Linux, you will
need to read all the information available at the <a class="ulink" href="http://www.debian.org/devel/join/newmaint" target="_top">New Maintainer's Corner</a>. It
describes in detail the preparations you have to do before you can register to
become a Debian developer. For example, before you apply, you have to read the
<a class="ulink" href="http://www.debian.org/social_contract" target="_top">Debian Social
Contract</a>. Registering as a developer means that you agree with and
pledge to uphold the Debian Social Contract; it is very important that
maintainers are in accord with the essential ideas behind
Debian GNU/Linux. Reading the <a class="ulink" href="http://www.gnu.org/gnu/manifesto.html" target="_top">GNU Manifesto</a> would also be
a good idea.
</p><p>
The process of registering as a developer is a process of verifying your
identity and intentions, and checking your technical skills. As the number of
people working on Debian GNU/Linux has grown to over
1000 and our systems are used in several
very important places, we have to be careful about being compromised.
Therefore, we need to verify new maintainers before we can give them accounts
on our servers and let them upload packages.
</p><p>
Before you actually register you should have shown that you can do competent
work and will be a good contributor. You show this by submitting patches
through the Bug Tracking System and having a package sponsored by an existing
Debian Developer for a while. Also, we expect that contributors are interested
in the whole project and not just in maintaining their own packages. If you
can help other maintainers by providing further information on a bug or even a
patch, then do so!
</p><p>
Registration requires that you are familiar with Debian's philosophy and
technical documentation. Furthermore, you need a GnuPG key which has been
signed by an existing Debian maintainer. If your GnuPG key is not signed yet,
you should try to meet a Debian Developer in person to get your key signed.
There's a <a class="ulink" href="http://wiki.debian.org/Keysigning" target="_top">GnuPG Key Signing
Coordination page</a> which should help you find a Debian Developer close
to you. (If there is no Debian Developer close to you, alternative ways to
pass the ID check may be permitted as an absolute exception on a
case-by-case-basis. See the <a class="ulink" href="http://www.debian.org/devel/join/nm-step2" target="_top">identification page</a> for more
information.)
</p><p>
If you do not have an OpenPGP key yet, generate one. Every developer needs an
OpenPGP key in order to sign and verify package uploads. You should read the
manual for the software you are using, since it has much important information
which is critical to its security. Many more security failures are due to
human error than to software failure or high-powered spy techniques. See <a class="xref" href="developer-duties.html#key-maint" title="3.2.2. Maintaining your public key">Section 3.2.2, “Maintaining your public key”</a> for more information on maintaining your public key.
</p><p>
Debian uses the <code class="literal">GNU Privacy Guard</code> (package <code class="systemitem">gnupg</code> version 1 or better) as its baseline
standard. You can use some other implementation of OpenPGP as well. Note that
OpenPGP is an open standard based on <a class="ulink" href="http://www.rfc-editor.org/rfc/rfc2440.txt" target="_top">RFC 2440</a>.
</p><p>
You need a version 4 key for use in Debian Development. <a class="ulink" href="http://lists.debian.org/20090520092534.GG22906@earth.li" target="_top">Your key length must
be greater than 1024 bits</a>; there is no reason to use a smaller key, and doing so
would be much less secure.<sup>[<a id="idp18219696" href="#ftn.idp18219696" class="footnote">1</a>]</sup>
</p><p>
If your public key isn't on a public key server such as
<code class="literal">subkeys.pgp.net</code>, please read the documentation available at
<a class="ulink" href="http://www.debian.org/devel/join/nm-step2" target="_top">NM Step 2:
Identification</a>. That document contains instructions on how to put your
key on the public key servers. The New Maintainer Group will put your public
key on the servers if it isn't already there.
</p><p>
Some countries restrict the use of cryptographic software by their citizens.
This need not impede one's activities as a Debian package maintainer however,
as it may be perfectly legal to use cryptographic products for authentication,
rather than encryption purposes. If you live in a country where use of
cryptography even for authentication is forbidden then please contact us so we
can make special arrangements.
</p><p>
To apply as a new maintainer, you need an existing Debian Developer to support
your application (an <code class="literal">advocate</code>). After you have
contributed to Debian for a while, and you want to apply to become a registered
developer, an existing developer with whom you have worked over the past months
has to express their belief that you can contribute to Debian successfully.
</p><p>
When you have found an advocate, have your GnuPG key signed and have already
contributed to Debian for a while, you're ready to apply. You can simply
register on our <a class="ulink" href="http://nm.debian.org/newnm.php" target="_top">application
page</a>. After you have signed up, your advocate has to confirm your
application. When your advocate has completed this step you will be assigned
an Application Manager who will go with you through the necessary steps of the
New Maintainer process. You can always check your status on the <a class="ulink" href="http://nm.debian.org/" target="_top">applications status board</a>.
</p><p>
For more details, please consult <a class="ulink" href="http://www.debian.org/devel/join/newmaint" target="_top">New Maintainer's Corner</a> at the
Debian web site. Make sure that you are familiar with the necessary steps of
the New Maintainer process before actually applying. If you are well prepared,
you can save a lot of time later on.
</p></div><div class="footnotes"><br /><hr width="100" align="left" /><div class="footnote"><p><sup>[<a id="ftn.idp18219696" href="#idp18219696" class="para">1</a>] </sup> Version 4 keys are keys conforming
to the OpenPGP standard as defined in RFC 2440. Version 4 is the key type that
has always been created when using GnuPG. PGP versions since 5.x also could
create v4 keys, the other choice having been pgp 2.6.x compatible v3 keys
(also called legacy RSA by PGP). </p><p> Version 4 (primary) keys can
either use the RSA or the DSA algorithms, so this has nothing to do with
GnuPG's question about which kind of key do you want: (1) DSA and Elgamal, (2)
DSA (sign only), (5) RSA (sign only). If you don't have any special
requirements just pick the default. </p><p> The easiest way to tell
whether an existing key is a v4 key or a v3 (or v2) key is to look at the
fingerprint: Fingerprints of version 4 keys are the SHA-1 hash of some key
material, so they are 40 hex digits, usually grouped in blocks of 4.
Fingerprints of older key format versions used MD5 and are generally shown in
blocks of 2 hex digits. For example if your fingerprint looks like
<code class="literal">5B00 C96D 5D54 AEE1 206B  AF84 DE7A AF6E 94C0 9C7F</code>
then it's a v4 key. </p><p> Another possibility is to pipe the key into
<span class="command"><strong>pgpdump</strong></span>, which will say something like Public Key Packet -
Ver 4. </p><p> Also note that your key must be self-signed (i.e. it
has to sign all its own user IDs; this prevents user ID tampering). All modern
OpenPGP software does that automatically, but if you have an older key you may
have to manually add those signatures. </p></div></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="scope.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="developer-duties.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 1. Scope of This Document </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 3. Debian Developer's Duties</td></tr></table></div></body></html>