]> git.saurik.com Git - apt.git/blame - doc/examples/configure-index
cmdline/apt-get.cc: simplify changelog uri generation
[apt.git] / doc / examples / configure-index
CommitLineData
50e19557 1/* This file is an index of all APT configuration directives. It should
640c5d94
MZ
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
e3a1f08d 4 values, unless you have specific needs you should NOT include arbitrary
640c5d94 5 items in a custom configuration.
50e19557
AL
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
640c5d94
MZ
19quiet "0";
20
50e19557
AL
21// Options for APT in general
22APT
23{
24 Architecture "i386";
7d6f9f8f 25 Build-Essential "build-essential";
22dcc318 26
63b0c177 27 NeverAutoRemove { "linux-image.*"; }; // packages that should never
22dcc318
MV
28 // considered for autoRemove
29
50e19557
AL
30 // Options for apt-get
31 Get
32 {
7d6f9f8f 33 Arch-Only "false";
8070717c 34 AllowUnauthenticated "false";
120365ce 35 AutomaticRemove "false";
7898bd97 36 HideAutoRemove "false";
50e19557
AL
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";
640c5d94 44 Show-Versions "false";
b2e465d6 45 Upgrade "true";
50e19557
AL
46 Print-URIs "false";
47 Compile "false";
b2e465d6 48 Download "true";
50e19557
AL
49 Purge "false";
50 List-Cleanup "true";
51 ReInstall "false";
52 Trivial-Only "false";
b2e465d6 53 Remove "true";
640c5d94
MZ
54 Only-Source "";
55 Diff-Only "false";
56 Tar-Only "false";
d59228b0 57 Build-Dep-Automatic "true";
ecf59bfc 58 Show-User-Simulation-Note "true";
50e19557
AL
59 };
60
61 Cache
62 {
63 Important "false";
64 AllVersions "false";
8c6e33d8 65 GivenOnly "false";
153a849d 66 RecurseDepends "false";
640c5d94
MZ
67 ShowFull "false";
68 Generate "true";
69 NamesOnly "false";
70 AllNames "false";
71 Installed "false";
50e19557
AL
72 };
73
74 CDROM
75 {
76 Rename "false";
77 NoMount "false";
78 Fast "false";
79 NoAct "false";
80 };
81
f8477782
MV
82 Update
83 {
84 Pre-Invoke {"touch /var/lib/apt/pre-update-stamp"; };
85 Post-Invoke {"touch /var/lib/apt/post-update-stamp"; };
86 };
87
e8cdc56a
MV
88 Authentication
89 {
4e0ad446 90 TrustCDROM "false"; // consider the CDROM always trusted
e8cdc56a
MV
91 };
92
50e19557
AL
93 // Some general options
94 Ignore-Hold "false";
95 Clean-Installed "true";
96 Immediate-Configure "true"; // DO NOT turn this off, see the man page
97 Force-LoopBreak "false"; // DO NOT turn this on, see the man page
dcdf1ef1
DK
98 Cache-Start "20971520";
99 Cache-Grow "1048576";
100 Cache-Limit "0";
877d310f 101 Default-Release "";
75ef8f14 102
e9ae3677
MV
103 // consider Recommends, Suggests as important dependencies that should
104 // be installed by default
50c26918 105 Install-Recommends "true";
e53ee4ca 106 Install-Suggests "false";
75ef8f14 107
92b9551f 108 // consider dependencies of packages in this section manual
cb1933df 109 Never-MarkAuto-Sections {"metapackages"; "universe/metapackages"; };
2a7e07c7 110
75ef8f14
MV
111 // Write progress messages on this fd (for stuff like base-config)
112 Status-Fd "-1";
113 // Keep the list of FDs open (normally apt closes all fds when it
114 // does a ExecFork)
115 Keep-Fds {};
ff7c76f8 116
c845d4ff
MV
117 Changelogs
118 {
119 // server the provides the changelogs, the code will automatically
120 // append "/changelogs/pool/%s/%s/%s/%s_%s/changelog" to the uri
121 Server "http://packages.debian.org/";
122 }:
123
ff7c76f8
OA
124 // control parameters for cron jobs by /etc/cron.daily/apt
125 Periodic
126 {
c845d4ff
MV
127 BackupArchiveInterval "0";
128 // - Backup after n-days if archive contents changed.(0=disable)
129
130 BackupLevel "3";
131 // - Backup level.(0=disable), 1 is invalid.
132
133 // APT::Archives::MaxAge "0"; (old, deprecated)
134 MaxAge "0"; // (new)
135 // - Set maximum allowed age of a cache package file. If a cache
136 // package file is older it is deleted (0=disable)
137
138 // APT::Archives::MinAge "2"; (old, deprecated)
139 MinAge "2"; // (new)
140 // - Set minimum age of a package file. If a file is younger it
141 // will not be deleted (0=disable). Usefull to prevent races
142 // and to keep backups of the packages for emergency.
143
144 // APT::Archives::MaxSize "0"; (old, deprecated)
145 MaxSize "0"; // (new)
146 // - Set maximum size of the cache in MB (0=disable). If the cache
147 // is bigger, cached package files are deleted until the size
148 // requirement is met (the biggest packages will be deleted
149 // first).
150
151 Update-Package-Lists "0";
152 // - Do "apt-get update" automatically every n-days (0=disable)
153 //
154 Download-Upgradeable-Packages "0";
155 // - Do "apt-get upgrade --download-only" every n-days (0=disable)
156 //
157 Unattended-Upgrade "0";
158 // - Run the "unattended-upgrade" security upgrade script
159 // every n-days (0=disabled)
160 // Requires the package "unattended-upgrades" and will write
161 // a log in /var/log/unattended-upgrades
162 //
163 AutocleanInterval "0";
164 // - Do "apt-get autoclean" every n-days (0=disable)
165
166 Verbose "0";
167 // - Send report mail to root
168 // 0: no report (or null string)
169 // 1: progress report (actually any string)
170 // 2: + command outputs (remove -qq, remove 2>/dev/null, add -d)
171 // 3: + trace on
ff7c76f8 172 };
50e19557
AL
173};
174
175// Options for the downloading routines
176Acquire
177{
178 Queue-Mode "host"; // host|access
179 Retries "0";
180 Source-Symlinks "true";
a722b2c5 181 ForceHash "sha256"; // hashmethod used for expected hash: sha256, sha1 or md5sum
2ac3eeb6
MV
182
183 PDiffs "true"; // try to get the IndexFile diffs
02dceb31
DK
184 PDiffs::FileLimit "4"; // don't use diffs if we would need more than 4 diffs
185 PDiffs::SizeLimit "50"; // don't use diffs if size of all patches excess
186 // 50% of the size of the original file
187
b02fffa6
DK
188 Check-Valid-Until "true";
189 Max-ValidTime "864000"; // 10 days
190 Max-ValidTime::Debian-Security "604800"; // 7 days, label specific configuration
191
50e19557
AL
192 // HTTP method configuration
193 http
194 {
195 Proxy "http://127.0.0.1:3128";
196 Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
197 Timeout "120";
198 Pipeline-Depth "5";
09fab244
MV
199 AllowRedirect "true";
200
50e19557
AL
201 // Cache Control. Note these do not work with Squid 2.0.2
202 No-Cache "false";
203 Max-Age "86400"; // 1 Day age on index files
204 No-Store "false"; // Prevent the cache from storing archives
7c6e2dc7 205 Dl-Limit "7"; // 7Kb/sec maximum download rate
4494239c 206 User-Agent "Debian APT-HTTP/1.3";
50e19557
AL
207 };
208
c0d43847
DK
209
210
211 // HTTPS method configuration: uses the http
212 // - proxy config
213 // - cache-control values
214 // - Dl-Limit, Timout, ... values
215 // if not set explicit for https
216 //
217 // see /usr/share/doc/apt/examples/apt-https-method-example.conf.gz
218 // for more examples
219 https
714ee06c
MV
220 {
221 Verify-Peer "false";
222 SslCert "/etc/apt/some.pem";
c0d43847
DK
223 CaPath "/etc/ssl/certs";
224 Verify-Host" "true";
225 AllowRedirect "true";
226
227 Timeout "120";
228 AllowRedirect "true";
229
230 // Cache Control. Note these do not work with Squid 2.0.2
231 No-Cache "false";
232 Max-Age "86400"; // 1 Day age on index files
233 No-Store "false"; // Prevent the cache from storing archives
234 Dl-Limit "7"; // 7Kb/sec maximum download rate
4494239c 235
c0d43847 236 User-Agent "Debian APT-CURL/1.0";
714ee06c
MV
237 };
238
50e19557
AL
239 ftp
240 {
241 Proxy "ftp://127.0.0.1/";
242 Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
243
244 /* Required script to perform proxy login. This example should work
245 for tisfwtk */
246 ProxyLogin
247 {
248 "USER $(PROXY_USER)";
249 "PASS $(PROXY_PASS)";
250 "USER $(SITE_USER)@$(SITE):$(SITE_PORT)";
251 "PASS $(SITE_PASS)";
252 };
253
254 Timeout "120";
255
256 /* Passive mode control, proxy, non-proxy and per-host. Pasv mode
e3a1f08d 257 is preferred if possible */
50e19557
AL
258 Passive "true";
259 Proxy::Passive "true";
260 Passive::http.us.debian.org "true"; // Specific per-host setting
261 };
262
263 cdrom
264 {
93adae19
MV
265 // do auto detection of the cdrom mountpoint
266 AutoDetect "true";
267
268 // cdrom mountpoint (needs to be defined in fstab if AutoDetect is not used)
640c5d94 269 mount "/cdrom";
50e19557
AL
270
271 // You need the trailing slash!
272 "/cdrom/"
273 {
274 Mount "sleep 1000";
275 UMount "sleep 500";
276 }
277 };
e75f306e
MV
278
279 gpgv
280 {
e3a1f08d 281 Options {"--ignore-time-conflict";} // not very useful on a normal system
e75f306e 282 };
8bd02d8b
DK
283
284 CompressionTypes
285 {
286 bz2 "bzip2";
287 lzma "lzma";
288 gz "gzip";
289
290 Order { "gz"; "lzma"; "bz2"; };
291 };
45df0ad2
DK
292
293 Languages
294 {
295 "environment";
296 "de";
297 "en";
298 "none";
299 "fr";
300 };
50e19557
AL
301};
302
303// Directory layout
b2e465d6 304Dir "/"
50e19557
AL
305{
306 // Location of the state dir
b2e465d6 307 State "var/lib/apt/"
50e19557 308 {
640c5d94 309 Lists "lists/";
50e19557 310 status "/var/lib/dpkg/status";
d34690e1 311 extended_states "extended_states";
50e19557
AL
312 cdroms "cdroms.list";
313 };
314
315 // Location of the cache dir
b2e465d6 316 Cache "var/cache/apt/" {
640c5d94 317 Archives "archives/";
ff7c76f8
OA
318 // backup directory created by /etc/cron.daily/apt
319 Backup "backup/";
50e19557
AL
320 srcpkgcache "srcpkgcache.bin";
321 pkgcache "pkgcache.bin";
322 };
323
324 // Config files
b2e465d6 325 Etc "etc/apt/" {
640c5d94 326 Main "apt.conf";
592b7800 327 Netrc "auth.conf";
640c5d94 328 Parts "apt.conf.d/";
13aa7588
JAK
329 Preferences "preferences";
330 PreferencesParts "preferences.d";
5541fea3
JAK
331 SourceList "sources.list";
332 SourceParts "sources.list.d";
333 VendorList "vendors.list";
334 VendorParts "vendors.list.d";
c24f6ce2
DK
335 Trusted "trusted.gpg";
336 TrustedParts "trusted.gpg.d";
50e19557
AL
337 };
338
339 // Locations of binaries
340 Bin {
341 methods "/usr/lib/apt/methods/";
342 gzip "/bin/gzip";
8a3642bd 343 gpg "/usr/bin/gpgv";
50e19557
AL
344 dpkg "/usr/bin/dpkg";
345 dpkg-source "/usr/bin/dpkg-source";
2a065e4e 346 dpkg-buildpackage "/usr/bin/dpkg-buildpackage";
50e19557
AL
347 apt-get "/usr/bin/apt-get";
348 apt-cache "/usr/bin/apt-cache";
349 };
ff56e980
MV
350
351 // Location of the logfile
352 Log "var/log/apt" {
8da1f029 353 Terminal "term.log";
06863651 354 History "history.log";
ff56e980 355 };
ffee221b
MV
356
357 // Media
358 Media
359 {
360 // Media AutoDetect mount path
361 MountPath "/media/apt";
ff56e980 362 };
93adae19
MV
363
364 // Media
365 Media
366 {
367 // Media AutoDetect mount path
368 MountPath "/media/apt";
369 };
50e19557
AL
370};
371
372// Things that effect the APT dselect method
373DSelect
374{
375 Clean "auto"; // always|auto|prompt|never
376 Options "-f";
377 UpdateOptions "";
378 PromptAfterUpdate "no";
b2e465d6 379 CheckDir "no";
50e19557
AL
380}
381
3e9c4f70 382DPkg
50e19557 383{
3e9c4f70
DK
384 // let apt aggressivly use dpkg triggers
385 NoTriggers "true";
386 NoConfigure "true";
387 ConfigurePending "true";
388
50e19557
AL
389 // Probably don't want to use force-downgrade..
390 Options {"--force-overwrite";"--force-downgrade";}
3e9c4f70 391
50e19557
AL
392 // Auto re-mounting of a readonly /usr
393 Pre-Invoke {"mount -o remount,rw /usr";};
394 Post-Invoke {"mount -o remount,ro /usr";};
3e9c4f70
DK
395
396 Chroot-Directory "/";
397
50e19557
AL
398 // Prevents daemons from getting cwd as something mountable (default)
399 Run-Directory "/";
3e9c4f70 400
50e19557
AL
401 // Build options for apt-get source --compile
402 Build-Options "-b -uc";
403
404 // Pre-configure all packages before they are installed using debconf.
99a202d6 405 Pre-Install-Pkgs {"dpkg-preconfigure --apt --priority=low --frontend=dialog";};
8c6e33d8
AL
406
407 // Flush the contents of stdin before forking dpkg.
408 FlushSTDIN "true";
358688a8
AL
409
410 // Control the size of the command line passed to dpkg.
411 MaxBytes 1024;
412 MaxArgs 350;
c70496f9
MV
413
414 // controls if apt will apport on the first dpkg error or if it
415 // tries to install as many packages as possible
416 StopOnError "true";
50e19557
AL
417}
418
2d425135 419/* Options you can set to see some debugging text They correspond to names
50e19557
AL
420 of classes in the source code */
421Debug
422{
423 pkgProblemResolver "false";
8b4894fe 424 pkgProblemResolver::ShowScores "false";
d4c5f11f 425 pkgDepCache::AutoInstall "false"; // what packages apt install to satify dependencies
af29ffb4 426 pkgDepCache::Marker "false";
c8e572e3 427 pkgCacheGen "false";
50e19557
AL
428 pkgAcquire "false";
429 pkgAcquire::Worker "false";
5e9179a6 430 pkgAcquire::Auth "false";
50e19557 431 pkgDPkgPM "false";
75ef8f14 432 pkgDPkgProgressReporting "false";
b2e465d6 433 pkgOrderList "false";
131418cf 434 pkgPackageManager "false"; // OrderList/Configure debugging
120365ce 435 pkgAutoRemove "false"; // show information about automatic removes
efe9ba67 436 BuildDeps "false";
50e19557
AL
437 pkgInitialize "false"; // This one will dump the configuration space
438 NoLocking "false";
439 Acquire::Ftp "false"; // Show ftp command traffic
440 Acquire::Http "false"; // Show http command traffic
714ee06c 441 Acquire::Https "false"; // Show https debug
8a3642bd 442 Acquire::gpgv "false"; // Show the gpgv traffic
0c6b381f 443 Acquire::cdrom "false"; // Show cdrom debug output
50e19557 444 aptcdrom "false"; // Show found package files
640c5d94 445 IdentCdrom "false";
f1c081b6 446 acquire::netrc "false"; // netrc parser
8a3642bd 447
50e19557
AL
448}
449
6bc703c2
DK
450pkgCacheGen::Essential "native"; // other modes: all, none, installed
451
50e19557
AL
452/* Whatever you do, do not use this configuration file!! Take out ONLY
453 the portions you need! */
454This Is Not A Valid Config File