SISSA Computing FAQ: about LATEX

It sometimes happens that you need a new version of some macro package or font; the correct approach is to create a private installation of (La)TeX which includes the new stuff you need.

There are two options: the TeX Live package manager or the manual mode

To use the TeX Live package manager, you have to load the texlive module first

Before using tlmgr in user mode for the first time, you have to set up the user tree with the init-usertree action:

tlmgr init-usertree

This command creates a directory named texmf in your home directory.

Then, you have to use the install action: it checks if the package and all dependencies are already installed in the system installation. If this is not the case, it installs the package and all dependencies into the user tree (~/texmf).

tlmgr --user-mode install pkg

Use an updated version of TeX Live

To use an updated version of Tex Live, create missing backup folder in your user tree :

mkdir -p ~texmf/tlpkg/backups

Update the repository:

tlmgr --usermode option repository ctan

and finally update all your Tex packages:

tlmgr --usermode update --all

Example

Load texlive module:

$ module load texlive

Compile a tex file:

$ latex example.tex
...

! LaTeX Error: File `memorygraphs.sty' not found.

Type X to quit or <RETURN> to proceed

Search which package contains memorygraphs.sty file:

$ tlmgr search --global --all memorygraphs.sty
...
memorygraphs:
	texmf-dist/tex/latex/memorygraphs/memorygraphs.sty

If it is the first time you use tlmgr, set up the user tree with the command tlmgr init-usertree

$ tlmgr init-usertree

You need to install the package memorygraphs, using the command tlmgr –user-mode install memorygraphs

$ tlmgr --user-mode install memorygraphs
...
tlmgr: package repository http://ctan.mirror.garr.it/mirrors/CTAN/systems/texlive/tlnet (verified)
[1/1, ??:??/??:??] install: memorygraphs [189k]
running mktexlsr ...
done running mktexlsr.
tlmgr: package log updated: /u/j/janedoe/texmf/web2c/tlmgr.log

Create in your home directory a subdirectory named texmf, using the following command:

mkdir ~/texmf

Install your new package (or whatever) in a directory structure like this:

File extensionDirectoryDescription
.sty, .cls or .fd~/texmf/tex/latex/<package_name>/Style file, Document class file or Font Definition files
.mf~/texmf/fonts/source/public/<font_name>/METAFONT outline
.tfm~/texmf/fonts/tfm/public/<font_name>/TeX Font Metrics for METAFONT and Type 1 fonts
.vf~/texmf/fonts/vf/public/<font_name>/TeX virtual fonts
.afm~/texmf/fonts/afm/public/<font_name>/Adobe Font Metrics for Type 1 fonts
.pfb~/texmf/fonts/type1/public/<font_name>/PostScript Type 1 outline
.ttf~/texmf/fonts/truetype/public/<font_name>/TrueType font
.otf~/texmf/fonts/opentype/public/<font_name>/OpenType font
.bst~/texmf/bibtex/bst/<package_name>/BibTeX style

where:

  • <package_name> refers to the name of macro package you are installing. (p.e. beamer)
  • <font_name> refers to the name of font you are installing (p.e gothic)

and generate an index of that tree

mktexlsr ~/texmf

You can use this approach for updates to packages installed in the SISSA workstations, as well as for installing new versions of things.

Reference

This website uses cookies for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information