tlmgr - TeX Live package manager

tlmgr is the name of the package and configuration manager included in TeX Live. It operates completely separately from any package manager the operating system may provide. The full documentation for tlmgr is available (updated nightly), or you can run tlmgr --help.

If you installed MacTeX, precede the commands below with sudo, since MacTeX installs as root.

Getting updates

Occasionally we release new versions of tlmgr. Your installed tlmgr will notice and ask you to update it before updating anything else. The command to do this is:

tlmgr update --self

After any updates of tlmgr, you can then run, for instance, tlmgr update --all, which will update (including additions and removals) all other packages in your installation that have been changed on the server. Authors frequently release new versions of their work to CTAN, which we propagate into TeX Live.

We maintain a separate history of tlmgr changes.

Disaster recovery

You may end up in a situation where tlmgr itself does not run due to Perl errors, failed updates, or some other reason. If this happens, the simplest way forward is to download and run (Unix) or update-tlmgr-latest.exe (Windows). These are self-extracting archives which include all the infrastructure files. Running them should restore tlmgr to a coherent state.

Before running them, be sure your PATH is set to use the current TeX Live bin directory; the archives use kpsewhich from PATH to figure out where to unpack themselves.

Test versions

If you like living on the bleeding edge (and we greatly appreciate any such testing), you can get the latest tlmgr from a separate repository named ‘tlcritical’. This directory is updated nightly from the development sources. The TeX Live Utility on MacOSX has a convenient way to try this. Or you can do it on any platform using tlmgr: the following command will show you what will be updated, along with commentary that updates to tlmgr itself are present (ignore the urls in that commentary).

tlmgr --repository= update --list

To actually do the update, use --self instead of --list, but don't forget to keep the explicit --repository.

If you have trouble connecting to via ftp, you can also get tlcritical via rsync. First copy it into its own separate directory on your machine, and then tell tlmgr to use that directory, like this:

rsync rsync:// /new/local/dir
tlmgr --repository=/new/local/dir update --list

Again, we greatly appreciate any testing of this development code.

Please email bug reports or other comments to the tex-live mailing list.

$Date: 2010/10/06 00:27:47 $; TeX Live;