10

I normally use pdflatex to compile latex documents, but on NixOS I do not see that pdflatex is available to install via $ nix-env -i pdflatex.

$ nix-env -qa pdflatex
error: selector ‘pdflatex’ matches no derivations

Results for pdflatex do not appear under search at nixos.org/nixos/packages.html either. However, I did notice there the package rubber, which apparently wraps other latex programs including pdflatex. After installing rubber and attempting to compile my latex document with it I get the following "pdflatex is not found" error.

$ rubber --pdf doc.tex
compiling doc.tex...
pdflatex not found
Running pdflatex failed.

How can I install pdflatex to compile latex documents on NixOS?

Why is rubber available for installation via nix-env whereas pdflatex, a dependency of rubber, is not?

As a side-note, the 'Tex/Latex' section of the manual does not explain this.

1 Answer 1

7

You're linking some ancient version of manual. It's explained in recent versions: http://nixos.org/nixpkgs/manual/#sec-language-texlive

nix-env -iA nixos.texlive.combined.scheme-basic
5
  • 1
    Or, on non-NixOS: nix-env -iA nixpkgs.texlive.combined.scheme-basic (will throw LaTeX Error: File 'lmodern.sty' not found. though, and couldn't figure out how to link it after installing nix-env -i lmodern, based on this answer.)
    – toraritte
    Jul 31, 2018 at 17:07
  • You need to use the .combine function instead of installing TeX Live packages separately. Aug 5, 2018 at 19:47
  • I see the same error pointed out by @toraritte even on NixOS 19.09.
    – Ashesh
    Jan 5, 2020 at 16:14
  • @Ashesh: the answer is still the same. As TeX Live upstream designed it, scheme-basic is very small and does not include Latin Modern. It's in that manual how you can mix your own combination. If you want a simple "solution", just install a larger scheme instead, e.g. scheme-small does contain this font if I look correctly. Jan 7, 2020 at 20:12
  • 1
    @VladimírČunát yeah, that's what I did in the end; it works with scheme-medium and not small.
    – Ashesh
    Jan 8, 2020 at 15:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.