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