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