39

Could someone please explain to me what the purpose of the four different texmf folders are in Mac? E.g. there is:

  1. /usr/local/texlive/2011/texmf
  2. /usr/local/texlive/2011/texmf-config
  3. /usr/local/texlive/2011/texmf-dist
  4. /usr/local/texlive/2011/texmf-var

Also, when installing fonts and packages, do I place them in /texmf or /texmf-dist?

2
  • 6
    You can find all search pathes by kpsexpand '$TEXMF' and only the local search path by kpsexpand '$TEXMFHOME' Sep 9, 2011 at 16:58
  • 6
    Refer to Section 2.3 Overview of the predefined texmf trees of the TeX Live documentation. Sep 9, 2011 at 17:00

2 Answers 2

26

OK, given the helpful comments to your query, here's a discussion of how the various texmf folders map into the "official" nomenclature of the TeXLive tree (set in all-caps):

  • .../texmf: TEXMFMAIN -- "The tree which holds vital parts of the system such as configuration files, helper scripts, and program documentation."
  • .../texmf-dist: TEXMFDIST -- "The tree which holds the main set of macro packages, fonts, etc."
  • .../texmf-var: TEXMFSYSVAR -- "The (site-wide) tree used by texconfig-sys, updmap-sys and fmtutil-sys, and also by tlmgr, to store (cached) runtime data such as format files and generated map files."
  • .../texmf-config: TEXMFSYSCONFIG -- "The (site-wide) tree used by the utilities texconfig-sys, updmap-sys, and fmtutil-sys to store modified configuration data."

Separately, if you have a LOCALTEXMF directory tree, TeXLive expects to find it at /usr/local/texlive/texmf-local, unless you edit the configuration file /usr/local/texlive/year /texmf.cnf and provide an alternate location. If you do so, be sure to run texhash to update the filename database.

5
  • 2
    no, texmf-local is always at /usr/local/texlive/texmf-local. It is before the year wise distributions
    – user2478
    Sep 9, 2011 at 18:05
  • @Herbert: Thanks for catching this mistake; I've removed the year part from the final paragraph of my answer.
    – Mico
    Sep 9, 2011 at 18:28
  • 4
    Also, /usr/local/texlive/texmf-local is for system-wide local additions, not individual user local additions, which are normally placed in TEXMFHOME (on Linux systems, standardly /home/<user>/texmf; on a Mac /Users/Library/texmf). If you have a single user system, there's not much advantage to installing local packages in /usr/local/texlive/texmf-local, I think.
    – Alan Munn
    Sep 9, 2011 at 21:33
  • 1
    @Alan Munn: files in /home/<user>/texmf are searched recursively which is slower than using the ls-R file of /usr/local/texlive/texmf-local
    – user2478
    Sep 10, 2011 at 8:15
  • 1
    @Herbert Surely you'd have to have a lot of stuff in there for that difference to be noticeable? (And you can run texhash on the local dir too, right?)
    – Alan Munn
    Sep 10, 2011 at 13:13
11

the TeX Directory Structure (TDS) is documented in http://tug.org/tds/tds.html#Top_002dlevel-directories. That is the structure below texmf-dist and also below .../texmf-local/ and ~/texmf/.

The directories for TeXLive are documented in http://tug.org/texlive/doc/texlive-en/texlive-en.html#x1-100002.2

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .