Provided by:
apt_0.7.23.1ubuntu2_i386 
NAME
apt.conf - Configuration file for APT
DESCRIPTION
apt.conf is the main configuration file for the APT suite of tools, all
tools make use of the configuration file and a common command line
parser to provide a uniform environment. When an APT tool starts up it
will read the configuration specified by the APT_CONFIG environment
variable (if any) and then read the files in Dir::Etc::Parts then read
the main configuration file specified by Dir::Etc::main then finally
apply the command line options to override the configuration
directives, possibly loading even more config files.
The configuration file is organized in a tree with options organized
into functional groups. option specification is given with a double
colon notation, for instance APT::Get::Assume-Yes is an option within
the APT tool group, for the Get tool. options do not inherit from their
parent groups.
Syntactically the configuration language is modeled after what the ISC
tools such as bind and dhcp use. Lines starting with // are treated as
comments (ignored), as well as all text between /* and */, just like
C/C++ comments. Each line is of the form APT::Get::Assume-Yes "true";
The trailing semicolon is required and the quotes are optional. A new
scope can be opened with curly braces, like:
APT {
Get {
Assume-Yes "true";
Fix-Broken "true";
};
};
with newlines placed to make it more readable. Lists can be created by
opening a scope and including a single string enclosed in quotes
followed by a semicolon. Multiple entries can be included, each
separated by a semicolon.
DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
In general the sample configuration file in
/usr/share/doc/apt/examples/apt.conf
/usr/share/doc/apt/examples/configure-index.gz is a good guide for how
it should look.
The names of the configuration items are not case-sensitive. So in the
previous example you could use dpkg::pre-install-pkgs.
Two specials are allowed, #include and #clear #include will include the
given file, unless the filename ends in a slash, then the whole
directory is included. #clear is used to erase a part of the
configuration tree. The specified element and all its descendents are
erased.
All of the APT tools take a -o option which allows an arbitrary
configuration directive to be specified on the command line. The syntax
is a full option name (APT::Get::Assume-Yes for instance) followed by
an equals sign then the new value of the option. Lists can be appended
too by adding a trailing :: to the list name.
THE APT GROUP
This group of options controls general APT behavior as well as holding
the options for all of the tools.
Architecture
System Architecture; sets the architecture to use when fetching
files and parsing package lists. The internal default is the
architecture apt was compiled for.
Default-Release
Default release to install packages from if more than one version
available. Contains release name, codename or release version.
Examples: ´stable´, ´testing´, ´unstable´, ´lenny´, ´squeeze´,
´4.0´, ´5.0*´. See also apt_preferences(5).
Ignore-Hold
Ignore Held packages; This global option causes the problem
resolver to ignore held packages in its decision making.
Clean-Installed
Defaults to on. When turned on the autoclean feature will remove
any packages which can no longer be downloaded from the cache. If
turned off then packages that are locally installed are also
excluded from cleaning - but note that APT provides no direct means
to reinstall them.
Immediate-Configure
Disable Immediate Configuration; This dangerous option disables
some of APT´s ordering code to cause it to make fewer dpkg calls.
Doing so may be necessary on some extremely slow single user
systems but is very dangerous and may cause package install scripts
to fail or worse. Use at your own risk.
Force-LoopBreak
Never Enable this option unless you -really- know what you are
doing. It permits APT to temporarily remove an essential package to
break a Conflicts/Conflicts or Conflicts/Pre-Depend loop between
two essential packages. SUCH A LOOP SHOULD NEVER EXIST AND IS A
GRAVE BUG. This option will work if the essential packages are not
tar, gzip, libc, dpkg, bash or anything that those packages depend
on.
Cache-Limit
APT uses a fixed size memory mapped cache file to store the
´available´ information. This sets the size of that cache (in
bytes).
Build-Essential
Defines which package(s) are considered essential build
dependencies.
Get
The Get subsection controls the apt-get(8) tool, please see its
documentation for more information about the options here.
Cache
The Cache subsection controls the apt-cache(8) tool, please see its
documentation for more information about the options here.
CDROM
The CDROM subsection controls the apt-cdrom(8) tool, please see its
documentation for more information about the options here.
THE ACQUIRE GROUP
The Acquire group of options controls the download of packages and the
URI handlers.
PDiffs
Try to download deltas called PDiffs for Packages or Sources files
instead of downloading whole ones. True by default.
Queue-Mode
Queuing mode; Queue-Mode can be one of host or access which
determines how APT parallelizes outgoing connections. host means
that one connection per target host will be opened, access means
that one connection per URI type will be opened.
Retries
Number of retries to perform. If this is non-zero APT will retry
failed files the given number of times.
Source-Symlinks
Use symlinks for source archives. If set to true then source
archives will be symlinked when possible instead of copying. True
is the default.
http
HTTP URIs; http::Proxy is the default http proxy to use. It is in
the standard form of http://[[user][:pass]@]host[:port]/. Per host
proxies can also be specified by using the form http::Proxy::<host>
with the special keyword DIRECT meaning to use no proxies. The
http_proxy environment variable will override all settings.
Three settings are provided for cache control with HTTP/1.1
compliant proxy caches. No-Cache tells the proxy to not use its
cached response under any circumstances, Max-Age is sent only for
index files and tells the cache to refresh its object if it is
older than the given number of seconds. Debian updates its index
files daily so the default is 1 day. No-Store specifies that the
cache should never store this request, it is only set for archive
files. This may be useful to prevent polluting a proxy cache with
very large .deb files. Note: Squid 2.0.2 does not support any of
these options.
The option timeout sets the timeout timer used by the method, this
applies to all things including connection timeout and data
timeout.
One setting is provided to control the pipeline depth in cases
where the remote server is not RFC conforming or buggy (such as
Squid 2.0.2) Acquire::http::Pipeline-Depth can be a value from 0 to
5 indicating how many outstanding requests APT should send. A value
of zero MUST be specified if the remote host does not properly
linger on TCP connections - otherwise data corruption will occur.
Hosts which require this are in violation of RFC 2068.
https
HTTPS URIs. Cache-control and proxy options are the same as for
http method. Pipeline-Depth option is not supported yet.
CaInfo suboption specifies place of file that holds info about
trusted certificates. <host>::CaInfo is corresponding per-host
option. Verify-Peer boolean suboption determines whether verify
server´s host certificate against trusted certificates or not.
<host>::Verify-Peer is corresponding per-host option. Verify-Host
boolean suboption determines whether verify server´s hostname or
not. <host>::Verify-Host is corresponding per-host option.
SslCert determines what certificate to use for client
authentication. <host>::SslCert is corresponding per-host option.
SslKey determines what private key to use for client
authentication. <host>::SslKey is corresponding per-host option.
SslForceVersion overrides default SSL version to use. Can contain
´TLSv1´ or ´SSLv3´ string. <host>::SslForceVersion is
corresponding per-host option.
ftp
FTP URIs; ftp::Proxy is the default proxy server to use. It is in
the standard form of ftp://[[user][:pass]@]host[:port]/ and is
overridden by the ftp_proxy environment variable. To use a ftp
proxy you will have to set the ftp::ProxyLogin script in the
configuration file. This entry specifies the commands to send to
tell the proxy server what to connect to. Please see
/usr/share/doc/apt/examples/configure-index.gz for an example of
how to do this. The substitution variables available are
$(PROXY_USER) $(PROXY_PASS) $(SITE_USER) $(SITE_PASS) $(SITE) and
$(SITE_PORT) Each is taken from it´s respective URI component.
The option timeout sets the timeout timer used by the method, this
applies to all things including connection timeout and data
timeout.
Several settings are provided to control passive mode. Generally it
is safe to leave passive mode on, it works in nearly every
environment. However some situations require that passive mode be
disabled and port mode ftp used instead. This can be done globally,
for connections that go through a proxy or for a specific host (See
the sample config file for examples).
It is possible to proxy FTP over HTTP by setting the ftp_proxy
environment variable to a http url - see the discussion of the http
method above for syntax. You cannot set this in the configuration
file and it is not recommended to use FTP over HTTP due to its low
efficiency.
The setting ForceExtended controls the use of RFC2428 EPSV and EPRT
commands. The default is false, which means these commands are only
used if the control connection is IPv6. Setting this to true forces
their use even on IPv4 connections. Note that most FTP servers do
not support RFC2428.
cdrom
CDROM URIs; the only setting for CDROM URIs is the mount point,
cdrom::Mount which must be the mount point for the CDROM drive as
specified in /etc/fstab. It is possible to provide alternate mount
and unmount commands if your mount point cannot be listed in the
fstab (such as an SMB mount and old mount packages). The syntax is
to put
"/cdrom/"::Mount "foo";
within the cdrom block. It is important to have the trailing slash.
Unmount commands can be specified using UMount.
gpgv
GPGV URIs; the only option for GPGV URIs is the option to pass
additional parameters to gpgv. gpgv::Options Additional options
passed to gpgv.
CompressionTypes
List of compression types which are understood by the acquire
methods. Files like Packages can be available in various
compression formats. This list defines in which order the acquire
methods will try to download these files. Per default bzip2
compressed files will be prefered over lzma, gzip and uncompressed
files. The syntax for the configuration fileentry is
Acquire::CompressionTypes::FileExtension "Methodname";
e.g.
Acquire::CompressionTypes::bz2 "bzip2";
Note that at runtime the Dir::Bin::Methodname will be checked: If
this setting exists the method will only be used if this file
exists, e.g. for the bzip2 method above (the inbuilt) setting is
Dir::Bin::bzip2 "/bin/bzip2";
DIRECTORIES
The Dir::State section has directories that pertain to local state
information. lists is the directory to place downloaded package lists
in and status is the name of the dpkg status file. preferences is the
name of the APT preferences file. Dir::State contains the default
directory to prefix on all sub items if they do not start with / or ./.
Dir::Cache contains locations pertaining to local cache information,
such as the two package caches srcpkgcache and pkgcache as well as the
location to place downloaded archives, Dir::Cache::archives. Generation
of caches can be turned off by setting their names to be blank. This
will slow down startup but save disk space. It is probably preferred to
turn off the pkgcache rather than the srcpkgcache. Like Dir::State the
default directory is contained in Dir::Cache
Dir::Etc contains the location of configuration files, sourcelist gives
the location of the sourcelist and main is the default configuration
file (setting has no effect, unless it is done from the config file
specified by APT_CONFIG).
The Dir::Parts setting reads in all the config fragments in lexical
order from the directory specified. After this is done then the main
config file is loaded.
Binary programs are pointed to by Dir::Bin. Dir::Bin::Methods
specifies the location of the method handlers and gzip, bzip2, lzma,
dpkg, apt-get dpkg-source dpkg-buildpackage and apt-cache specify the
location of the respective programs.
The configuration item RootDir has a special meaning. If set, all paths
in Dir:: will be relative to RootDir, even paths that are specified
absolutely. So, for instance, if RootDir is set to /tmp/staging and
Dir::State::status is set to /var/lib/dpkg/status, then the status file
will be looked up in /tmp/staging/var/lib/dpkg/status.
APT IN DSELECT
When APT is used as a dselect(8) method several configuration
directives control the default behaviour. These are in the DSelect
section.
Clean
Cache Clean mode; this value may be one of always, prompt, auto,
pre-auto and never. always and prompt will remove all packages from
the cache after upgrading, prompt (the default) does so
conditionally. auto removes only those packages which are no longer
downloadable (replaced with a new version for instance). pre-auto
performs this action before downloading new packages.
options
The contents of this variable is passed to apt-get(8) as command
line options when it is run for the install phase.
Updateoptions
The contents of this variable is passed to apt-get(8) as command
line options when it is run for the update phase.
PromptAfterUpdate
If true the [U]pdate operation in dselect(8) will always prompt to
continue. The default is to prompt only on error.
HOW APT CALLS DPKG
Several configuration directives control how APT invokes dpkg(8). These
are in the DPkg section.
options
This is a list of options to pass to dpkg. The options must be
specified using the list notation and each list item is passed as a
single argument to dpkg(8).
Pre-Invoke, Post-Invoke
This is a list of shell commands to run before/after invoking
dpkg(8). Like options this must be specified in list notation. The
commands are invoked in order using /bin/sh, should any fail APT
will abort.
Pre-Install-Pkgs
This is a list of shell commands to run before invoking dpkg. Like
options this must be specified in list notation. The commands are
invoked in order using /bin/sh, should any fail APT will abort. APT
will pass to the commands on standard input the filenames of all
.deb files it is going to install, one per line.
Version 2 of this protocol dumps more information, including the
protocol version, the APT configuration space and the packages,
files and versions being changed. Version 2 is enabled by setting
DPkg::Tools::options::cmd::Version to 2. cmd is a command given to
Pre-Install-Pkgs.
Run-Directory
APT chdirs to this directory before invoking dpkg, the default is
/.
Build-options
These options are passed to dpkg-buildpackage(1) when compiling
packages, the default is to disable signing and produce all
binaries.
PERIODIC AND ARCHIVES OPTIONS
APT::Periodic and APT::Archives groups of options configure behavior of
apt periodic updates, which is done by /etc/cron.daily/apt script. See
header of this script for the brief documentation of these options.
DEBUG OPTIONS
Enabling options in the Debug:: section will cause debugging
information to be sent to the standard error stream of the program
utilizing the apt libraries, or enable special program modes that are
primarily useful for debugging the behavior of apt. Most of these
options are not interesting to a normal user, but a few may be:
· Debug::pkgProblemResolver enables output about the decisions made
by dist-upgrade, upgrade, install, remove, purge.
· Debug::NoLocking disables all file locking. This can be used to
run some operations (for instance, apt-get -s install) as a
non-root user.
· Debug::pkgDPkgPM prints out the actual command line each time that
apt invokes dpkg(8).
· Debug::IdentCdrom disables the inclusion of statfs data in CDROM
IDs.
A full list of debugging options to apt follows.
Debug::Acquire::cdrom
Print information related to accessing cdrom:// sources.
Debug::Acquire::ftp
Print information related to downloading packages using FTP.
Debug::Acquire::http
Print information related to downloading packages using HTTP.
Debug::Acquire::https
Print information related to downloading packages using HTTPS.
Debug::Acquire::gpgv
Print information related to verifying cryptographic signatures
using gpg.
Debug::aptcdrom
Output information about the process of accessing collections of
packages stored on CD-ROMs.
Debug::BuildDeps
Describes the process of resolving build-dependencies in apt-
get(8).
Debug::Hashes
Output each cryptographic hash that is generated by the apt
libraries.
Debug::IdentCDROM
Do not include information from statfs, namely the number of used
and free blocks on the CD-ROM filesystem, when generating an ID for
a CD-ROM.
Debug::NoLocking
Disable all file locking. For instance, this will allow two
instances of “apt-get update” to run at the same time.
Debug::pkgAcquire
Log when items are added to or removed from the global download
queue.
Debug::pkgAcquire::Auth
Output status messages and errors related to verifying checksums
and cryptographic signatures of downloaded files.
Debug::pkgAcquire::Diffs
Output information about downloading and applying package index
list diffs, and errors relating to package index list diffs.
Debug::pkgAcquire::RRed
Output information related to patching apt package lists when
downloading index diffs instead of full indices.
Debug::pkgAcquire::Worker
Log all interactions with the sub-processes that actually perform
downloads.
Debug::pkgAutoRemove
Log events related to the automatically-installed status of
packages and to the removal of unused packages.
Debug::pkgDepCache::AutoInstall
Generate debug messages describing which packages are being
automatically installed to resolve dependencies. This corresponds
to the initial auto-install pass performed in, e.g., apt-get
install, and not to the full apt dependency resolver; see
Debug::pkgProblemResolver for that.
Debug::pkgDepCache::Marker
Generate debug messages describing which package is marked as
keep/install/remove while the ProblemResolver does his work. Each
addition or deletion may trigger additional actions; they are shown
indented two additional space under the original entry. The format
for each line is MarkKeep, MarkDelete or MarkInstall followed by
package-name <a.b.c -> d.e.f | x.y.z> (section) where a.b.c is the
current version of the package, d.e.f is the version considered for
installation and x.y.z is a newer version, but not considered for
installation (because of a low pin score). The later two can be
omitted if there is none or if it is the same version as the
installed. section is the name of the section the package appears
in.
Debug::pkgInitConfig
Dump the default configuration to standard error on startup.
Debug::pkgDPkgPM
When invoking dpkg(8), output the precise command line with which
it is being invoked, with arguments separated by a single space
character.
Debug::pkgDPkgProgressReporting
Output all the data received from dpkg(8) on the status file
descriptor and any errors encountered while parsing it.
Debug::pkgOrderList
Generate a trace of the algorithm that decides the order in which
apt should pass packages to dpkg(8).
Debug::pkgPackageManager
Output status messages tracing the steps performed when invoking
dpkg(8).
Debug::pkgPolicy
Output the priority of each package list on startup.
Debug::pkgProblemResolver
Trace the execution of the dependency resolver (this applies only
to what happens when a complex dependency problem is encountered).
Debug::pkgProblemResolver::ShowScores
Display a list of all installed packages with their calculated
score used by the pkgProblemResolver. The description of the
package is the same as described in Debug::pkgDepCache::Marker
Debug::sourceList
Print information about the vendors read from
/etc/apt/vendors.list.
EXAMPLES
/usr/share/doc/apt/examples/configure-index.gz is a configuration file
showing example values for all possible options.
FILES
/etc/apt/apt.conf
APT configuration file. Configuration Item: Dir::Etc::Main.
/etc/apt/apt.conf.d/
APT configuration file fragments. Configuration Item:
Dir::Etc::Parts.
SEE ALSO
apt-cache(8), apt-config(8), apt_preferences(5).
BUGS
APT bug page[1]. If you wish to report a bug in APT, please see
/usr/share/doc/debian/bug-reporting.txt or the reportbug(1) command.
AUTHORS
Jason Gunthorpe
Author.
APT team
Author.
Daniel Burrows <dburrows@debian.org>
Initial documentation of Debug::*.
NOTES
1. APT bug page
http://bugs.debian.org/src:apt