1009 lines
76 KiB
HTML
1009 lines
76 KiB
HTML
|
<?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 4. Resources for Debian Developers</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="developer-duties.html" title="Chapter 3. Debian Developer's Duties" /><link rel="next" href="pkgs.html" title="Chapter 5. Managing Packages" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 4. Resources for Debian Developers</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="developer-duties.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="pkgs.html">Next</a></td></tr></table><hr /></div><div class="chapter" title="Chapter 4. Resources for Debian Developers"><div class="titlepage"><div><div><h2 class="title"><a id="resources"></a>Chapter 4. Resources for Debian Developers</h2></div></div></div><div class="toc"><p><strong>Table of Contents</strong></p><dl><dt><span class="section"><a href="resources.html#mailing-lists">4.1. Mailing lists</a></span></dt><dd><dl><dt><span class="section"><a href="resources.html#mailing-lists-rules">4.1.1. Basic rules for use</a></span></dt><dt><span class="section"><a href="resources.html#core-devel-mailing-lists">4.1.2. Core development mailing lists</a></span></dt><dt><span class="section"><a href="resources.html#mailing-lists-special">4.1.3. Special lists</a></span></dt><dt><span class="section"><a href="resources.html#mailing-lists-new">4.1.4. Requesting new development-related lists</a></span></dt></dl></dd><dt><span class="section"><a href="resources.html#irc-channels">4.2. IRC channels</a></span></dt><dt><span class="section"><a href="resources.html#doc-rsrcs">4.3. Documentation</a></span></dt><dt><span class="section"><a href="resources.html#server-machines">4.4. Debian machines</a></span></dt><dd><dl><dt><span class="section"><a href="resources.html#servers-bugs">4.4.1. The bugs server</a></span></dt><dt><span class="section"><a href="resources.html#servers-ftp-master">4.4.2. The ftp-master server</a></span></dt><dt><span class="section"><a href="resources.html#servers-www">4.4.3. The www-master server</a></span></dt><dt><span class="section"><a href="resources.html#servers-people">4.4.4. The people web server</a></span></dt><dt><span class="section"><a href="resources.html#servers-vcs">4.4.5. The VCS servers</a></span></dt><dt><span class="section"><a href="resources.html#dchroot">4.4.6. chroots to different distributions</a></span></dt></dl></dd><dt><span class="section"><a href="resources.html#devel-db">4.5. The Developers Database</a></span></dt><dt><span class="section"><a href="resources.html#archive">4.6. The Debian archive</a></span></dt><dd><dl><dt><span class="section"><a href="resources.html#archive-sections">4.6.1. Sections</a></span></dt><dt><span class="section"><a href="resources.html#s4.6.2">4.6.2. Architectures</a></span></dt><dt><span class="section"><a href="resources.html#s4.6.3">4.6.3. Packages</a></span></dt><dt><span class="section"><a href="resources.html#s4.6.4">4.6.4. Distributions</a></span></dt><dt><span class="section"><a href="resources.html#codenames">4.6.5. Release code names</a></span></dt></dl></dd><dt><span class="section"><a href="resources.html#mirrors">4.7. Debian mirrors</a></span></dt><dt><span class="section"><a href="resources.html#incoming-system">4.8. The Incoming system</a></span></dt><dt><span class="section"><a href="resources.html#pkg-info">4.9. Package information</a></span></dt><dd><dl><dt><span class="section"><a href="resources.html#pkg-info-web">4.9.1. On the web</a></span></dt><dt><span class="section"><a href="resources.html#dak-ls">4.9.2. The <span class="command"><strong>dak ls</strong></span> utility</a></span></dt></dl></dd><dt><span class="section"><a
|
|||
|
In this chapter you will find a very brief road map of the Debian mailing
|
|||
|
lists, the Debian machines which may be available to you as a developer, and
|
|||
|
all the other resources that are available to help you in your maintainer work.
|
|||
|
</p><div class="section" title="4.1. Mailing lists"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="mailing-lists"></a>4.1. Mailing lists</h2></div></div></div><p>
|
|||
|
Much of the conversation between Debian developers (and users) is managed
|
|||
|
through a wide array of mailing lists we host at <code class="literal"><a class="ulink" href="http://lists.debian.org/" target="_top">lists.debian.org</a></code>.
|
|||
|
To find out more on how to subscribe or unsubscribe, how to post and how not to
|
|||
|
post, where to find old posts and how to search them, how to contact the list
|
|||
|
maintainers and see various other information about the mailing lists, please
|
|||
|
read <a class="ulink" href="http://www.debian.org/MailingLists/" target="_top">http://www.debian.org/MailingLists/</a>. This section
|
|||
|
will only cover aspects of mailing lists that are of particular interest to
|
|||
|
developers.
|
|||
|
</p><div class="section" title="4.1.1. Basic rules for use"><div class="titlepage"><div><div><h3 class="title"><a id="mailing-lists-rules"></a>4.1.1. Basic rules for use</h3></div></div></div><p>
|
|||
|
When replying to messages on the mailing list, please do not send a carbon copy
|
|||
|
(<code class="literal">CC</code>) to the original poster unless they explicitly request
|
|||
|
to be copied. Anyone who posts to a mailing list should read it to see the
|
|||
|
responses.
|
|||
|
</p><p>
|
|||
|
Cross-posting (sending the same message to multiple lists) is discouraged. As
|
|||
|
ever on the net, please trim down the quoting of articles you're replying to.
|
|||
|
In general, please adhere to the usual conventions for posting messages.
|
|||
|
</p><p>
|
|||
|
Please read the <a class="ulink" href="http://www.debian.org/MailingLists/#codeofconduct" target="_top">code of conduct</a>
|
|||
|
for more information. The <a class="ulink" href="http://people.debian.org/~enrico/dcg/" target="_top">Debian Community
|
|||
|
Guidelines</a> are also worth reading.
|
|||
|
</p></div><div class="section" title="4.1.2. Core development mailing lists"><div class="titlepage"><div><div><h3 class="title"><a id="core-devel-mailing-lists"></a>4.1.2. Core development mailing lists</h3></div></div></div><p>
|
|||
|
The core Debian mailing lists that developers should use are:
|
|||
|
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-devel-announce@lists.debian.org">debian-devel-announce@lists.debian.org</a>></code>, used to announce important
|
|||
|
things to developers. All developers are expected to be subscribed to this
|
|||
|
list.
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-devel@lists.debian.org">debian-devel@lists.debian.org</a>></code>, used to discuss various development
|
|||
|
related technical issues.
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-policy@lists.debian.org">debian-policy@lists.debian.org</a>></code>, where the Debian Policy is discussed
|
|||
|
and voted on.
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-project@lists.debian.org">debian-project@lists.debian.org</a>></code>, used to discuss various non-technical
|
|||
|
issues related to the project.
|
|||
|
</p></li></ul></div><p>
|
|||
|
There are other mailing lists available for a variety of special topics; see
|
|||
|
<a class="ulink" href="http://lists.debian.org/" target="_top">http://lists.debian.org/</a> for a list.
|
|||
|
</p></div><div class="section" title="4.1.3. Special lists"><div class="titlepage"><div><div><h3 class="title"><a id="mailing-lists-special"></a>4.1.3. Special lists</h3></div></div></div><p>
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-private@lists.debian.org">debian-private@lists.debian.org</a>></code> is a special mailing list for private
|
|||
|
discussions amongst Debian developers. It is meant to be used for posts which
|
|||
|
for whatever reason should not be published publicly. As such, it is a low
|
|||
|
volume list, and users are urged not to use
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-private@lists.debian.org">debian-private@lists.debian.org</a>></code> unless it is really necessary.
|
|||
|
Moreover, do <span class="emphasis"><em>not</em></span> forward email from that list to anyone.
|
|||
|
Archives of this list are not available on the web for obvious reasons, but you
|
|||
|
can see them using your shell account on <code class="literal">master.debian.org</code>
|
|||
|
and looking in the <code class="filename">~debian/archive/debian-private/</code>
|
|||
|
directory.
|
|||
|
</p><p>
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-email@lists.debian.org">debian-email@lists.debian.org</a>></code> is a special mailing list used as a
|
|||
|
grab-bag for Debian related correspondence such as contacting upstream authors
|
|||
|
about licenses, bugs, etc. or discussing the project with others where it
|
|||
|
might be useful to have the discussion archived somewhere.
|
|||
|
</p></div><div class="section" title="4.1.4. Requesting new development-related lists"><div class="titlepage"><div><div><h3 class="title"><a id="mailing-lists-new"></a>4.1.4. Requesting new development-related lists</h3></div></div></div><p>
|
|||
|
Before requesting a mailing list that relates to the development of a package
|
|||
|
(or a small group of related packages), please consider if using an alias (via
|
|||
|
a .forward-aliasname file on master.debian.org, which translates into a
|
|||
|
reasonably nice <em class="replaceable"><code>you-aliasname@debian.org</code></em> address) or
|
|||
|
a self-managed mailing list on <a class="link" href="resources.html#alioth" title="4.12. Debian's FusionForge installation: Alioth">Alioth</a> is
|
|||
|
more appropriate.
|
|||
|
</p><p>
|
|||
|
If you decide that a regular mailing list on lists.debian.org is really what
|
|||
|
you want, go ahead and fill in a request, following <a class="ulink" href="http://www.debian.org/MailingLists/HOWTO_start_list" target="_top">the HOWTO</a>.
|
|||
|
</p></div></div><div class="section" title="4.2. IRC channels"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="irc-channels"></a>4.2. IRC channels</h2></div></div></div><p>
|
|||
|
Several IRC channels are dedicated to Debian's development. They are mainly
|
|||
|
hosted on the <a class="ulink" href="http://www.oftc.net/oftc/" target="_top">Open and free technology
|
|||
|
community (OFTC)</a> network. The <code class="literal">irc.debian.org</code> DNS
|
|||
|
entry is an alias to <code class="literal">irc.oftc.net</code>.
|
|||
|
</p><p>
|
|||
|
The main channel for Debian in general is <code class="literal">#debian</code>. This
|
|||
|
is a large, general-purpose channel where users can find recent news in the
|
|||
|
topic and served by bots. <code class="literal">#debian</code> is for English
|
|||
|
speakers; there are also <code class="literal">#debian.de</code>,
|
|||
|
<code class="literal">#debian-fr</code>, <code class="literal">#debian-br</code> and other
|
|||
|
similarly named channels for speakers of other languages.
|
|||
|
</p><p>
|
|||
|
The main channel for Debian development is <code class="literal">#debian-devel</code>.
|
|||
|
It is a very active channel; it will typically have a minimum of 150 people
|
|||
|
at any time of day.
|
|||
|
It's a channel for people who work on Debian, it's not a support channel
|
|||
|
(there's <code class="literal">#debian</code> for that). It is however open to anyone
|
|||
|
who wants to lurk (and learn). Its topic is commonly full of interesting
|
|||
|
information for developers.
|
|||
|
</p><p>
|
|||
|
Since <code class="literal">#debian-devel</code> is an open channel, you should not
|
|||
|
speak there of issues that are discussed in
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-private@lists.debian.org">debian-private@lists.debian.org</a>></code>. There's another channel for this
|
|||
|
purpose, it's called <code class="literal">#debian-private</code> and it's protected by
|
|||
|
a key. This key is available at
|
|||
|
<code class="filename">master.debian.org:~debian/misc/irc-password</code>.
|
|||
|
</p><p>
|
|||
|
There are other additional channels dedicated to specific subjects.
|
|||
|
<code class="literal">#debian-bugs</code> is used for coordinating bug squashing
|
|||
|
parties. <code class="literal">#debian-boot</code> is used to coordinate the work on
|
|||
|
the debian-installer. <code class="literal">#debian-doc</code> is occasionally used to
|
|||
|
talk about documentation, like the document you are reading. Other channels
|
|||
|
are dedicated to an architecture or a set of packages:
|
|||
|
<code class="literal">#debian-kde</code>, <code class="literal">#debian-dpkg</code>,
|
|||
|
<code class="literal">#debian-jr</code>, <code class="literal">#debian-edu</code>,
|
|||
|
<code class="literal">#debian-oo</code> (OpenOffice.org package)...
|
|||
|
</p><p>
|
|||
|
Some non-English developers' channels exist as well, for example
|
|||
|
<code class="literal">#debian-devel-fr</code> for French speaking people interested in
|
|||
|
Debian's development.
|
|||
|
</p><p>
|
|||
|
Channels dedicated to Debian also exist on other IRC networks, notably on the
|
|||
|
<a class="ulink" href="http://www.freenode.net/" target="_top">freenode</a> IRC network,
|
|||
|
which was pointed at by the <code class="literal">irc.debian.org</code> alias until 4th
|
|||
|
June 2006.
|
|||
|
</p><p>
|
|||
|
To get a cloak on freenode, you send Jörg Jaspert <joerg@debian.org> a
|
|||
|
signed mail where you tell what your nick is. Put cloak somewhere in the
|
|||
|
Subject: header. The nick should be registered: <a class="ulink" href="http://freenode.net/faq.shtml#nicksetup" target="_top">Nick Setup Page</a>. The
|
|||
|
mail needs to be signed by a key in the Debian keyring. Please see <a class="ulink" href="http://freenode.net/faq.shtml#projectcloak" target="_top">Freenodes
|
|||
|
documentation</a> for more information about cloaks.
|
|||
|
</p></div><div class="section" title="4.3. Documentation"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="doc-rsrcs"></a>4.3. Documentation</h2></div></div></div><p>
|
|||
|
This document contains a lot of information which is useful to Debian
|
|||
|
developers, but it cannot contain everything. Most of the other interesting
|
|||
|
documents are linked from <a class="ulink" href="http://www.debian.org/devel/" target="_top">The
|
|||
|
Developers' Corner</a>. Take the time to browse all the links, you will
|
|||
|
learn many more things.
|
|||
|
</p></div><div class="section" title="4.4. Debian machines"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="server-machines"></a>4.4. Debian machines</h2></div></div></div><p>
|
|||
|
Debian has several computers working as servers, most of which serve critical
|
|||
|
functions in the Debian project. Most of the machines are used for porting
|
|||
|
activities, and they all have a permanent connection to the Internet.
|
|||
|
</p><p>
|
|||
|
Some of the machines are available for individual developers to use, as long as
|
|||
|
the developers follow the rules set forth in the <a class="ulink" href="http://www.debian.org/devel/dmup" target="_top">Debian Machine Usage Policies</a>.
|
|||
|
</p><p>
|
|||
|
Generally speaking, you can use these machines for Debian-related purposes as
|
|||
|
you see fit. Please be kind to system administrators, and do not use up tons
|
|||
|
and tons of disk space, network bandwidth, or CPU without first getting the
|
|||
|
approval of the system administrators. Usually these machines are run by
|
|||
|
volunteers.
|
|||
|
</p><p>
|
|||
|
Please take care to protect your Debian passwords and SSH keys installed on
|
|||
|
Debian machines. Avoid login or upload methods which send passwords over the
|
|||
|
Internet in the clear, such as Telnet, FTP, POP etc.
|
|||
|
</p><p>
|
|||
|
Please do not put any material that doesn't relate to Debian on the Debian
|
|||
|
servers, unless you have prior permission.
|
|||
|
</p><p>
|
|||
|
The current list of Debian machines is available at <a class="ulink" href="http://db.debian.org/machines.cgi" target="_top">http://db.debian.org/machines.cgi</a>. That web page contains
|
|||
|
machine names, contact information, information about who can log in, SSH keys
|
|||
|
etc.
|
|||
|
</p><p>
|
|||
|
If you have a problem with the operation of a Debian server, and you think that
|
|||
|
the system operators need to be notified of this problem, you can check
|
|||
|
the list of open issues in the DSA queue of our request tracker at <a class="ulink" href="https://rt.debian.org/" target="_top">https://rt.debian.org/</a> (you can login with user "debian", its password is available at
|
|||
|
<code class="filename">master.debian.org:~debian/misc/rt-password</code>).
|
|||
|
To report a new problem, simply send a mail to <code class="email"><<a class="email" href="mailto:admin@rt.debian.org">admin@rt.debian.org</a>></code> and make
|
|||
|
sure to put the string "Debian RT" somewhere in the subject.
|
|||
|
</p><p>
|
|||
|
If you have a problem with a certain service, not related to the system
|
|||
|
administration (such as packages to be removed from the archive, suggestions
|
|||
|
for the web site, etc.), generally you'll report a bug against a
|
|||
|
``pseudo-package''. See <a class="xref" href="beyond-pkging.html#submit-bug" title="7.1. Bug reporting">Section 7.1, “Bug reporting”</a> for information on how to
|
|||
|
submit bugs.
|
|||
|
</p><p>
|
|||
|
Some of the core servers are restricted, but the information from there is
|
|||
|
mirrored to another server.
|
|||
|
</p><div class="section" title="4.4.1. The bugs server"><div class="titlepage"><div><div><h3 class="title"><a id="servers-bugs"></a>4.4.1. The bugs server</h3></div></div></div><p>
|
|||
|
<code class="literal">bugs.debian.org</code> is the canonical location for
|
|||
|
the Bug Tracking System (BTS).
|
|||
|
</p><p>
|
|||
|
If you plan on doing some statistical analysis or processing of Debian bugs,
|
|||
|
this would be the place to do it. Please describe your plans on
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-devel@lists.debian.org">debian-devel@lists.debian.org</a>></code> before implementing anything, however, to
|
|||
|
reduce unnecessary duplication of effort or wasted processing time.
|
|||
|
</p></div><div class="section" title="4.4.2. The ftp-master server"><div class="titlepage"><div><div><h3 class="title"><a id="servers-ftp-master"></a>4.4.2. The ftp-master server</h3></div></div></div><p>
|
|||
|
The <code class="literal">ftp-master.debian.org</code> server holds the canonical copy of
|
|||
|
the Debian archive. Generally, package uploaded to ftp.upload.debian.org
|
|||
|
end up on this server, see <a class="xref" href="pkgs.html#upload" title="5.6. Uploading a package">Section 5.6, “Uploading a package”</a>.
|
|||
|
</p><p>
|
|||
|
It is restricted; a mirror is available on <code class="literal">ries.debian.org</code>.
|
|||
|
</p><p>
|
|||
|
Problems with the Debian FTP archive generally need to be reported as bugs
|
|||
|
against the <code class="systemitem">ftp.debian.org</code>
|
|||
|
pseudo-package or an email to <code class="email"><<a class="email" href="mailto:ftpmaster@debian.org">ftpmaster@debian.org</a>></code>, but also see
|
|||
|
the procedures in <a class="xref" href="pkgs.html#archive-manip" title="5.9. Moving, removing, renaming, adopting, and orphaning packages">Section 5.9, “Moving, removing, renaming, adopting, and orphaning packages”</a>.
|
|||
|
</p></div><div class="section" title="4.4.3. The www-master server"><div class="titlepage"><div><div><h3 class="title"><a id="servers-www"></a>4.4.3. The www-master server</h3></div></div></div><p>
|
|||
|
The main web server is <code class="literal">www-master.debian.org</code>. It holds the
|
|||
|
official web pages, the face of Debian for most newbies.
|
|||
|
</p><p>
|
|||
|
If you find a problem with the Debian web server, you should generally submit a
|
|||
|
bug against the pseudo-package, <code class="systemitem">www.debian.org</code>. Remember to check whether or not
|
|||
|
someone else has already reported the problem to the <a class="ulink" href="http://bugs.debian.org/www.debian.org" target="_top">Bug Tracking System</a>.
|
|||
|
</p></div><div class="section" title="4.4.4. The people web server"><div class="titlepage"><div><div><h3 class="title"><a id="servers-people"></a>4.4.4. The people web server</h3></div></div></div><p>
|
|||
|
<code class="literal">people.debian.org</code> is the server used for developers' own web
|
|||
|
pages about anything related to Debian.
|
|||
|
</p><p>
|
|||
|
If you have some Debian-specific information which you want to serve on the
|
|||
|
web, you can do this by putting material in the
|
|||
|
<code class="filename">public_html</code> directory under your home directory on
|
|||
|
<code class="literal">people.debian.org</code>. This will be accessible at the URL
|
|||
|
<code class="literal">http://people.debian.org/~<em class="replaceable"><code>your-user-id</code></em>/</code>.
|
|||
|
</p><p>
|
|||
|
You should only use this particular location because it will be backed up,
|
|||
|
whereas on other hosts it won't.
|
|||
|
</p><p>
|
|||
|
Usually the only reason to use a different host is when you need to publish
|
|||
|
materials subject to the U.S. export restrictions, in which case you can use
|
|||
|
one of the other servers located outside the United States.
|
|||
|
</p><p>
|
|||
|
Send mail to <code class="email"><<a class="email" href="mailto:debian-devel@lists.debian.org">debian-devel@lists.debian.org</a>></code> if you have any questions.
|
|||
|
</p></div><div class="section" title="4.4.5. The VCS servers"><div class="titlepage"><div><div><h3 class="title"><a id="servers-vcs"></a>4.4.5. The VCS servers</h3></div></div></div><p>
|
|||
|
If you need to use a Version Control System for any of your Debian work,
|
|||
|
you can use one of the existing repositories hosted on Alioth or you can
|
|||
|
request a new project and ask for the VCS repository of your choice.
|
|||
|
Alioth supports CVS (cvs.alioth.debian.org/cvs.debian.org), Subversion
|
|||
|
(svn.debian.org), Arch (tla/baz, both on arch.debian.org), Bazaar
|
|||
|
(bzr.debian.org), Darcs (darcs.debian.org), Mercurial (hg.debian.org) and Git
|
|||
|
(git.debian.org). Checkout <a class="ulink" href="http://wiki.debian.org/Alioth/PackagingProject" target="_top">http://wiki.debian.org/Alioth/PackagingProject</a> if you plan
|
|||
|
to maintain packages in a VCS repository. See <a class="xref" href="resources.html#alioth" title="4.12. Debian's FusionForge installation: Alioth">Section 4.12, “Debian's FusionForge installation: Alioth”</a> for
|
|||
|
information on the services provided by Alioth.
|
|||
|
</p></div><div class="section" title="4.4.6. chroots to different distributions"><div class="titlepage"><div><div><h3 class="title"><a id="dchroot"></a>4.4.6. chroots to different distributions</h3></div></div></div><p>
|
|||
|
On some machines, there are chroots to different distributions available. You
|
|||
|
can use them like this:
|
|||
|
</p><pre class="screen">
|
|||
|
vore$ dchroot unstable
|
|||
|
Executing shell in chroot: /org/vore.debian.org/chroots/user/unstable
|
|||
|
</pre><p>
|
|||
|
In all chroots, the normal user home directories are available. You can find
|
|||
|
out which chroots are available via
|
|||
|
<a class="ulink" href="http://db.debian.org/machines.cgi" target="_top">http://db.debian.org/machines.cgi</a>.
|
|||
|
</p></div></div><div class="section" title="4.5. The Developers Database"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="devel-db"></a>4.5. The Developers Database</h2></div></div></div><p>
|
|||
|
The Developers Database, at <a class="ulink" href="https://db.debian.org/" target="_top">https://db.debian.org/</a>, is an LDAP directory for
|
|||
|
managing Debian developer attributes. You can use this resource to search the
|
|||
|
list of Debian developers. Part of this information is also available through
|
|||
|
the finger service on Debian servers, try <span class="command"><strong>finger
|
|||
|
yourlogin@db.debian.org</strong></span> to see what it reports.
|
|||
|
</p><p>
|
|||
|
Developers can <a class="ulink" href="https://db.debian.org/login.html" target="_top">log into the
|
|||
|
database</a> to change various information about themselves, such as:
|
|||
|
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
|
|||
|
forwarding address for your debian.org email
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
subscription to debian-private
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
whether you are on vacation
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
personal information such as your address, country, the latitude and longitude
|
|||
|
of the place where you live for use in <a class="ulink" href="http://www.debian.org/devel/developers.loc" target="_top">the world map of Debian
|
|||
|
developers</a>, phone and fax numbers, IRC nickname and web page
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
password and preferred shell on Debian Project machines
|
|||
|
</p></li></ul></div><p>
|
|||
|
Most of the information is not accessible to the public, naturally. For more
|
|||
|
information please read the online documentation that you can find at <a class="ulink" href="http://db.debian.org/doc-general.html" target="_top">http://db.debian.org/doc-general.html</a>.
|
|||
|
</p><p>
|
|||
|
Developers can also submit their SSH keys to be used for authorization on the
|
|||
|
official Debian machines, and even add new *.debian.net DNS entries. Those
|
|||
|
features are documented at <a class="ulink" href="http://db.debian.org/doc-mail.html" target="_top">http://db.debian.org/doc-mail.html</a>.
|
|||
|
</p></div><div class="section" title="4.6. The Debian archive"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="archive"></a>4.6. The Debian archive</h2></div></div></div><p>
|
|||
|
The Debian GNU/Linux distribution consists of a lot of packages
|
|||
|
(currently around 15000 source packages) and a few additional
|
|||
|
files (such as documentation and installation disk images).
|
|||
|
</p><p>
|
|||
|
Here is an example directory tree of a complete Debian archive:
|
|||
|
</p><pre class="screen">dists/stable/main/
|
|||
|
dists/stable/main/binary-amd64/
|
|||
|
dists/stable/main/binary-armel/
|
|||
|
dists/stable/main/binary-i386/
|
|||
|
...
|
|||
|
dists/stable/main/source/
|
|||
|
...
|
|||
|
dists/stable/main/disks-amd64/
|
|||
|
dists/stable/main/disks-armel/
|
|||
|
dists/stable/main/disks-i386/
|
|||
|
...
|
|||
|
|
|||
|
dists/stable/contrib/
|
|||
|
dists/stable/contrib/binary-amd64/
|
|||
|
dists/stable/contrib/binary-armel/
|
|||
|
dists/stable/contrib/binary-i386/
|
|||
|
...
|
|||
|
dists/stable/contrib/source/
|
|||
|
|
|||
|
dists/stable/non-free/
|
|||
|
dists/stable/non-free/binary-amd64/
|
|||
|
dists/stable/non-free/binary-armel/
|
|||
|
dists/stable/non-free/binary-i386/
|
|||
|
...
|
|||
|
dists/stable/non-free/source/
|
|||
|
|
|||
|
dists/testing/
|
|||
|
dists/testing/main/
|
|||
|
...
|
|||
|
dists/testing/contrib/
|
|||
|
...
|
|||
|
dists/testing/non-free/
|
|||
|
...
|
|||
|
|
|||
|
dists/unstable
|
|||
|
dists/unstable/main/
|
|||
|
...
|
|||
|
dists/unstable/contrib/
|
|||
|
...
|
|||
|
dists/unstable/non-free/
|
|||
|
...
|
|||
|
|
|||
|
pool/
|
|||
|
pool/main/a/
|
|||
|
pool/main/a/apt/
|
|||
|
...
|
|||
|
pool/main/b/
|
|||
|
pool/main/b/bash/
|
|||
|
...
|
|||
|
pool/main/liba/
|
|||
|
pool/main/liba/libalias-perl/
|
|||
|
...
|
|||
|
pool/main/m/
|
|||
|
pool/main/m/mailx/
|
|||
|
...
|
|||
|
pool/non-free/f/
|
|||
|
pool/non-free/f/firmware-nonfree/
|
|||
|
...</pre><p>
|
|||
|
As you can see, the top-level directory contains two directories,
|
|||
|
<code class="filename">dists/</code> and <code class="filename">pool/</code>. The latter is a
|
|||
|
“pool” in which the packages actually are, and which is handled by the
|
|||
|
archive maintenance database and the accompanying programs. The former
|
|||
|
contains the distributions, <code class="literal">stable</code>,
|
|||
|
<code class="literal">testing</code> and <code class="literal">unstable</code>. The
|
|||
|
<code class="filename">Packages</code> and <code class="filename">Sources</code> files in the
|
|||
|
distribution subdirectories can reference files in the
|
|||
|
<code class="filename">pool/</code> directory. The directory tree below each of the
|
|||
|
distributions is arranged in an identical manner. What we describe below for
|
|||
|
<code class="literal">stable</code> is equally applicable to the
|
|||
|
<code class="literal">unstable</code> and <code class="literal">testing</code> distributions.
|
|||
|
</p><p>
|
|||
|
<code class="filename">dists/stable</code> contains three directories, namely
|
|||
|
<code class="filename">main</code>, <code class="filename">contrib</code>, and
|
|||
|
<code class="filename">non-free</code>.
|
|||
|
</p><p>
|
|||
|
In each of the areas, there is a directory for the source packages
|
|||
|
(<code class="filename">source</code>) and a directory for each supported architecture
|
|||
|
(<code class="filename">binary-i386</code>, <code class="filename">binary-amd64</code>, etc.).
|
|||
|
</p><p>
|
|||
|
The <code class="filename">main</code> area contains additional directories which hold
|
|||
|
the disk images and some essential pieces of documentation required for
|
|||
|
installing the Debian distribution on a specific architecture
|
|||
|
(<code class="filename">disks-i386</code>, <code class="filename">disks-amd64</code>, etc.).
|
|||
|
</p><div class="section" title="4.6.1. Sections"><div class="titlepage"><div><div><h3 class="title"><a id="archive-sections"></a>4.6.1. Sections</h3></div></div></div><p>
|
|||
|
The <code class="literal">main</code> section of the Debian archive is what makes up
|
|||
|
the <span class="strong"><strong>official Debian GNU/Linux distribution</strong></span>.
|
|||
|
The <code class="literal">main</code> section is official because it fully complies
|
|||
|
with all our guidelines. The other two sections do not, to different degrees;
|
|||
|
as such, they are <span class="strong"><strong>not</strong></span> officially part of
|
|||
|
Debian GNU/Linux.
|
|||
|
</p><p>
|
|||
|
Every package in the main section must fully comply with the <a class="ulink" href="http://www.debian.org/social_contract#guidelines" target="_top">Debian Free Software
|
|||
|
Guidelines</a> (DFSG) and with all other policy requirements as described
|
|||
|
in the <a class="ulink" href="http://www.debian.org/doc/debian-policy/" target="_top">Debian Policy
|
|||
|
Manual</a>. The DFSG is our definition of “free software.” Check out
|
|||
|
the Debian Policy Manual for details.
|
|||
|
</p><p>
|
|||
|
Packages in the <code class="literal">contrib</code> section have to comply with the
|
|||
|
DFSG, but may fail other requirements. For instance, they may depend on
|
|||
|
non-free packages.
|
|||
|
</p><p>
|
|||
|
Packages which do not conform to the DFSG are placed in the
|
|||
|
<code class="literal">non-free</code> section. These packages are not considered as
|
|||
|
part of the Debian distribution, though we enable their use, and we provide
|
|||
|
infrastructure (such as our bug-tracking system and mailing lists) for non-free
|
|||
|
software packages.
|
|||
|
</p><p>
|
|||
|
The <a class="ulink" href="http://www.debian.org/doc/debian-policy/" target="_top">Debian Policy
|
|||
|
Manual</a> contains a more exact definition of the three sections. The
|
|||
|
above discussion is just an introduction.
|
|||
|
</p><p>
|
|||
|
The separation of the three sections at the top-level of the archive is
|
|||
|
important for all people who want to distribute Debian, either via FTP servers
|
|||
|
on the Internet or on CD-ROMs: by distributing only the
|
|||
|
<code class="literal">main</code> and <code class="literal">contrib</code> sections, one can
|
|||
|
avoid any legal risks. Some packages in the <code class="literal">non-free</code>
|
|||
|
section do not allow commercial distribution, for example.
|
|||
|
</p><p>
|
|||
|
On the other hand, a CD-ROM vendor could easily check the individual package
|
|||
|
licenses of the packages in <code class="literal">non-free</code> and include as many
|
|||
|
on the CD-ROMs as it's allowed to. (Since this varies greatly from vendor to
|
|||
|
vendor, this job can't be done by the Debian developers.)
|
|||
|
</p><p>
|
|||
|
Note that the term section is also used to refer to categories which simplify
|
|||
|
the organization and browsing of available packages, e.g.
|
|||
|
<code class="literal">admin</code>, <code class="literal">net</code>,
|
|||
|
<code class="literal">utils</code> etc. Once upon a time, these sections (subsections,
|
|||
|
rather) existed in the form of subdirectories within the Debian archive.
|
|||
|
Nowadays, these exist only in the Section header fields of packages.
|
|||
|
</p></div><div class="section" title="4.6.2. Architectures"><div class="titlepage"><div><div><h3 class="title"><a id="s4.6.2"></a>4.6.2. Architectures</h3></div></div></div><p>
|
|||
|
In the first days, the Linux kernel was only available for Intel i386 (or
|
|||
|
greater) platforms, and so was Debian. But as Linux became more and more
|
|||
|
popular, the kernel was ported to other architectures and Debian started
|
|||
|
to support them. And as if supporting so much hardware was not enough,
|
|||
|
Debian decided to build some ports based on other Unix kernels, like
|
|||
|
<code class="literal">hurd</code> and <code class="literal">kfreebsd</code>.
|
|||
|
</p><p>
|
|||
|
Debian GNU/Linux 1.3 was only available as <code class="literal">i386</code>. Debian
|
|||
|
2.0 shipped for <code class="literal">i386</code> and <code class="literal">m68k</code>
|
|||
|
architectures. Debian 2.1 shipped for the <code class="literal">i386</code>,
|
|||
|
<code class="literal">m68k</code>, <code class="literal">alpha</code>, and
|
|||
|
<code class="literal">sparc</code> architectures. Since then Debian has grown hugely.
|
|||
|
Debian 6 supports a total of nine Linux architectures (<code class="literal">amd64</code>,
|
|||
|
<code class="literal">armel</code>, <code class="literal">i386</code>,
|
|||
|
<code class="literal">ia64</code>, <code class="literal">mips</code>,
|
|||
|
<code class="literal">mipsel</code>, <code class="literal">powerpc</code>,
|
|||
|
<code class="literal">s390</code>, <code class="literal">sparc</code>) and two kFreeBSD architectures
|
|||
|
(<code class="literal">kfreebsd-i386</code> and <code class="literal">kfreebsd-amd64</code>).
|
|||
|
</p><p>
|
|||
|
Information for developers and users about the specific ports are available at
|
|||
|
the <a class="ulink" href="http://www.debian.org/ports/" target="_top">Debian Ports web pages</a>.
|
|||
|
</p></div><div class="section" title="4.6.3. Packages"><div class="titlepage"><div><div><h3 class="title"><a id="s4.6.3"></a>4.6.3. Packages</h3></div></div></div><p>
|
|||
|
There are two types of Debian packages, namely <code class="literal">source</code> and
|
|||
|
<code class="literal">binary</code> packages.
|
|||
|
</p><p>
|
|||
|
Depending on the format of the source package, it will consist
|
|||
|
of one or more files in addition to the mandatory <code class="filename">.dsc</code>
|
|||
|
file:
|
|||
|
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>with format “1.0”, it has either a <code class="filename">.tar.gz</code>
|
|||
|
file or both an <code class="filename">.orig.tar.gz</code> and a
|
|||
|
<code class="filename">.diff.gz</code> file;</p></li><li class="listitem"><p>with format “3.0 (quilt)”, it has a mandatory
|
|||
|
<code class="filename">.orig.tar.{gz,bz2,xz}</code> upstream tarball,
|
|||
|
multiple optional <code class="filename">.orig-<em class="replaceable"><code>component</code></em>.tar.{gz,bz2,xz}</code>
|
|||
|
additional upstream tarballs and a mandatory
|
|||
|
<code class="filename">debian.tar.{gz,bz2,xz}</code> debian
|
|||
|
tarball;</p></li><li class="listitem"><p>with format “3.0 (native)”, it has only
|
|||
|
a single <code class="filename">.tar.{gz,bz2,xz}</code> tarball.</p></li></ul></div><p>
|
|||
|
</p><p>
|
|||
|
If a package is developed specially for Debian and is not distributed
|
|||
|
outside of Debian, there is just one
|
|||
|
<code class="filename">.tar.{gz,bz2,xz}</code> file which contains the sources of
|
|||
|
the program, it's called a “native” source package. If a package is
|
|||
|
distributed elsewhere too, the
|
|||
|
<code class="filename">.orig.tar.{gz,bz2,xz}</code> file stores the so-called
|
|||
|
<code class="literal">upstream source code</code>, that is the source code that's
|
|||
|
distributed by the <code class="literal">upstream maintainer</code> (often the
|
|||
|
author of the software). In this case, the <code class="filename">.diff.gz</code>
|
|||
|
or the <code class="filename">debian.tar.{gz,bz2,xz}</code> contains the changes
|
|||
|
made by the Debian maintainer.
|
|||
|
</p><p>
|
|||
|
The <code class="filename">.dsc</code> file lists all the files in the source package
|
|||
|
together with checksums (<span class="command"><strong>md5sums</strong></span>) and some additional info
|
|||
|
about the package (maintainer, version, etc.).
|
|||
|
</p></div><div class="section" title="4.6.4. Distributions"><div class="titlepage"><div><div><h3 class="title"><a id="s4.6.4"></a>4.6.4. Distributions</h3></div></div></div><p>
|
|||
|
The directory system described in the previous chapter is itself contained
|
|||
|
within <code class="literal">distribution directories</code>. Each distribution is
|
|||
|
actually contained in the <code class="filename">pool</code> directory in the top-level
|
|||
|
of the Debian archive itself.
|
|||
|
</p><p>
|
|||
|
To summarize, the Debian archive has a root directory within an FTP server.
|
|||
|
For instance, at the mirror site, <code class="literal">ftp.us.debian.org</code>, the
|
|||
|
Debian archive itself is contained in <a class="ulink" href="ftp://ftp.us.debian.org/debian" target="_top">/debian</a>, which is a common
|
|||
|
location (another is <code class="filename">/pub/debian</code>).
|
|||
|
</p><p>
|
|||
|
A distribution comprises Debian source and binary packages, and the respective
|
|||
|
<code class="filename">Sources</code> and <code class="filename">Packages</code> index files,
|
|||
|
containing the header information from all those packages. The former are kept
|
|||
|
in the <code class="filename">pool/</code> directory, while the latter are kept in the
|
|||
|
<code class="filename">dists/</code> directory of the archive (for backwards
|
|||
|
compatibility).
|
|||
|
</p><div class="section" title="4.6.4.1. Stable, testing, and unstable"><div class="titlepage"><div><div><h4 class="title"><a id="sec-dists"></a>4.6.4.1. Stable, testing, and unstable</h4></div></div></div><p>
|
|||
|
There are always distributions called <code class="literal">stable</code> (residing in
|
|||
|
<code class="filename">dists/stable</code>), <code class="literal">testing</code> (residing in
|
|||
|
<code class="filename">dists/testing</code>), and <code class="literal">unstable</code>
|
|||
|
(residing in <code class="filename">dists/unstable</code>). This reflects the
|
|||
|
development process of the Debian project.
|
|||
|
</p><p>
|
|||
|
Active development is done in the <code class="literal">unstable</code> distribution
|
|||
|
(that's why this distribution is sometimes called the <code class="literal">development
|
|||
|
distribution</code>). Every Debian developer can update his or her
|
|||
|
packages in this distribution at any time. Thus, the contents of this
|
|||
|
distribution change from day to day. Since no special effort is made to make
|
|||
|
sure everything in this distribution is working properly, it is sometimes
|
|||
|
literally unstable.
|
|||
|
</p><p>
|
|||
|
The <a class="link" href="pkgs.html#testing" title="5.13. The testing distribution">testing</a> distribution is generated
|
|||
|
automatically by taking packages from <code class="literal">unstable</code> if they
|
|||
|
satisfy certain criteria. Those criteria should ensure a good quality for
|
|||
|
packages within <code class="literal">testing</code>. The update to
|
|||
|
<code class="literal">testing</code> is launched twice each day, right after the new
|
|||
|
packages have been installed. See <a class="xref" href="pkgs.html#testing" title="5.13. The testing distribution">Section 5.13, “The testing distribution”</a>.
|
|||
|
</p><p>
|
|||
|
After a period of development, once the release manager deems fit, the
|
|||
|
<code class="literal">testing</code> distribution is frozen, meaning that the policies
|
|||
|
which control how packages move from <code class="literal">unstable</code> to
|
|||
|
<code class="literal">testing</code> are tightened. Packages which are too buggy are
|
|||
|
removed. No changes are allowed into <code class="literal">testing</code> except for
|
|||
|
bug fixes. After some time has elapsed, depending on progress, the
|
|||
|
<code class="literal">testing</code> distribution is frozen even further. Details of
|
|||
|
the handling of the testing distribution are published by the Release Team on
|
|||
|
debian-devel-announce. After the open issues are solved to the satisfaction of
|
|||
|
the Release Team, the distribution is released. Releasing means that
|
|||
|
<code class="literal">testing</code> is renamed to <code class="literal">stable</code>, and a
|
|||
|
new copy is created for the new <code class="literal">testing</code>, and the previous
|
|||
|
<code class="literal">stable</code> is renamed to <code class="literal">oldstable</code> and
|
|||
|
stays there until it is finally archived. On archiving, the contents are moved
|
|||
|
to <code class="literal">archive.debian.org</code>.
|
|||
|
</p><p>
|
|||
|
This development cycle is based on the assumption that the
|
|||
|
<code class="literal">unstable</code> distribution becomes <code class="literal">stable</code>
|
|||
|
after passing a period of being in <code class="literal">testing</code>. Even once a
|
|||
|
distribution is considered stable, a few bugs inevitably remain — that's why
|
|||
|
the stable distribution is updated every now and then. However, these updates
|
|||
|
are tested very carefully and have to be introduced into the archive
|
|||
|
individually to reduce the risk of introducing new bugs. You can find proposed
|
|||
|
additions to <code class="literal">stable</code> in the
|
|||
|
<code class="filename">proposed-updates</code> directory. Those packages in
|
|||
|
<code class="filename">proposed-updates</code> that pass muster are periodically moved
|
|||
|
as a batch into the stable distribution and the revision level of the stable
|
|||
|
distribution is incremented (e.g., ‘6.0’ becomes ‘6.0.1’, ‘5.0.7’
|
|||
|
becomes ‘5.0.8’, and so forth). Please refer to
|
|||
|
<a class="link" href="pkgs.html#upload-stable" title="5.5.1. Special case: uploads to the stable and oldstable distributions">uploads to the <code class="literal">stable</code>
|
|||
|
distribution</a> for details.
|
|||
|
</p><p>
|
|||
|
Note that development under <code class="literal">unstable</code> continues during the
|
|||
|
freeze period, since the <code class="literal">unstable</code> distribution remains in
|
|||
|
place in parallel with <code class="literal">testing</code>.
|
|||
|
</p></div><div class="section" title="4.6.4.2. More information about the testing distribution"><div class="titlepage"><div><div><h4 class="title"><a id="s4.6.4.2"></a>4.6.4.2. More information about the testing distribution</h4></div></div></div><p>
|
|||
|
Packages are usually installed into the <code class="literal">testing</code> distribution
|
|||
|
after they have undergone some degree of testing in <code class="literal">unstable</code>.
|
|||
|
</p><p>
|
|||
|
For more details, please see the <a class="link" href="pkgs.html#testing" title="5.13. The testing distribution">information about
|
|||
|
the testing distribution</a>.
|
|||
|
</p></div><div class="section" title="4.6.4.3. Experimental"><div class="titlepage"><div><div><h4 class="title"><a id="experimental"></a>4.6.4.3. Experimental</h4></div></div></div><p>
|
|||
|
The <code class="literal">experimental</code> distribution is a special distribution.
|
|||
|
It is not a full distribution in the same sense as <code class="literal">stable</code>,
|
|||
|
<code class="literal">testing</code> and <code class="literal">unstable</code> are.
|
|||
|
Instead, it is meant to be a temporary staging area for highly experimental
|
|||
|
software where there's a good chance that the software could break your system,
|
|||
|
or software that's just too unstable even for the <code class="literal">unstable</code>
|
|||
|
distribution (but there is a reason to package it nevertheless). Users who
|
|||
|
download and install packages from <code class="literal">experimental</code> are
|
|||
|
expected to have been duly warned. In short, all bets are off for the
|
|||
|
<code class="literal">experimental</code> distribution.
|
|||
|
</p><p>
|
|||
|
These are the <span class="citerefentry"><span class="refentrytitle">sources.list</span>(5)</span> lines for
|
|||
|
<code class="literal">experimental</code>:
|
|||
|
</p><pre class="programlisting">
|
|||
|
deb http://ftp.<em class="replaceable"><code>xy</code></em>.debian.org/debian/ experimental main
|
|||
|
deb-src http://ftp.<em class="replaceable"><code>xy</code></em>.debian.org/debian/ experimental main
|
|||
|
</pre><p>
|
|||
|
If there is a chance that the software could do grave damage to a system, it is
|
|||
|
likely to be better to put it into <code class="literal">experimental</code>. For
|
|||
|
instance, an experimental compressed file system should probably go into
|
|||
|
<code class="literal">experimental</code>.
|
|||
|
</p><p>
|
|||
|
Whenever there is a new upstream version of a package that introduces new
|
|||
|
features but breaks a lot of old ones, it should either not be uploaded, or be
|
|||
|
uploaded to <code class="literal">experimental</code>. A new, beta, version of some
|
|||
|
software which uses a completely different configuration can go into
|
|||
|
<code class="literal">experimental</code>, at the maintainer's discretion. If you are
|
|||
|
working on an incompatible or complex upgrade situation, you can also use
|
|||
|
<code class="literal">experimental</code> as a staging area, so that testers can get
|
|||
|
early access.
|
|||
|
</p><p>
|
|||
|
Some experimental software can still go into <code class="literal">unstable</code>,
|
|||
|
with a few warnings in the description, but that isn't recommended because
|
|||
|
packages from <code class="literal">unstable</code> are expected to propagate to
|
|||
|
<code class="literal">testing</code> and thus to <code class="literal">stable</code>. You
|
|||
|
should not be afraid to use <code class="literal">experimental</code> since it does not
|
|||
|
cause any pain to the ftpmasters, the experimental packages are periodically
|
|||
|
removed once you upload the package in <code class="literal">unstable</code> with a
|
|||
|
higher version number.
|
|||
|
</p><p>
|
|||
|
New software which isn't likely to damage your system can go directly into
|
|||
|
<code class="literal">unstable</code>.
|
|||
|
</p><p>
|
|||
|
An alternative to <code class="literal">experimental</code> is to use your personal web
|
|||
|
space on <code class="literal">people.debian.org</code>.
|
|||
|
</p></div></div><div class="section" title="4.6.5. Release code names"><div class="titlepage"><div><div><h3 class="title"><a id="codenames"></a>4.6.5. Release code names</h3></div></div></div><p>
|
|||
|
Every released Debian distribution has a <code class="literal">code name</code>: Debian
|
|||
|
1.1 is called <code class="literal">buzz</code>; Debian 1.2, <code class="literal">rex</code>;
|
|||
|
Debian 1.3, <code class="literal">bo</code>; Debian 2.0, <code class="literal">hamm</code>;
|
|||
|
Debian 2.1, <code class="literal">slink</code>; Debian 2.2, <code class="literal">potato</code>;
|
|||
|
Debian 3.0, <code class="literal">woody</code>; Debian 3.1, <code class="literal">sarge</code>;
|
|||
|
Debian 4.0, <code class="literal">etch</code>; Debian 5.0, <code class="literal">lenny</code>;
|
|||
|
Debian 6.0, <code class="literal">squeeze</code>
|
|||
|
and the next release will be called <code class="literal">wheezy</code>.
|
|||
|
There is also a ``pseudo-distribution'', called
|
|||
|
<code class="literal">sid</code>, which is the current <code class="literal">unstable</code>
|
|||
|
distribution; since packages are moved from <code class="literal">unstable</code> to
|
|||
|
<code class="literal">testing</code> as they approach stability, <code class="literal">sid</code>
|
|||
|
itself is never released. As well as the usual contents of a Debian
|
|||
|
distribution, <code class="literal">sid</code> contains packages for architectures which
|
|||
|
are not yet officially supported or released by Debian. These architectures
|
|||
|
are planned to be integrated into the mainstream distribution at some future
|
|||
|
date.
|
|||
|
</p><p>
|
|||
|
Since Debian has an open development model (i.e., everyone can participate and
|
|||
|
follow the development) even the <code class="literal">unstable</code> and <code class="literal">
|
|||
|
testing</code> distributions are distributed to the Internet through the
|
|||
|
Debian FTP and HTTP server network. Thus, if we had called the directory which
|
|||
|
contains the release candidate version <code class="literal">testing</code>, then we
|
|||
|
would have to rename it to <code class="literal">stable</code> when the version
|
|||
|
is released, which would cause all FTP mirrors to re-retrieve the whole
|
|||
|
distribution (which is quite large).
|
|||
|
</p><p>
|
|||
|
On the other hand, if we called the distribution directories
|
|||
|
<code class="literal">Debian-x.y</code> from the beginning, people would think that
|
|||
|
Debian release <code class="literal">x.y</code> is available. (This happened in the
|
|||
|
past, where a CD-ROM vendor built a Debian 1.0 CD-ROM based on a pre-1.0
|
|||
|
development version. That's the reason why the first official Debian release
|
|||
|
was 1.1, and not 1.0.)
|
|||
|
</p><p>
|
|||
|
Thus, the names of the distribution directories in the archive are determined
|
|||
|
by their code names and not their release status (e.g., `squeeze'). These names
|
|||
|
stay the same during the development period and after the release; symbolic
|
|||
|
links, which can be changed easily, indicate the currently released stable
|
|||
|
distribution. That's why the real distribution directories use the
|
|||
|
<code class="literal">code names</code>, while symbolic links for
|
|||
|
<code class="literal">stable</code>, <code class="literal">testing</code>, and
|
|||
|
<code class="literal">unstable</code> point to the appropriate release directories.
|
|||
|
</p></div></div><div class="section" title="4.7. Debian mirrors"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="mirrors"></a>4.7. Debian mirrors</h2></div></div></div><p>
|
|||
|
The various download archives and the web site have several mirrors available
|
|||
|
in order to relieve our canonical servers from heavy load. In fact, some of
|
|||
|
the canonical servers aren't public — a first tier of mirrors balances the
|
|||
|
load instead. That way, users always access the mirrors and get used to using
|
|||
|
them, which allows Debian to better spread its bandwidth requirements over
|
|||
|
several servers and networks, and basically makes users avoid hammering on one
|
|||
|
primary location. Note that the first tier of mirrors is as up-to-date as it
|
|||
|
can be since they update when triggered from the internal sites (we call this
|
|||
|
push mirroring).
|
|||
|
</p><p>
|
|||
|
All the information on Debian mirrors, including a list of the available public
|
|||
|
FTP/HTTP servers, can be found at <a class="ulink" href="http://www.debian.org/mirror/" target="_top">http://www.debian.org/mirror/</a>. This useful page also
|
|||
|
includes information and tools which can be helpful if you are interested in
|
|||
|
setting up your own mirror, either for internal or public access.
|
|||
|
</p><p>
|
|||
|
Note that mirrors are generally run by third-parties who are interested in
|
|||
|
helping Debian. As such, developers generally do not have accounts on these
|
|||
|
machines.
|
|||
|
</p></div><div class="section" title="4.8. The Incoming system"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="incoming-system"></a>4.8. The Incoming system</h2></div></div></div><p>
|
|||
|
The Incoming system is responsible for collecting updated packages and
|
|||
|
installing them in the Debian archive. It consists of a set of directories and
|
|||
|
scripts that are installed on <code class="literal">ftp-master.debian.org</code>.
|
|||
|
</p><p>
|
|||
|
Packages are uploaded by all the maintainers into a directory called
|
|||
|
<code class="filename">UploadQueue</code>. This directory is scanned every few minutes
|
|||
|
by a daemon called <span class="command"><strong>queued</strong></span>,
|
|||
|
<code class="filename">*.command</code>-files are executed, and remaining and correctly
|
|||
|
signed <code class="filename">*.changes</code>-files are moved together with their
|
|||
|
corresponding files to the <code class="filename">unchecked</code> directory. This
|
|||
|
directory is not visible for most Developers, as ftp-master is restricted; it
|
|||
|
is scanned every 15 minutes by the <span class="command"><strong>dak process-upload</strong></span> script,
|
|||
|
which verifies the integrity of the uploaded packages and their cryptographic
|
|||
|
signatures. If the package is considered ready to be installed, it is moved
|
|||
|
into the <code class="filename">done</code> directory. If this is the first upload
|
|||
|
of the package (or it has new binary packages), it is moved to the
|
|||
|
<code class="filename">new</code> directory, where it waits for approval by the
|
|||
|
ftpmasters. If the package contains files to be installed by hand it is moved
|
|||
|
to the <code class="filename">byhand</code> directory, where it waits for manual
|
|||
|
installation by the ftpmasters. Otherwise, if any error has been detected, the
|
|||
|
package is refused and is moved to the <code class="filename">reject</code> directory.
|
|||
|
</p><p>
|
|||
|
Once the package is accepted, the system sends a confirmation mail to the
|
|||
|
maintainer and closes all the bugs marked as fixed by the upload, and the
|
|||
|
auto-builders may start recompiling it. The package is now publicly accessible
|
|||
|
at <a class="ulink" href="http://incoming.debian.org/" target="_top">http://incoming.debian.org/</a> until it is really
|
|||
|
installed in the Debian archive. This happens four times a day (and is also
|
|||
|
called the `dinstall run' for historical reasons); the package is then removed
|
|||
|
from incoming and installed in the pool along with all the other packages.
|
|||
|
Once all the other updates (generating new <code class="filename">Packages</code> and
|
|||
|
<code class="filename">Sources</code> index files for example) have been made, a special
|
|||
|
script is called to ask all the primary mirrors to update themselves.
|
|||
|
</p><p>
|
|||
|
The archive maintenance software will also send the OpenPGP/GnuPG signed
|
|||
|
<code class="filename">.changes</code> file that you uploaded to the appropriate mailing
|
|||
|
lists. If a package is released with the <code class="literal">Distribution</code> set
|
|||
|
to <code class="literal">stable</code>, the announcement is sent to
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-changes@lists.debian.org">debian-changes@lists.debian.org</a>></code>. If a package is released with
|
|||
|
<code class="literal">Distribution</code> set to <code class="literal">unstable</code> or
|
|||
|
<code class="literal">experimental</code>, the announcement will be posted to
|
|||
|
<code class="email"><<a class="email" href="mailto:debian-devel-changes@lists.debian.org">debian-devel-changes@lists.debian.org</a>></code> instead.
|
|||
|
</p><p>
|
|||
|
Though ftp-master is restricted, a copy of the installation is available to all
|
|||
|
developers on <code class="literal">ries.debian.org</code>.
|
|||
|
</p></div><div class="section" title="4.9. Package information"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="pkg-info"></a>4.9. Package information</h2></div></div></div><div class="section" title="4.9.1. On the web"><div class="titlepage"><div><div><h3 class="title"><a id="pkg-info-web"></a>4.9.1. On the web</h3></div></div></div><p>
|
|||
|
Each package has several dedicated web pages.
|
|||
|
<code class="literal">http://packages.debian.org/<em class="replaceable"><code>package-name</code></em></code>
|
|||
|
displays each version of the package available in the various distributions.
|
|||
|
Each version links to a page which provides information, including the package
|
|||
|
description, the dependencies, and package download links.
|
|||
|
</p><p>
|
|||
|
The bug tracking system tracks bugs for each package. You can view the bugs of
|
|||
|
a given package at the URL
|
|||
|
<code class="literal">http://bugs.debian.org/<em class="replaceable"><code>package-name</code></em></code>.
|
|||
|
</p></div><div class="section" title="4.9.2. The dak ls utility"><div class="titlepage"><div><div><h3 class="title"><a id="dak-ls"></a>4.9.2. The <span class="command"><strong>dak ls</strong></span> utility</h3></div></div></div><p>
|
|||
|
<span class="command"><strong>dak ls</strong></span> is part of the dak suite of tools, listing
|
|||
|
available package versions for all known distributions and architectures.
|
|||
|
The <span class="command"><strong>dak</strong></span> tool is available on
|
|||
|
<code class="literal">ftp-master.debian.org</code>, and on the mirror on
|
|||
|
<code class="literal">ries.debian.org</code>. It uses a single argument
|
|||
|
corresponding to a package name. An example will explain it better:
|
|||
|
</p><pre class="screen">
|
|||
|
$ dak ls evince
|
|||
|
evince | 0.1.5-2sarge1 | oldstable | source, alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, sparc
|
|||
|
evince | 0.4.0-5 | etch-m68k | source, m68k
|
|||
|
evince | 0.4.0-5 | stable | source, alpha, amd64, arm, hppa, i386, ia64, mips, mipsel, powerpc, s390, sparc
|
|||
|
evince | 2.20.2-1 | testing | source
|
|||
|
evince | 2.20.2-1+b1 | testing | alpha, amd64, arm, armel, hppa, i386, ia64, mips, mipsel, powerpc, s390, sparc
|
|||
|
evince | 2.22.2-1 | unstable | source, alpha, amd64, arm, armel, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, sparc
|
|||
|
</pre><p>
|
|||
|
In this example, you can see that the version in <code class="literal">unstable</code>
|
|||
|
differs from the version in <code class="literal">testing</code> and that there has
|
|||
|
been a binary-only NMU of the package for all architectures. Each version
|
|||
|
of the package has been recompiled on all architectures.
|
|||
|
</p></div></div><div class="section" title="4.10. The Package Tracking System"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="pkg-tracking-system"></a>4.10. The Package Tracking System</h2></div></div></div><p>
|
|||
|
The Package Tracking System (PTS) is an email-based tool to track the activity
|
|||
|
of a source package. This really means that you can get the same emails that
|
|||
|
the package maintainer gets, simply by subscribing to the package in the PTS.
|
|||
|
</p><p>
|
|||
|
Each email sent through the PTS is classified under one of the keywords listed
|
|||
|
below. This will let you select the mails that you want to receive.
|
|||
|
</p><p>
|
|||
|
By default you will get:
|
|||
|
</p><div class="variablelist"><dl><dt><span class="term"><code class="literal">bts</code></span></dt><dd><p>
|
|||
|
All the bug reports and following discussions.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">bts-control</code></span></dt><dd><p>
|
|||
|
The email notifications from <code class="email"><<a class="email" href="mailto:control@bugs.debian.org">control@bugs.debian.org</a>></code> about bug
|
|||
|
report status changes.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">upload-source</code></span></dt><dd><p>
|
|||
|
The email notification from <span class="command"><strong>dak</strong></span> when an uploaded source
|
|||
|
package is accepted.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">katie-other</code></span></dt><dd><p>
|
|||
|
Other warning and error emails from <span class="command"><strong>dak</strong></span> (such as an
|
|||
|
override disparity for the section and/or the priority field).
|
|||
|
</p></dd><dt><span class="term"><code class="literal">buildd</code></span></dt><dd><p>
|
|||
|
Build failures notifications sent by the network of build daemons, they contain
|
|||
|
a pointer to the build logs for analysis.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">default</code></span></dt><dd><p>
|
|||
|
Any non-automatic email sent to the PTS by people who wanted to contact the
|
|||
|
subscribers of the package. This can be done by sending mail to
|
|||
|
<code class="literal"><em class="replaceable"><code>sourcepackage</code></em>@packages.qa.debian.org</code>.
|
|||
|
In order to prevent spam, all messages sent to these addresses must contain the
|
|||
|
<code class="literal">X-PTS-Approved</code> header with a non-empty value.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">contact</code></span></dt><dd><p>
|
|||
|
Mails sent to the maintainer through the *@packages.debian.org email
|
|||
|
aliases.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">summary</code></span></dt><dd><p>
|
|||
|
Regular summary emails about the package's status, including progression
|
|||
|
into <code class="literal">testing</code>,
|
|||
|
<a class="ulink" href="http://dehs.alioth.debian.org/" target="_top">DEHS</a> notifications of
|
|||
|
new upstream versions, and a notification if the package is removed or
|
|||
|
orphaned.
|
|||
|
</p></dd></dl></div><p>
|
|||
|
You can also decide to receive additional information:
|
|||
|
</p><div class="variablelist"><dl><dt><span class="term"><code class="literal">upload-binary</code></span></dt><dd><p>
|
|||
|
The email notification from <span class="command"><strong>katie</strong></span> when an uploaded binary
|
|||
|
package is accepted. In other words, whenever a build daemon or a porter
|
|||
|
uploads your package for another architecture, you can get an email to track
|
|||
|
how your package gets recompiled for all architectures.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">cvs</code></span></dt><dd><p>
|
|||
|
VCS commit notifications, if the package has a VCS repository and the
|
|||
|
maintainer has set up forwarding of commit notifications to the PTS. The
|
|||
|
"cvs" name is historic, in most cases commit notifications will come
|
|||
|
from some other VCS like subversion or git.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">ddtp</code></span></dt><dd><p>
|
|||
|
Translations of descriptions or debconf templates submitted to the Debian
|
|||
|
Description Translation Project.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">derivatives</code></span></dt><dd><p>
|
|||
|
Information about changes made to the package in derivative distributions (for
|
|||
|
example Ubuntu).
|
|||
|
</p></dd><dt><span class="term"><code class="literal">derivatives-bugs</code></span></dt><dd><p>
|
|||
|
Bugs reports and comments from derivative distributions (for example Ubuntu).
|
|||
|
</p></dd></dl></div><div class="section" title="4.10.1. The PTS email interface"><div class="titlepage"><div><div><h3 class="title"><a id="pts-commands"></a>4.10.1. The PTS email interface</h3></div></div></div><p>
|
|||
|
You can control your subscription(s) to the PTS by sending various commands to
|
|||
|
<code class="email"><<a class="email" href="mailto:pts@qa.debian.org">pts@qa.debian.org</a>></code>.
|
|||
|
</p><div class="variablelist"><dl><dt><span class="term"><code class="literal">subscribe <sourcepackage> [<email>]</code></span></dt><dd><p>
|
|||
|
Subscribes <em class="replaceable"><code>email</code></em> to communications related to the
|
|||
|
source package <em class="replaceable"><code>sourcepackage</code></em>. Sender address is
|
|||
|
used if the second argument is not present. If
|
|||
|
<em class="replaceable"><code>sourcepackage</code></em> is not a valid source package, you'll
|
|||
|
get a warning. However if it's a valid binary package, the PTS will subscribe
|
|||
|
you to the corresponding source package.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">unsubscribe <sourcepackage> [<email>]</code></span></dt><dd><p>
|
|||
|
Removes a previous subscription to the source package
|
|||
|
<em class="replaceable"><code>sourcepackage</code></em> using the specified email address or
|
|||
|
the sender address if the second argument is left out.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">unsubscribeall [<email>]</code></span></dt><dd><p>
|
|||
|
Removes all subscriptions of the specified email address or the sender address
|
|||
|
if the second argument is left out.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">which [<email>]</code></span></dt><dd><p>
|
|||
|
Lists all subscriptions for the sender or the email address optionally
|
|||
|
specified.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">keyword [<email>]</code></span></dt><dd><p>
|
|||
|
Tells you the keywords that you are accepting. For an explanation of keywords,
|
|||
|
<a class="link" href="resources.html#pkg-tracking-system" title="4.10. The Package Tracking System">see above</a>. Here's a quick
|
|||
|
summary:
|
|||
|
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
|
|||
|
<code class="literal">bts</code>: mails coming from the Debian Bug Tracking System
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">bts-control</code>: reply to mails sent to
|
|||
|
<code class="email"><<a class="email" href="mailto:control@bugs.debian.org">control@bugs.debian.org</a>></code>
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">summary</code>: automatic summary mails about the state of a
|
|||
|
package
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">contact</code>: mails sent to the maintainer through the
|
|||
|
*@packages.debian.org aliases
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">cvs</code>: notification of VCS commits
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">ddtp</code>: translations of descriptions and debconf templates
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">derivatives</code>: changes made on the package by derivative
|
|||
|
distributions
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">derivatives-bugs</code>: bugs reports and comments from derivative
|
|||
|
distributions
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">upload-source</code>: announce of a new source upload that has been
|
|||
|
accepted
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">upload-binary</code>: announce of a new binary-only upload
|
|||
|
(porting)
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">katie-other</code>: other mails from ftpmasters (override
|
|||
|
disparity, etc.)
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">buildd</code>: build failures notifications from build daemons
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
<code class="literal">default</code>: all the other mails (those which aren't automatic)
|
|||
|
</p></li></ul></div></dd><dt><span class="term"><code class="literal">keyword <sourcepackage> [<email>]</code></span></dt><dd><p>
|
|||
|
Same as the previous item but for the given source package, since you may
|
|||
|
select a different set of keywords for each source package.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">keyword [<email>] {+|-|=} <list of keywords></code></span></dt><dd><p>
|
|||
|
Accept (+) or refuse (-) mails classified under the given keyword(s). Define
|
|||
|
the list (=) of accepted keywords. This changes the default set of keywords
|
|||
|
accepted by a user.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">keywordall [<email>] {+|-|=} <list of keywords></code></span></dt><dd><p>
|
|||
|
Accept (+) or refuse (-) mails classified under the given keyword(s). Define
|
|||
|
the list (=) of accepted keywords. This changes the set of accepted keywords
|
|||
|
of all the currently active subscriptions of a user.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">keyword <sourcepackage> [<email>] {+|-|=} <list of keywords></code></span></dt><dd><p>
|
|||
|
Same as previous item but overrides the keywords list for the indicated source
|
|||
|
package.
|
|||
|
</p></dd><dt><span class="term"><code class="literal">quit | thanks | --</code></span></dt><dd><p>
|
|||
|
Stops processing commands. All following lines are ignored by the bot.
|
|||
|
</p></dd></dl></div><p>
|
|||
|
The <span class="command"><strong>pts-subscribe</strong></span> command-line utility (from the <code class="systemitem">devscripts</code> package) can be handy to temporarily
|
|||
|
subscribe to some packages, for example after having made an non-maintainer
|
|||
|
upload.
|
|||
|
</p></div><div class="section" title="4.10.2. Filtering PTS mails"><div class="titlepage"><div><div><h3 class="title"><a id="pts-mail-filtering"></a>4.10.2. Filtering PTS mails</h3></div></div></div><p>
|
|||
|
Once you are subscribed to a package, you will get the mails sent to
|
|||
|
<code class="literal"><em class="replaceable"><code>sourcepackage</code></em>@packages.qa.debian.org</code>.
|
|||
|
Those mails have special headers appended to let you filter them in a special
|
|||
|
mailbox (e.g. with <span class="command"><strong>procmail</strong></span>). The added headers are
|
|||
|
<code class="literal">X-Loop</code>, <code class="literal">X-PTS-Package</code>,
|
|||
|
<code class="literal">X-PTS-Keyword</code> and <code class="literal">X-Unsubscribe</code>.
|
|||
|
</p><p>
|
|||
|
Here is an example of added headers for a source upload notification on the
|
|||
|
<code class="systemitem">dpkg</code> package:
|
|||
|
</p><pre class="screen">
|
|||
|
X-Loop: dpkg@packages.qa.debian.org
|
|||
|
X-PTS-Package: dpkg
|
|||
|
X-PTS-Keyword: upload-source
|
|||
|
List-Unsubscribe: <mailto:pts@qa.debian.org?body=unsubscribe+dpkg>
|
|||
|
</pre></div><div class="section" title="4.10.3. Forwarding VCS commits in the PTS"><div class="titlepage"><div><div><h3 class="title"><a id="pts-vcs-commit"></a>4.10.3. Forwarding VCS commits in the PTS</h3></div></div></div><p>
|
|||
|
If you use a publicly accessible VCS repository for maintaining your Debian
|
|||
|
package, you may want to forward the commit notification to the PTS so that the
|
|||
|
subscribers (and possible co-maintainers) can closely follow the package's
|
|||
|
evolution.
|
|||
|
</p><p>
|
|||
|
Once you set up the VCS repository to generate commit notifications, you just
|
|||
|
have to make sure it sends a copy of those mails to
|
|||
|
<code class="literal"><em class="replaceable"><code>sourcepackage</code></em>_cvs@packages.qa.debian.org</code>.
|
|||
|
Only the people who accept the <code class="literal">cvs</code> keyword will receive
|
|||
|
these notifications. Note that the mail needs to be sent from a
|
|||
|
<code class="literal">debian.org</code> machine, otherwise you'll have to add
|
|||
|
the <code class="literal">X-PTS-Approved: 1</code> header.
|
|||
|
</p><p>
|
|||
|
For Subversion repositories, the usage of svnmailer is recommended.
|
|||
|
See <a class="ulink" href="http://wiki.debian.org/Alioth/PackagingProject" target="_top">http://wiki.debian.org/Alioth/PackagingProject</a> for an example on how to do it.
|
|||
|
</p></div><div class="section" title="4.10.4. The PTS web interface"><div class="titlepage"><div><div><h3 class="title"><a id="pts-web"></a>4.10.4. The PTS web interface</h3></div></div></div><p>
|
|||
|
The PTS has a web interface at <a class="ulink" href="http://packages.qa.debian.org/" target="_top">http://packages.qa.debian.org/</a> that puts together a lot of
|
|||
|
information about each source package. It features many useful links (BTS, QA
|
|||
|
stats, contact information, DDTP translation status, buildd logs) and gathers
|
|||
|
much more information from various places (30 latest changelog entries, testing
|
|||
|
status, etc.). It's a very useful tool if you want to know what's going on with
|
|||
|
a specific source package. Furthermore there's a form that allows easy
|
|||
|
subscription to the PTS via email.
|
|||
|
</p><p>
|
|||
|
You can jump directly to the web page concerning a specific source package with
|
|||
|
a URL like
|
|||
|
<code class="literal">http://packages.qa.debian.org/<em class="replaceable"><code>sourcepackage</code></em></code>.
|
|||
|
</p><p>
|
|||
|
This web interface has been designed like a portal for the development of
|
|||
|
packages: you can add custom content on your packages' pages. You can add
|
|||
|
static information (news items that are meant to stay available indefinitely)
|
|||
|
and news items in the latest news section.
|
|||
|
</p><p>
|
|||
|
Static news items can be used to indicate:
|
|||
|
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
|
|||
|
the availability of a project hosted on
|
|||
|
<a class="link" href="resources.html#alioth" title="4.12. Debian's FusionForge installation: Alioth">Alioth</a> for co-maintaining the package
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
a link to the upstream web site
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
a link to the upstream bug tracker
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
the existence of an IRC channel dedicated to the software
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
any other available resource that could be useful in the maintenance of the
|
|||
|
package
|
|||
|
</p></li></ul></div><p>
|
|||
|
Usual news items may be used to announce that:
|
|||
|
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
|
|||
|
beta packages are available for testing
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
final packages are expected for next week
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
the packaging is about to be redone from scratch
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
backports are available
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
the maintainer is on vacation (if they wish to publish this information)
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
a NMU is being worked on
|
|||
|
</p></li><li class="listitem"><p>
|
|||
|
something important will affect the package
|
|||
|
</p></li></ul></div><p>
|
|||
|
Both kinds of news are generated in a similar manner: you just have to send an
|
|||
|
email either to <code class="email"><<a class="email" href="mailto:pts-static-news@qa.debian.org">pts-static-news@qa.debian.org</a>></code> or to
|
|||
|
<code class="email"><<a class="email" href="mailto:pts-news@qa.debian.org">pts-news@qa.debian.org</a>></code>. The mail should indicate which package
|
|||
|
is concerned by having the name of the source package in a
|
|||
|
<code class="literal">X-PTS-Package</code> mail header or in a <code class="literal">Package</code>
|
|||
|
pseudo-header (like the BTS reports). If a URL is available in the
|
|||
|
<code class="literal">X-PTS-Url</code> mail header or in the <code class="literal">Url</code>
|
|||
|
pseudo-header, then the result is a link to that URL instead of a complete news
|
|||
|
item.
|
|||
|
</p><p>
|
|||
|
Here are a few examples of valid mails used to generate news items in the PTS.
|
|||
|
The first one adds a link to the viewsvn interface of debian-cd in the Static
|
|||
|
information section:
|
|||
|
</p><pre class="screen">
|
|||
|
From: Raphael Hertzog <hertzog@debian.org>
|
|||
|
To: pts-static-news@qa.debian.org
|
|||
|
Subject: Browse debian-cd SVN repository
|
|||
|
|
|||
|
Package: debian-cd
|
|||
|
Url: http://svn.debian.org/viewsvn/debian-cd/trunk/
|
|||
|
</pre><p>
|
|||
|
The second one is an announcement sent to a mailing list which is also sent to
|
|||
|
the PTS so that it is published on the PTS web page of the package. Note the
|
|||
|
use of the BCC field to avoid answers sent to the PTS by mistake.
|
|||
|
</p><pre class="screen">
|
|||
|
From: Raphael Hertzog <hertzog@debian.org>
|
|||
|
To: debian-gtk-gnome@lists.debian.org
|
|||
|
Bcc: pts-news@qa.debian.org
|
|||
|
Subject: Galeon 2.0 backported for woody
|
|||
|
X-PTS-Package: galeon
|
|||
|
|
|||
|
Hello gnomers!
|
|||
|
|
|||
|
I'm glad to announce that galeon has been backported for woody. You'll find
|
|||
|
everything here:
|
|||
|
...
|
|||
|
</pre><p>
|
|||
|
Think twice before adding a news item to the PTS because you won't be able to
|
|||
|
remove it later and you won't be able to edit it either. The only thing that
|
|||
|
you can do is send a second news item that will deprecate the information
|
|||
|
contained in the previous one.
|
|||
|
</p></div></div><div class="section" title="4.11. Developer's packages overview"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="ddpo"></a>4.11. Developer's packages overview</h2></div></div></div><p>
|
|||
|
A QA (quality assurance) web portal is available at <a class="ulink" href="http://qa.debian.org/developer.php" target="_top">http://qa.debian.org/developer.php</a> which displays a table listing all
|
|||
|
the packages of a single developer (including those where the party is listed
|
|||
|
as a co-maintainer). The table gives a good summary about the developer's
|
|||
|
packages: number of bugs by severity, list of available versions in each
|
|||
|
distribution, testing status and much more including links to any other useful
|
|||
|
information.
|
|||
|
</p><p>
|
|||
|
It is a good idea to look up your own data regularly so that you don't forget
|
|||
|
any open bugs, and so that you don't forget which packages are your
|
|||
|
responsibility.
|
|||
|
</p></div><div class="section" title="4.12. Debian's FusionForge installation: Alioth"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="alioth"></a>4.12. Debian's FusionForge installation: Alioth</h2></div></div></div><p>
|
|||
|
Alioth is a Debian service based on a slightly modified version of the
|
|||
|
FusionForge software (which evolved from SourceForge and GForge). This software offers
|
|||
|
developers access to easy-to-use tools such as bug trackers, patch
|
|||
|
manager, project/task managers, file hosting services, mailing lists, VCS
|
|||
|
repositories etc. All these tools are managed via a web interface.
|
|||
|
</p><p>
|
|||
|
It is intended to provide facilities to free software projects backed or led by
|
|||
|
Debian, facilitate contributions from external developers to projects started
|
|||
|
by Debian, and help projects whose goals are the promotion of Debian or its
|
|||
|
derivatives. It's heavily used by many Debian teams and provides
|
|||
|
hosting for all sorts of VCS repositories.
|
|||
|
</p><p>
|
|||
|
All Debian developers automatically have an account on Alioth. They can
|
|||
|
activate it by using the recover password facility. External developers can
|
|||
|
request guest accounts on Alioth.
|
|||
|
</p><p>
|
|||
|
For more information please visit the following links:
|
|||
|
</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p><a class="ulink" href="http://wiki.debian.org/Alioth" target="_top">http://wiki.debian.org/Alioth</a></p></li><li class="listitem"><p><a class="ulink" href="http://wiki.debian.org/Alioth/FAQ" target="_top">http://wiki.debian.org/Alioth/FAQ</a></p></li><li class="listitem"><p><a class="ulink" href="http://wiki.debian.org/Alioth/PackagingProject" target="_top">http://wiki.debian.org/Alioth/PackagingProject</a></p></li><li class="listitem"><p><a class="ulink" href="http://alioth.debian.org/" target="_top">http://alioth.debian.org/</a></p></li></ul></div></div><div class="section" title="4.13. Goodies for Developers"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="developer-misc"></a>4.13. Goodies for Developers</h2></div></div></div><div class="section" title="4.13.1. LWN Subscriptions"><div class="titlepage"><div><div><h3 class="title"><a id="lwn"></a>4.13.1. LWN Subscriptions</h3></div></div></div><p>
|
|||
|
Since October of 2002, HP has sponsored a subscription to LWN for all
|
|||
|
interested Debian developers. Details on how to get access to this benefit are
|
|||
|
in <a class="ulink" href="http://lists.debian.org/debian-devel-announce/2002/10/msg00018.html" target="_top">http://lists.debian.org/debian-devel-announce/2002/10/msg00018.html</a>.
|
|||
|
</p></div><div class="section" title="4.13.2. Gandi.net Hosting Discount"><div class="titlepage"><div><div><h3 class="title"><a id="gandi"></a>4.13.2. Gandi.net Hosting Discount</h3></div></div></div><p>
|
|||
|
As of November 2008, Gandi.net offers a discount rate on their VPS
|
|||
|
hosting for Debian Developers. See
|
|||
|
<a class="ulink" href="http://lists.debian.org/debian-devel-announce/2008/11/msg00004.html" target="_top">http://lists.debian.org/debian-devel-announce/2008/11/msg00004.html</a>.
|
|||
|
</p></div></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="developer-duties.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="pkgs.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 3. Debian Developer's Duties </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 5. Managing Packages</td></tr></table></div></body></html>
|