I am thinking over the problem of maintaining a complex TeX system with several TDS trees (on a Unix computer), looking at documentation such as kpathsea.info, teTeX-FAQ, TETEXDOC.tex, and http://www.pathname.com/fhs (Filesystem Hierarchical Standard). I am puzzled in particular in trying to understand:
What does the "VAR" mean in VARTEXMF? There is a small mention of TeX in the FHS documentation already (using /var/cache/fonts for auto-generated font files), and if I understand correctly this is where the "VAR" comes from in VARTEXFONTS. But the intended use of VARTEXMF seems rather different. As near as I can tell a more accurate name for VARTEXMF would be TEXMFCONFIG. (Is this a texk question rather than a teTeX question?) Suppose that one wanted to attempt to follow the FHS insofar as reasonable. Many questions are unclear to someone who simply reads the FHS recommendations without preconceived notions. I suppose some of these questions are better asked on an FHS mail list but if anyone reading this is willing to share their opinion I think other teTeX users would also be interested. For example: ---What is difference between /opt and /usr/local? I.e., what is the best "main" location for teTeX? Why? /opt/teTeX ? /usr/local/teTeX ? Is /opt only for additional packages provided by your Unix vendor, and /usr/local for anything obtained elsewhere? (If that is indeed true, I think I would rather have a top level /local directory instead of /usr/local.) But here are some more quotes about /opt: Generally, all data required to support a package on a system must be present within /opt/<package>, including files intended to be copied into /etc/opt/<package> and /var/opt/<package> as well as reserved directories in /opt. ... Distributions may install software in /opt, but must not modify or delete software installed by the local system administrator without the assent of the local system administrator. Considering also that there are TeX-related packages out there that are not included in teTeX, what about making a common parent directory to hold both teTeX and the other packages: /opt/texstuff/teTeX ? /usr/local/texstuff/teTeX ? ---What about /usr/share/texmf? The FHS description of the /usr/share area makes it seem that all the run-time TeX input files for LaTeX and similar should go here. Or, how much of this should better go into /opt/share or /usr/local/share instead? Why? The /usr/share hierarchy is for all read-only architecture independent data files. This hierarchy is intended to be shareable among all architecture platforms of a given OS; thus, for example, a site with i386, Alpha, and PPC platforms might maintain a single /usr/share directory that is centrally-mounted. Note, however, that /usr/share is generally not intended to be shared by different OSes or by different releases of the same OS. And then again, if you have material (such as a LaTeX package) that IS shareable across different OSes, does that mean it should go somewhere else? ---What can go in /var/cache? 5.5 /var/cache : Application cache data 5.5.1 Purpose /var/cache is intended for cached data from applications. Such data is locally generated as a result of time-consuming I/O or calculation. The application must be able to regenerate or restore the data. Unlike /var/spool, the cached files can be deleted without data loss. The data must remain valid between invocations of the application and rebooting the system. Files located under /var/cache may be expired in an application specific manner, by the system administrator, or both. The application must always be able to recover from manual deletion of these files (generally because of a disk space shortage). No other requirements are made on the data format of the cache directories. The first paragraph could be construed to cover TeX format files, but then one would want the "application specific manner" of expiring them to be extremely slow. And also format files are not yet generated on demand, last I knew? Although it would be feasible if sufficient fmtutil setup is done and tex had a mktexfmt script to go along with the other mktex... scripts. Regards, Michael Downes