LaTeX in 2021

You may recall my rant about LaTeX in 2020. In short, trying to “update” an installation of TeXLive had me running down internet rabbit holes, fuming about poor versioning, and generally tearing out my hair. It was not pretty.

Thankfully that story has a happy ending.

Shortly after writing that post, I discovered TinyTeX. TinyTeX is one of those rare pieces of software that does what it says on the tin, correctly, first time. Its author, claims that it works best with R, but honestly I’m not sure what more I could ask from a TeX installation.

Here’s a run down of why I think TinyTeX is so great:

  1. It works out the box. I can’t stress this enough - technology that JustWorks™ is a rare and valuable thing. The installation instructions were clear and after setting up some symlinks so it sat in my path, I could run tlmgr and install the latest and greatest packages, pdflatex all my documents, and even latexmk -pvc them1.
  2. It lives in my /home directory. I can confirm this, because I installed it with user privileges and to uninstall or reinstall, it is recommended you simply nuke the ~/.TinyTeX folder.
  3. Reinstalling was a breeze. As so happens, I needed to reinstall the system to upgrade to the latest packages. This isn’t great, but I’m beginning to accept it as part of the TeXLive ecosystem. However, what was great was how easy it was to uninstall TinyTeX and make a fresh installation. The FAQ has a quick bash script to reinstall all the packages:
$ TL_INSTALLED_PKGS=$(tlmgr info --list --only-installed --data name | tr '\n' ' ')
$ tlmgr install $TL_INSTALLED_PKGS
  1. The webpage has a section called Hall of Pain. While this isn’t great, per se, it does indicate that the problems that TinyTeX is trying to solve are moderately common2. The author is clearly cognisant of the fact that many people are upset with the usual TeXLive installations. This means that TinyTeX puts effort in to make those problems less… problematic.

That isn’t to say that TinyTeX is perfect. Nothing is. Here are a few things that could be better in my opinion.

  1. My installation directory still takes up half a GB. That’s still a lot of data and is an order of magnitude off the 61MB claimed by the TeXLive webpage. However, interrogating the directory, it seems like a lot of that comes from fonts that I do use so I’m not too fazed. I do use this as a multi-purpose LaTeX installation and do a lot of my work in LaTeX so I can’t really complain too much. It’s probably something I’ll go trim down at some point though.
  2. The webpage, while great and clear, makes a hang of a thing about R compatibility. I think TinyTeX works great as a general purpose TeXLive installation and the instructions for Linux users (not in the R ecosystem) could be more prominent.

However, overall, I’d say that TinyTeX has saved me from a lot of pain, and made working with LaTeX on my old laptop that much more enjoyable. 10/10 would recommend.

  1. If you aren’t aware of latexmk, can I strongly recommend checking it out. It runs pdflatex and bibtex as many times as is needed to compile your document without undefined references and supports a “preview continuous” flag for watching your changes live in a PDF viewer. ↩︎

  2. And re-affirms that I am not alone in being frustrated with TeXLive. ↩︎