My doctoral dissertation, for the world to see. The associated PDF can be found here.
When cloning, be sure to include the required submodules:
$ git clone --recurse-submodules «URL»If you already have the repository, you can execute
$ git submodule update --init --recursiveinstead.
Not as easy as I would like, but here we are.
If you use
direnv—which you should—then
a simple direnv allow should
get you inside of a nix shell that has all the relevant dependencies.
Then, make will build the whole project.
Due to externalisation, this will take a long time the first time around,
but subsequent calls will be much quicker,
see here.
When making simple changes to the document—not the preamble—I would instead suggest
pdflatex \
-shell-escape -file-line-error -interaction=batchmode \
-halt-on-error -fmt=prec.fmt \
mainwhich only does one pass over the document, but is much quicker.