beta-0.89.2
[luatex.git] / source / doc / tlbuild-incl / install-tl.texi
blob339359faee794a46d0828228e827c80540a8cd8d
1 @node install-tl
2 @appendix install-tl
4 @menu
5 * install-tl NAME::
6 * install-tl SYNOPSIS::
7 * install-tl DESCRIPTION::
8 * install-tl REFERENCES::
9 * install-tl OPTIONS::
10 * install-tl ENVIRONMENT VARIABLES::
11 * install-tl AUTHORS AND COPYRIGHT::
12 @end menu
14 @node install-tl NAME
15 @appendixsec NAME
17 install-tl - TeX Live cross-platform installer
19 @node install-tl SYNOPSIS
20 @appendixsec SYNOPSIS
22 install-tl [@emph{option}]...
24 install-tl.bat [@emph{option}]...
26 @node install-tl DESCRIPTION
27 @appendixsec DESCRIPTION
29 This installer creates a runnable TeX Live installation from various
30 media, including over the network.  The installer works across all
31 platforms supported by TeX Live.  For information on initially
32 downloading the TeX Live, see @url{http://tug.org/texlive/acquire.html}.
34 The basic idea of TeX Live installation is to choose one of the
35 top-level @emph{schemes}, each of which is defined as a different set of
36 @emph{collections} and @emph{packages}, where a collection is a set of packages,
37 and a package is what contains actual files.
39 Within the installer, you can choose a scheme, and further customize the
40 set of collections to install, but not the set of the packages.  To do
41 that, use @code{tlmgr} (reference below) after the initial installation is
42 completely.
44 The default is @code{scheme-full}, to install everything, and this is highly
45 recommended.
47 @node install-tl REFERENCES
48 @appendixsec REFERENCES
50 Post-installation configuration, package updates, and much more, are
51 handled through @strong{tlmgr}(1), the TeX Live Manager
52 (@url{http://tug.org/texlive/tlmgr.html}).
54 The most up-to-date version of this documentation is on the Internet at
55 @url{http://tug.org/texlive/doc/install-tl.html}.
57 For the full documentation of TeX Live, see
58 @url{http://tug.org/texlive/doc}.
60 @node install-tl OPTIONS
61 @appendixsec OPTIONS
63 As usual, all options can be specified in any order, and with either a
64 leading @code{-} or @code{--}.  An argument value can be separated from its
65 option by either a space or @code{=}.
67 @table @asis
68 @item @strong{-gui} [[=]@emph{module}]
69 @anchor{install-tl @strong{-gui} [[=]@emph{module}]}
71 If no @emph{module} is given starts the @code{perltk} (see below) GUI installer.
73 If @emph{module} is given loads the given installer module. Currently the
74 following modules are supported:
76 @table @asis
77 @item @code{text}
78 @anchor{install-tl @code{text}}
80 The text mode user interface (default on Unix systems).  Same as the
81 @code{-no-gui} option.
83 @item @code{wizard}
84 @anchor{install-tl @code{wizard}}
86 The wizard mode user interface (default on Windows), asking only minimal
87 questions before installing all of TeX Live.
89 @item @code{perltk}
90 @anchor{install-tl @code{perltk}}
92 The expert GUI installer, providing access to more options.  
93 Can also be invoked on Windows by running @code{install-tl-advanced.bat}.
95 @end table
97 The @code{perltk} and @code{wizard} modules, and thus also when calling with a
98 bare @code{-gui} (without @emph{module}), requires the Perl/Tk module
99 (@url{http://tug.org/texlive/distro.html#perltk}); if Perl/Tk is not
100 available, installation continues in text mode.
102 @item @strong{-no-gui}
103 @anchor{install-tl @strong{-no-gui}}
105 Use the text mode installer (default except on Windows).
107 @item @strong{-lang} @emph{llcode}
108 @anchor{install-tl @strong{-lang} @emph{llcode}}
110 By default, the GUI tries to deduce your language from the environment
111 (on Windows via the registry, on Unix via @code{LC_MESSAGES}). If that fails
112 you can select a different language by giving this option with a
113 language code (based on ISO 639-1).  Currently supported (but not
114 necessarily completely translated) are: English (en, default), Czech
115 (cs), German (de), French (fr), Italian (it), Japanese (ja), Dutch (nl),
116 Polish (pl), Brazilian Portuguese (pt_BR), Russian (ru), Slovak (sk),
117 Slovenian (sl), Serbian (sr), Ukrainian (uk), Vietnamese (vi),
118 simplified Chinese (zh_CN), and traditional Chinese (zh_TW).
120 @item @strong{-repository} @emph{url|path}
121 @anchor{install-tl @strong{-repository} @emph{url|path}}
123 Specify the package repository to be used as the source of the
124 installation, either a local directory via @code{/path/to/directory} or a
125 @code{file:/} url, or a network location via a @code{http://} or @code{ftp://} url.
126 (No other protocols are supported.)
128 The default is to pick a mirror automatically, using
129 @url{http://mirror.ctan.org/systems/texlive/tlnet}; the chosen mirror is
130 used for the entire download.  You can use the special argument @code{ctan}
131 as an abbreviation for this.  See @url{http://ctan.org} for more about CTAN
132 and its mirrors.
134 If the repository is on the network, trailing @code{/} characters and/or
135 trailing @code{/tlpkg} and @code{/archive} components are ignored.  For example,
136 you could choose a particular CTAN mirror with something like this:
138 @verbatim
139   -repository http://ctan.example.org/its/ctan/dir/systems/texlive/tlnet
140 @end verbatim
142 Of course a real hostname and its particular top-level CTAN path
143 have to be specified.  The list of CTAN mirrors is available at
144 @url{http://ctan.org/mirrors}.
146 If the repository is local, the installation type (compressed or live) is
147 automatically determined, by checking for the presence of a
148 @code{archive} directory relative to the root.  Compressed is
149 preferred if both are available, since it is faster.  Here's an example
150 of using a local directory:
152 @verbatim
153   -repository /local/TL/repository
154 @end verbatim
156 After installation is complete, you can use that installation as the
157 repository for another installation.  If you chose to install less than
158 the full scheme containing all packages, the list of available schemes
159 will be adjusted accordingly.
161 For backward compatibility and convenience, @code{--location} and @code{--repo}
162 are accepted as aliases for this option.
164 @item @strong{-select-repository}
165 @anchor{install-tl @strong{-select-repository}}
167 This option allows manual selection of a mirror from the current list of
168 active CTAN mirrors.  This option is supported in all installer modes
169 (text, wizard, perltk), and will also offer to install from local media
170 if available, or from a repository specified on the command line (see
171 above).  It's useful when the (default) automatic redirection does not
172 choose a good host for you.
174 @item @strong{-all-options}
175 @anchor{install-tl @strong{-all-options}}
177 Normally options not relevant to the current platform are not shown
178 (i.e., when running on Unix, Windows-specific options are omitted).
179 Giving this command line option allows configuring settings in the
180 final @code{texlive.tlpdb} that do not have any immediate effect.
182 @item @strong{-custom-bin} @emph{path}
183 @anchor{install-tl @strong{-custom-bin} @emph{path}}
185 If you have built your own set of TeX Live binaries (perhaps because
186 your platform was not supported by TeX Live out of the box), this option
187 allows you to specify the @emph{path} to a directory where the binaries for
188 the current system are present.  The installation will continue as
189 usual, but at the end all files from @emph{path} are copied over to
190 @code{bin/custom/} under your installation directory and this @code{bin/custom/}
191 directory is what will be added to the path for the post-install
192 actions.  (By the way, for information on building TeX Live, see
193 @url{http://tug.org/texlive/build.html}).
195 @item @strong{-debug-translation}
196 @anchor{install-tl @strong{-debug-translation}}
198 In GUI mode, this switch makes @code{tlmgr} report any missing, or more
199 likely untranslated, messages to standard error.  Helpful for
200 translators to see what remains to be done.
202 @item @strong{-force-platform} @emph{platform}
203 @anchor{install-tl @strong{-force-platform} @emph{platform}}
205 Instead of auto-detecting the current platform, use @emph{platform}.
206 Binaries for this platform must be present and they must actually be
207 runnable, or installation will fail.  @code{-force-arch} is a synonym.
209 @item @strong{-help}, @strong{--help}, @strong{-?}
210 @anchor{install-tl @strong{-help}@comma{} @strong{--help}@comma{} @strong{-?}}
212 Display this help and exit (on the web via
213 @url{http://tug.org/texlive/doc/install-tl.html}).  Sometimes the
214 @code{perldoc} and/or @code{PAGER} programs on the system have problems,
215 possibly resulting in control characters being literally output.  This
216 can't always be detected, but you can set the @code{NOPERLDOC} environment
217 variable and @code{perldoc} will not be used.
219 @item @strong{-in-place}
220 @anchor{install-tl @strong{-in-place}}
222 This is a quick-and-dirty installation option in case you already have
223 an rsync or svn checkout of TeX Live.  It will use the checkout as-is
224 and will just do the necessary post-install.  Be warned that the file
225 @code{tlpkg/texlive.tlpdb} may be rewritten, that removal has to be done
226 manually, and that the only realistic way to maintain this installation
227 is to redo it from time to time.  This option is not available via the
228 installer interfaces.  USE AT YOUR OWN RISK.
230 @item @strong{-logfile} @emph{file}
231 @anchor{install-tl @strong{-logfile} @emph{file}}
233 Write both all messages (informational, debugging, warnings) to @emph{file},
234 in addition to standard output or standard error.
236 If this option is not given, the installer will create a log file
237 in the root of the writable installation tree,
238 for example, @code{/usr/local/texlive/YYYY/install-tl.log} for the @emph{YYYY}
239 release.
241 @item @strong{-no-cls}
242 @anchor{install-tl @strong{-no-cls}}
244 (only for text mode installer) do not clear the screen when entering
245 a new menu (for debugging purposes).
247 @item @strong{-non-admin}
248 @anchor{install-tl @strong{-non-admin}}
250 For Windows only: configure for the current user, not for all users.
252 @item @strong{--persistent-downloads}
253 @anchor{install-tl @strong{--persistent-downloads}}
255 @item @strong{--no-persistent-downloads}
256 @anchor{install-tl @strong{--no-persistent-downloads}}
258 For network installs, activating this option makes the installer try to
259 set up a persistent connection using the @code{Net::LWP} Perl module.  This
260 opens only one connection between your computer and the server per
261 session and reuses it, instead of initiating a new download for each
262 package, which typically yields a significant speed-up.
264 This option is turned on by default, and the installation program will
265 fall back to using @code{wget} if this is not possible.  To disable usage of
266 LWP and persistent connections, use @code{--no-persistent-downloads}.
268 @item @strong{-portable}
269 @anchor{install-tl @strong{-portable}}
271 Install for portable use, e.g., on a USB stick.  Also selectable from
272 within the perltk and text installers.
274 @item @strong{-print-platform}
275 @anchor{install-tl @strong{-print-platform}}
277 Print the TeX Live identifier for the detected platform
278 (hardware/operating system) combination to standard output, and exit.
279 @code{-print-arch} is a synonym.
281 @item @strong{-profile} @emph{profile}
282 @anchor{install-tl @strong{-profile} @emph{profile}}
284 Load the file @emph{profile} and do the installation with no user
285 interaction, that is, a batch (unattended) install.
287 A @emph{profile} file contains all the values needed to perform an
288 installation.  After a normal installation has finished, a profile for
289 that exact installation is written to the file
290 DEST/tlpkg/texlive.profile.  That file can be given as the argument to
291 @code{-profile} to redo the exact same installation on a different system,
292 for example.  Alternatively, you can use a custom profile, most easily
293 created by starting from a generated one and changing values, or an
294 empty file, which will take all the defaults.
296 Normally a profile has to specify the value @code{1} for each collection to
297 be installed, even if the scheme is specified.  This follows from the
298 logic of the installer in that you can first select a scheme and then
299 change the collections being installed.  But for convenience there is an
300 exception to this within profiles: If the profile contains a variable
301 for @code{selected_scheme} and @emph{no} collection variables at all are defined
302 in the profile, then the collections which the specified scheme requires
303 are installed.
305 Thus, a line @code{selected_scheme scheme-medium} together with the
306 definitions of the installation directories (@code{TEXDIR}, @code{TEXMFHOME},
307 @code{TEXMFLOCAL}, @code{TEXMFSYSCONFIG}, @code{TEXMFSYSVAR}) suffices to install
308 the medium scheme with all default options.
310 @item @strong{-q}
311 @anchor{install-tl @strong{-q}}
313 Omit normal informational messages.
315 @item @strong{-scheme} @emph{scheme}
316 @anchor{install-tl @strong{-scheme} @emph{scheme}}
318 Schemes are the highest level of package grouping in TeX Live; the
319 default is to use the @code{full} scheme, which includes everything.  This
320 option overrides that default.  You can change the scheme again before
321 the actual installation with the usual menu.  The @emph{scheme} argument may
322 optionally have a prefix @code{scheme-}.  The list of supported scheme names
323 depends on what your package repository provides; see the interactive
324 menu list.
326 @item @strong{-v}
327 @anchor{install-tl @strong{-v}}
329 Include verbose debugging messages; repeat for maximum debugging, as in
330 @code{-v -v}.  (Further repeats are accepted but ignored.)
332 @item @strong{-version}, @strong{--version}
333 @anchor{install-tl @strong{-version}@comma{} @strong{--version}}
335 Output version information and exit.  If @code{-v} has also been given the
336 revisions of the used modules are reported, too.
338 @end table
340 @node install-tl ENVIRONMENT VARIABLES
341 @appendixsec ENVIRONMENT VARIABLES
343 For ease in scripting and debugging, @code{install-tl} will look for the
344 following environment variables.  They are not of interest in normal
345 user installations.
347 @table @asis
348 @item @code{TEXLIVE_INSTALL_ENV_NOCHECK}
349 @anchor{install-tl @code{TEXLIVE_INSTALL_ENV_NOCHECK}}
351 Omit the check for environment variables containing the string @code{tex}.
352 People developing TeX-related software are likely to have many such
353 variables.
355 @item @code{TEXLIVE_INSTALL_NO_CONTEXT_CACHE}
356 @anchor{install-tl @code{TEXLIVE_INSTALL_NO_CONTEXT_CACHE}}
358 Omit creating the ConTeXt cache.  This is useful for redistributors.
360 @item @code{TEXLIVE_INSTALL_PREFIX}
361 @anchor{install-tl @code{TEXLIVE_INSTALL_PREFIX}}
363 @item @code{TEXLIVE_INSTALL_TEXMFCONFIG}
364 @anchor{install-tl @code{TEXLIVE_INSTALL_TEXMFCONFIG}}
366 @item @code{TEXLIVE_INSTALL_TEXMFHOME}
367 @anchor{install-tl @code{TEXLIVE_INSTALL_TEXMFHOME}}
369 @item @code{TEXLIVE_INSTALL_TEXMFLOCAL}
370 @anchor{install-tl @code{TEXLIVE_INSTALL_TEXMFLOCAL}}
372 @item @code{TEXLIVE_INSTALL_TEXMFSYSCONFIG}
373 @anchor{install-tl @code{TEXLIVE_INSTALL_TEXMFSYSCONFIG}}
375 @item @code{TEXLIVE_INSTALL_TEXMFSYSVAR}
376 @anchor{install-tl @code{TEXLIVE_INSTALL_TEXMFSYSVAR}}
378 @item @code{TEXLIVE_INSTALL_TEXMFVAR}
379 @anchor{install-tl @code{TEXLIVE_INSTALL_TEXMFVAR}}
381 Specify the respective directories.
383 @item @code{NOPERLDOC}
384 @anchor{install-tl @code{NOPERLDOC}}
386 Don't try to run the @code{--help} message through @code{perldoc}.
388 @end table
390 @node install-tl AUTHORS AND COPYRIGHT
391 @appendixsec AUTHORS AND COPYRIGHT
393 This script and its documentation were written for the TeX Live
394 distribution (@url{http://tug.org/texlive}) and both are licensed under the
395 GNU General Public License Version 2 or later.