Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

CTAN support of simple "installation" files

1 view
Skip to first unread message

Robin Fairbairns

unread,
Apr 22, 2008, 3:59:26 AM4/22/08
to ctan...@dante.de
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

Scott Pakin

unread,
Apr 23, 2008, 7:52:19 PM4/23/08
to
Robin Fairbairns wrote:
> 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.

Does that mean that in addition to including foo.ins and foo.dtx in an
upload we package writers should also include a foo.tds.zip containing,
e.g., texmf/tex/latex/foo/foo.sty?

-- Scott

Will Robertson

unread,
Apr 23, 2008, 10:58:03 PM4/23/08
to
On 2008-04-24 09:22:19 +0930, Scott Pakin <scot...@pakin.org> said:
>
> Does that mean that in addition to including foo.ins and foo.dtx in an
> upload we package writers should also include a foo.tds.zip containing,
> e.g., texmf/tex/latex/foo/foo.sty?

Only if you want to; Robin's link has an example
(<http://www.ctan.org/tds-guidelines.html>):

> Authors who do not wish to experiment should continue what they are
> doing. We ask that authors wishing to try TDS packaging do this.
> • As usual, upload a .zip or a .tar.gz bundle of your material. Lay
> the material out in the traditional way.
> • In the top level of your bundle place the file <pkg id>.tds.zip that
> contains the TDS packaging of your materials. We will not install this
> in the regular browsing tree but instead will put it below the install/
> subtree.
>
> Example
> For instance, an author may send us xxx.zip with this layout.
>
> xxx.zip:
> xxx.tds.zip
> +--xxx/
> +--README
> +--xxx.ins
> +--xxx.dtx
> +--xxx.pdf

Hope this helps,
Will

Alexander Grahn

unread,
Apr 24, 2008, 5:20:41 AM4/24/08
to
On 24 Apr., 04:58, Will Robertson <wsp...@gmail.com> wrote:

But it is still not clear whether `xxx.tds.zip' should include the TDS
compliant directory tree with or without the style/class/documentation
files at their final destination.

Alexander

Dominik Waßenhoven

unread,
Apr 24, 2008, 5:55:00 AM4/24/08
to
Alexander Grahn wrote:

> On 24 Apr., 04:58, Will Robertson <wsp...@gmail.com> wrote:
>> For instance, an author may send us xxx.zip with this layout.

>> xxx.zip:
>> xxx.tds.zip
>> +--xxx/
>> +--README
>> +--xxx.ins
>> +--xxx.dtx
>> +--xxx.pdf
>
>

> But it is still not clear whether `xxx.tds.zip' should include the TDS
> compliant directory tree with or without the style/class/documentation
> files at their final destination.

*With* the files, because the tds.zip file should just be unzipped by
the user into the local/user texmf tree without bothering where they
have to go.

Regards,
Dominik.-

--
UK-TeX-FAQ: http://www.tex.ac.uk/cgi-bin/texfaq2html
minimal example: http://www.minimalbeispiel.de/mini-en.html
biblatex styles: http://biblatex.dominik-wassenhoven.de/index-en.shtml

Robin Fairbairns

unread,
Apr 24, 2008, 12:11:59 PM4/24/08
to
In article <67a0djF...@mid.individual.net>,

that's the idea. (remember, i said somewhere that it involves extra
work for the author...)

fwiw, i don't find it too bad -- i did a couple before i announced,
and i did another today ... simply because i wanted a package of mine
that's not in the distribution on my machine.

we're thinking about uploading mechanisms; the catalogue pointers are
in place already.
--
Robin Fairbairns, Cambridge

0 new messages