blob: de1b8459b0358ec1643cabc18685427a8de05b6d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
|
#!/bin/bash
#
# Utility to update Gentoo TeXLive distribution configuration files
#
echo "Configuring TeXLive ..."
PATH=/bin:/usr/bin
# Fix for all those with altered umask for root
umask 022
# Make sure we have a correct environment, bug #30432
# The list of env. vars is taken from the INSTALL file
for texvar in AFMFONTS BIBINPUTS BSTINPUTS DVILJFONTS DVIPSFONTS \
DVIPSHEADERS GFFONTS GLYPHFONTS INDEXSTYLE MFBASES MFINPUTS \
MFPOOL MFTINPUTS MPINPUTS MPMEMS MPPOOL MPSUPPORT OCPINPUTS \
OFMFONTS OPLFONTS OTPINPUTS OVFFONTS OVPFONTS PKFONTS PSHEADERS \
T1FONTS T1INPUTS TEXBIB TEXCONFIG TEXDOCS TEXFONTMAPS TEXFONTS \
TEXFORMATS TEXINDEXSTYLE TEXINPUTS TEXMFCNF TEXMFDBS TEXMFINI \
TEXPICTS TEXPKS TEXPOOL TEXPSHEADERS TEXSOURCES TFMFONTS TRFONTS \
VFFONTS XDVIFONTS XDVIVFS ; do
if [ "${!texvar}" ]; then
if ! $(echo ${!texvar} | grep '^:\|::\|:$' &>/dev/null) ; then
export ${texvar}="${!texvar}:"
fi
fi
done
if [ "$TEXINPUTS" ]; then
if $(echo ${TEXINPUTS} | grep '/usr/share/texmf' &>/dev/null) ; then
export TEXINPUTS=$(echo ${TEXINPUTS} | sed -e 's|/usr/share/texmf/*:\?||g')
elif $(echo ${TEXINPUTS} | grep '/var/lib/texmf' &>/dev/null) ; then
export TEXINPUTS=$(echo ${TEXINPUTS} | sed -e 's|/var/lib/texmf/*:\?||g')
fi
fi
MKTEMP_COMMAND="mktemp"
DIFF_COMMAND="cmp -s"
TEMP_FILE="`${MKTEMP_COMMAND}`"
if [ -z "${TEMP_FILE}" ]; then
exit
fi
# check whether config files for fmtutil and updmap have changed
STATUS_FMTUTIL="0"
STATUS_UPDMAP="0"
if [ -d /etc/texmf/texmf.d ]; then
echo "Generating /etc/texmf/web2c/texmf.cnf from /etc/texmf/texmf.d ..."
cat /etc/texmf/texmf.d/*.cnf > "/etc/texmf/web2c/texmf.cnf"
fi
if [ -d /etc/texmf/fmtutil.d ]; then
echo "Generating /etc/texmf/web2c/fmtutil.cnf from /etc/texmf/fmtutil.d ..."
if [ -f /etc/texmf/web2c/fmtutil.cnf ]; then
cp -f /etc/texmf/web2c/fmtutil.cnf ${TEMP_FILE}
else
touch ${TEMP_FILE}
fi
cat /etc/texmf/fmtutil.d/*.cnf > "/etc/texmf/web2c/fmtutil.cnf"
${DIFF_COMMAND} /etc/texmf/web2c/fmtutil.cnf ${TEMP_FILE}
STATUS_FMTUTIL="${STATUS_FMTUTIL}$?"
else
# if no regeneration took place:
# always regenerate the formats to be on the safe side
STATUS_FMTUTIL="${STATUS_FMTUTIL}3"
fi
if [ -d /etc/texmf/updmap.d ]; then
if [ -f /etc/texmf/web2c/updmap.cfg ]; then
cp -f /etc/texmf/web2c/updmap.cfg ${TEMP_FILE}
else
touch ${TEMP_FILE}
fi
echo "Generating /etc/texmf/web2c/updmap.cfg from /etc/texmf/updmap.d ..."
cat /etc/texmf/updmap.d/*.cfg > "/etc/texmf/web2c/updmap.cfg"
${DIFF_COMMAND} /etc/texmf/web2c/updmap.cfg ${TEMP_FILE}
STATUS_UPDMAP="${STATUS_UPDMAP}$?"
else
# if no regeneration could be done:
# always regenerate the maps to be on the safe side
STATUS_UPDMAP="${STATUS_UPDMAP}3"
fi
echo "Generating ls-R files"
mktexlsr &>/dev/null
# Generate language.dat file, from texlive install-pkg.sh
X=`kpsewhich language.dat`
Z=`dirname $X`
if [ -n "$X" -a -f "$Z/language.dat" -a -f "$Z/language.us" ] ; then
echo "Generating language.dat file"
# Save the old one, we will check if it has changed
cp -f "$Z/language.dat" "${TEMP_FILE}"
cat "$Z/language.us" > "$Z/language.dat"
for i in /etc/texmf/language.dat.d/language.*.dat; do
[ -f "$i" ] && cat "$i" >> "$Z/language.dat"
done
${DIFF_COMMAND} "$Z/language.dat" "${TEMP_FILE}"
STATUS_FMTUTIL="${STATUS_FMTUTIL}$?"
fi
# Generate language.def file.
if [ -n "$X" -a -f "$Z/language.def" -a -f "$Z/language.us.def" ] ; then
echo "Generating language.def file"
# Save the old one, we will check if it has changed
cp -f "$Z/language.def" "${TEMP_FILE}"
cat "$Z/language.us.def" > "$Z/language.def"
for i in /etc/texmf/language.def.d/language.*.def; do
[ -f "$i" ] && cat "$i" >> "$Z/language.def"
done
cat << EOF >> "$Z/language.def"
%%% No changes may be made beyond this point.
\uselanguage {USenglish} %%% This MUST be the last line of the file.
EOF
${DIFF_COMMAND} "$Z/language.def" "${TEMP_FILE}"
STATUS_FMTUTIL="${STATUS_FMTUTIL}$?"
fi
# Generate language.dat.lua file.
if [ -n "$X" -a -f "$Z/language.dat.lua" -a -f "$Z/language.us.lua" ] ; then
echo "Generating language.dat.lua file"
# Save the old one, we will check if it has changed
cp -f "$Z/language.dat.lua" "${TEMP_FILE}"
cat "$Z/language.us.lua" > "$Z/language.dat.lua"
for i in /etc/texmf/language.dat.lua.d/language.*.dat.lua; do
[ -f "$i" ] && cat "$i" >> "$Z/language.dat.lua"
done
printf "}\n" >> "$Z/language.dat.lua"
${DIFF_COMMAND} "$Z/language.dat.lua" "${TEMP_FILE}"
STATUS_FMTUTIL="${STATUS_FMTUTIL}$?"
fi
if [ "${STATUS_FMTUTIL}" -ne 0 ] ; then
echo "Generating format files ..."
fmtutil-sys --all &>/dev/null
else
echo "Skipping format files, since they are unchanged"
fi
if [ "${STATUS_UPDMAP}" -ne 0 ] ; then
echo "Generating font maps..."
updmap-sys &>/dev/null
else
echo "Skipping font maps, since they are unchanged"
fi
rm -f ${TEMP_FILE}
echo
echo "Use 'texconfig font ro'(rw) to disable (enable) font generation for users"
echo
|