Bug#1089110: [PATCH] Document that packages cannot require man / info / locale files
Package: debian-policy
Version: 4.7.0.1
Severity: wishlist
Tags: patch
X-Debbugs-Cc: josh@joshtriplett.org
Packages already tend to avoid requiring any files from /usr/share/man
or /usr/share/info, and don't require files in /usr/share/locale if
running in a C or C.UTF-8 locale.
The attached patch documents this in Policy, so that it's explicitly
supported for sysadmins to use dpkg exclusions or similar mechanisms to
delete /usr/share/doc, /usr/share/info, and /usr/share/locale.
To the best of my knowledge, this documents existing behavior, and will
not introduce any new bugs on any packages.
>From c0069a143c349375201273f3d25b676f501e85e2 Mon Sep 17 00:00:00 2001
Message-ID: <c0069a143c349375201273f3d25b676f501e85e2.1733421983.git.josh@joshtriplett.org>
From: Josh Triplett <josh@joshtriplett.org>
Date: Thu, 5 Dec 2024 10:01:33 -0800
Subject: [PATCH] Document that packages cannot require man / info / locale
files
Packages already tend to avoid requiring any files from /usr/share/man
or /usr/share/info, and don't require files in /usr/share/locale if
running in a C or C.UTF-8 locale.
Document this in Policy, so that it's explicitly supported for sysadmins
to use dpkg exclusions or similar mechanisms to delete /usr/share/doc,
/usr/share/info, and /usr/share/locale.
Signed-off-by: Josh Triplett <josh@joshtriplett.org>
---
policy/ch-docs.rst | 8 ++++++++
policy/ch-files.rst | 12 ++++++++++++
2 files changed, 20 insertions(+)
diff --git a/policy/ch-docs.rst b/policy/ch-docs.rst
index f3db835..6167342 100644
--- a/policy/ch-docs.rst
+++ b/policy/ch-docs.rst
@@ -61,6 +61,11 @@ by a note at the beginning of the manual page or by showing the missing
or changed portions in the original language instead of the target
language.
+Packages (other than manual page readers) must not require the existence
+of any files in ``/usr/share/man/`` in order to function. A package that
+optionally displays its own manual pages, such as to provide user help,
+must fail gracefully if the manual pages aren't installed.
+
.. _s12.2:
Info documents
@@ -100,6 +105,9 @@ To determine which section to use, you should look at
create a new section if none of the current sections are relevant).
[#]_
+Packages (other than info readers) must not require the existence of any
+files in ``/usr/share/info/`` in order to function.
+
.. _s-docs-additional:
Additional documentation
diff --git a/policy/ch-files.rst b/policy/ch-files.rst
index b34c183..90ddee1 100644
--- a/policy/ch-files.rst
+++ b/policy/ch-files.rst
@@ -574,6 +574,18 @@ is only removed). This should be done by the ``postrm`` script when it
is called with the argument ``purge`` (see
:ref:`s-removedetails`).
+.. _s-locale-files:
+
+Locale files
+------------
+
+The directory ``/usr/share/locale/`` contains localization files for
+different locales.
+
+Packages must not require the existence of any files in
+``/usr/share/locale/`` in order to function in a ``C`` or ``C.UTF-8``
+locale.
+
.. _s-permissions-owners:
Permissions and owners
--
2.45.2
Reply to: