<p>Only approved members of the Debian project (Debian Developers) are granted the permission to upload software packages into the Debian distribution. Still a large number of packages is maintained by non-official developers. How do they get their work into Debian when they are not allowed to upload their own packages directly? By means of a process called <i>sponsorship</i>. Don't worry - it does not deal with money. Sponsorship means that a Debian Developer uploads the package on behalf of the actual maintainer. The Debian Developer will also check the package for technical correctness and help the maintainer to improve the package if necessary. Therefore the sponsor is sometimes also called a mentor.</p>
<p>Only approved members of the Debian project (Debian Developers) are granted the permission to upload software packages into the Debian distribution. Still a large number of packages is maintained by non-official developers. How do they get their work into Debian when they are not allowed to upload their own packages directly? By means of a process called <em>sponsorship</em>. Sponsorship means that a Debian Developer uploads the package on behalf of the actual maintainer. The Debian Developer will also check the package for technical correctness and help the maintainer to improve the package if necessary. Therefore the sponsor is sometimes also called a mentor.</p>
<p>You can even help us to review packages if you are not a developer. We appreciate your efforts as well.</p>
<p>Note, not only Debian Developer are allowed to review packages. Everyone is encouraged to review packages! We appreciate your efforts as well.</p>
<ul>
<h2>Getting your package into Debian</h2>
<li>I want to have my package uploaded to Debian: Please go to ${ h.tags.link_to("our introductory page", h.url('intro-maintainers')) } for maintainers and learn how to use ${ c.config['debexpo.sitename'] }.</li>
<li>I am a Debian Developer and want to offer sponsorship: Please go to ${ h.tags.link_to("our introductory page for sponsors", h.url('sponsors')) } to learn how you can help best.</li>
<li>I am a Debian Maintainer or a skilled sponsored maintainer and want to help: Please go to ${ h.tags.link_to("our page dedicated to reviewers", h.url('intro-reviewers')) }.</li>
</ul>
<p>You can <a href="http://wiki.debian.org/Debexpo">read more about debexpo on the Debian Wiki</a>.</p>
To get your package into Debian, please do as follows:
<ol>
<li>Make a Debian package and upload it to ${ c.config['debexpo.sitetitle'] }. See ${ h.tags.link_to("our introductory page", h.url('intro-maintainers')) } for maintainers and learn how to use ${ c.config['debexpo.sitename'] }.</li>
<li>Once you filed a request-for-sponsorship (<em>RFS</em>) you will hopefully get positive feedback for your package. See ${ h.tags.link_to("our page dedicated to reviewers", h.url('intro-reviewers')) } to learn more about package reviews.</li>
<li>Ultimately a Debian Developer needs to upload it to Debian. Learn on ${ h.tags.link_to("our introductory page for sponsors", h.url('sponsors')) } how to get in touch with a sponsor.</li>
</ol>
<p>If you are curious about <em>Debexpo</em>, the software which is running this site, you can <a href="http://wiki.debian.org/Debexpo">read more about Debexpo on the Debian Wiki</a>.</p>
<li>Your package will hopefully be reviewed by a sponsor and either acknowledge your work and <strong>upload your package to Debian</strong>, or ask you to address some problems.</li>
<li>Your package will hopefully be reviewed by a sponsor and either acknowledge your work and <strong>upload your package to Debian</strong>, or ask you to address some problems.</li>
</ol>
</ol>
<h3>How to make a package?</h3>
<p>Have a look to our ${ h.tags.link_to("QA section", h.url(controller='index', action='qa')) }.</p>
<h3>How to upload packages?</h3>
<h3>How to upload packages?</h3>
<p>You need to use <a href="http://packages.debian.org/dput"><tt>dput</tt></a> to upload packages.
<p>You need to use <a href="http://packages.debian.org/dput"><tt>dput</tt></a> to upload packages. We accept your uploads through <em>HTTP</em> or <em>FTP</em>. If you are using <em>FTP</em> your package <strong>must</strong> be signed with the GnuPG key you configured in your control panel. </p>
<h4>HTTP uploads</h4>
% if c.logged_in:
% if c.logged_in:
See your ${ h.tags.link_to("account page", h.url('my')) } to see how to configure it, or put the following content to your <tt>~/.dput.cf</tt> file:</p>
<p>See your ${ h.tags.link_to("account page", h.url('my')) } to see how to configure <tt>dput</tt> to use HTTP, or put the following content to your <tt>~/.dput.cf</tt> file:</p>
You need to configure <tt>dput</tt>. Please ${ h.tags.link_to("login", h.url(controller='login', action='index')) } to see your personal <tt>~/.dput.cf</tt> here.
<p>You need to configure <tt>dput</tt>. Please ${ h.tags.link_to("login", h.url(controller='login', action='index')) } to see your personal <tt>~/.dput.cf</tt> here.</p>
% endif
% endif
<h4>FTP uploads</h4>
<p>You can use <em>FTP</em> to upload packages to ${ c.config['debexpo.sitetitle'] }. If you prefer that method make sure you sign your uploads with your GPG key! This is the corresponding <tt>~/.dput.cf</tt> file:</p>
<pre>
[mentors-ftp]
fqdn = ${ config['debexpo.sitename'] }
login = anonymous
progress_indicator = 2
passive_ftp = 1
incoming = /
method = ftp
allow_unsigned_uploads = 0
</pre>
<p>Once you have it set up, you can run it from your shell like this:</p>
<p>Once you have it set up, you can run it from your shell like this:</p>
<pre>
<pre>
$ dput debexpo your_sourcepackage_1.0.changes
$ dput mentors your_sourcepackage_1.0.changes
</pre>
</pre>
<h3>Will my name stay visible on the package?</h3>
<h3>Will my name stay visible on the package?</h3>
<dd>Another valuable resource to learn about common terms and workflows related to Debian</dd>
</dl>
<h3>What is the Debian policy?</h3>
<h3>What is the Debian policy?</h3>
<p>Every package must comply with the <a href="http://www.debian.org/doc/debian-policy/ch-scope.html">Debian policy</a> before it can enter the Debian distribution. This is a document which describes the structure and contents of the Debian archive and several design issues of the operating system, as well as technical requirements that each package must satisfy to be included in the distribution.</p>
<p>Every package must comply with the <a href="http://www.debian.org/doc/debian-policy/ch-scope.html">Debian policy</a> before it can enter the Debian distribution. This is a document which describes the structure and contents of the Debian archive and several design issues of the operating system, as well as technical requirements that each package must satisfy to be included in the distribution.</p>
<p>The policy is not a tutorial. Its a technical manual which specifies normative requirements of packages. Read it to learn package specifications. If you don't know how to package something for Debian, please read additionally the <a href="http://www.debian.org/doc/manuals/maint-guide/">New Maintainer's Guide</a>.</p>
<h3>Is my package technically okay?</h3>
<h3>Is my package technically okay?</h3>
<p>When you upload your package to ${ c.config['debexpo.sitename'] } it will automatically be checked for common mistakes. You will get an information email after the upload. Either your package contains bugs and will be rejected, or the package is clean except for some minor technical issues. You will get hints about how to fix the package. If the email tells you that your package is fine then a sponsor will still do further checks. Don't worry too much. If your package is accepted by mentors.debian.net then let the sponsor help you with the rest.
<p>When you upload your package to ${ c.config['debexpo.sitename'] } it will automatically be checked for common mistakes. You will get an information email after the upload. Either your package contains bugs and will be rejected, or the package is clean except for some minor technical issues. You will get hints about how to fix the package. If the email tells you that your package is fine then a sponsor will still do further checks. Don't worry too much. If your package is accepted by mentors.debian.net then let the sponsor help you with the rest.