The APT method interface allows APT to acquire archive files (.deb), index
files (Packages, Release, Mirrors) and source files (.tar.gz, .diff). It is a
general, extensible system designed to satisfy all of these requirements:
Remote methods that download files from a distant site
Resume of aborted downloads
If-Modified-Since (IMS) checking for index files
In-Line MD5 generation
No-copy in-filesystem methods
Multi-media methods (like CD's)
Dynamic source selection for failure recovery
User interaction for user/password requests and media swaps
Initial releases of APT (0.1.x) used a completely different method interface
that only supported the first 6 items. This new interface deals with the
Several terms are used through out the document, they have specific meanings
which may not be immediately evident. To clarify they are summarized here.
Refers to an item in source list. More specifically it is the broken down
item, that is each source maps to exactly one index file. Archive sources map
to Package files and Source Code sources map to Source files.
Refers to a binary package archive (.deb, .rpm, etc).
Refers to one of the files making up the source code of a package. In debian
it is one of .diff.gz, .dsc. or .tar.gz.
Universal Resource Identifier (URI) is a super-set of the familiar URL syntax
used by web browsers. It consists of an access specification followed by a
specific location in that access space. The form is
<access>:<location>. Network addresses are given with the form
cdrom:Debian 2.0r1 Disk 1/
There is a one to one mapping of URI access specifiers to methods. A method is
a program that knows how to handle a URI access type and operates according to
the specifications in this file.
A specific running method. There can be more than one instance of each method
as APT is capable of concurrent method handling.
A series of lines terminated by a blank line sent down one of the communication
lines. The first line should have the form xxx TAG where xxx are digits
forming the status code and TAG is an informational string
The act of bring a URI into the local pathname space. This may simply be
verifying the existence of the URI or actually downloading it from a remote