dpkg programmers' manual - footnotes

1

dpkg is targetted primarily at Debian GNU/Linux, but may work on or be ported to other systems.

2

That means that if it runs successfully or fails and then you call it again it doesn't bomb out, but just ensures that everything is the way it ought to be.

3

This field should appear in all packages, though dpkg doesn't require it yet so that old packages can still be installed.

4

Though there is nothing stopping an author who is also the Debian maintainer from using it for all their changes, it will have to be renamed if the Debian and upstream maintainers become different people.

5

files.new is used as a temporary file by dpkg-gencontrol and dpkg-distaddfile - they write a new version of files here before renaming it, to avoid leaving a corrupted copy if an error occurs

6

Setgid directories are allowed.

7

Renaming a file is not treated specially - it is seen as the removal of the old file (which generates a warning, but is otherwise ignored), and the creation of the new one.

8

The characters @ : = % _ (at, colon, equals, percent and underscore) used to be legal and are still accepted when found in a package file, but may not be used in new packages

9

This is a bug.

10

This actually invokes

gcc --print-libgcc-file-name
and parses and decomposes the output and looks the CPU type from the GCC configuration in a table in dpkg. This is so that it will work if you're cross-compiling.

11

It is usual to leave a space after the package name if a version number is specified.

12

A space after each comma is conventional.

13

That is, the parts which are not the .dsc.

14

Part of the problem is due to what is arguably a bug in dpkg.

15

Version 0.93.23 or later.

16

Current versions (1.2.4) of dpkg have a bug in this area which will cause some of these problems to be ignored.


dpkg programmers' manual - Copyright ©1996 Ian Jackson.
Contents; abstract.
10 August 1996
Ian Jackson ijackson@gnu.ai.mit.edu