runLaTeX: Fix dependency detection

Since Nix 1.4, expressions like "${path}/blabla" always evaluate to a
string rather than a path.  However, findLaTeXIncludes depended on the
old (weird) behaviour, leading to errors like:

  error: string `/nix/store/4c32q75in74m1148anlzdhb8jpppab0s-bla/IEEEtran.cls' cannot refer to other paths

So use path concatenation instead.
This commit is contained in:
Eelco Dolstra 2013-03-16 16:56:19 +01:00
parent 1f000ba427
commit 82f947c78a

View File

@ -66,7 +66,7 @@ rec {
else if dep.type == "tex" then [".tex" ""]
else [""];
fn = pkgs.lib.findFirst (fn: builtins.pathExists fn) null
(map (ext: "${dirOf key}/${dep.name}${ext}") exts);
(map (ext: dirOf key + ("/" + dep.name + ext)) exts);
in if fn != null then [{key = fn;}] ++ xs
else xs;
@ -90,8 +90,8 @@ rec {
{ src = key; }
"${pkgs.stdenv.bash}/bin/bash ${./find-lhs2tex-includes.sh}");
in pkgs.lib.concatMap (x : if builtins.pathExists x then [{key = x;}] else [])
(map (x : "${dirOf key}/${x}") deps);
in pkgs.lib.concatMap (x: if builtins.pathExists x then [{key = x;}] else [])
(map (x: dirOf key + ("/" + x)) deps);
};
dot2pdf =