changelog & upgrading checklist for #683222
[debian-policy.git] / policy / ap-pkg-controlfields.rst
blobd3b43b356eb493a098c382689813852d27e52c9b
1 Control files and their fields (from old Packaging Manual)
2 ==========================================================
4 Many of the tools in the ``dpkg`` suite manipulate data in a common
5 format, known as control files. Binary and source packages have control
6 data as do the ``.changes`` files which control the installation of
7 uploaded files, and ``dpkg``'s internal databases are in a similar
8 format.
10 .. _s-sD.1:
12 Syntax of control files
13 -----------------------
15 See :ref:`s-controlsyntax`.
17 It is important to note that there are several fields which are optional
18 as far as ``dpkg`` and the related tools are concerned, but which must
19 appear in every Debian package, or whose omission may cause problems.
21 .. _s-sD.2:
23 List of fields
24 --------------
26 See :ref:`s-controlfieldslist`.
28 This section now contains only the fields that didn't belong to the
29 Policy manual.
31 .. _s-pkg-f-Filename:
33 ``Filename`` and ``MSDOS-Filename``
34 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
36 These fields in ``Packages`` files give the filename(s) of (the parts
37 of) a package in the distribution directories, relative to the root of
38 the Debian hierarchy. If the package has been split into several parts
39 the parts are all listed in order, separated by spaces.
41 .. _s-pkg-f-Size:
43 ``Size`` and ``MD5sum``
44 ~~~~~~~~~~~~~~~~~~~~~~~
46 These fields in ``Packages`` files give the size (in bytes, expressed in
47 decimal) and MD5 checksum of the file(s) which make(s) up a binary
48 package in the distribution. If the package is split into several parts
49 the values for the parts are listed in order, separated by spaces.
51 .. _s-pkg-f-Status:
53 ``Status``
54 ~~~~~~~~~~
56 This field in ``dpkg``'s status file records whether the user wants a
57 package installed, removed or left alone, whether it is broken
58 (requiring re-installation) or not and what its current state on the
59 system is. Each of these pieces of information is a single word.
61 .. _s-pkg-f-Config-Version:
63 ``Config-Version``
64 ~~~~~~~~~~~~~~~~~~
66 If a package is not installed or not configured, this field in
67 ``dpkg``'s status file records the last version of the package which was
68 successfully configured.
70 .. _s-pkg-f-Conffiles:
72 ``Conffiles``
73 ~~~~~~~~~~~~~
75 This field in ``dpkg``'s status file contains information about the
76 automatically-managed configuration files held by a package. This field
77 should *not* appear anywhere in a package!
79 .. _s-sD.2.6:
81 Obsolete fields
82 ~~~~~~~~~~~~~~~
84 These are still recognized by ``dpkg`` but should not appear anywhere
85 any more.
87 ``Revision``; \ ``Package-Revision``; \ ``Package_Revision``
88     The Debian revision part of the package version was at one point in
89     a separate control field. This field went through several names.
91 ``Recommended``
92     Old name for ``Recommends``.
94 ``Optional``
95     Old name for ``Suggests``.
97 ``Class``
98     Old name for ``Priority``.