rstudio / rstudio/tinytex

tlmgr runs very slowly on Windows

Open
#512 9 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

question
Dominant language
R
Stars
1.2k
Forks
127
PR merge metrics
No merged PRs in 30d

Description

Hi, thanks for this useful tool. I have been using it on Windows and Mac for years, but tlmgr became suddenly very slow on Windows. tlmgr seems to be able to complete a command, but taking minutes to install one package means impossible to use.

I installed on Windows using Chocolatey, and reinstalled today, but the problem is the same.

Maybe the debug information makes more sense to you guys:

❯ tlmgr -v install newtx
D:The handle is invalid
at open HKCU for all access
D:found lang code lm = en-US...
D:tlmgr version 78616 (2026-04-06 15:48:59 +0200)
D:maintree=C:/tools/TinyTeX
D:appending to package log file: C:/tools/TinyTeX/texmf-var/web2c/tlmgr.log
D:appending to command log file: C:/tools/TinyTeX/texmf-var/web2c/tlmgr-commands.log
D:Setting env var HTTPS_CA_FILE to C:/tools/TinyTeX/tlpkg/installer/curl/curl-ca-bundle.crt
D:tlmgr.pl:main: ::tldownload_server hash:: {enabled:1,errorcount:0,initcount:1,ua:LWP::UserAgent=HASH(0x285878e22f8)}
D:setup_programs: preferring system versions
D:(w32) trying to set up tar, default C:/tools/TinyTeX/tlpkg/installer/tar.exe, arg --version
D:Using shipped C:/tools/TinyTeX/tlpkg/installer/tar.exe for tar (tested).
D:program curl found in path
D:program wget not usable from path
D:(w32) trying to set up wget, default C:/tools/TinyTeX/tlpkg/installer/wget/wget.exe, arg --version
D:Using shipped C:/tools/TinyTeX/tlpkg/installer/wget/wget.exe for wget (tested).
D:TLUtils::setup_programs: checking for ssl enabled wget
D:TLUtils::setup_programs: wget has ssl, final wget args: --no-check-certificate --user-agent=texlive/wget --tries=4 --timeout=30 -q -O
D:program lz4 not usable from path
D:(w32) trying to set up lz4, default C:/tools/TinyTeX/tlpkg/installer/lz4/lz4.exe, arg --version
D:Using shipped C:/tools/TinyTeX/tlpkg/installer/lz4/lz4.exe for lz4 (tested).
D:program gzip found in path
D:program xz found in path
D:Using checksum method digest::sha
D:Testing for gpg in gpg

I disabled rtools44 path, as suggested by ChatGPT, and it seems to run smoother now:

❯ $env:PATH=($env:PATH -split ';' | Where-Object {$_ -notmatch 'rtools44'}) -join ';'

❯ tlmgr update --self --all
tlmgr.pl: package repository https://satztexnik.com/tex-archive/systems/texlive/tlnet (not verified: gpg unavailable)
tlmgr.pl: Preparing TeX Live infrastructure update...
DO NOT CLOSE THIS WINDOW!
TeX Live infrastructure update in progress ...
Detailed command logging to "C:\tools\TinyTeX\temp\update-self.log"
self update: texlive.infra (79365 -> 79511)
Infrastructure update finished successfully.
About to restart tlmgr to complete update ...
tlmgr.pl: package repository https://ftp.rrzn.uni-hannover.de/pub/mirror/tex-archive/systems/texlive/tlnet (not verified: gpg unavailable)
C:\tools\TinyTeX\texmf-dist\scripts\texlive\tlmgr.pl: (make_container __BACKUP_texlive-scripts.r79509.tar) install-tl does not exist
[1/1, ??:??/??:??] update: texlive-scripts [114k] (79509 -> 79598) ... done
running mktexlsr ...
done running mktexlsr.
running updmap-sys ...
done running updmap-sys.
tlmgr.pl: package log updated: C:/tools/TinyTeX/texmf-var/web2c/tlmgr.log
tlmgr.pl: command log updated: C:/tools/TinyTeX/texmf-var/web2c/tlmgr-commands.log

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the delay with tlmgr -v install newtx on Windows, comparing the environment with and without the rtools44 PATH entries. Start with C:/tools/TinyTeX/texmf-var/web2c/tlmgr.log, tlmgr-commands.log, and the reported temp/update-self.log. Done means identifying the Windows-specific cause and making package installation complete without taking minutes.

Written by the indexing model from the issue text.

Assessment

Tech stack
latex, tex
Domain
cli, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.