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