- use automake defined pkgdata dir for lua script dir instead of hardcoded
[apt.git] / doc / sources.list.5.sgml
1 <!-- -*- mode: sgml; mode: fold -*- -->
2 <!doctype refentry PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
3
4 <!ENTITY % aptent SYSTEM "apt.ent">
5 %aptent;
6
7 ]>
8
9 <refentry>
10  &apt-docinfo;
11  
12  <refmeta>
13    <refentrytitle>sources.list</>
14    <manvolnum>5</>
15  </refmeta>
16  
17  <!-- Man page title -->
18  <refnamediv>
19     <refname>sources.list</>
20     <refpurpose>Package resource list for APT</>
21  </refnamediv>
22  
23  <RefSect1><Title>Description</>
24    <para>   
25    The package resource list is used to locate archives of the package
26    distribution system in use on the system. 
27    This control file is located in <filename>/etc/apt/sources.list</>
28    and additionally any files ending in .list in 
29    <filename>/etc/apt/sources.list.d</> are included.
30    </>
31    <para>
32    The source list is designed to support any number of active sources and a
33    variety of source media. The file lists one source per line, with the
34    most preferred source listed first. The format of each line is:
35    <literal/type uri args/. The first item, <literal/type/, determines the 
36    format for <literal/args/. <literal/uri/ is a Universal Resource Identifier 
37    (URI), which is a superset of the more specific and well-known Universal
38    Resource Locator, or URL. The rest of the line can be marked as a comment 
39    by using a #.
40    </>
41    <para>
42    The generic format of sources.list entry is:
43    <literallayout>type baseuri distribution [component comp2 ...]</literallayout>
44    </para>
45
46    <para>
47    Type is one of the types explained below. Baseuri is the URI to the root
48    of given distribution, distribution part points to a given distribution
49    name, version and architecture. The splitting of URI into baseuri and
50    distribution parts should be done in a way that allows pointing the baseuri
51    to another mirror without touching distribution.
52
53    Some types additionally support a component-entry.
54    </para>
55
56    <para>
57    The following variable substitutions are done on sources.list entries:
58
59    <literal/$(ARCH)/ is substituted with the base archecture of the system.
60    </para><para>
61    <literal/$(VERSION)/ is substituted with the distribution version if
62    configured automatically via Apt::DistroVerPkg or manually via 
63    Apt::DistroVersion configuration option.
64    </para>
65  </RefSect1>
66  
67  <RefSect1><Title>The repomd and repomd-src types</>
68    <para>
69    The format of repomd and repomd-src sources.list entries is:
70    <literallayout>repomd baseuri distribution</literallayout>
71    <literallayout>repomd-src baseuri distribution</literallayout>
72    Repomd repositories do not support a concept of "components"!
73    </para>
74     
75  </RefSect1>
76
77  <RefSect1><Title>The rpm and rpm-src types</>
78    <para>
79    The format of rpm and rpm-src sources.list entries is:
80    <literallayout>rpm baseuri distribution component [comp2 ...]</literallayout>
81    <literallayout>rpm-src baseuri distribution component [comp2 ...]</literallayout>
82    At least one component must be specified for rpm and rpm-src 
83    repositories.
84    </para>
85  </RefSect1>
86
87  <RefSect1><Title>The rpm-dir and rpm-src-dir types</>
88    <para>
89    The format of rpm-dir and rpm-src-dir sources.list entries is:
90    <literallayout>rpm-dir baseuri distribution component [comp2 ...]</literallayout>
91    <literallayout>rpm-src-dir baseuri distribution component [comp2 ...]</literallayout>
92    At least one component must be specified for rpm and rpm-src 
93    repositories. Rpm-dir and rpm-src-dir only accept file:// uri's!
94    </para>
95  </RefSect1>
96
97  <RefSect1><title>URI specification</title>
98    <para>
99    The currently recognized URI types are cdrom, file, http, and ftp.
100    <VariableList>
101     <VarListEntry><term>file</term>
102     <ListItem><Para>
103     The file scheme allows an arbitrary directory in the file system to be
104     considered an archive. This is useful for NFS mounts and local mirrors or
105     archives.</para></listitem>
106     </VarListEntry>
107     
108     <VarListEntry><term>cdrom</term>
109     <ListItem><Para>
110     The cdrom scheme allows APT to use a local CDROM drive with media
111     swapping. Use the &apt-cdrom; program to create cdrom entries in the
112     source list.</para></listitem>
113     </VarListEntry>
114
115     <VarListEntry><term>http</term>
116     <ListItem><Para>
117     The http scheme specifies an HTTP server for the archive. If an environment
118     variable <EnVar/http_proxy/ is set with the format 
119     http://server:port/, the proxy server specified in
120     <EnVar/http_proxy/ will be used. Users of authenticated HTTP/1.1 proxies 
121     may use a string of the format http://user:pass@server:port/
122     Note that this is an insecure method of authentication.</para></listitem>
123     </VarListEntry>
124
125     <VarListEntry><term>ftp</term>
126     <ListItem><Para>
127     The ftp scheme specifies an FTP server for the archive. APT's FTP behavior
128     is highly configurable; for more information see the
129     &apt-conf; manual page. Please note that a ftp proxy can be specified
130     by using the <EnVar/ftp_proxy/ environment variable. It is possible to 
131     specify a http proxy (http proxy servers often understand ftp urls) using 
132     this method and ONLY this method. ftp proxies using http specified in the 
133     configuration file will be ignored.</para></listitem>
134     </VarListEntry>
135
136     <VarListEntry><term>copy</term>
137     <ListItem><Para>
138     The copy scheme is identical to the file scheme except that packages are
139     copied into the cache directory instead of used directly at their location.
140     This is useful for people using a zip disk to copy files around with APT.</para></listitem>
141     </VarListEntry>
142     
143     <VarListEntry><term>rsh</term><term>ssh</term>
144     <ListItem><Para>
145     The rsh/ssh method invokes rsh/ssh to connect to a remote host
146     as a given user and access the files. No password authentication is 
147     possible, prior arrangements with RSA keys or rhosts must have been made.
148     Access to files on the remote uses standard <command/find/ and <command/dd/ 
149     commands to perform the file transfers from the remote.</para></listitem>
150     </VarListEntry>
151   </VariableList>
152  </para>
153  </RefSect1>
154  
155  <RefSect1><title>Examples</title>
156    <para>
157    Repomd entries for Fedora Core, Extras and Updates using variable
158    substitution, assumes Apt::DistroVerPkg is set to "fedora-release":
159    <literallayout>
160    repomd http://download.fedora.redhat.com/pub/ fedora/linux/core/$(VERSION)/$(ARCH)/os/
161    repomd http://download.fedora.redhat.com/pub/ fedora/linux/extras/$(VERSION)/$(ARCH)/
162    repomd http://download.fedora.redhat.com/pub/ fedora/linux/core/updates/$(VERSION)/$(ARCH)/
163    </literallayout>
164    </para>
165    
166    <para>
167    Local mirror (local disk, NFS mounted etc) of Fedora Core at 
168    /var/www/html/fedora/
169    <literallayout>
170    repomd file:/var/www/html fedora/linux/core/$(VERSION)/$(ARCH)/
171    </literallayout>
172    </para>
173
174  </RefSect1>
175  
176  <RefSect1><Title>See Also</>
177    <para>
178    &apt-cache; &apt-conf;
179    </para>
180  </RefSect1>
181
182  &manbugs;
183  &manauthor;
184  
185 </refentry>
186