3 Installation and use under Unix

You can use the TeX Live CD-ROM in three ways:

  1. You can mount the CD-ROM on your file system, adjust your PATH, and run everything off the CD-ROM; this takes very little disk space, and gives you immediate access to everything on the CD-ROM; although the performance will not be optimal, it is perfectly acceptable on, for instance, PCs running Linux.
  2. You can install all or part of the system to your local hard disk; this is the best method for many people, if they have enough disk space to spare (a minimum of about 10 megabytes, or 100 megabytes for a recommended good-sized system).
  3. You can install selected packages to work either with your existing TeX system or a TeX Live system you installed earlier.

Each of these methods is described in more detail in the following sections.

Warning: This CD-ROM is in ISO 9660 (High Sierra) format, with Rock Ridge and Joliet extensions. In order to take full advantage of the CD-ROM on a Unix system, your system needs to be able to use the Rock Ridge extensions. Please consult the documentation for your mount command to see if it is possible. If you have several different machines on a local network, see if you can mount the CD-ROM on one which does support Rock Ridge, and use this with the others.

Linux, FreeBSD, Sun, SGI and DEC Alpha systems should be able to use the CD-ROM with no problems. We would appreciate receiving detailed advice from other system users who also succeed, for future versions of this documentation.

The discussion below about installation assumes you have been able to mount the CD-ROM with full Rock Ridge compatibility.

3.1 Running TeX Live from the CD-ROM

The organisation of Web2c means that you can run programs simply by adding the appropriate directory under bin on the CD-ROM to your PATH, and the support files will all be found with no further ado. The following shows the list of available systems and the corresponding directories.
DEC Alphaev5 OSF 4.0d alphaev5-osf4.0d
HP9000 HPUX 10.10 hppa2.0-hpux10.20
Intel x86 with GNU/Linux i386-linux
Intel x86 with FreeBSD ELF 3.4 i386-freebsd
SGI IRIX 6.5 mips-irix6.5
IBM RS 6000 AIX 4.2.* rs6000-aix4.2.1.0
Sun Sparc Solaris 2.7 sparc-solaris2.7
Windows 9X/2000/NT win32
You may worry that when you subsequently make fonts or change configuration, things will go wrong because you cannot change files on the CD-ROM. However, you can maintain a parallel, writeable, TeX tree on your hard disk; this is searched before the main tree on the CD-ROM. The default location is texmf-localconfig on the CD (which does not exist!), so you must override this by setting the VARTEXMF environment variable.

Thus sh or bash users on an Intel PC running Linux can mount the TeX Live CD-ROM on /cdrom by issuing the command:

>> mount -t iso9660 /dev/cdrom /cdrom
Then they should include the directory containing the binaries for the given architecture into the search path by updating the PATH variable.

  export PATH
  export VARTEXMF

For convenience, these statements can also be entered into the .profile script.

If in doubt, ask your local system support guru to help you work out how to mount your CD-ROM or which directory to use for your system.

Appropriate support files will be installed on your hard disk the first time you need them. It is a good idea to immediately run the texconfig script to initialize things, and check it all works.

3.2 Installing TeX Live to a hard disk

All of the necessary steps to install all or part of the distribution on your hard disk are achieved by mounting the CD-ROM, changing to the top-level directory, and typing:

>> sh install-cd.sh
(On some Unix systems, you may need to use sh5 or bash.) This script works by accessing lists of collections and packages from the CD-ROM, and trying to guess what sort of computer system you are on. It should start by displaying the following:

  Initializing collections... Done initializing.
  Counting selected collections... Done counting.
  Calculating disk space requirements for collections...Done calculating that.
  Initializing system packages... Done initializing system.

It will then show the main control screen (Figure 1), which lets you change four things:

  1. the type of system you are on, or want to install for;
  2. the collections you want to install, at the basic, recommended or other level;
  3. the location on your hard disk to put the files;
  4. some runtime behaviour features.

You choose options by typing a letter or number and pressing ‘return’. In the example, a Linux ELF system has been detected, the default of all collections to recommended level has been chosen, and the default installation directory is /usr/local; note that the disk space required for the current installation configuration is also displayed. If you make a suggested setup, you need about 100 megabytes of disk free; however, the basic setup will only take about 10 megabytes, and you can enhance it with selected packages as you need them.

