tlmgr is the package and configuration
manager included in native TeX Live. This page gives a high-level
summary of changes to it, and occasionally other infrastructure programs.
Running tlmgr --version will report the version number
that you have.
tlmgr 66903 (released 20nov23):
tlmgr 66818 (released 15nov23):
detect a remote repository older than the local installation (i.e.,
a stale mirror), and don't update, to avoid incorrect package removals.
warn if a file or directory could not be removed.
the installer's curl-ca-bundle.crt updated.
tlmgr 66798 (released 11apr23):
base context cache regeneration on ls-R mtimes.
support context paper size setting.
TeX Live 2022 released.
tlmgr 66457 (released 8mar23):
tweaking context cache generation commands.
tlmgr 66236 (released 28feb23):
run both mtxrun --generate and context --luatex --generate
as post-update actions, if the luametatex binary is operational.
tlmgr 66218 (released 27feb23):
rename "path --w32mode" option to --windowsmode; similar throughout.
tlmgr 63033 (released 17apr22):
tlmgr check files also ignores the tlmgr*.log files.
document that in user mode, tlmgr*.log are written to TEXMFVAR.
install-tl 63001 (released 11apr22):
default to the text interface on Darwin.
disk space checking implemented for Windows.
install-tl 62504 (released 8mar22)?
install core packages first, retry other packages once.
basic check for enough disk free, given a working df -P.
catch interrupt signals and exit immediately.
tlmgr 62273 (released 28feb22, pretest):
update description for armhf-linux; fix typos.
tlmgr 61401 (released 8feb22):
on darwin, use our own curl cert bundle (now updated),
to try to avoid cert expiration problems, since Apple will not fix
avoid creating file named "nul" on Windows when checking mirror status.
implementation: use strict; use warnings; for Perl modules.
tlmgr 60693 (released 12oct21):
use TEXMFROOT instead of SELFAUTOPARENT to allow easier relocating
tlmgr 60557 (released 20sep21):
omit “done running” line for fmtutil.
allow : to separate argument values as well as , to placate powershell.
config.guess: back to `...`. Whew.
tlmgr 59208 (released 15may21):
still trying to optimize the ssl multiplexor resolution.
tlmgr 59154 (released 10may21):
more adaptations for https://mirror.ctan.org (and again on 14may21).
tlmgr 59108 (released 7may21):
support, and prefer, curl for https://mirror.ctan.org resolution.
don't require valid ssl certificates since we can't always support ssl.
tlmgr 58938 (released 21apr21):
adapt to https://mirror.ctan.org now being available.
when install option create_formats=0, only refresh existing formats.
tlmgr 57705 (released 12feb21):
use pure Perl solution to rmdir TL tree for uninstall.
tlmgr 57424 (released 16jan21):
usermode: pass -user to fmtutil.
remove dependency on File::Copy.
tlmgr 57119 (released 13dec20):
keep only one backup of the main repo's texlive.tlpdb,
regardless of which mirror is used.
tlmgr 56566 (released 8oct20):
avoid tlmgr info --data printing incorrect relocatable data.
tlmgr restore: ensure depending formats are rebuilt.
Windows: support batch uninstallation by passing any argument.
Windows: silence spurious warnings due to failures in broadcast_env.
tlmgr 56458 (released 30sep20):
tlmgr info reports new lcat-* and rcat-* fields for local vs. remote data.
tlmgr 56372 (released 22sep20):
small fixes for warnings, csv output, xdvi paper location.
tlmgr 55369 (released 1jun20):
full logging of subcommands moved to new file tlmgr-commands.log.
tlmgr 54446 (released 21mar20):
full logging of subcommand (notably fmtutil) output in tlmgr.log.
tlmgr update --all --force does not update tlperl.w32.
tlmgr -gui uninstall of entire TL fixed.
tlmgr 54118 (released 7mar20):
re-initialize LWP connection after 5 errors.
tlmgr 53428 (released 17jan20):
automatic retry of packages that fail to download.
rearrange packaging so little-used scripts are not part of
infraonly; remove tetex package.
tlmgr 53225 (released 25dec19):
avoid doubled .rNNN in backup container names.
warning when chosen installation root (TEXDIR) has problematic characters.
silence check texmfdbs by default; refine checks.
omit catalogue-date entry when packages are updated.
debugging output when a directory is failed to be collapsed for backup tar.
tlmgr 52931 (released 27nov19):
major change to versioned package
containers for the central tlnet repository.
tlmgr 52752 (released 12nov19):
TLConfig.pm: luahbtex binary missing on some platforms until TL'20.
tlmgr 52585 (released 31oct19):
TLUtils.pm: try again with symlink change for backups.
small doc and implementation improvements.
tlmgr 52467 (released 21oct19):
revert TLUtils.pm change, as it could cause symlinks to absolute paths
to be in the bin directories.
tlmgr 52123 (released 20oct19):
tlmgr check runfiles: ignore latex-.*-dev packages.
reduce download retries for curl and wget from 10 to 4.
TLUtils.pm: prepare for versioned containers by making symlinks absolute.
tlmgr 51555 (released 5jul19):
runscript.tlu: use vbscript for GUI error boxes, so tlshell can be
its own self-contained package, entirely separate from texlive.infra.
tlmgr 51217 (released 29may19):
propagate gpg verification status for GUIs.
tlmgr 50796 (released 7apr19):
more runscript.tlu and doc tweaks; TL'19 release.
tlmgr 49885 (released 6feb19):
runscript.tlu support for tclkit and GUI errors; only doc tweaks for
tlmgr 49226 (released 23nov18):
new environment variable TEXLIVE_PREFER_OWN to prefer compression
(e.g., xz) and download (e.g., wget) programs shipped with TL to those
provided by the system.
tlmgr 48598 (released 29oct18):
remove debugging line for caller() left in by mistake.
update ctan backbone list (to the one remaining).
tlmgr 48522 (released 3sep18):
tlmgr info: report Catalogue contact info if available.
only run mtxrun if luatex is available.
tlmgr 48271 (released 25jul18):
prefer system provided binaries over TL provided binaries for
compressor and download programs.
tlmgr info now allows listing only packages from the remote
repository using --only-remote.
further checks on downloaded signature files to reduce
save alias information from TeX Catalogue.
tlmgr 47951 (released 6jun18):
Bug fix for lz4 backups (need -m for normal behavior).
tlmgr 47907 (released 3jun18):
support for curl as a download program, and new default behavior for
choosing. In this order:
- If the environment variable TEXLIVE_DOWNLOADER is
defined, use it; abort if the specified program doesn't work.
Possible values: curl, wget.
- If the environment variable TL_DOWNLOAD_PROGRAM is
defined (can be any value), use it together with
TL_DOWNLOAD_ARGS; abort if it doesn't work.
- If LWP is available and working, use that (by far the most
efficient method, as it supports persistent downloads).
- If curl is available (from the system) and working, use that.
- If wget is available (either from the system or TL) and
working, use that.
TL still provides wget binaries for some platforms, so
some download method should always be available.
support for alternative compressor programs; until now, backups and
intermediate rollback containers were always created with xz. Now:
- If the environment variable TEXLIVE_COMPRESSOR is
defined, use it; abort if it doesn't work. Possible values:
lz4, gzip, xz.
- If lz4 is available (either from the system or TL) and working, use that.
- If gzip is available (from the system) and working, use that.
- If xz is available (either from the system or TL) and working, use that.
lz4 and gzip are much faster in creating tlmgr's local backups.
The unconditional use of xz for the tlnet containers is unaffected,
to minimize download sizes.
ssh support: installing from a
repository of the form user@machine:/path/to/tlnet is now
supported; the url-like forms
ssh://user@machine/path/to/tlnet are equivalent. ssh-agent
is strongly recommended!
Not tlmgr, but close enough: our generic Windows wrapper
runscript.tlu now sets LC_CTYPE to be the system encoding, to
support files with non-ASCII characters.
tlmgr 47303 (released 14apr18):
uninstall now a synonym for remove, so requiring --all to remove the
TeX Live installation.
tlmgr 46207 (released 31jan18):
new action/option print-platform-info to dump platform name(s) as
well as the identifier.
fix integrity checks to include checksum and not only size.
remove support for md5 checksums (unused for a long time).
tlmgr 46034 (released 12dec17):
tlmgr info (list): reinstate previous (and intended) list format.
tlmgr info: only load remote tlpdb when necessary.
(Windows) do not run post-actions when luatex.dll is not
available (because runscript needs luatex).
tlmgr 45838 (released 23nov17):
allow excluding packages from update in tlmgr config file.
JSON output for various commands.
other machine-readable improvements.
tlmgr 45286 (released 15sep17):
require the main repository to be signed.
fix tlmgr info output.
tlmgr 45190 (released 1sep17):
fix tlmgrgui not to switch to single repo mode on CTAN mirror usage.
prohibit upgrades between releases using tlmgr.
add shell mode.
add tabulated info output.
tlmgr 44452 (released 9jun17):
- bug fix for tlmgr conf editing of line continuations.
tlmgr 44422 (TeX Live 2017):
- new action shell for interactive and scripted use.
- new action conf auxtrees to easily add and remove extra
- if backups are enabled, a backup is automatically made by the
- the info output includes sizes for schemes and collections.
tlmgr 41476 (released 20jun16):
- fix tlmgr restore failure
tlmgr 41258 (TeX Live 2016):
support for system-level configuration files in
TEXMFSYSCONFIG/tlmgr/config, where a restricted set of allowed
actions can be defined, in addition to the usual tlmgr config file
the font and other gui controls can be specified as options to the
verify package checksums during installation; sha-512 used instead
of md5 for checksums; new config file setting no-checksums.
gpg verification supported, with new action key and new
options and config settings --require-verification and
unify installer and tlmgr package installation implementations.
tlmgr revision 39198 (released 5jan16):
- message and doc changes.
- ConTeXt paper size changes.
tlmgr revision 37738 (released 3jul15):
- more error code fixes, e.g., for paper sizes.
- info searches titles, descriptions, file names, topics if available.
tlmgr revision 37030 (released 24apr15):
- more reliable exit status codes.
- add --with-doc and --with-src options for use with install --reinstall,
to get the doc and/or src files even if they were omitted at initial
- the install action reports explicitly-requested packages already installed.
- restore --dry-run is now more of a no-op, as intended.
tlmgr revision 35841 (released 24dec14):
- remove taxonomy searching, since upstream data is no longer maintained.
tlmgr revision 34227 (released 23may14, TeX Live 2014):
- If the NOPERLDOC envvar is set, avoid fancy --help message
formatting, regardless. (Same holds for install-tl.)
- tlmgr conf supports new options --delete,
--conffile, and updmap.
- doc and error checking updates as usual.
tlmgr revision 32912 (released 9feb14):
- tlmgrgui wordings, arrangements, etc.
tlmgr revision 31657 (released 15sep13):
- fix for "quoted" strings inside doc attributes, as in
pythontex's Catalogue entry.
tlmgr revision 31400 (released 9aug13):
- fix for installation from file (install --file).
tlmgr revision 30643 (released 23may13, TeX Live 2013):
- documentation updates for the release.
- new tlperl (version 5.16.2) for Windows, compiled without
optimization and with debugging
tlmgr revision 28216 (released 9nov12):
- menu shortcuts are installed unconditionally, the desktop_integration
option only controls shortcuts on the desktop (W32)
- fix --self updates on W32 when multiple remote repositories are used
tlmgr revision 27748 (released 25oct12):
- support tlmgr repository list ... for listing of any repository
- work around Cygwin Perl returning undef from an empty file
tlmgr revision 27601 (released 7sep12):
- allow for spaces in the repository path (again)
- make tlmgr --help more robust against broken perldoc
tlmgr revision 27413 (released 16aug12):
- fix Perl syntax warning in trans.pl
- tar -m in Windows update to avoid spurious problems
tlmgr revision 27258 (released 30jul12):
- more fixes to updmap multi-tree support for TEXMFLOCAL
tlmgr revision 27170 (released 26jul12):
- consistently use ll_RR in .po file naming, per general gettext convention.
- make sure that an outdated updmap.cfg file is backed up and removed
tlmgr revision 26857 (released 8jul12, TeX Live 2012):
- generate updmap is no more, since updmap.cfg is now per-tree.
- multiple repository support
- tlmgr can now install a package from a file
- support addKanjiMap execute
tlmgr revision 23514 (released 12aug11):
- dependent formats are regenerated when necessary.
- on Windows only, do not update time stamps when unpacking,
to partially avoid spurious errors.
- detect mipsel and mipsel64 platforms.
tlmgr revision 23117 (released 23jun11, TeX Live 2011):
- support gui-lang in tlmgr config file, and add GUI
interface for it.
tlmgr revision 20975 (released 24jan11):
- fix usage of persistent connections in tlmgr.
- override locale settings when using wget as a subprocess.
tlmgr revision 20243 (released 1nov10):
- try (again) not to load the remote tlpdb if tlmgr update is called
- fix bugs in autobackup/backupdir handling; unify error messages;
on clean, also remove package backups for packages no longer present
- support keyword searching as provided by the beta CTAN characterizations
at http://az.ctan.org/ (no Internet
access needed for the search, though). tlmgr documentation
has details. Support is also present in tlmgrgui.
tlmgr revision 19923 (released 28sep10):
- add -R to the LESS environment variable, and unset
LESSOPEN and LESSPIPE, before calling pod2usage.
tlmgr revision 19414 (TeX Live 2010 release):
- implement download selection mode in the file
option persistent-downloads, with value 0 or 1.
- remove support for old GUI (tlmgr gui-old).
tlmgr revision 17811 (released 25apr10):
- GUI: provide simple and expert modes (Expert options).
- GUI: provide access to the manual (tlmgr help) in Help menu.
- GUI: add support for restore action.
- GUI: add support for these command line options:
--no-auto-remove (under Menu->Options), and
(just below the button “Update all installed”).
- tlmgr restore --all: restore the latest, using all
- bug fix: do not auto-install packages contained in forcibly removed
tlmgr revision 17611 (released 30mar10):
Support automatic installation of new collections (when they are included
in the selected scheme).
tlmgr revision 17455 (released 19mar10):
- persistent HTTP connections enabled by default
(use --no-persistent-downloads to turn off).
- package update algorithm changed to avoid incorrect “forcibly
removed” inferences. Should be invisible.
- report of the number of pending updates in tlmgr gui.
For all other information, see the main tlmgr
$Date: 2023/11/21 17:59:52 $;