Fixed or handling bug
[ntk/apt.git] / doc / apt.conf.5.yo
CommitLineData
3d8fd174
AL
1mailto(apt@packages.debian.org)
2manpage(apt.conf)(5)(5 Dec 1998)(apt)()
3manpagename(apt.conf)(configuration file for APT)
4
5manpagedescription()
6bf(apt.conf) is the main configuration file for the APT suite of
7tools, all tools make use of the configuration file and a common command line
8parser to provide a uniform environment. When an APT tool starts up it will
9read bf(/etc/apt/apt.conf), then read the configuration specified by the
10bf($APT_CONFIG) environment variable and then finally apply the command line
11options to override the configuration directives, possibly loading more
12config files.
13
14The configuration file is organized in a tree with options organized into
15functional groups. Option specification is given with a double colon
16notation, for instance em(APT::Get::Assume-Yes) is an option within the
17APT tool group, for the Get tool. Options do not inherit from their parent
18groups.
19
20Syntacticly the configuration language is modeled after what the ISC tools
21such as bind and dhcp use. Each line is of the form
22quote(APT::Get::Assume-Yes "true";) The trailing semicolon is required and
23the quotes are optional. A new em(scope) can be opened with curly braces,
24like:
25verb(APT {
26 Get {
27 Assume-Yes "true";
28 Fix-Broken "true";
29 };
30};
31)
32with newlines placed to make
314037ba
AL
33it more readable. Lists can be created by opening a scope an including a
34single word enclosed in quotes followed by a semicolon.
35In general the sample configuration file in
7e4fd488
AL
36em(/usr/doc/apt/examples/apt.conf) and
37em(/usr/doc/apt/examples/configure-index)
38is a good guide for how it should look.
3d8fd174 39
314037ba
AL
40All of the APT tools take a -o option which allows an arbitary configuration
41directive to be specified on the command line. The syntax is a full option
42name (APT::Get::Assume-Yes for instance) followed by an equals sign then the
43new value of the option. Lists can be appended too by adding a trailing ::
44to the list name.
45
3d8fd174
AL
46manpagesection(The APT Group)
47This group of options controls general APT behavoir as well as holding the
48options for all of the tools.
49
50startdit()
51dit(bf(Architecture))
52System Architecture; sets the architecture to use when fetching files and
53parsing package lists. The internal default is the architecture apt was
54compiled for.
55
56dit(bf(Ignore-Hold))
57Ignore Held packages; This global options causes the problem resolver to
58ignore held packages in its decision making.
59
c98b1307
AL
60dit(bf(Clean-Installed))
61Defaults to on. When turned on the autoclean feature will remove any pacakge
62which can no longer be downloaded from the cache. If turned off then
63packages that are locally installed are also excluded from cleaning - but
64note that APT provides no direct means to reinstall them.
65
b780bc1b 66dit(bf(Immediate-Configure))
079cc404
AL
67Disable Immedate Configuration; This dangerous option disables some
68of APT's ordering code to cause it to make fewer dpkg calls. Doing
69so may be necessary on some extremely slow single user systems but
70is very dangerous and may cause package install scripts to fail or worse.
71Use at your own risk.
72
9d4c8f67
AL
73dit(bf(Force-LoopBreak))
74Never Enable this option unless you -really- know what you are doing. It
75permits APT to temporarily remove an essential package to break a
76Conflicts/Conflicts or Conflicts/Pre-Depend loop between two essential
77packages. SUCH A LOOP SHOULD NEVER EXIST AND IS A GRAVE BUG. This option will
17c0e8e1
AL
78work if the essential packages are not tar, gzip, libc, dpkg, bash or
79anything that those packages depend on.
9d4c8f67 80
67db871e
AL
81dit(bf(Cache-Limit))
82APT uses a fixed size memory mapped cache file to store the 'available'
83information. This sets the size of that cache.
84
3d8fd174
AL
85dit(bf(Get))
86The Get subsection controls the bf(apt-get(8)) tool, please see its
87documentation for more information about the options here.
88
89dit(bf(Cache))
d8aadfc1
AL
90The Cache subsection controls the bf(apt-cache(8)) tool, please see its
91documentation for more information about the options here.
3d8fd174
AL
92
93dit(bf(CDROM))
d8aadfc1
AL
94The CDROM subsection controls the bf(apt-cdrom(8)) tool, please see its
95documentation for more information about the options here.
3d8fd174
AL
96
97enddit()
98
99manpagesection(The Acquire Group)
100The bf(Acquire) group of options controls the download of packages and the
101URI handlers.
102
103startdit()
104dit(bf(Queue-Mode))
105Queuing mode; bf(Queue-Mode) can be one of bf(host) or bf(access) which
91cb4c6b 106determins how APT parallelizes outgoing connections. bf(host) means that
3d8fd174
AL
107one connection per target host will be opened, bf(access) means that one
108connection per URI type will be opened.
109
7d8afa39
AL
110dit(bf(Retries))
111Number of retries to perform. If this is non-zero apt will retry failed
112files the given number of times.
113
7ef72446 114dit(bf(Source-Symlinks))
917ae805
AL
115Use symlinks for source archives. If set to true then source archives will
116be symlinked when possible instead of copying. True is the default
117
3d8fd174
AL
118dit(bf(http))
119HTTP URIs; http::Proxy is the default http proxy to use. It is in the standard
120form of em(http://[[user][:pass]@]host[:port]/). Per host proxies can also
121be specified by using the form http::Proxy::<host> with the special keyword
122em(DIRECT) meaning to use no proxies. The em($http_proxy) environment variable
123will override all settings.
124
5c2cb6e4
AL
125Three settings are provided for cache control with HTTP/1.1 complient proxy
126caches. bf(No-Cache) tells the proxy to not used its cached response under
127any circumstances, bf(Max-Age) is sent only for index files and tells the
91cb4c6b
AL
128cache to refresh its object if it is older than the given number of seconds.
129Debian updates its index files daily so the default is 1 day. bf(No-Store)
5c2cb6e4
AL
130specifies that the cache should never store this request, it is only
131set for archive files. This may be usefull to prevent polluting a proxy cache
132with very large .deb files. Note: Squid 2.0.2 does not support any of
85f72a56
AL
133these options.
134
27b15b3b
AL
135The option bf(timeout) sets the timeout timer used by the method, this
136applies to all things including connection timeout and data timeout.
137
85f72a56
AL
138One setting is provided to control the pipeline depth in cases where the
139remote server is not RFC conforming or buggy (such as Squid 2.0.2)
140Acquire::http::Pipeline-Depth can be a value from 0 to 5 indicating how many
141outstanding requests APT should send.
5c2cb6e4 142
78b558ca
AL
143dit(bf(ftp))
144FTP URis; ftp::Proxy is the default proxy server to use. It is in the
10bb1f5f 145standard form of em(ftp://[[user][:pass]@]host[:port]/) and is overriden
78b558ca
AL
146by the ftp_proxy environment variable. To use a ftp proxy you will have to
147set the ftp::ProxyLogin script in the configuration file. This entry
148specifies the commands to send to tell the proxy server what to connect
7e4fd488 149to. Please see em(/usr/doc/apt/examples/configure-index) for an example of how
78b558ca
AL
150to do this. The subsitution variables available are $(PROXY_USER),
151$(PROXY_PASS), $(SITE_USER), $(SITE_PASS), $(SITE), and $(SITE_PORT).
152Each is taken from it's respective URI component.
153
27b15b3b
AL
154The option bf(timeout) sets the timeout timer used by the method, this
155applies to all things including connection timeout and data timeout.
156
78b558ca
AL
157Several settings are provided to control passive mode. Generally it is safe
158to leave passive mode on, it works in nearly every environment. However some
159situations require that passive mode be disabled and port mode ftp used
160instead. This can be done globally, for connections that go through a proxy
161or for a specific host (See the sample config file for examples)
162
27b15b3b 163
10bb1f5f
AL
164It is possible to proxy FTP over HTTP by setting the em(ftp_proxy)
165environment variable to a http url - see the discussion of the http method
166above for syntax. You cannot set this in the configuration file and it is
167not recommended to use FTP over HTTP due to its low efficiency.
168
3d8fd174
AL
169dit(bf(cdrom))
170CDROM URIs; the only setting for CDROM URIs is the mount point, cdrom::Mount
171which must be the mount point for the CDROM drive as specified in /etc/fstab.
6c907975
AL
172It is possible to provide alternate mount and unmount commands if your
173mount point cannot be listed in the fstab (such as an SMB mount). The syntax
174is to put "/cdrom/"::Mount "foo"; within the cdrom block. It is important to
175have the trailing slash. Unmount commands can be specified using UMount.
3d8fd174
AL
176
177enddit()
178
179manpagesection(Directories)
180The bf(Dir::State) section has directories that pertain to local state
181information. bf(lists) is the directory to place downloaded package lists
182in and bf(status) is the name of the dpkg status file. bf(Dir::State)
183contains the default directory to prefix on all sub items if they do not
184start with em(/) or em(./). bf(xstatus) and bf(userstatus) are for future
185use.
186
187bf(Dir::Cache) contains locations pertaining to local cache information, such
188as the two package caches bf(srcpkgcache) and bf(pkgcache) as well as the
189location to place downloaded archives, bf(Dir::Cache::archives). Like
190bf(Dir::State) the default directory is contained in bf(Dir::Cache)
191
50582e40 192bf(Dir::Etc) contains the location of configuration files, bf(sourcelist)
3d8fd174
AL
193gives the location of the sourcelist and bf(main) is the default configuration
194file (setting has no effect)
195
196Binary programs are pointed to by bf(Dir::Bin). bf(methods) specifies the
fb0ee66e
AL
197location of the method handlers and bf(gzip), bf(dpkg), bf(apt-get),
198bf(dpkg-source), bf(dpkg-buildpackage) and
3d8fd174
AL
199bf(apt-cache) specify the location of the respective programs.
200
201manpagesection(APT in DSelect)
202When APT is used as a bf(dselect(8)) method several configuration directives
203control the default behavoir. These are in the bf(DSelect) section.
204
205startdit()
206dit(bf(Clean))
207Cache Clean mode; this value may be one of always, auto, prompt and never.
27d6ee04
AL
208always will remove all archives after they have been downloaded while auto
209will only remove things that are no longer downloadable (replaced with a new
210version for instance)
3d8fd174
AL
211
212dit(bf(Options))
213The contents of this variable is passed to bf(apt-get(8)) as command line
214options when it is run for the install phase.
215
216dit(bf(UpdateOptions))
217The contents of this variable is passed to bf(apt-get(8)) as command line
218options when it is run for the update phase.
219
220dit(bf(PromptAfterUpdate))
221If true the [U]pdate operation in dselect will always prompt to continue.
222The default is to prompt only on error.
223enddit()
224
6dd55be7
AL
225manpagesection(How APT calls DPkg)
226Several configuration directives control how APT invokes dpkg. These are in
227the bf(DPkg) section.
228
229startdit()
230dit(bf(Options))
231This is a list of options to pass to dpkg. The options must be specified
232using the list notation and each list item is passed as a single arugment
233to dpkg.
234
307e3c3f 235dit(bf(Pre-Invoke), bf(Post-Invoke))
cf544e14
AL
236This is a list of shell commands to run before/after invoking dpkg. Like
237bf(Options) this must be specified in list notation. The commands
238are invoked in order using /bin/sh, should any fail APT will abort.
239
27b15b3b 240dit(bf(Pre-Install-Pkgs))
06b8cce6
AL
241This is a list of shell commands to run before invoking dpkg. Like
242bf(Options) this must be specified in list notation. The commands
243are invoked in order using /bin/sh, should any fail APT will abort.
244Apt will pass to the commands on standard input the filenames of all
245.deb files it is going to install, one per line.
246
cf544e14
AL
247dit(bf(Run-Directory))
248APT chdirs to this directory before invoking dpkg, the default is /.
6dd55be7 249
fb0ee66e
AL
250dit(bf(Build-Options))
251These options are passed to dpkg-buildpackage when compiling packages,
252the default is to disable signing and produce all binaries.
253
6dd55be7
AL
254enddit()
255
3d8fd174
AL
256manpagesection(Debug Options)
257Most of the options in the bf(debug) section are not interesting to the
258normal user, however bf(Debug::pkgProblemResolver) shows interesting
259output about the decisions dist-upgrade makes. bf(Debug::NoLocking)
260disables file locking so apt can do some operations as non-root and
78b558ca 261bf(Debug::pkgDPkgPM) will print out the command line for each dpkg
fbdccabb
AL
262invokation. bf(Debug::IdentCdrom) will disable the inclusion of statfs
263data in CDROM IDs.
3d8fd174
AL
264
265manpagesection(EXAMPLES)
7e4fd488
AL
266bf(/usr/doc/apt/examples/configure-index.gz) contains a sample configuration
267file showing the default values for all possible options.
3d8fd174 268
6c907975 269manpagesection(FILES)
91cb4c6b
AL
270/etc/apt/apt.conf
271
3d8fd174
AL
272manpageseealso()
273apt-cache (8),
40d151d8 274apt-get (8)
3d8fd174
AL
275
276manpagebugs()
d59cbe7f 277See http://bugs.debian.org/apt. If you wish to report a
3d8fd174
AL
278bug in bf(apt-get), please see bf(/usr/doc/debian/bug-reporting.txt)
279or the bf(bug(1)) command.
280
281manpageauthor()
282apt-get was written by the APT team <apt@packages.debian.org>.