merged from the debian-sid branch
[ntk/apt.git] / doc / examples / configure-index
1 /* This file is an index of all APT configuration directives. It should
2 NOT actually be used as a real config file, though it is (except for the
3 last line) a completely valid file. Most of the options have sane default
4 values, unless you have specific needs you should NOT include arbitrary
5 items in a custom configuration.
6
7 In some instances involving filenames it is possible to set the default
8 directory when the path is evaluated. This means you can use relative
9 paths within the sub scope.
10
11 The configuration directives are specified in a tree with {} designating
12 a subscope relative to the tag before the {}. You can further specify
13 a subscope using scope notation eg,
14 APT::Architecture "i386";
15 This is prefixed with the current scope. Scope notation must be used
16 if an option is specified on the command line with -o.
17 */
18
19 quiet "0";
20
21 // Options for APT in general
22 APT
23 {
24 Architecture "i386";
25 Build-Essential "build-essential";
26
27 NeverAutoRemove { "linux-image.*"; }; // packages that should never
28 // considered for autoRemove
29
30 // Options for apt-get
31 Get
32 {
33 Arch-Only "false";
34 AllowUnauthenticated "false";
35 AutomaticRemove "false";
36 HideAutoRemove "false";
37 Download-Only "false";
38 Simulate "false";
39 Assume-Yes "false";
40 Force-Yes "false"; // I would never set this.
41 Fix-Broken "false";
42 Fix-Missing "false";
43 Show-Upgraded "false";
44 Show-Versions "false";
45 Upgrade "true";
46 Print-URIs "false";
47 Compile "false";
48 Download "true";
49 Purge "false";
50 List-Cleanup "true";
51 ReInstall "false";
52 Trivial-Only "false";
53 Remove "true";
54 Only-Source "";
55 Diff-Only "false";
56 Tar-Only "false";
57 Build-Dep-Automatic "true";
58 };
59
60 Cache
61 {
62 Important "false";
63 AllVersions "false";
64 GivenOnly "false";
65 RecurseDepends "false";
66 ShowFull "false";
67 Generate "true";
68 NamesOnly "false";
69 AllNames "false";
70 Installed "false";
71 };
72
73 CDROM
74 {
75 Rename "false";
76 NoMount "false";
77 Fast "false";
78 NoAct "false";
79 };
80
81 Update
82 {
83 Pre-Invoke {"touch /var/lib/apt/pre-update-stamp"; };
84 Post-Invoke {"touch /var/lib/apt/post-update-stamp"; };
85 };
86
87 Authentication
88 {
89 TrustCDROM "false"; // consider the CDROM always trusted
90 };
91
92 GPGV
93 {
94 TrustedKeyring "/etc/apt/trusted.gpg";
95 };
96
97 // Some general options
98 Ignore-Hold "false";
99 Clean-Installed "true";
100 Immediate-Configure "true"; // DO NOT turn this off, see the man page
101 Force-LoopBreak "false"; // DO NOT turn this on, see the man page
102 Cache-Limit "4194304";
103 Default-Release "";
104
105 // consider Recommends, Suggests as important dependencies that should
106 // be installed by default
107 Install-Recommends "true";
108 Install-Suggests "false";
109
110 // consider dependencies of packages in this section manual
111 Never-MarkAuto-Sections {"metapackages"; "universe/metapackages"; };
112
113 // Write progress messages on this fd (for stuff like base-config)
114 Status-Fd "-1";
115 // Keep the list of FDs open (normally apt closes all fds when it
116 // does a ExecFork)
117 Keep-Fds {};
118
119 // control parameters for cron jobs by /etc/cron.daily/apt
120 Periodic
121 {
122 BackupArchiveInterval "0";
123 // - Backup after n-days if archive contents changed.(0=disable)
124
125 BackupLevel "3";
126 // - Backup level.(0=disable), 1 is invalid.
127
128 // APT::Archives::MaxAge "0"; (old, deprecated)
129 MaxAge "0"; // (new)
130 // - Set maximum allowed age of a cache package file. If a cache
131 // package file is older it is deleted (0=disable)
132
133 // APT::Archives::MinAge "2"; (old, deprecated)
134 MinAge "2"; // (new)
135 // - Set minimum age of a package file. If a file is younger it
136 // will not be deleted (0=disable). Usefull to prevent races
137 // and to keep backups of the packages for emergency.
138
139 // APT::Archives::MaxSize "0"; (old, deprecated)
140 MaxSize "0"; // (new)
141 // - Set maximum size of the cache in MB (0=disable). If the cache
142 // is bigger, cached package files are deleted until the size
143 // requirement is met (the biggest packages will be deleted
144 // first).
145
146 Update-Package-Lists "0";
147 // - Do "apt-get update" automatically every n-days (0=disable)
148 //
149 Download-Upgradeable-Packages "0";
150 // - Do "apt-get upgrade --download-only" every n-days (0=disable)
151 //
152 Unattended-Upgrade "0";
153 // - Run the "unattended-upgrade" security upgrade script
154 // every n-days (0=disabled)
155 // Requires the package "unattended-upgrades" and will write
156 // a log in /var/log/unattended-upgrades
157 //
158 AutocleanInterval "0";
159 // - Do "apt-get autoclean" every n-days (0=disable)
160
161 Verbose "0";
162 // - Send report mail to root
163 // 0: no report (or null string)
164 // 1: progress report (actually any string)
165 // 2: + command outputs (remove -qq, remove 2>/dev/null, add -d)
166 // 3: + trace on
167 };
168 };
169
170 // Options for the downloading routines
171 Acquire
172 {
173 Queue-Mode "host"; // host|access
174 Retries "0";
175 Source-Symlinks "true";
176
177 PDiffs "true"; // try to get the IndexFile diffs
178
179 // HTTP method configuration
180 http
181 {
182 Proxy "http://127.0.0.1:3128";
183 Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
184 Timeout "120";
185 Pipeline-Depth "5";
186
187 // Cache Control. Note these do not work with Squid 2.0.2
188 No-Cache "false";
189 Max-Age "86400"; // 1 Day age on index files
190 No-Store "false"; // Prevent the cache from storing archives
191 Dl-Limit "7"; // 7Kb/sec maximum download rate
192 };
193
194 // HTTPS method configuration:
195 // - uses the http proxy config
196 // - uses the http cache-control values
197 // - uses the http Dl-Limit values
198 https
199 {
200 Verify-Peer "false";
201 SslCert "/etc/apt/some.pem";
202 CaPath "/etc/ssl/certs";
203 Verify-Host" "2";
204 };
205
206 ftp
207 {
208 Proxy "ftp://127.0.0.1/";
209 Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
210
211 /* Required script to perform proxy login. This example should work
212 for tisfwtk */
213 ProxyLogin
214 {
215 "USER $(PROXY_USER)";
216 "PASS $(PROXY_PASS)";
217 "USER $(SITE_USER)@$(SITE):$(SITE_PORT)";
218 "PASS $(SITE_PASS)";
219 };
220
221 Timeout "120";
222
223 /* Passive mode control, proxy, non-proxy and per-host. Pasv mode
224 is preferred if possible */
225 Passive "true";
226 Proxy::Passive "true";
227 Passive::http.us.debian.org "true"; // Specific per-host setting
228 };
229
230 cdrom
231 {
232 mount "/cdrom";
233
234 // You need the trailing slash!
235 "/cdrom/"
236 {
237 Mount "sleep 1000";
238 UMount "sleep 500";
239 }
240 };
241
242 gpgv
243 {
244 Options {"--ignore-time-conflict";} // not very useful on a normal system
245 };
246 };
247
248 // Directory layout
249 Dir "/"
250 {
251 // Location of the state dir
252 State "var/lib/apt/"
253 {
254 Lists "lists/";
255 xstatus "xstatus";
256 userstatus "status.user";
257 status "/var/lib/dpkg/status";
258 cdroms "cdroms.list";
259 };
260
261 // Location of the cache dir
262 Cache "var/cache/apt/" {
263 Archives "archives/";
264 // backup directory created by /etc/cron.daily/apt
265 Backup "backup/";
266 srcpkgcache "srcpkgcache.bin";
267 pkgcache "pkgcache.bin";
268 };
269
270 // Config files
271 Etc "etc/apt/" {
272 SourceList "sources.list";
273 Main "apt.conf";
274 Preferences "preferences";
275 Parts "apt.conf.d/";
276 };
277
278 // Locations of binaries
279 Bin {
280 methods "/usr/lib/apt/methods/";
281 gzip "/bin/gzip";
282 gpg "/usr/bin/gpgv";
283 dpkg "/usr/bin/dpkg";
284 dpkg-source "/usr/bin/dpkg-source";
285 dpkg-buildpackage "/usr/bin/dpkg-buildpackage";
286 apt-get "/usr/bin/apt-get";
287 apt-cache "/usr/bin/apt-cache";
288 };
289
290 // Location of the logfile
291 Log "var/log/apt" {
292 Terminal "term.log";
293 };
294 };
295
296 // Things that effect the APT dselect method
297 DSelect
298 {
299 Clean "auto"; // always|auto|prompt|never
300 Options "-f";
301 UpdateOptions "";
302 PromptAfterUpdate "no";
303 CheckDir "no";
304 }
305
306 DPkg
307 {
308 // Probably don't want to use force-downgrade..
309 Options {"--force-overwrite";"--force-downgrade";}
310
311 // Auto re-mounting of a readonly /usr
312 Pre-Invoke {"mount -o remount,rw /usr";};
313 Post-Invoke {"mount -o remount,ro /usr";};
314
315 // Prevents daemons from getting cwd as something mountable (default)
316 Run-Directory "/";
317
318 // Build options for apt-get source --compile
319 Build-Options "-b -uc";
320
321 // Pre-configure all packages before they are installed using debconf.
322 Pre-Install-Pkgs {"dpkg-preconfigure --apt --priority=low --frontend=dialog";};
323
324 // Flush the contents of stdin before forking dpkg.
325 FlushSTDIN "true";
326
327 // Control the size of the command line passed to dpkg.
328 MaxBytes 1024;
329 MaxArgs 350;
330
331 // controls if apt will apport on the first dpkg error or if it
332 // tries to install as many packages as possible
333 StopOnError "true";
334 }
335
336 /* Options you can set to see some debugging text They correspond to names
337 of classes in the source code */
338 Debug
339 {
340 pkgProblemResolver "false";
341 pkgDepCache::AutoInstall "false"; // what packages apt install to satify dependencies
342 pkgAcquire "false";
343 pkgAcquire::Worker "false";
344 pkgAcquire::Auth "false";
345 pkgDPkgPM "false";
346 pkgDPkgProgressReporting "false";
347 pkgOrderList "false";
348 pkgAutoRemove "false"; // show information about automatic removes
349 BuildDeps "false";
350 pkgInitialize "false"; // This one will dump the configuration space
351 NoLocking "false";
352 Acquire::Ftp "false"; // Show ftp command traffic
353 Acquire::Http "false"; // Show http command traffic
354 Acquire::Https "false"; // Show https debug
355 Acquire::gpgv "false"; // Show the gpgv traffic
356 aptcdrom "false"; // Show found package files
357 IdentCdrom "false";
358
359 }
360
361 /* Whatever you do, do not use this configuration file!! Take out ONLY
362 the portions you need! */
363 This Is Not A Valid Config File