Bug#569219: Document transitional and meta-packages
On Mon, 15 Aug 2011, Luca Falavigna wrote:
> > Right. Could someone update the patch?
>
> Patch refreshed with Santiago's suggestions.
> I took the time to expand it a little bit.
I merged it but I changed the wording (hopefully improving it!).
Cf attached patch.
Thanks for your contribution!
Cheers,
--
Raphaël Hertzog ◈ Debian Developer
Follow my Debian News ▶ http://RaphaelHertzog.com (English)
▶ http://RaphaelHertzog.fr (Français)
commit bdd25dee4f0faa21895e09141ce962807b8cc4d2
Author: hertzog <hertzog@313b444b-1b9f-4f58-a734-7bb04f332e8d>
Date: Tue Sep 6 07:26:22 2011 +0000
Document some best practices for meta-packages. Extend those for transitional packages. Based on a patch by Luca Falavigna <dktrkranz@debian.org> (thanks!). Closes: #569219
git-svn-id: svn+ssh://svn.debian.org/svn/ddp/manuals/trunk/developers-reference@8921 313b444b-1b9f-4f58-a734-7bb04f332e8d
diff --git a/best-pkging-practices.dbk b/best-pkging-practices.dbk
index 4f47a69..8b03c47 100644
--- a/best-pkging-practices.dbk
+++ b/best-pkging-practices.dbk
@@ -1670,6 +1670,13 @@ your short description. If you are looking for examples, just run:
<command>apt-cache search .|grep dummy</command> or
<command>apt-cache search .|grep transitional</command>.
</para>
+<para>
+Also, it is recommended to adjust its section to
+<literal>oldlibs</literal>
+and its priority to
+<literal>extra</literal>
+in order to ease <command>deborphan</command>'s job.
+</para>
</section>
<section id="bpp-origtargz">
@@ -1897,6 +1904,33 @@ debugging symbols for, and this dependency should be versioned. For example:
Depends: libfoo (= ${binary:Version})
</screen>
</section>
+<section id="bpp-meta">
+<title>Best practices for meta-packages</title>
+<para>
+A meta-package is a mostly empty package that makes it easy to install a
+coherent set of packages that can evolve over time. It achieves this by
+depending on all the packages of the set. Thanks to the power of APT, the
+meta-package maintainer can adjust the dependencies and the user's system
+will automatically get the supplementary packages. The dropped packages
+that were automaticaly installed will be also be marked as removal
+candidates (and are even automatically removed by <command>aptitude</command>).
+<systemitem role="package">gnome</systemitem> and
+<systemitem role="package">linux-image-amd64</systemitem> are two examples
+of meta-packages (built by the source packages
+<systemitem role="package">meta-gnome2</systemitem> and
+<systemitem role="package">linux-latest</systemitem>)
+</para>
+<para>
+The long description of the meta-package must clearly document its purpose
+so that the user knows what he will lose if he removes the package. Being
+explicit about the consequences is recommended. This is particularly
+important for meta-packages which are installed during initial
+installation and that have not been explicitly installed by the user.
+Those tend to be important to ensure smooth system upgrades and
+the user should be discouraged from uninstalling them to avoid
+potential breakages.
+</para>
+</section>
</section>
diff --git a/debian/changelog b/debian/changelog
index 6811e6f..bcc5b6e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+developers-reference (3.4.7) UNRELEASED; urgency=low
+
+ * Document some best practices for meta-packages. Extend those for
+ transitional packages. Based on a patch by Luca Falavigna
+ <dktrkranz@debian.org> (thanks!). Closes: #569219
+
+ -- Raphaël Hertzog <hertzog@debian.org> Tue, 06 Sep 2011 09:19:21 +0200
+
developers-reference (3.4.6) unstable; urgency=low
[ Raphaël Hertzog ]
Reply to: