Reproducible pdfs with LaTeX using Nix flakes
Flyx wrote about how to use a Nix flake to create reproducible LaTeX documents here. I turned this into a flake template here and expanded on it slightly.
The template generates a flake that looks a lot like what Flyx created. The changes are:
- There are comments to explain how to change it to pdflatex instead of lualatex
- Working SyncTeX via a perl script to set up a relative path to the output pdf
The flake that creates the template (as opposed to the flake created by the template) outputs an overlay with a texlive package that uses the same flake.lock as what is used by the generated template. This allows you to use the same version of texlive on your system as you’re using in all of your reproducible documents. In turn, this helps keep your nix store a bit smaller and makes it reasonable to choose texlive.combined.scheme-full
for everything.
Check out the repo on github.