* merged the install-recommends branch
[ntk/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 Download-Only "false";
37 Simulate "false";
38 Assume-Yes "false";
39 Force-Yes "false"; // I would never set this.
40 Fix-Broken "false";
41 Fix-Missing "false";
42 Show-Upgraded "false";
43 Show-Versions "false";
44 Upgrade "true";
45 Print-URIs "false";
46 Compile "false";
47 Download "true";
48 Purge "false";
49 List-Cleanup "true";
50 ReInstall "false";
51 Trivial-Only "false";
52 Remove "true";
53 Only-Source "";
54 Diff-Only "false";
55 Tar-Only "false";
56 };
57
58 Cache
59 {
60 Important "false";
61 AllVersions "false";
62 GivenOnly "false";
63 RecurseDepends "false";
64 ShowFull "false";
65 Generate "true";
66 NamesOnly "false";
67 AllNames "false";
68 Installed "false";
69 };
70
71 CDROM
72 {
73 Rename "false";
74 NoMount "false";
75 Fast "false";
76 NoAct "false";
77 };
78
79 Authentication
80 {
81 TrustCDROM "false"; // consider the CDROM always trusted
82 };
83
84 GPGV
85 {
86 TrustedKeyring "/etc/apt/trusted.gpg";
87 };
88
89 // Some general options
90 Ignore-Hold "false";
91 Clean-Installed "true";
92 Immediate-Configure "true"; // DO NOT turn this off, see the man page
93 Force-LoopBreak "false"; // DO NOT turn this on, see the man page
94 Cache-Limit "4194304";
95 Default-Release "";
96
97 // consider Recommends, Suggests as important dependencies that should
98 // be installed by default
99 APT::Install-Recommends "false";
100 APT::Install-Suggests "false";
101
102 // Write progress messages on this fd (for stuff like base-config)
103 Status-Fd "-1";
104 // Keep the list of FDs open (normally apt closes all fds when it
105 // does a ExecFork)
106 Keep-Fds {};
107 };
108
109 // Options for the downloading routines
110 Acquire
111 {
112 Queue-Mode "host"; // host|access
113 Retries "0";
114 Source-Symlinks "true";
115
116 PDiffs "true"; // try to get the IndexFile diffs
117
118 // HTTP method configuration
119 http
120 {
121 Proxy "http://127.0.0.1:3128";
122 Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
123 Timeout "120";
124 Pipeline-Depth "5";
125
126 // Cache Control. Note these do not work with Squid 2.0.2
127 No-Cache "false";
128 Max-Age "86400"; // 1 Day age on index files
129 No-Store "false"; // Prevent the cache from storing archives
130 Dl-Limit "7"; // 7Kb/sec maximum download rate
131 };
132
133 ftp
134 {
135 Proxy "ftp://127.0.0.1/";
136 Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting
137
138 /* Required script to perform proxy login. This example should work
139 for tisfwtk */
140 ProxyLogin
141 {
142 "USER $(PROXY_USER)";
143 "PASS $(PROXY_PASS)";
144 "USER $(SITE_USER)@$(SITE):$(SITE_PORT)";
145 "PASS $(SITE_PASS)";
146 };
147
148 Timeout "120";
149
150 /* Passive mode control, proxy, non-proxy and per-host. Pasv mode
151 is prefered if possible */
152 Passive "true";
153 Proxy::Passive "true";
154 Passive::http.us.debian.org "true"; // Specific per-host setting
155 };
156
157 cdrom
158 {
159 mount "/cdrom";
160
161 // You need the trailing slash!
162 "/cdrom/"
163 {
164 Mount "sleep 1000";
165 UMount "sleep 500";
166 }
167 };
168
169 gpgv
170 {
171 Options {"--ignore-time-conflict";} // not very usefull on a normal system
172 };
173 };
174
175 // Directory layout
176 Dir "/"
177 {
178 // Location of the state dir
179 State "var/lib/apt/"
180 {
181 Lists "lists/";
182 xstatus "xstatus";
183 userstatus "status.user";
184 status "/var/lib/dpkg/status";
185 cdroms "cdroms.list";
186 };
187
188 // Location of the cache dir
189 Cache "var/cache/apt/" {
190 Archives "archives/";
191 srcpkgcache "srcpkgcache.bin";
192 pkgcache "pkgcache.bin";
193 };
194
195 // Config files
196 Etc "etc/apt/" {
197 SourceList "sources.list";
198 Main "apt.conf";
199 Preferences "preferences";
200 Parts "apt.conf.d/";
201 };
202
203 // Locations of binaries
204 Bin {
205 methods "/usr/lib/apt/methods/";
206 gzip "/bin/gzip";
207 gpg "/usr/bin/gpgv";
208 dpkg "/usr/bin/dpkg";
209 dpkg-source "/usr/bin/dpkg-source";
210 dpkg-buildpackage "/usr/bin/dpkg-buildpackage";
211 apt-get "/usr/bin/apt-get";
212 apt-cache "/usr/bin/apt-cache";
213 };
214 };
215
216 // Things that effect the APT dselect method
217 DSelect
218 {
219 Clean "auto"; // always|auto|prompt|never
220 Options "-f";
221 UpdateOptions "";
222 PromptAfterUpdate "no";
223 CheckDir "no";
224 }
225
226 DPkg
227 {
228 // Probably don't want to use force-downgrade..
229 Options {"--force-overwrite";"--force-downgrade";}
230
231 // Auto re-mounting of a readonly /usr
232 Pre-Invoke {"mount -o remount,rw /usr";};
233 Post-Invoke {"mount -o remount,ro /usr";};
234
235 // Prevents daemons from getting cwd as something mountable (default)
236 Run-Directory "/";
237
238 // Build options for apt-get source --compile
239 Build-Options "-b -uc";
240
241 // Pre-configure all packages before they are installed using debconf.
242 Pre-Install-Pkgs {"dpkg-preconfigure --apt --priority=low --frontend=dialog";};
243
244 // Flush the contents of stdin before forking dpkg.
245 FlushSTDIN "true";
246
247 // Control the size of the command line passed to dpkg.
248 MaxBytes 1024;
249 MaxArgs 350;
250 }
251
252 /* Options you can set to see some debugging text They correspond to names
253 of classes in the source code */
254 Debug
255 {
256 pkgProblemResolver "false";
257 pkgDepCache::AutoInstall "false"; // what packages apt install to satify dependencies
258 pkgAcquire "false";
259 pkgAcquire::Worker "false";
260 pkgAcquire::Auth "false";
261 pkgDPkgPM "false";
262 pkgDPkgProgressReporting "false";
263 pkgOrderList "false";
264 pkgAutoRemove "false"; // show information about automatic removes
265
266 pkgInitialize "false"; // This one will dump the configuration space
267 NoLocking "false";
268 Acquire::Ftp "false"; // Show ftp command traffic
269 Acquire::Http "false"; // Show http command traffic
270 Acquire::gpgv "false"; // Show the gpgv traffic
271 aptcdrom "false"; // Show found package files
272 IdentCdrom "false";
273
274 }
275
276 /* Whatever you do, do not use this configuration file!! Take out ONLY
277 the portions you need! */
278 This Is Not A Valid Config File