[tex-live] Directory structure for package including files

Urs Liska ul at openlilylib.org
Mon Jun 27 10:54:17 CEST 2016

Hi Zdenek,

thank you for the explanation.
When I published my last package things were more complicated (providing
additional Python scripts, font files etc.) so I probably didn't think
of it being that simple and "flat" in simpler cases.

But then I was strongly discouraged to provide a TDS file. Have
recommendations changed in the last few years?


Am 27.06.2016 um 10:47 schrieb Zdenek Wagner:
> Hi Urs,
> first of all you should read the CTAN guidelines. CTAN itself is not
> primarily used for installation, the contents must be easily
> browsable. The maintainers require flat structure, everything in the
> single directory. If the package is too complex, it is possible to
> separate the files to a directory containing the macros, a directory
> containing documentation etc. It is explained on CTAN. In addition,
> you can upload a TDS zip file. In TDS (used in nowadays TeX distros)
> the macros for your package will reside in
> $TEXMF/tex/latex/your_package_name, hence it is not necessary to split
> it to other directories unless you need different files for different
> engines but having the same name. Anyway, even without the TDS zip
> file the TeX Live maintainers can cope with it. As each package must
> contain a README file, this is the best place where to describe the
> structure of the package so that the distro maintainers know how to
> install it.
> Hope this helps.
> Zdeněk Wagner
> http://ttsm.icpf.cas.cz/team/wagner.shtml
> http://icebearsoft.euweb.cz
> 2016-06-27 1:06 GMT+02:00 Urs Liska <ul at openlilylib.org>:
>> Hi all,
>> I'm mentoring a GSoC student who will as part of his project produce a
>> LaTeX package and upload it to CTAN. (As some background that is not
>> directly relevant to the question: This package will take sets of LaTeX
>> commands generated from annotations in LilyPond music scores and typeset
>> a critical report from them.)
>> The package will provide extensive configuration options for the visual
>> appearance of the output, mainly implemented through \setkeys. As the
>> definition of the *default* appearance will use a significant number of
>> code lines the student suggested to move that to a separate file, e.g.
>> `default-stylesheet.inp` (which I find good as it's also a good example
>> file for end-users).
>> The question is: Should we take any precautions regarding the directory
>> structure when it comes to uploading the package to CTAN? Of course in
>> the context of a CTAN package it's probably the most straightforward to
>> just put it in the same folder as the .sty file. But is that also a good
>> approach when we expect the package to be incorporated in distributions
>> like tex-live?
>> Best
>> Urs

More information about the tex-live mailing list