54 lines
953 B
Nix
54 lines
953 B
Nix
{
|
|
lib,
|
|
runCommand,
|
|
junicode,
|
|
texliveBasic,
|
|
}:
|
|
let
|
|
texliveWithJunicode = texliveBasic.withPackages (p: [
|
|
p.xetex
|
|
junicode
|
|
]);
|
|
|
|
texTest =
|
|
{
|
|
package,
|
|
tex,
|
|
fonttype,
|
|
file,
|
|
}:
|
|
lib.attrsets.nameValuePair "${package}-${tex}-${fonttype}" (
|
|
runCommand "${package}-test-${tex}-${fonttype}.pdf"
|
|
{
|
|
nativeBuildInputs = [ texliveWithJunicode ];
|
|
inherit tex fonttype file;
|
|
}
|
|
''
|
|
substituteAll $file test.tex
|
|
HOME=$PWD $tex test.tex
|
|
cp test.pdf $out
|
|
''
|
|
);
|
|
in
|
|
builtins.listToAttrs (
|
|
lib.mapCartesianProduct texTest {
|
|
tex = [
|
|
"xelatex"
|
|
"lualatex"
|
|
];
|
|
fonttype = [
|
|
"ttf"
|
|
"otf"
|
|
];
|
|
package = [ "junicode" ];
|
|
file = [ ./test.tex ];
|
|
}
|
|
++ [
|
|
(texTest {
|
|
package = "junicodevf";
|
|
fonttype = "ttf";
|
|
tex = "lualatex";
|
|
file = ./test-vf.tex;
|
|
})
|
|
]
|
|
)
|