deb.5 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. .\" Hey, Emacs! This is an -*- nroff -*- source file.
  2. .\" Authors: Raul Miller, Ian Jackson
  3. .TH DEB 5 "1st July 1996" "Debian Project" "Debian GNU/Linux"
  4. .SH NAME
  5. deb - Debian GNU/Linux binary package format
  6. .SH SYNOPSIS
  7. .IB filename .deb
  8. .SH DESCRIPTION
  9. The
  10. .B .deb
  11. format is the Debian binary package file format. The format has
  12. changed since Debian 0.93 and the new format is being phased in. It
  13. is understood by dpkg 0.93.76 and later, and is generated by default
  14. by all versions of dpkg since 1.2.0 and all i386/ELF versions since
  15. 1.1.1elf.
  16. The new format is described here. Please see
  17. .BR deb-old (5)
  18. for details of the old format.
  19. .SH FORMAT
  20. The file is an
  21. .B ar
  22. archive with a magic number of
  23. .BR !<arch> .
  24. Note that many modern versions of
  25. .B ar
  26. create archives with different magic numbers. Archives created in
  27. this way will not be recognised by
  28. .BR dpkg\-deb ,
  29. though these
  30. .B ar
  31. programs do understand the magic number used by
  32. .BR dpkg\-deb .
  33. The first member is named
  34. .B debian-binary
  35. and contains a series of lines, separated by newlines. Currently only
  36. one line is present, the format version number, which is currently
  37. .BR 2.0 .
  38. Programs which read new-format archives should be prepared for the
  39. minor number to be increased and new lines to be present, and should
  40. ignore these if this is the case.
  41. If the major number has changed an incompatible change has been made
  42. and the program should stop; if it has not then the program can safely
  43. continue, unless it encounters an unexpected member in the archive
  44. (except at the end), as described below.
  45. The second required member is named
  46. .B control.tar.gz
  47. and is a gzipped ustar containing the package control information, as
  48. a series of plain files, of which the file
  49. .B control
  50. is mandatory and contains the core control information. See the
  51. .I dpkg Programmers' manual
  52. for details of these files. The control tarfile may optionally
  53. contain an entry for
  54. .RB ` . ',
  55. the current directory.
  56. The third and final required member is named
  57. .B data.tar.gz
  58. and contains the filesystem archive as a gzipped ustar.
  59. These members must occur in this order. Further members may be
  60. defined in the future, and will if possible be placed after these
  61. three. Current implementations should ignore any additional members
  62. after
  63. .BR data.tar.gz .
  64. Additional members defined in the future which need to be inserted
  65. before
  66. .B data.tar.gz
  67. and which can safely be ignored by older programs will have names
  68. starting with an underscore
  69. .RB ` _ '.
  70. New members which cannot safely be ignored will be inserted before
  71. .B data.tar.gz
  72. with names starting with something other than underscores, or will
  73. cause the major version number to be increased.
  74. .SH SEE ALSO
  75. .BR deb (5),
  76. .BR deb\-control (5),
  77. .IR "dpkg Programmers' manual" ,
  78. .BR dpkg\-deb (8)