Introduction

'/(






)

Introduction

Contents
2The Role of the TDS
*Conventions


CTeX is a powerful, flexible typesetting system used by thousands ofEpeople around the world. It is extremely portable and runs on dozens;of operating systems. One unfortunate consequence of TeX's7flexibility is that there is no single ``right'' way toAinstall it. This has resulted in hundreds of different installedconfigurations.

>The primary purpose of this document is to describe a standard?TeX Directory Structure (TDS) for macros, fonts, and other suchCimplementation-independent TeX files. As a matter of practicality,Cthis document also suggests ways to incorporate the rest of the TeXCfiles into a single structure. In the not-so-long run a consistentDdirectory structure will make it much easier to install and maintainATeX. We hope that administrators and developers of both free and;commercial implementations of TeX will adopt this standard.7It has been designed to work on all modern systems. In(particular, this Technical Working Group/(TWG) believes it is usable under Unix, MS-DOS,OS/2, MacOS, and VMS.

DThis document is intended both for the TeX system administrator at aCsite and for people preparing TeX distributions---everything from aFcomplete runnable system to a single macro or style file. It will also@help TeX users find their way around systems organized this way.8

The Role of the TDS



LThe role of the TDS is to stabilize the organization of TeX-related softwareFpackages that are installed and in use, possibly on multiple platformssimultaneously. 

FAt first glance, it may seem that the CTAN archives fulfill (at least)Kpart of this role, but this is not the case. The role of the CTAN archives7is to simplify archiving and retrieval of)packages, not their installation and use.

BIn fact, the roles of the TDS and CTAN are frequently in conflict,Das you will discover as you read this document. For distribution inACTAN, it's useful to combine many different types of files into a@single unit; for use, it is traditional to segregate files (even@similar files) from a single package into separate, occasionallydistant, directories.