| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
- <refentry id="deb.5">
- <refmeta>
- <refentrytitle>deb</refentrytitle>
- <manvolnum>5</manvolnum>
- <refmiscinfo class="source">Debian Project</refmiscinfo>
- <refmiscinfo class="manual">dpkg suite</refmiscinfo>
- </refmeta>
- <refnamediv>
- <refname>deb</refname>
- <refpurpose>Debian binary package format</refpurpose>
- </refnamediv>
- <refsynopsisdiv>
- <synopsis><filename>filename.deb</filename></synopsis>
- </refsynopsisdiv>
- <refsect1>
- <title>Description</title>
- <para>
- The <filename>.deb</filename> format is the Debian binary package file
- format. It is understood by <productname>dpkg</productname> 0.93.76 and
- later, and is generated by default by all versions of
- <productname>dpkg</productname> since 1.2.0 and all i386/ELF versions
- since 1.1.1elf.
- </para>
- <para>
- The format described here is used since Debian 0.93; details of the old
- format are described in
- <citerefentry><refentrytitle>deb-old</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
- </para>
- </refsect1>
- <refsect1>
- <title>Format</title>
- <para>
- The file is an <emphasis>ar</emphasis> archive with a magic number of
- <emphasis>!<arch></emphasis>.
- </para>
- <para>
- The first member is named <filename>debian-binary</filename> and contains
- a series of lines, separated by newlines. Currently only one line is
- present, the format version number, <emphasis>2.0</emphasis> at the time
- this manual page was written. Programs which read new-format archives
- should be prepared for the minor number to be increased and new lines to
- be present, and should ignore these if this is the case.
- </para>
- <para>
- If the major number has changed, an incompatible change has been made and
- the program should stop. If it has not, then the program should be able
- to safely continue, unless it encounters an unexpected member in the
- archive (except at the end), as described below.
- </para>
- <para>
- The second required member is named <filename>control.tar.gz</filename>.
- It is a gzipped tar archive containing the package control information,
- as a series of plain files, of which the file
- <filename>control</filename> is mandatory and contains the core control
- information. Please see the <emphasis remap='I'>Debian Packaging Manual,
- section 2.2</emphasis> for details of these files. The control tarball
- may optionally contain an entry for `<filename>.</filename>', the current
- directory.
- </para>
- <para>
- The third, last required member is named
- <filename>data.tar.gz</filename>. It contains the filesystem archive as a
- gzipped tar archive.
- </para>
- <para>
- These members must occur in this exact order. Current implementations
- should ignore any additional members after
- <filename>data.tar.gz</filename>. Further members may be defined in the
- future, and (if possible) will be placed after these three. Any
- additional members that may need to be inserted before
- <filename>data.tar.gz</filename> and which should be safely ignored by
- older programs, will have names starting with an underscore.
- </para>
- <para>
- Those new members which won't be able to be safely ignored will be
- inserted before <filename>data.tar.gz</filename> with names starting with
- something other than underscores, or will (more likely) cause the major
- version number to be increased.
- </para>
- </refsect1>
- <refsect1>
- <title>See Also</title>
- <para>
- <citerefentry>
- <refentrytitle>deb-old</refentrytitle>
- <manvolnum>5</manvolnum>
- </citerefentry>,
- <citerefentry>
- <refentrytitle>dpkg-deb</refentrytitle>
- <manvolnum>1</manvolnum>
- </citerefentry>,
- <citerefentry>
- <refentrytitle>deb-control</refentrytitle>
- <manvolnum>5</manvolnum>
- </citerefentry>,
- Debian Packaging Manual
- </para>
- </refsect1>
- </refentry>
|