]> git.saurik.com Git - apt.git/blob - doc/examples/configure-index
* move the ListUpdate() code from cachefile.h into algorithms.{cc,h}
[apt.git] / doc / examples / configure-index
1 // $Id: configure-index,v 1.10 2004/07/17 19:37:16 mdz Exp $
2 /* This file is an index of all APT configuration directives. It should
3 NOT actually be used as a real config file, though it is (except for the
4 last line) a completely valid file. Most of the options have sane default
5 values, unless you have specific needs you should NOT include arbitary
6 items in a custom configuration.
7
8 In some instances involving filenames it is possible to set the default
9 directory when the path is evaluated. This means you can use relative
10 paths within the sub scope.
11
12 The configuration directives are specified in a tree with {} designating
13 a subscope relative to the tag before the {}. You can further specify
14 a subscope using scope notation eg,
15 APT::Architecture "i386";
16 This is prefixed with the current scope. Scope notation must be used
17 if an option is specified on the command line with -o.
18 */
19
20 quiet "0";
21
22 // Options for APT in general
23 APT
24 {
25 Architecture "i386";
26 Build-Essential "build-essential";
27
28 NeverAutoRemove { "linux-kernel.*"; }; // packages that should never
29 // considered for autoRemove
30
31 // Options for apt-get
32 Get
33 {
34 Arch-Only "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 };
58
59 Cache
60 {
61 Important "false";
62 AllVersions "false";
63 GivenOnly "false";
64 RecurseDepends "false";
65 ShowFull "false";
66 Generate "true";
67 NamesOnly "false";
68 AllNames "false";
69 Installed "false";
70 };
71
72 CDROM
73 {
74 Rename "false";
75 NoMount "false";
76 Fast "false";
77 NoAct "false";
78 };
79
80 Update
81 {
82 Pre-Invoke {"touch /var/lib/apt/pre-update-stamp"; };
83 Post-Invoke {"touch /var/lib/apt/post-update-stamp"; };
84 };
85
86 Authentication
87 {
88 TrustCDROM "false"; // consider the CDROM always trusted
89 };
90
91 GPGV
92 {
93 TrustedKeyring "/etc/apt/trusted.gpg";
94 };
95
96 // Some general options
97 Ignore-Hold "false";
98 Clean-Installed "true";
99 Immediate-Configure "true"; // DO NOT turn this off, see the man page
100 Force-LoopBreak "false"; // DO NOT turn this on, see the man page
101 Cache-Limit "4194304";
102 Default-Release "";
103
104 // consider Recommends, Suggests as important dependencies that should
105 // be installed by default
106 Install-Recommends "false";
107 Install-Suggests "false";
108
109 // consider dependencies of packages in this section manual
110 Never-MarkAuto-Sections {"metapackages"; "universe/metapackages"; };
111
112 // Write progress messages on this fd (for stuff like base-config)
113 Status-Fd "-1";
114 // Keep the list of FDs open (normally apt closes all fds when it
115 // does a ExecFork)
116 Keep-Fds {};
117 };
118
119 // Options for the downloading routines
120 Acquire
121 {
122 Queue-Mode "host"; // host|access
123 Retries "0";
124 Source-Symlinks "true";
125
126 PDiffs "true"; // try to get the IndexFile diffs
127
128 // HTTP method configuration
129 http
130 {
131 Proxy "http://127.0.0.1:3128";
132 Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
133 Timeout "120";
134 Pipeline-Depth "5";
135
136 // Cache Control. Note these do not work with Squid 2.0.2
137 No-Cache "false";
138 Max-Age "86400"; // 1 Day age on index files
139 No-Store "false"; // Prevent the cache from storing archives
140 Dl-Limit "7"; // 7Kb/sec maximum download rate
141 };
142
143 // HTTPS method configuration:
144 // - uses the http proxy config
145 // - uses the http cache-control values
146 // - uses the http Dl-Limit values
147 https
148 {
149 Verify-Peer "false";
150 SslCert "/etc/apt/some.pem";
151 CaPath "/etc/ssl/certs";
152 Verify-Host" "2";
153 };
154
155 ftp
156 {
157 Proxy "ftp://127.0.0.1/";
158 Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
159
160 /* Required script to perform proxy login. This example should work
161 for tisfwtk */
162 ProxyLogin
163 {
164 "USER $(PROXY_USER)";
165 "PASS $(PROXY_PASS)";
166 "USER $(SITE_USER)@$(SITE):$(SITE_PORT)";
167 "PASS $(SITE_PASS)";
168 };
169
170 Timeout "120";
171
172 /* Passive mode control, proxy, non-proxy and per-host. Pasv mode
173 is prefered if possible */
174 Passive "true";
175 Proxy::Passive "true";
176 Passive::http.us.debian.org "true"; // Specific per-host setting
177 };
178
179 cdrom
180 {
181 mount "/cdrom";
182
183 // You need the trailing slash!
184 "/cdrom/"
185 {
186 Mount "sleep 1000";
187 UMount "sleep 500";
188 }
189 };
190
191 gpgv
192 {
193 Options {"--ignore-time-conflict";} // not very usefull on a normal system
194 };
195 };
196
197 // Directory layout
198 Dir "/"
199 {
200 // Location of the state dir
201 State "var/lib/apt/"
202 {
203 Lists "lists/";
204 xstatus "xstatus";
205 userstatus "status.user";
206 status "/var/lib/dpkg/status";
207 cdroms "cdroms.list";
208 };
209
210 // Location of the cache dir
211 Cache "var/cache/apt/" {
212 Archives "archives/";
213 srcpkgcache "srcpkgcache.bin";
214 pkgcache "pkgcache.bin";
215 };
216
217 // Config files
218 Etc "etc/apt/" {
219 SourceList "sources.list";
220 Main "apt.conf";
221 Preferences "preferences";
222 Parts "apt.conf.d/";
223 };
224
225 // Locations of binaries
226 Bin {
227 methods "/usr/lib/apt/methods/";
228 gzip "/bin/gzip";
229 gpg "/usr/bin/gpgv";
230 dpkg "/usr/bin/dpkg";
231 dpkg-source "/usr/bin/dpkg-source";
232 dpkg-buildpackage "/usr/bin/dpkg-buildpackage";
233 apt-get "/usr/bin/apt-get";
234 apt-cache "/usr/bin/apt-cache";
235 };
236
237 // Location of the logfile
238 Log "var/log/apt" {
239 Terminal "term.log";
240 };
241 };
242
243 // Things that effect the APT dselect method
244 DSelect
245 {
246 Clean "auto"; // always|auto|prompt|never
247 Options "-f";
248 UpdateOptions "";
249 PromptAfterUpdate "no";
250 CheckDir "no";
251 }
252
253 DPkg
254 {
255 // Probably don't want to use force-downgrade..
256 Options {"--force-overwrite";"--force-downgrade";}
257
258 // Auto re-mounting of a readonly /usr
259 Pre-Invoke {"mount -o remount,rw /usr";};
260 Post-Invoke {"mount -o remount,ro /usr";};
261
262 // Prevents daemons from getting cwd as something mountable (default)
263 Run-Directory "/";
264
265 // Build options for apt-get source --compile
266 Build-Options "-b -uc";
267
268 // Pre-configure all packages before they are installed using debconf.
269 Pre-Install-Pkgs {"dpkg-preconfigure --apt --priority=low --frontend=dialog";};
270
271 // Flush the contents of stdin before forking dpkg.
272 FlushSTDIN "true";
273
274 // Control the size of the command line passed to dpkg.
275 MaxBytes 1024;
276 MaxArgs 350;
277
278 // controls if apt will apport on the first dpkg error or if it
279 // tries to install as many packages as possible
280 StopOnError "true";
281 }
282
283 /* Options you can set to see some debugging text They correspond to names
284 of classes in the source code */
285 Debug
286 {
287 pkgProblemResolver "false";
288 pkgDepCache::AutoInstall "false"; // what packages apt install to satify dependencies
289 pkgAcquire "false";
290 pkgAcquire::Worker "false";
291 pkgAcquire::Auth "false";
292 pkgDPkgPM "false";
293 pkgDPkgProgressReporting "false";
294 pkgOrderList "false";
295 pkgAutoRemove "false"; // show information about automatic removes
296 BuildDeps "false";
297 pkgInitialize "false"; // This one will dump the configuration space
298 NoLocking "false";
299 Acquire::Ftp "false"; // Show ftp command traffic
300 Acquire::Http "false"; // Show http command traffic
301 Acquire::Https "false"; // Show https debug
302 Acquire::gpgv "false"; // Show the gpgv traffic
303 aptcdrom "false"; // Show found package files
304 IdentCdrom "false";
305
306 }
307
308 /* Whatever you do, do not use this configuration file!! Take out ONLY
309 the portions you need! */
310 This Is Not A Valid Config File