CTAN support of simple "installation" files



Over the years, installing files on a TeX system has become
increasingly tiresome. When I started using TeX, in the 80s, most
packages would say "install the files where (La)TeX can find them" (if
they gave any advice at all on installation). While this advice was
plainly "good", it didn't help much since few people would want to do
the contrary, and it offered no real hints. However, it didn't matter
much: I found it easy, as a complete novice, to guess where the file
ought to go.

TeX systems have changed a lot since then, and most modern systems use
a standard called TDS ("TeX Directory Structure") to specify how
TeX-files should be arranged on disc. The TDS is pretty
straightforward once you've read it, and it will give good a usable
answer, about where to put a new file, every time. However, not many
people _want_ to read it, and as a result TeX forums are forever being
asked how to get TeX to find new files. (I keep rewriting the text in
the UK FAQ, in this area, too -- see
http://www.tex.ac.uk/cgi-bin/texfaq2html?label=installthings
which doesn't yet mention these installation files.)

The TDS is a simple structure, and almost all files can be installed
simply by putting them in the "right" place, and updating a single
index. The CTAN network is therefore starting to hold "TDS ZIP"
files, which have a built-in directory structure that matches the TDS.
These things have to be built, of course, and we're expecting that
package writers will supply them for us. This puts an extra burden on
the writer; however, it should make the package user much happier,
which in turn must help keep the TeX community lively and active.


Nitty gritty details (users):

Users can see whether a TDS file is available, when they view the
catalogue entry for the package they propose to download. A user
should download that file, and unpack it in a TDS directory to which
she has access, and then generate a file index for the TDS directory
tree.

The TDS directory on Unix-like systems will typically be the local
tree, or the user's tree

~<userid>/texmf

Users of MiKTeX systems should not ordinarily need the TDS files; the
management of updates for MiKTeX is very efficient indeed, and it is
seldom as much as a week between a (free) package appearing, and there
being a new (version of a) MiKTeX package being available.

However, in extremis, the user of a MiKTeX system see which trees are
available using the MiKTeX Options app, "Roots" tab; see

http://docs.miktex.org/manual/localadditions.html

for details.

The user may generate an index using texhash under unix-like
systems. On an MiKTeX system, use the "Refresh FNDB" button on the
MiKTeX Options app "General" tab.


Nitty gritty details (developers):

Package writers should refer to the web page

http://www.ctan.org/tds-guidelines.html

for details of the file structure we assume. Note that the ZIP file
does _not_ contain the texmf/ directory itself; it is made "at the
texmf/ level".


Robin Fairbairns

For the CTAN team
.



Relevant Pages

  • Re: texlive and fedora
    ... the installation. ... X may be a TeX user, but with current package building systems it is often difficult to track down and fix build problems. ... The main purpose for me is to ensure that *X users can easily get the same versions of LaTeX packages as the MiKTeX on Windows users -- in practice I only install the MiKTeX version when a problem occurs. ...
    (comp.text.tex)
  • Re: Suggestion for Package or Class
    ... and then assume a TDS from there. ... What I am looking for is a package distribution that assumes ... directories like tex, fonts, metafont, ... ...
    (comp.text.tex)
  • Re: cant build teTeX port in FreeBSD 8.2 amd64
    ... If you've got the full teTeX installation, ... tds stands for Tex Directory Structure. ... tree should be organised. ...
    (freebsd-questions)
  • Re: I need help with TeX administration on Debian Sarge
    ... I have books and I am searching the Web. ... >> a package that is supposed to do a thing that I want, ... >> the TeX package, newsletr, into tetex the Debian way. ...
    (Debian-User)
  • Re: font families in plain tex
    ... Where did I say I'm doing this cose is better than using a package such ... because I don't fully understand yet tex code. ... distro's latex folder, and the tex world in general. ...
    (comp.text.tex)