Here is my code:
% foo.tex
\documentclass{article}
\usepackage{fontawesome}
\begin{document}
\faAdjust
\end{document}
I have installed basictex on Mac, so compiling the above document would fail with this expected error:
$ pdflatex foo.tex
...
! LaTeX Error: File `fontawesome.sty' not found.
...
Now I am trying to setup my own personal user-tree at an arbitrary location and compile this document. Here is what I tried.
rm -rf texmf texmf-var ~/Library/texlive # Cleanup remnants of previous trials
TEXMFHOME=texmf tlmgr init-usertree
TEXMFHOME=texmf tlmgr --usermode install fontawesome
This installs fontawesome into texmf directory but it also tries to execute updmap which fails with this error:
$ TEXMFHOME=texmf tlmgr --usermode install fontawesome
tlmgr: package repository http://ctan.mirror.ac.za/systems/texlive/tlnet (not verified: gpg unavailable)
[1/1, ??:??/??:??] install: fontawesome [270k]
running mktexlsr ...
done running mktexlsr.
running updmap ...
tlmgr: updmap failed (status 1), output:
updmap [ERROR]: Either -sys or -user mode is required.
updmap [ERROR]: In nearly all cases you should use updmap -sys.
updmap [ERROR]: For special cases see http://tug.org/texlive/scripts-sys-user.html
tlmgr: package log updated: texmf/web2c/tlmgr.log
tlmgr: An error has occurred. See above messages. Exiting.
So I now ran updmap manually.
TEXMFVAR=texmf-var updmap-user
This successfully generates the map files in texmf-var directory. At this stage this is how the texmf and texmf-var folders look like:
$ find texmf -type f
texmf/tex/latex/fontawesome/ufontawesomethree.fd
texmf/tex/latex/fontawesome/ufontawesometwo.fd
texmf/tex/latex/fontawesome/ufontawesomeone.fd
texmf/tex/latex/fontawesome/fontawesomesymbols-generic.tex
texmf/tex/latex/fontawesome/fontawesome.sty
texmf/tex/latex/fontawesome/fontawesomesymbols-pdftex.tex
texmf/tex/latex/fontawesome/fontawesomesymbols-xeluatex.tex
texmf/web2c/tlmgr.log
texmf/web2c/updmap.cfg
texmf/fonts/tfm/public/fontawesome/FontAwesome--fontawesomeone.tfm
texmf/fonts/tfm/public/fontawesome/FontAwesome--fontawesomethree.tfm
texmf/fonts/tfm/public/fontawesome/FontAwesome--fontawesometwo.tfm
texmf/fonts/opentype/public/fontawesome/FontAwesome.otf
texmf/fonts/type1/public/fontawesome/FontAwesome.pfb
texmf/fonts/enc/dvips/fontawesome/fontawesomeone.enc
texmf/fonts/enc/dvips/fontawesome/fontawesomethree.enc
texmf/fonts/enc/dvips/fontawesome/fontawesometwo.enc
texmf/fonts/map/dvips/fontawesome/fontawesome.map
texmf/tlpkg/tlpobj/fontawesome.tlpobj
texmf/tlpkg/texlive.tlpdb
$ find texmf-var -type f
texmf-var/web2c/updmap.log
texmf-var/fonts/map/pdftex/updmap/pdftex_dl14.map
texmf-var/fonts/map/pdftex/updmap/pdftex_ndl14.map
texmf-var/fonts/map/dvipdfmx/updmap/kanjix.map
texmf-var/fonts/map/dvips/updmap/ps2pk.map
texmf-var/fonts/map/dvips/updmap/download35.map
texmf-var/fonts/map/dvips/updmap/psfonts_t1.map
texmf-var/fonts/map/dvips/updmap/psfonts_pk.map
texmf-var/fonts/map/dvips/updmap/builtin35.map
Now I try to compile my pdflatex again but it fails:
$ TEXMFHOME=texmf TEXMFVAR=texmf-var pdflatex foo.tex
This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018) (preloaded format=pdflatex)
restricted \write18 enabled.
entering extended mode
(./foo.tex
LaTeX2e <2018-04-01> patch level 2
Babel <3.18> and hyphenation patterns for 22 language(s) loaded.
(/usr/local/texlive/2018basic/texmf-dist/tex/latex/base/article.cls
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
(/usr/local/texlive/2018basic/texmf-dist/tex/latex/base/size10.clo))
(texmf/tex/latex/fontawesome/fontawesome.sty
(/usr/local/texlive/2018basic/texmf-dist/tex/generic/ifxetex/ifxetex.sty)
(/usr/local/texlive/2018basic/texmf-dist/tex/generic/oberdiek/ifluatex.sty)
(texmf/tex/latex/fontawesome/fontawesomesymbols-generic.tex)
(texmf/tex/latex/fontawesome/fontawesomesymbols-pdftex.tex)) (./foo.aux)
(texmf/tex/latex/fontawesome/ufontawesomeone.fd) [1{texmf-var/fonts/map/pdftex/u
pdmap/pdftex.map}] (./foo.aux)
kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 FontAwesome--fontawesomeone
mktexpk: don't know how to create bitmap font for FontAwesome--fontawesomeone.
mktexpk: perhaps FontAwesome--fontawesomeone is missing from the map file.
kpathsea: Appending font creation commands to missfont.log.
)
!pdfTeX error: pdflatex (file FontAwesome--fontawesomeone): Font FontAwesome--f
ontawesomeone at 600 not found
==> Fatal error occurred, no output PDF file produced!
How can I compile this file with custom TEXMFHOME and TEXMFVAR paths?
texlive-fulltoo on a different system where everything works fine. In facttexlive-fullis not necessary to resolve this. Merely installing the package with--usermodebut without customTEXMFHOMEandTEXMFVARor installing it without--usermodeoption is sufficient to resolve this. It is only when I use--usemode, customTEXMFHOME, and customTEXMFVARtogether that I have this issue and I want to understand the cause of this issue. – Lone Learner Sep 04 '18 at 15:13