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?

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

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.

  • 2
    no, texmf-local is always at /usr/local/texlive/texmf-local. It is before the year wise distributions – user2478 Sep 9 '11 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 '11 at 18:28
  • 3
    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 '11 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 '11 at 8:15
  • @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 '11 at 13:13

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

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.