I’m just tired of updating my TeX Live installation every year. Never managed to update successfully in my life. I rarely use LaTeX. I could use an online service for compiling PDF files but I like to do things in my computer, not in someone else’s.

For fixing this problem, MiKTeX looks promising. I think it’s like a rolling release type of distribution, which is easier to manage and update packages. Also, it has a much more pretty looking management tool.

In this blog post I wanted to cover some tips and tricks about MiKTeX installation.

Installing Every MiKTeX Package

One of the downsides about MiKTeX is, I never managed to have meaningfull error messages. Ok, I can guess there is a package missing in my setup, but which one?.. Because of that, I wanted to install every package available.

mpm is the package manager of MiKTeX. Don’t use --install option for installing packages because it returns error messages for already installed packages. Instead, use --require.

If your installation is not system-wide, don’t use --admin option. (also don’t use sudo)

sudo mpm --verbose --admin --require $(mpm --list-package-names | paste -sd ',' -)

This installs every package, including documentation and source packages. If you don’t want to install doc and source packages, you can use the following command:

sudo mpm --verbose --admin --require $(mpm --list-package-names | grep -v __ | paste -sd ',' -)

If a package name contains double underscore (__) it’s probably a documentation or a source package. We can use grep -v to skip them. For example: aalok, aalok__doc, aalok__source

After these, you may need to rebuild font map files:

sudo miktex --verbose --admin fontmaps configure