LinuxCommandLibrary

tlmgr-update

Update TeX Live packages

TLDR

Update all TeX Live packages

$ sudo tlmgr update --all
copy

Update tlmgr itself
$ sudo tlmgr update --self
copy

Update a specific package
$ sudo tlmgr update [package]
copy

Update all except a specific package
$ sudo tlmgr update --all --exclude [package]
copy

Update all packages, making a backup of the current packages
$ sudo tlmgr update --all --backup
copy

Update a specific package without updating its dependencies
$ sudo tlmgr update --no-depends [package]
copy

Simulate updating all packages without making any changes
$ sudo tlmgr update --all --dry-run
copy

SYNOPSIS

tlmgr update [--all | package1 package2 ...] [--reinstall-forcibly-removed] [--self] [--dry-run] [--backup] [--no-backup] [--verify-file-size] [--no-verify-file-size] [--conserve-memory] [--no-conserve-memory] [--repository repository] [--user] [--machine] [--context value]

PARAMETERS

--all
    Update all installed packages.

package1 package2 ...
    Update the specified packages. If omitted along with --all, update all outdated packages.

--reinstall-forcibly-removed
    Reinstall packages that were forcibly removed (using tlmgr remove --force).

--self
    Update tlmgr itself, including the infrastructure for running it.

--dry-run
    Simulate the update process without actually installing anything.

--backup
    Backup the original files before updating. (Default: enabled)

--no-backup
    Disable backing up the original files before updating.

--verify-file-size
    Verify file sizes before installing. (Default: enabled)

--no-verify-file-size
    Disable verifying file sizes before installing.

--conserve-memory
    Try to conserve memory, at the expense of time.

--no-conserve-memory
    Do not conserve memory.

--repository repository
    Specify the repository to use for updating. Overrides the default repository setting.

--user
    Apply the changes for the current user. Requires write permissions to the user's TeX Live directory.

--machine
    Apply the changes for the system-wide installation (requires root privileges).

--context value
    Override context value.

DESCRIPTION

The `tlmgr update` command is used to update TeX Live packages. It allows users to keep their TeX Live installation up-to-date by downloading and installing the latest versions of packages from the configured TeX Live repository. The command can update all packages, specific packages, or only packages that are not up-to-date. It also handles dependency resolution, ensuring that all necessary packages are updated to maintain a consistent and functional TeX Live environment. Updating regularly is essential for receiving bug fixes, new features, and compatibility improvements within the TeX Live ecosystem. Using `tlmgr update --all` is the most common way to update all available packages.

This command requires root privileges if TeX Live was installed in system-wide location. Consider using `--user` option if you can't use root privileges.

CAVEATS

Updating can sometimes lead to conflicts or broken dependencies if the update process is interrupted or if the repository is inconsistent. Always ensure a stable network connection and consider running a dry run (`--dry-run`) before performing a full update. If problems arise, consult the TeX Live documentation or community forums for assistance.

ROOT PRIVILEGES

If you have installed Tex Live in a system-wide location (e.g., `/usr/local/texlive`), you typically need root or administrator privileges to run `tlmgr`. This is because the command needs to modify files in directories that are protected by the operating system. Using `sudo tlmgr update --all` is a common way to execute the command with elevated privileges. Alternatively, using `--user` parameter can make it write to current user space.

UPDATE ORDER

The order in which packages are updated can be important. `tlmgr` usually handles dependencies automatically, but it's a good practice to update `tlmgr` itself first using `tlmgr update --self` before updating other packages. This ensures that you have the latest version of the package manager, which can improve the update process.

BACKUP CONSIDERATIONS

By default, `tlmgr` creates backups of the files it replaces during an update. These backups can be useful if something goes wrong and you need to revert to a previous state. However, backups can consume a significant amount of disk space, especially if you update frequently or have a large TeX Live installation. Use `--no-backup` parameter to disable backups.

HISTORY

The `tlmgr` command is a core component of the TeX Live distribution, designed to manage the installation, removal, and updating of TeX packages. It was developed to provide a more robust and user-friendly alternative to earlier methods of package management. Its development has focused on providing a cross-platform solution with features like dependency resolution and remote repository management. Over time, it has become the standard tool for managing TeX Live installations.

SEE ALSO

tlmgr install(1), tlmgr remove(1), tlmgr repository(1)

Copied to clipboard