1deb822(5)                         dpkg suite                         deb822(5)
2
3
4

NAME

6       deb822 - Debian RFC822 control data format
7

DESCRIPTION

9       The  package management system manipulates data represented in a common
10       format, known as control data, stored in control files.  Control  files
11       are  used  for  source packages, binary packages and the .changes files
12       which control the  installation  of  uploaded  files  (dpkg's  internal
13       databases are in a similar format).
14

SYNTAX

16       A  control  file  consists  of  one  or  more paragraphs of fields (the
17       paragraphs are also sometimes referred to as stanzas).  The  paragraphs
18       are  separated  by  empty  lines.   Parsers may accept lines consisting
19       solely of U+0020 SPACE and U+0009  TAB  as  paragraph  separators,  but
20       control  files  should  use empty lines.  Some control files allow only
21       one paragraph; others allow  several,  in  which  case  each  paragraph
22       usually  refers  to  a  different  package.   (For  example,  in source
23       packages, the first paragraph refers to the source package,  and  later
24       paragraphs  refer  to  binary packages generated from the source.)  The
25       ordering of the paragraphs in control files is significant.
26
27       Each paragraph consists  of  a  series  of  data  fields.   Each  field
28       consists  of  the field name followed by a colon (U+003A ‘:’), and then
29       the data/value associated with that field.  The field name is  composed
30       of  US-ASCII  characters excluding control characters, space, and colon
31       (i.e., characters in the ranges U+0021  ‘!’  through  U+0039  ‘9’,  and
32       U+003B  ‘;’ through U+007E ‘~’, inclusive).  Field names must not begin
33       with the comment character (U+0023 ‘#’), nor with the hyphen  character
34       (U+002D ‘-’).
35
36       The  field  ends  at  the  end  of  the  line or at the end of the last
37       continuation line (see below).  Horizontal whitespace (U+0020 SPACE and
38       U+0009  TAB)  may  occur  immediately  before or after the value and is
39       ignored there; it is conventional to  put  a  single  space  after  the
40       colon.  For example, a field might be:
41              Package: dpkg
42       the field name is Package and the field value dpkg.
43
44       Empty  field  values are only permitted in source package control files
45       (debian/control).  Such fields are ignored.
46
47       A paragraph must not contain more than one  instance  of  a  particular
48       field name.
49
50       There are three types of fields:
51
52
53       simple The  field, including its value, must be a single line.  Folding
54              of the field is not permitted.  This is the default  field  type
55              if  the  definition  of  the  field does not specify a different
56              type.
57
58       folded The value of a folded field is a  logical  line  that  may  span
59              several   lines.    The   lines   after  the  first  are  called
60              continuation lines and must start  with  a  U+0020  SPACE  or  a
61              U+0009   TAB.    Whitespace,  including  any  newlines,  is  not
62              significant in the field values of folded fields.
63
64              This folding method is  similar  to  RFC5322,  allowing  control
65              files that contain only one paragraph and no multiline fields to
66              be read by parsers written for RFC5322.
67
68       multiline
69              The  value  of  a  multiline   field   may   comprise   multiple
70              continuation  lines.   The  first line of the value, the part on
71              the same line as the field name, often has special  significance
72              or  may  have  to be empty.  Other lines are added following the
73              same syntax as the continuation  lines  of  the  folded  fields.
74              Whitespace,  including newlines, is significant in the values of
75              multiline fields.
76
77       Whitespace must not appear inside names  (of  packages,  architectures,
78       files  or  anything else) or version numbers, or between the characters
79       of multi-character version relationships.
80
81       The presence and purpose of a field, and the syntax of  its  value  may
82       differ between types of control files.
83
84       Field  names  are not case-sensitive, but it is usual to capitalize the
85       field names using mixed case as shown below.  Field  values  are  case-
86       sensitive unless the description of the field says otherwise.
87
88       Paragraph  separators (empty lines) and lines consisting only of U+0020
89       SPACE and U+0009 TAB, are not allowed within field  values  or  between
90       fields.    Empty   lines   in  field  values  are  usually  escaped  by
91       representing them by a U+0020 SPACE followed by a dot (U+002E ‘.’).
92
93       Lines starting with U+0023 ‘#’, without any  preceding  whitespace  are
94       comments  lines that are only permitted in source package control files
95       (debian/control) and in deb-origin(5) files.  These comment  lines  are
96       ignored,  even between two continuation lines.  They do not end logical
97       lines.
98
99       All control files must be encoded in UTF-8.
100

SEE ALSO

102       RFC822, RFC5322.
103
104
105
1061.19.7                            2019-06-03                         deb822(5)
Impressum