Under the directory you choose for installation, the installation script will put the binaries in a subdirectory of bin, and the support tree in texmf.

  ==================> TeX Live installation procedure <================
  ==> Note: Letters/digits in <angle brackets> indicate menu items <===
  ==>       for commands or configurable options                   <===
   Proposed platform: Intel x86 with GNU/Linux
   <P> over-ride system detection and choose platform
   <C> collections:    24 out of 35, disk space required: 193176 kB
   <S> systems:         1 out of  8, disk space required:   8355 kB
                               total disk space required: 201531 kB
   <L> install level (1: basic, 2: recommended, 3: all): 2
   <D> directories:
     TEXDIR      (The main TeX directory)        : /usr/TeX
     TEXMFLOCAL  (Directory for local styles etc): /usr/TeX/texmf-local
     VARTEXMF (Directory for local config)       : /usr/TeX/texmf-var
   <O> options:
      [ ] alternate directory for generated fonts ()
      [ ] create symlinks in standard directories
      [ ] do not install macro/font doc tree
      [ ] do not install macro/font source tree
   <I> start installation,  <H> help,  <Q> quit
  Enter command:

Figure 1: Main control screen

          name            selection         size
    <1>   bibtex    [recommended]     7597 kB
    <2>   doc       [recommended]    21152 kB
    <3>   dvips     [recommended]      430 kB
    <4>   etex      [recommended]      102 kB
    <5>   fonts     [recommended]    51447 kB
    <6>   formats   [recommended]    14651 kB
    <7>   generic   [recommended]      459 kB
    <8>   graphics  [recommended]     9674 kB
    <9>   lang      [recommended]    19618 kB
    <U>   latex     [recommended]    23429 kB
    <V>   metapost  [recommended]     1443 kB
    <W>   omega     [recommended]     4986 kB
    <X>   pdftex    [recommended]      471 kB
    <Y>   plain     [recommended]     1113 kB
    <Z>   texlive   [recommended]    10155 kB
                             SUM:   166829 kB
    global commands: select <N>one / <B>asic / R<E>commended / <A>ll
                     for all collections
    <R>   return to platform menu
    <Q>   quit

Figure 2: Selecting collections

  Collection: Fonts
  Fonts, including metrics, virtual fonts and sources
    <N>  No packages
    <B>  Basic packages                 [  1023 kB]
    <E>  Basic + Recommended packages   [ 51447 kB]
    <A>  All packages                   [127417 kB]
    <R>   return to collection menu
    <Q>   quit
  Enter command:

Figure 3: Customizing a collection

The options item lets you decide whether to make new fonts be created in another location (if you want the main package mounted read-only for most users), and whether to make symbolic links for the man and GNU info pages in the ‘standard’ locations; you’ll need ‘root’ permissions for tasks to do this, of course. When you choose <C> for ‘collections’, you will see the display of available collections, the level of installation selected, and the disk space required (Figure 2). You can set alternative levels of installation for each collection, ranging from none to all. You can either set this for all collections at once, or choose a particular collection and set its level (Figure 3).

When you are finished, return to the main screen, and ask the installation to start. It will take each of the collections and systems that you requested, consult the list of files on the CD-ROM, and build a master list of files to transfer. These will then be copied to your hard disk. If you installed a system, an initialization sequence is now run (creating format files, etc.). When this has finished, all you need do is add the correct subdirectory of bin in the TeX installation to your path, and start using TeX. If you want, you can move the binaries up one level, e.g. from /usr/local/bin/alpha-osf3.2 to /usr/local/bin; if you do this, however, you must edit texmf/web2c/texmf.cnf (see Appendix 9) and change the line near the start which reads




If you move the whole installation to another directory tree entirely, you need to edit TEXMFMAIN to specify the support tree explicitly, and set TEXMFCNF in your environment to $TEXMFMAIN/texmf/web2c.

3.3 Installing individual packages from TeX Live to a hard disk

You may want to use the TeX Live CD-ROM to either update an existing setup, or add features to an earlier installation from the CD-ROM. The main installation program is intended for the first time only, and subsequently you should use the install-pkg.sh script on the CD-ROM. Run this by mounting the CD-ROM, changing to the mounted directory, and typing

>> sh install-pkg.sh options

The script supports nine options; the first four let you set the individual package you want to install, the whole collection (i.e., ams2), the name of the mounted CD-ROM directory, and the name of the directory containing the list files (normally these latter two will be set automatically):


What actually happens is controlled by four more switches; the first two allow you to exclude documentation or source files from the installation, the third stops the default action of running mktexlsr on completion to rebuild the file database, and the last does nothing but list the files that would be installed:


Finally, you can specify that, instead of installing the files, the script should make a tar archive in a specified location:


Thus, if we simply wanted to see the files that make up the package fancyhdr before we installed it, our command and output would be as follows:

>> sh install-pkg.sh --package=fancyhdr --listonly

Other examples of usage are:

3.4 The texconfig program

After the installation program has copied all files to their final locations, you can use a program called texcon°g that allows you to configure the system to fit your local needs. This can be called at any other time to change your setup, with a full-screen (which requires the dialog program, included as part of the binary packages) or command-line interface. It should be used for all maintenance, such as changes of installed printers, or rebuilding the file database. Both modes have help text to guide you through the facilities.