1APT.CONF(5) apt.conf APT.CONF(5)
2
3
4
6 apt.conf - Configuration file for APT
7
8
10 apt.conf is the main configuration file for the APT suite of tools, all
11 tools make use of the configuration file and a common command-line
12 parser to provide a uniform environment. When an APT tool starts up it
13 will read the configuration specified by the APT_CONFIG environment
14 variable (if any) and then read the files in Dir::Etc::Parts then read
15 the main configuration file specified by Dir::Etc::main then finally
16 apply the command-line options to override the configuration direc‐
17 tives, possibly loading even more config files.
18
19 The configuration file is organized in a tree with options organized
20 into functional groups. Option specification is given with a double
21 colon notation, for instance APT::Get::Assume-Yes is an option within
22 the APT tool group, for the Get tool. Options do not inherit from their
23 parent groups.
24
25 Syntacticly, the configuration language is modeled after what the ISC
26 tools such as bind and dhcp use. Lines starting with // are treated as
27 comments (ignored). Each line is of the form:
28
29 APT::Get::Assume-Yes "true";
30
31 The trailing semicolon is required and the quotes are optional. A new
32 scope can be opened with curly braces, like:
33
34 APT {
35 Get {
36 Assume-Yes "true";
37 Fix-Broken "true";
38 };
39 };
40
41 with newlines placed to make it more readable. Lists can be created by
42 opening a scope and including a single word enclosed in quotes followed
43 by a semicolon. Multiple entries can be included, each separated by a
44 semicolon:
45
46 RPM::Allow-Duplicated {"kernel"; "kernel-smp";};
47
48 In general the sample configuration file in /usr/share/doc/apt/exam‐
49 ples/apt.conf and /usr/share/doc/apt/examples/configure-index.gz are
50 good guides for how it should look.
51
52 Two specials are allowed, #include and #clear. #include will include
53 the given file, unless the filename ends in a slash, then the whole
54 directory is included. #clear is used to erase a list of names.
55
56 All of the APT tools take a -o option which allows an arbitrary config‐
57 uration directive to be specified on the command line. The syntax is a
58 full option name (APT::Get::Assume-Yes for instance) followed by an
59 equals sign (=) then the new value of the option. Lists can be appended
60 too by adding a trailing :: to the list name.
61
62
64 This group of options controls general APT behavior as well as holding
65 the options for all of the tools.
66
67
68 Architecture
69 System Architecture. Sets the architecture to use when fetching
70 files and parsing package lists. The internal default is the
71 architecture apt was compiled for.
72
73
74 Ignore-Hold
75 Ignore Held packages. This global option causes the problem
76 resolver to ignore held packages in its decision making.
77
78
79 Clean-Installed
80 Defaults to on. When turned on the autoclean feature will
81 remove any packages which can no longer be downloaded from the
82 cache. If turned off, then packages that are locally installed
83 are also excluded from cleaning - but note that APT provides no
84 direct means to reinstall them.
85
86
87 Force-LoopBreak
88 Never Enable this option unless you really know what you are
89 doing. It permits APT to temporarily remove an essential package
90 to break a Conflicts/Conflicts or Conflicts/Pre-Depend loop
91 between two essential packages. SUCH A LOOP SHOULD NEVER EXIST
92 AND IS A GRAVE BUG. This option will work if the essential pack‐
93 ages are not gzip, libc, rpm, bash or anything that those pack‐
94 ages depend on.
95
96
97 Cache-Limit
98 APT uses a fixed size memory mapped cache file to store the
99 'available' information. This sets the size of that cache.
100
101
102 Build-Essential
103 Defines which package(s) are considered essential build depen‐
104 dencies.
105
106
107 Get The Get subsection controls the apt-get(8) tool, please see its
108 documentation for more information about the options here.
109
110
111 Cache The Cache subsection controls the apt-cache(8) tool, please see
112 its documentation for more information about the options here.
113
114
115 CDROM The CDROM subsection controls the apt-cdrom(8) tool, please see
116 its documentation for more information about the options here.
117
118
120 The Acquire group of options controls the download of packages and the
121 URI handlers.
122
123
124 Queue-Mode
125 Queuing mode. Queue-Mode can be one of host or access which
126 determines how APT parallelizes outgoing connections. host means
127 that one connection per target host will be opened, access means
128 that one connection per URI type will be opened.
129
130
131 Retries
132 Number of retries to perform. If this is non-zero APT will retry
133 failed files the given number of times.
134
135
136 Source-Symlinks
137 Use symlinks for source archives. If set to true then source ar‐
138 chives will be symlinked when possible instead of copying. True
139 is the default
140
141
142 http HTTP URIs. http::Proxy is the default http proxy to use. It is
143 in the standard form of http://[[user][:pass]@]host[:port]/.
144 Per-host proxies can also be specified by using the form
145 http::Proxy::<host> with the special keyword DIRECT meaning to
146 use no proxies. The "http_proxy" environment variable will over‐
147 ride all settings.
148
149 Three settings are provided for cache control with HTTP/1.1 com‐
150 pliant proxy caches. No-Cache tells the proxy to not use its
151 cached response under any circumstances, Max-Age is sent only
152 for index files and tells the cache to refresh its object if it
153 is older than the given number of seconds; the default is 1 day.
154 No-Store specifies that the cache should never store this
155 request, it is only set for archive files. This may be useful to
156 prevent polluting a proxy cache with very large .rpm files.
157 Note: Squid 2.0.2 does not support any of these options.
158
159 The option timeout sets the timeout timer used by the method,
160 this applies to all things including connection timeout and data
161 timeout.
162
163 One setting is provided to control the pipeline depth in cases
164 where the remote server is not RFC conforming or buggy (such as
165 Squid 2.0.2) Acquire::http::Pipeline-Depth can be a value from 0
166 to 5 indicating how many outstanding requests APT should send. A
167 value of zero MUST be specified if the remote host does not
168 properly linger on TCP connections - otherwise data corruption
169 will occur. Hosts which require this are in violation of RFC
170 2068.
171
172
173 ftp FTP URIs. ftp::Proxy is the default proxy server to use. It is
174 in the standard form of ftp://[[user][:pass]@]host[:port]/ and
175 is overridden by the "ftp_proxy" environment variable. To use a
176 ftp proxy you will have to set the ftp::ProxyLogin script in the
177 configuration file. This entry specifies the commands to send to
178 tell the proxy server what to connect to. Please see
179 /usr/share/doc/apt/examples/configure-index.gz for an example of
180 how to do this. The subsitution variables available are
181 $(PROXY_USER), $(PROXY_PASS), $(SITE_USER), $(SITE_PASS),
182 $(SITE), and $(SITE_PORT). Each is taken from it's respective
183 URI component.
184
185 The option timeout sets the timeout timer used by the method,
186 this applies to all things including connection timeout and data
187 timeout.
188
189 Several settings are provided to control passive mode. Generally
190 it is safe to leave passive mode on, it works in nearly every
191 environment. However some situations require that passive mode
192 be disabled and port mode ftp used instead. This can be done
193 globally, for connections that go through a proxy or for a spe‐
194 cific host (See the sample config file for examples).
195
196 It is possible to proxy FTP over HTTP by setting the "ftp_proxy"
197 environment variable to a http url - see the discussion of the
198 http method above for syntax. You cannot set this in the config‐
199 uration file and it is not recommended to use FTP over HTTP due
200 to its low efficiency.
201
202 The setting ForceExtended controls the use of RFC2428 EPSV and
203 EPRT commands. The defaut is false, which means these commands
204 are only used if the control connection is IPv6. Setting this to
205 true forces their use even on IPv4 connections. Note that most
206 FTP servers do not support RFC2428.
207
208
209 cdrom CDROM URIs. The only setting for CDROM URIs is the mount point,
210 cdrom::Mount which must be the mount point for the CDROM drive
211 as specified in /etc/fstab. It is possible to provide alternate
212 mount and unmount commands if your mount point cannot be listed
213 in the fstab (such as an SMB mount and old mount packages). The
214 syntax is to put:
215
216 "/cdrom/"::Mount "foo";
217
218 within the cdrom block. It is important to have the trailing
219 slash. Unmount commands can be specified using UMount.
220
221
223 The Dir::State section has directories that pertain to local state
224 information. lists is the directory to place downloaded package lists
225 in. preferences is the name of the APT preferences file. Dir::State
226 contains the default directory to prefix on all sub items if they do
227 not start with / or ./.
228
229 Dir::Cache contains locations pertaining to local cache information,
230 such as the two package caches srcpkgcache and pkgcache as well as the
231 location to place downloaded archives, Dir::Cache::archives. Genera‐
232 tion of caches can be turned off by setting their names to be blank.
233 This will slow down startup but save disk space. It is probably pref‐
234 ered to turn off the pkgcache rather than the srcpkgcache. Like
235 Dir::State the default directory is contained in Dir::Cache.
236
237 Dir::Etc contains the location of configuration files, sourcelist gives
238 the location of the sourcelist and main is the default configuration
239 file (setting has no effect, unless it is done from the config file
240 specified by the "APT_CONFIG" environment variable).
241
242 The Dir::Parts setting reads in all the config fragments in lexical
243 order from the directory specified. After this is done then the main
244 config file is loaded.
245
246 Binary programs are pointed to by Dir::Bin. Dir::Bin::Methods specifies
247 the location of the method handlers while gzip, rpm, apt-get, rpmbuild
248 and apt-cache specify the location of their respective programs.
249
250
252 Several configuration directives control how APT invokes rpm(8). These
253 are in the RPM section.
254
255
256 Options
257 This is a list of options to pass to rpm(8) for all install,
258 upgrade and remove operations. The options must be specified
259 using the list notation and each list item is passed as a single
260 argument.
261
262
263 Install-Options
264 This is a list of options to pass to rpm(8) during install and
265 upgrade operations. The options must be specified using the list
266 notation and each list item is passed as a single argument.
267
268
269 Erase-Options
270 This is a list of options to pass to rpm(8) during remove opera‐
271 tions. The options must be specified using the list notation
272 and each list item is passed as a single argument.
273
274
275 Pre-Invoke, Post-Invoke
276 This is a list of shell commands to run before/after invoking
277 rpm(8). Like Options this must be specified in list notation.
278 The commands are invoked in order using /bin/sh; should any fail
279 APT will abort.
280
281
282 Pre-Install-Pkgs
283 This is a list of shell commands to run before invoking rpm(8).
284 Like Options this must be specified in list notation. The com‐
285 mands are invoked in order using /bin/sh; should any fail APT
286 will abort. APT will pass to the commands on standard input the
287 filenames of all .rpm files it is going to install, one per
288 line.
289
290 Version 2 of this protocol dumps more information, including the
291 protocol version, the APT configuration space and the packages,
292 files and versions being changed. Version 2 is enabled by set‐
293 ting DPkg::Tools::Options::cmd::Version to 2. cmd is a command
294 given to Pre-Install-Pkgs.
295
296
297 Run-Directory
298 APT chdirs to this directory before invoking rpm(8), the default
299 is /.
300
301
302 Build-Options
303 These options are passed to rpmbuild(8) when compiling packages.
304
305
307 Most of the options in the debug section are not interesting to the
308 normal user, however Debug::pkgProblemResolver shows interesting output
309 about the decisions apt-get dist-upgrade makes. Debug::NoLocking dis‐
310 ables file locking so APT can do some operations as non-root and
311 Debug::pkgRPMPM will print out the command-line for each rpm(8) invoca‐
312 tion. Debug::IdentCdrom will disable the inclusion of statfs data in
313 CDROM IDs.
314
315
317 /usr/share/doc/apt/examples/configure-index.gz contains a sample con‐
318 figuration file showing the default values for all possible options.
319
320
322 /etc/apt/apt.conf
323
324
326 apt-cache(8), apt-config(8), apt_preferences(5).
327
328
330 Reporting bugs in APT-RPM is best done in the APT-RPM mailinglist at
331 http://apt-rpm.org/mailinglist.shtml.
332
333
335 Maintainer and contributor information can be found in the credits page
336 http://apt-rpm.org/about.shtml of APT-RPM.
337
338
339
340APT-RPM 14 Jun 2006 APT.CONF(5)