Hi Reinhard, In the repository, I have extended the kpathsea interface a bit, can you or any other knowledgeable people check to see if this is enough? The kpathsea headers are a bit scattered, so I may have missed a needed function. New Lua functions: kpse.set_program_name(string name [, string progname]) * This initializes the search library. kpse.init_prog(string name, number basedpi, string mfmode [, string fallbackfont]) * This does roughly the same, but for progams that do PK/GF lookups (and creation), because that needs some default values. kpse.readable_file(string file_name) * Returns either the actual filename, or nil, depending on the readability of the absolute (!) file_name. The return value is a string because in some cases the used filename is not identical to the requested filename (think MSDOS) Extended Lua function: kpse.find_file(string file [, string type [, (boolean must_exist | number wanted_dpi)]]) * This function is extended: the new 'wanted_dpi' is the bitmap resolution. This value is used when 'type' is one of 'pk', 'gf', or 'bitmap font'. Untouched: kpse.expand_var(string varname) kpse.expand_path(string path) kpse.expand_braces(string variable) Best wishes, Taco