]>
Commit | Line | Data |
---|---|---|
24f6490f | 1 | <?xml version="1.0" encoding="utf-8" standalone="no"?> |
81cf16a2 DK |
2 | <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" |
3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ | |
24f6490f AL |
4 | |
5 | <!ENTITY % aptent SYSTEM "apt.ent"> | |
6 | %aptent; | |
7 | ||
0c1a7101 DK |
8 | <!ENTITY % aptverbatiment SYSTEM "apt-verbatim.ent"> |
9 | %aptverbatiment; | |
10 | ||
24f6490f AL |
11 | ]> |
12 | ||
13 | <refentry> | |
5e80de29 AL |
14 | |
15 | <refentryinfo> | |
16 | &apt-author.jgunthorpe; | |
17 | &apt-author.team; | |
18 | &apt-email; | |
19 | &apt-product; | |
20 | <!-- The last update date --> | |
45fb8bf7 | 21 | <date>2004-02-29T00:00:00Z</date> |
5e80de29 | 22 | </refentryinfo> |
24f6490f AL |
23 | |
24 | <refmeta> | |
25 | <refentrytitle>sources.list</refentrytitle> | |
26 | <manvolnum>5</manvolnum> | |
f0599b9c | 27 | <refmiscinfo class="manual">APT</refmiscinfo> |
24f6490f AL |
28 | </refmeta> |
29 | ||
30 | <!-- Man page title --> | |
31 | <refnamediv> | |
32 | <refname>sources.list</refname> | |
33 | <refpurpose>Package resource list for APT</refpurpose> | |
34 | </refnamediv> | |
35 | ||
36 | <refsect1><title>Description</title> | |
37 | <para>The package resource list is used to locate archives of the package | |
38 | distribution system in use on the system. At this time, this manual page | |
b176de3a | 39 | documents only the packaging system used by the Debian system. |
5f4331c4 | 40 | This control file is <filename>/etc/apt/sources.list</filename>.</para> |
24f6490f AL |
41 | |
42 | <para>The source list is designed to support any number of active sources and a | |
43 | variety of source media. The file lists one source per line, with the | |
44 | most preferred source listed first. The format of each line is: | |
45 | <literal>type uri args</literal> The first item, <literal>type</literal> | |
5f4331c4 | 46 | determines the format for <literal>args</literal>. <literal>uri</literal> is |
24f6490f AL |
47 | a Universal Resource Identifier |
48 | (URI), which is a superset of the more specific and well-known Universal | |
49 | Resource Locator, or URL. The rest of the line can be marked as a comment | |
50 | by using a #.</para> | |
51 | </refsect1> | |
52 | ||
7e154433 MV |
53 | <refsect1><title>sources.list.d</title> |
54 | <para>The <filename>/etc/apt/sources.list.d</filename> directory provides | |
6823d85b EL |
55 | a way to add sources.list entries in separate files. |
56 | The format is the same as for the regular <filename>sources.list</filename> file. | |
57 | File names need to end with | |
58 | <filename>.list</filename> and may only contain letters (a-z and A-Z), | |
59 | digits (0-9), underscore (_), hyphen (-) and period (.) characters. | |
7376837d DK |
60 | Otherwise APT will print a notice that it has ignored a file if the file |
61 | doesn't match a pattern in the <literal>Dir::Ignore-Files-Silently</literal> | |
62 | configuration list - in this case it will be silently ignored.</para> | |
7e154433 MV |
63 | </refsect1> |
64 | ||
24f6490f AL |
65 | <refsect1><title>The deb and deb-src types</title> |
66 | <para>The <literal>deb</literal> type describes a typical two-level Debian | |
67 | archive, <filename>distribution/component</filename>. Typically, | |
3805b0a7 DK |
68 | <literal>distribution</literal> is generally an archivename like |
69 | <literal>stable</literal> or <literal>testing</literal> or a codename like | |
70 | <literal>&stable-codename;</literal> or <literal>&testing-codename;</literal> | |
71 | while component is one of <literal>main</literal> <literal>contrib</literal> or | |
72 | <literal>non-free</literal>. The | |
24f6490f AL |
73 | <literal>deb-src</literal> type describes a debian distribution's source |
74 | code in the same form as the <literal>deb</literal> type. | |
75 | A <literal>deb-src</literal> line is required to fetch source indexes.</para> | |
76 | ||
77 | ||
78 | <para>The format for a <filename>sources.list</filename> entry using the | |
5f4331c4 | 79 | <literal>deb</literal> and <literal>deb-src</literal> types is:</para> |
24f6490f | 80 | |
30fd3c9f | 81 | <literallayout>deb [ options ] uri distribution [component1] [component2] [...]</literallayout> |
24f6490f AL |
82 | |
83 | <para>The URI for the <literal>deb</literal> type must specify the base of the | |
84 | Debian distribution, from which APT will find the information it needs. | |
85 | <literal>distribution</literal> can specify an exact path, in which case the | |
86 | components must be omitted and <literal>distribution</literal> must end with | |
5f4331c4 | 87 | a slash (/). This is useful for when the case only a particular sub-section of the |
24f6490f AL |
88 | archive denoted by the URI is of interest. |
89 | If <literal>distribution</literal> does not specify an exact path, at least | |
90 | one <literal>component</literal> must be present.</para> | |
91 | ||
92 | <para><literal>distribution</literal> may also contain a variable, | |
93 | <literal>$(ARCH)</literal> | |
94 | which expands to the Debian architecture (i386, m68k, powerpc, ...) | |
95 | used on the system. This permits architecture-independent | |
96 | <filename>sources.list</filename> files to be used. In general this is only | |
97 | of interest when specifying an exact path, <literal>APT</literal> will | |
98 | automatically generate a URI with the current architecture otherwise.</para> | |
99 | ||
100 | <para>Since only one distribution can be specified per line it may be necessary | |
101 | to have multiple lines for the same URI, if a subset of all available | |
102 | distributions or components at that location is desired. | |
103 | APT will sort the URI list after it has generated a complete set | |
104 | internally, and will collapse multiple references to the same Internet | |
105 | host, for instance, into a single connection, so that it does not | |
106 | inefficiently establish an FTP connection, close it, do something else, | |
107 | and then re-establish a connection to that same host. This feature is | |
108 | useful for accessing busy FTP sites with limits on the number of | |
109 | simultaneous anonymous users. APT also parallelizes connections to | |
110 | different hosts to more effectively deal with sites with low bandwidth.</para> | |
111 | ||
30fd3c9f DK |
112 | <para><literal>options</literal> is always optional and needs to be surounded by |
113 | square brackets. It can consist of multiple settings in the form | |
114 | <literal><replaceable>setting</replaceable>=<replaceable>value</replaceable></literal>. | |
115 | Multiple settings are separated by spaces. The following settings are supported by APT, | |
2130caa8 | 116 | note though that unsupported settings will be ignored silently: |
30fd3c9f DK |
117 | <itemizedlist><listitem><para><literal>arch=<replaceable>arch1</replaceable>,<replaceable>arch2</replaceable>,…</literal> |
118 | can be used to specify for which architectures packages information should | |
119 | be downloaded. If this option is not set all architectures defined by the | |
4b42f43b DK |
120 | <literal>APT::Architectures</literal> option will be downloaded.</para></listitem> |
121 | <listitem><para><literal>trusted=yes</literal> can be set to indicate that packages | |
4d704f20 | 122 | from this source are always authenticated even if the <filename>Release</filename> file |
4b42f43b DK |
123 | is not signed or the signature can't be checked. This disables parts of &apt-secure; |
124 | and should therefore only be used in a local and trusted context. <literal>trusted=no</literal> | |
4d704f20 | 125 | is the opposite which handles even correctly authenticated sources as not authenticated.</para></listitem> |
4b42f43b | 126 | </itemizedlist></para> |
30fd3c9f | 127 | |
24f6490f AL |
128 | <para>It is important to list sources in order of preference, with the most |
129 | preferred source listed first. Typically this will result in sorting | |
130 | by speed from fastest to slowest (CD-ROM followed by hosts on a local | |
131 | network, followed by distant Internet hosts, for example).</para> | |
132 | ||
133 | <para>Some examples:</para> | |
134 | <literallayout> | |
e1dd65c9 DK |
135 | deb http://ftp.debian.org/debian &stable-codename; main contrib non-free |
136 | deb http://security.debian.org/ &stable-codename;/updates main contrib non-free | |
24f6490f AL |
137 | </literallayout> |
138 | ||
139 | </refsect1> | |
140 | ||
141 | <refsect1><title>URI specification</title> | |
142 | ||
aec22160 | 143 | <para>The currently recognized URI types are: |
24f6490f | 144 | <variablelist> |
aec22160 | 145 | <varlistentry><term><command>file</command></term> |
24f6490f AL |
146 | <listitem><para> |
147 | The file scheme allows an arbitrary directory in the file system to be | |
148 | considered an archive. This is useful for NFS mounts and local mirrors or | |
149 | archives.</para></listitem> | |
150 | </varlistentry> | |
151 | ||
aec22160 | 152 | <varlistentry><term><command>cdrom</command></term> |
24f6490f | 153 | <listitem><para> |
6f33340f | 154 | The cdrom scheme allows APT to use a local CD-ROM drive with media |
24f6490f AL |
155 | swapping. Use the &apt-cdrom; program to create cdrom entries in the |
156 | source list.</para></listitem> | |
157 | </varlistentry> | |
158 | ||
aec22160 | 159 | <varlistentry><term><command>http</command></term> |
24f6490f AL |
160 | <listitem><para> |
161 | The http scheme specifies an HTTP server for the archive. If an environment | |
162 | variable <envar>http_proxy</envar> is set with the format | |
163 | http://server:port/, the proxy server specified in | |
164 | <envar>http_proxy</envar> will be used. Users of authenticated | |
165 | HTTP/1.1 proxies may use a string of the format | |
5f4331c4 | 166 | http://user:pass@server:port/. |
24f6490f AL |
167 | Note that this is an insecure method of authentication.</para></listitem> |
168 | </varlistentry> | |
169 | ||
aec22160 | 170 | <varlistentry><term><command>ftp</command></term> |
24f6490f AL |
171 | <listitem><para> |
172 | The ftp scheme specifies an FTP server for the archive. APT's FTP behavior | |
173 | is highly configurable; for more information see the | |
174 | &apt-conf; manual page. Please note that a ftp proxy can be specified | |
175 | by using the <envar>ftp_proxy</envar> environment variable. It is possible | |
176 | to specify a http proxy (http proxy servers often understand ftp urls) | |
177 | using this method and ONLY this method. ftp proxies using http specified in | |
178 | the configuration file will be ignored.</para></listitem> | |
179 | </varlistentry> | |
180 | ||
aec22160 | 181 | <varlistentry><term><command>copy</command></term> |
24f6490f AL |
182 | <listitem><para> |
183 | The copy scheme is identical to the file scheme except that packages are | |
184 | copied into the cache directory instead of used directly at their location. | |
185 | This is useful for people using a zip disk to copy files around with APT.</para></listitem> | |
186 | </varlistentry> | |
187 | ||
aec22160 | 188 | <varlistentry><term><command>rsh</command></term><term><command>ssh</command></term> |
24f6490f AL |
189 | <listitem><para> |
190 | The rsh/ssh method invokes rsh/ssh to connect to a remote host | |
b2d941c5 EL |
191 | as a given user and access the files. It is a good idea to do prior |
192 | arrangements with RSA keys or rhosts. | |
24f6490f AL |
193 | Access to files on the remote uses standard <command>find</command> and |
194 | <command>dd</command> | |
195 | commands to perform the file transfers from the remote.</para></listitem> | |
196 | </varlistentry> | |
71bba383 | 197 | |
aec22160 | 198 | <varlistentry><term>adding more recognizable URI types</term> |
71bba383 DK |
199 | <listitem><para> |
200 | APT can be extended with more methods shipped in other optional packages which should | |
aec22160 DK |
201 | follow the nameing scheme <package>apt-transport-<replaceable>method</replaceable></package>. |
202 | The APT team e.g. maintains also the <package>apt-transport-https</package> package which | |
46e39c8e | 203 | provides access methods for https-URIs with features similar to the http method, but other |
aec22160 | 204 | methods for using e.g. debtorrent are also available, see &apt-transport-debtorrent;. |
71bba383 DK |
205 | </para></listitem> |
206 | </varlistentry> | |
24f6490f AL |
207 | </variablelist> |
208 | </para> | |
209 | </refsect1> | |
210 | ||
211 | <refsect1><title>Examples</title> | |
212 | <para>Uses the archive stored locally (or NFS mounted) at /home/jason/debian | |
213 | for stable/main, stable/contrib, and stable/non-free.</para> | |
214 | <literallayout>deb file:/home/jason/debian stable main contrib non-free</literallayout> | |
215 | ||
216 | <para>As above, except this uses the unstable (development) distribution.</para> | |
217 | <literallayout>deb file:/home/jason/debian unstable main contrib non-free</literallayout> | |
218 | ||
219 | <para>Source line for the above</para> | |
220 | <literallayout>deb-src file:/home/jason/debian unstable main contrib non-free</literallayout> | |
221 | ||
30fd3c9f DK |
222 | <para>The first line gets package information for the architectures in <literal>APT::Architectures</literal> |
223 | while the second always retrieves <literal>amd64</literal> and <literal>armel</literal>.</para> | |
224 | <literallayout>deb http://ftp.debian.org/debian &stable-codename; main | |
225 | deb [ arch=amd64,armel ] http://ftp.debian.org/debian &stable-codename; main</literallayout> | |
226 | ||
24f6490f AL |
227 | <para>Uses HTTP to access the archive at archive.debian.org, and uses only |
228 | the hamm/main area.</para> | |
229 | <literallayout>deb http://archive.debian.org/debian-archive hamm main</literallayout> | |
230 | ||
231 | <para>Uses FTP to access the archive at ftp.debian.org, under the debian | |
e1dd65c9 DK |
232 | directory, and uses only the &stable-codename;/contrib area.</para> |
233 | <literallayout>deb ftp://ftp.debian.org/debian &stable-codename; contrib</literallayout> | |
24f6490f AL |
234 | |
235 | <para>Uses FTP to access the archive at ftp.debian.org, under the debian | |
236 | directory, and uses only the unstable/contrib area. If this line appears as | |
5f4331c4 | 237 | well as the one in the previous example in <filename>sources.list</filename> |
24f6490f AL |
238 | a single FTP session will be used for both resource lines.</para> |
239 | <literallayout>deb ftp://ftp.debian.org/debian unstable contrib</literallayout> | |
240 | ||
3805b0a7 DK |
241 | <para>Uses HTTP to access the archive at ftp.tlh.debian.org, under the |
242 | universe directory, and uses only files found under | |
243 | <filename>unstable/binary-i386</filename> on i386 machines, | |
244 | <filename>unstable/binary-amd64</filename> on amd64, and so | |
245 | forth for other supported architectures. [Note this example only | |
246 | illustrates how to use the substitution variable; official debian | |
247 | archives are not structured like this] | |
248 | <literallayout>deb http://ftp.tlh.debian.org/universe unstable/binary-$(ARCH)/</literallayout> | |
24f6490f AL |
249 | </para> |
250 | </refsect1> | |
251 | ||
252 | <refsect1><title>See Also</title> | |
5e80de29 | 253 | <para>&apt-cache; &apt-conf; |
24f6490f AL |
254 | </para> |
255 | </refsect1> | |
256 | ||
257 | &manbugs; | |
24f6490f AL |
258 | |
259 | </refentry> | |
260 |