Because of a couple version conflicts in .sty files, for xelatex to work correctly, xetex must set the following in /etc/texmf/web2c/texmf.cnf TEXINPUTS.xelatex = .;$TEXMF/tex/{xelatex,latex,generic,}// TEXINPUTS.xetex = .;$TEXMF/tex/{plain,generic,}// and in fact it soes so. However, if after this for some reason we reinstall tetex (for example, because of a version upgrade), we end up with this in /etc/texmf/web2c/texmf.cnf: TEXINPUTS.xelatex = .;$TEXMF/tex/{latex,generic,}// TEXINPUTS.xetex = .;$TEXMF/tex/{plain,generic,}// and xelatex no longer works correctly (failure looks like this): ! Undefined control sequence. \define@choicekey [zf]{preparse}{Renderer}{AAT,ICU}{% Fixing this requires either a reinstall of xetex or editing /etc/texmf/web2c/texmf.cnf by hand to fix it. This seems to be independent of tetex versions; at least, for tetex-3.0_p1-r3/r4
You are correct. Unfortunately when you reinstall tetex you need to reinstall xetex afterwards. It is as simple as that. Longer term the plan is to move to texlive and get the xetex from there, since, as from TeXLive 2007 xetex is a full part and we should be using that.