Le Sun, Feb 03, 2008 at 05:51:26PM +0100, David Paleino a écrit :
> Il giorno Tue, 29 Jan 2008 12:56:35 +0100
> David Paleino <[EMAIL PROTECTED]> ha scritto:
>
> > Hi all,
> > as you might have seen, r1213 introduces a "Group Policy".
>
> And r1277 added the DocBook XML version :)
Hi all,
I have tried to develop our Policy and prepared the following patch. I
tried to be a little bit more verbose in order to justify our choices
when there could be alternatives. I tried to reflect what makes
consensus on this list, but I would prefer that a few persons confirm
that they agree that there is no personal bias in this patch.
Another reason why I will not commit this patch now is that it may
contain DocBook errors. I intend to work on this later, and propose do
downgrade the version of DocBook used to 4.5, the latest official
version. The currently used one (5.0CR7) is not available in the
docbook-xml package, and this is not convenient for offline work. I
propose to sumbit an "editorial" patch that does this downgrade and
fixes the DocBook errors that it introduces.
Have a nice day,
-- Charles
Index: policy.xml
===================================================================
--- policy.xml (révision 1738)
+++ policy.xml (copie de travail)
@@ -14,6 +15,11 @@
<email>[EMAIL PROTECTED]</email>
<contrib>Initial writing </contrib>
</author>
+ <author>
+ <personname>Charles Plessy</personname>
+ <email>[EMAIL PROTECTED]</email>
+ <contrib>Contributions in 2008</contrib>
+ </author>
</authorgroup>
<releaseinfo>
$ policy.xml rev. @REV@ - @DATE@ (@AUTHOR@) $
@@ -105,12 +111,21 @@
</listitem>
</itemizedlist>
</para>
+ <para>
+ Another way to check the sources is through the
use of the
+ <command>debcheckout</command> command, from the
+ <ulink
url="http://packages.debian.org/devscripts">devscripts</ulink>
+ package.
+ </para>
</sect2>
<sect2>
<title>Repository structure</title>
<para>The SVN repository is structured as follows:
.1 debian-med/. .2 trunk/. .3 community/. .4 debtags/. .4 infrastructure/. .4
website/. .3 packages/. .4 <package>/. .5 branches/. .5 tags/. .5 trunk/.
.6 debian/.
</para>
+ <note><para>We are currently considering an alternative
layout in which all
+ the <filename>trunk</filename>,
<filename>tags</filename> and
+ <filename>branches</filename> directories are grouped
together, so that developpers can checkout trunks without tags.</para></note>
</sect2>
</sect1>
<sect1>
@@ -144,36 +159,106 @@
...</programlisting>
</blockquote>
</sect2>
+ </sect1>
+ <sect1>
+ <title>Policy</title>
<sect2>
- <title>Conventions</title>
- <para>Please, in <filename>debian/control</filename>,
use these values:</para>
- <blockquote>
- <programlisting>...
-Section: ...
-Priority: ...
-Maintainer: Debian-Med Packaging Team <[EMAIL PROTECTED]>
-XS-DM-Upload-Allowed: yes
-Uploaders: <yourname> <youremail>
-Standards-Version: 3.7.3
-Homepage: http://...
-Vcs-Svn:
svn://svn.debian.org/svn/debian-med/trunk/packages/<package>/trunk/
+ <title><filename>debian/control</filename></title>
+ <orderedlist>
+ <listitem>
+ <formalpara>
+ <title>Section</title>
+ <para>Should be <quote>science</quote>
for the source package.</para>
+ </formalpara>
+ </listitem>
+
+ <listitem>
+ <formalpara>
+ <title>Priority</title>
+ <para>Should be <quote>optional</quote>
unless forbidden by the Debian policy (see section 2.5). Packages of priority
<quote>extra</quote> are excluded from some QA tests.</para>
+ </formalpara>
+ </listitem>
+
+ <listitem>
+ <formalpara>
+ <title>Maintainer</title>
+ <para>Maintainer should be Debian-Med
Packaging Team <<email>[EMAIL PROTECTED]</email>>. Please subscribe to
this list if you are Uploader of one of Debian-Med's packages. You can refer to
<ulink url="http://qa.debian.org/[EMAIL PROTECTED]">QA page</ulink>
corresponding to this email to gather information about the packages.</para>
+ </formalpara>
+ </listitem>
+
+ <listitem>
+ <formalpara>
+ <title>Upload by Debian
Maintainers</title>
+ <para>should be enabled with the field
DM-Upload-Allowed: yes. This means that when an Uploader becomes Debian
Maintainer, he will immediately get the possibility to upload the package to
Debian. Please consider this when you sponsor packages in which some Uploaders
are added.</para>
+ </formalpara>
+ </listitem>
+
+ <listitem>
+ <formalpara>
+ <title>Uploaders</title>
+ <para>Please add yourelf as an uploader
when you have a significant interest in a package. Being Uploader means that
you are expected to answer to the bug reports. It is totally acceptable to do
some QA work on a package without adding oneself to the Uploaders field.
+ </para>
+ </formalpara>
+ </listitem>
+
+ <listitem>
+ <formalpara>
+ <title>Standards-Version</title>
+ <para>Please always use the latest
unless there are concerns for backporting. If no changes are needed, please
indicate this fact in the changelog, and increment the value of the
field.</para>
+ </formalpara>
+ </listitem>
+
+ <listitem>
+ <formalpara>
+ <title>Homepage</title>
+ <para>should be documented whenever
possible</para>
+ </formalpara>
+ </listitem>
+
+ <listitem>
+ <formalpara>
+ <title>Vcs-Svn: and Vcs-Browser:</title>
+ <para>Please use the following template:
+ <programlisting>
+ Vcs-Svn:
svn://svn.debian.org/svn/debian-med/trunk/packages/<package>/trunk/
Vcs-Browser:
http://svn.debian.org/wsvn/debian-med/trunk/packages/<package>/trunk/?rev=0&sc=0
-...</programlisting>
- </blockquote>
- <para>Make sure you use the right Section and Priority
fields for
- the package. Also, be sure to use the latest
Standards-Version.
- Please also add the Homepage field, we aim at having
our packages
- the most complete as they can be.</para>
+ </programlisting>.</para>
+ </formalpara>
+ </listitem>
+ </orderedlist>
</sect2>
+
<sect2>
+ <title><filename>debian/copyright</filename></title>
+ <para>We use the <ulink url="">proposed
machine-readable forma</ulink>t for the <filename>debian/copyright</filename>
file. Please list yourself in the <computeroutput>Files:
debian/*</computeroutput> section if you think that your contributions are not
trivial and therefore subjected to copyright. Please chose a license that is
compatible with the program you package. You can also use <emphasis>same as if
it were in the public domain</emphasis> or <emphasis>same as the packaged
program itself</emphasis>.</para>
+ </sect2>
+
+ <sect2>
+ <title><filename>debian/changelog</filename></title>
+ <para>Packages of the Subversion repository that have
been modified but not uploaded must use <emphasis>UNRELEASED</emphasis> as a
distribution name. This can be done automatically by declaring
<emphasis>DEBCHANGE_RELEASE_HEURISTIC=changelog</emphasis> in
<filename>~/.devscripts</filename> and using <command>dch</command>.</para>
+ </sect2>
+
+ <sect2>
+ <title>Debhelper</title>
+ <para>Debhelper uses compatibility levels to control
the behaviour of its commands. The latest level is not always available in
<emphasis>Stable</emphasis> or <emphasis>Backports</emphasis>. Please avoid
using it unless needed until it is available, to facilitate backporting.</para>
+ </sect2>
+
+ <sect2>
+ <title>CDBS</title>
+ <para>The use of CDBS is welcome as it helps us to
factorise our code. Nevertheless, please do not use complex CDBS for
non-trivial packages, so that other developpers can quickly understand the
package when doing QA work.</para>
+ <para>CDBS packages using Debhelper can be build
without <filename>debian/compat</filename> file. Please always included such a
file according to the above guidelines.</para>
+ </sect2>
+
+ <sect2>
<title>Injecting a new package</title>
<para>To inject a new package to the SVN repository,
you must have
- write access to it; i.e. you must be a member of this
group.</para>
+ write access to it; i.e. you must be a member of the
<emphasis>debian-med</emphasis> group on Alioth.</para>
<para>You can inject a new package only after
successfully building
- it with <command>dpkg-buildpackage</command> (or any
wrapper around it). Then you can:</para>
+ it with <command>dpkg-buildpackage</command> (or any
wrapper around it). We use the MergeWithUpstream workflow, so please keep all
the modifications in the <filename>debian</filename> directory, and use the
<option>-o</option> of <command>svn-buildpackage</command>, as in the following
example:</para>
<blockquote>
<para><userinput>
<command>svn-inject</command>
+ <option>-o</option>
<filename>package.dsc</filename>
<filename
class="directory">svn+ssh://[EMAIL
PROTECTED]/svn/debian-med/trunk/packages/</filename>
</userinput></para>
@@ -183,7 +268,7 @@
<command>apt-get</command> it).</para>
<para>Once you injected a new package please make sure
that it is
mentioned in the apropriate tasks file in the package
source of the
- debian-med package in SVN. Normally maintainer watch
the changes in
+ debian-med <acronym>CDD</acronym> package in SVN.
Normally maintainer watch the changes in
the Debian-Med packaging pool but it helps if the
maintainer of a
certain package verifies that everything is in the
right place.</para>
</sect2>
@@ -276,10 +361,9 @@
Debian distribution: be this wrong paths, missing
features, anything
that implies editing the source files. When you
directly edit
upstream's source files, your changes will be put into
a .diff.gz file,
- which should instead contain only debian. Because of
this, it's best
- using a patch handling system which keeps patches under
the
- <filename class="directory">debian/</filename>
directory.</para>
- <para>The most known are <command>quilt</command> and
<command>dpatch</command>.
+ which should instead contain only debian. To better
organise the patches and group the by function, please use a patch handling
system which keeps patches under the
+ <filename class="directory">debian/patches</filename>
directory.</para>
+ <para>The most known are <command>quilt</command>,
<emphasis>simple-patchsys</emphasis> (from the <emphasis>CDBS</emphasis>
package) and <command>dpatch</command>.
Please don't use any other patch system in Debian-Med,
unless absolutely
necessary.</para>
<sect3>
@@ -381,7 +465,7 @@
<blockquote>
<programlisting>include
<filename
class="headerfile">/usr/share/quilt/quilt.make</filename></programlisting>
</blockquote>
- <para>Remember to add the needed
dependencies to its
+ <para>Please use this to import patch
and unpatch rules instead of writing them, and remember to add the needed
dependencies to its
targets:</para>
<blockquote>
<programlisting>...
--
Charles Plessy
http://charles.plessy.org
Wako, Saitama, Japan
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]