¿Cómo compilar un documento de Latex en NixOS?

10

Normalmente lo uso pdflatexpara compilar documentos de látex, pero en NixOS no veo que pdflatexesté disponible para instalar a través de $ nix-env -i pdflatex.

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

Los resultados para pdflatexno aparecen bajo búsqueda en nixos.org/nixos/packages.html tampoco. Sin embargo, noté allí el paquete rubber, que aparentemente envuelve otros programas de látex, incluidos pdflatex. Después de instalar rubbere intentar compilar mi documento de látex con él, aparece el siguiente error "pdflatex no se encuentra".

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

¿Cómo puedo instalar pdflatex para compilar documentos de látex en NixOS?

¿Por qué está rubberdisponible para la instalación vía nix-envmientras que pdflatex, una dependencia de rubber, no lo está?

Como nota al margen, la sección 'Tex / Latex' del manual no explica esto.

mherzl
fuente

Respuestas:

6

Estás vinculando alguna versión antigua del manual. Se explica en versiones recientes: http://nixos.org/nixpkgs/manual/#sec-language-texlive

nix-env -iA nixos.texlive.combined.scheme-basic
Vladimír Čunát
fuente
1
O bien, en los no NixOS: nix-env -iA nixpkgs.texlive.combined.scheme-basic(arrojará LaTeX Error: File 'lmodern.sty' not found.sin embargo, y no pudo encontrar la manera de vincular después de la instalación nix-env -i lmodern, en base a esta respuesta .)
toraritte
Debe usar la .combinefunción en lugar de instalar los paquetes de TeX Live por separado.
Vladimír Čunát
Veo el mismo error señalado por @toraritte incluso en NixOS 19.09.
Ashesh
@ Ashesh: la respuesta sigue siendo la misma. Como lo diseñó TeX Live upstream, scheme-basices muy pequeño y no incluye Latin Modern. Es en ese manual cómo puedes mezclar tu propia combinación. Si desea una "solución" simple, simplemente instale un esquema más grande, por ejemplo scheme-small, contiene esta fuente si me veo correctamente.
Vladimír Čunát
@ VladimírČunát sí, eso es lo que hice al final; funciona con scheme-mediumy no pequeño.
Ashesh