Hello community,
here is the log from the commit of package texlive-filesystem for
openSUSE:Factory checked in at 2017-07-17 09:04:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/texlive-filesystem (Old)
and /work/SRC/openSUSE:Factory/.texlive-filesystem.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "texlive-filesystem"
Mon Jul 17 09:04:14 2017 rev:20 rq:509705 version:unknown
Changes:
--------
--- /work/SRC/openSUSE:Factory/texlive-filesystem/texlive-filesystem.changes
2017-06-25 19:20:56.262410307 +0200
+++
/work/SRC/openSUSE:Factory/.texlive-filesystem.new/texlive-filesystem.changes
2017-07-17 09:04:18.177865957 +0200
@@ -1,0 +2,12 @@
+Wed Jul 12 07:41:21 UTC 2017 - [email protected]
+
+- Generate/remove specific formats at installation/erease of a
+ package (boo#1046277)
+
+-------------------------------------------------------------------
+Tue Jul 11 12:00:53 UTC 2017 - [email protected]
+
+- Modify update.texlive script in such a way that we detect old
+ format files and enforce a refresh based on hyphen (boo#1046277)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ update.texlive ++++++
--- /var/tmp/diff_new_pack.LSbmbo/_old 2017-07-17 09:04:20.281569704 +0200
+++ /var/tmp/diff_new_pack.LSbmbo/_new 2017-07-17 09:04:20.281569704 +0200
@@ -108,6 +108,14 @@
test -L "$TEXMFCNFFILE" && TEXMFCNFFILE="$(readlink -f "$TEXMFCNFFILE" 2>
/dev/null)"
#
+# Configuration broken
+#
+if test ! -e "$TEXMFCNFFILE" ; then
+ echo "${0##*/}: Configuration of texlive installation not found." 1>&2
+ exit 0
+fi
+
+#
# Language and hyphenation setup
#
cnf_ldat=$(TEXMF=$TEXMFSYSCONFIG kpsewhich language.dat 2> /dev/null)
@@ -137,6 +145,57 @@
cnf_llua=$(TEXMF=$TEXMFSYSCONFIG kpsewhich language.dat.lua 2> /dev/null)
fi
+#
+# Do some sanity checks as well
+#
+for hyp in ${TEXMFDIST}/tex/generic/config/language.splits/hyphen*
+do
+ test -e "$hyp" || continue
+ suffix=${hyp##*/}
+ suffix=${suffix#*.}
+ case "$suffix" in
+ dat.lua)
+ test "$hyp" -nt "$cnf_llua" ;;
+ dat)
+ test "$hyp" -nt "$cnf_ldat" ;;
+ def)
+ test "$hyp" -nt "$cnf_ldef" ;;
+ esac && {
+ > /var/run/texlive/run-hyphen
+ > /var/run/texlive/run-fmtutil.language
+ }
+done
+unset hyp suffix
+
+init=false
+while read format engine language rest
+do
+ line=($rest)
+ last=${line[-1]}
+ inifile=${last#\*}
+ case "$engine" in
+ mpost) fmt="$format.mem"; kpse=mpost; engine=metapost ;;
+ mf|mfw|mf-nowin) fmt="$format.base"; kpse=mf; engine=metafont ;;
+ *) fmt="$format.fmt"; kpse=tex; engine=$engine ;;
+ esac
+ inifile=$(kpsewhich -progname=$format -format=$kpse $inifile 2>/dev/null)
|| continue
+ fmt="$(find ${WEB2C}/$engine -name $fmt)"
+ if test -z "$fmt"
+ then
+# init=true
+# > /var/run/texlive/run-fmtutil
+ continue
+ fi
+ test "$fmt" -nt "$TEXMFCNFFILE" || init=true
+ test "$fmt" -nt "$inifile" && continue
+ case "$engine" in
+ mpost) fmtutil-sys --byfmt "$egine" < /dev/null 1>&4 2>&4 ;;
+ mf|mfw|mf-nowin) fmtutil-sys --byfmt "$egine" < /dev/null 1>&4 2>&4 ;;
+ *) > /var/run/texlive/run-fmtutil.refresh
+ esac
+done < <(sed -r "/^(\#.*|[[:blank:]]*)$/d" "$cnf_fmtu")
+unset format engine language rest line last inifile fmt kpse engine
+
if test -n "${cnf_ldat}" -a -n "${cnf_ldef}" -a -n "${cnf_llua}" ; then
for cfg in ${cnf_ldat} ${cnf_ldef} ${cnf_llua} ; do
test -s ${OLDMD5DIR}${cfg} || continue
@@ -208,19 +267,16 @@
omd5ldef=0
omd5llua=0
if test -e ${md5_ldat} -a -r ${md5_ldat} ; then
- test ${md5_ldat} -nt ${cnf_ldat} && md5_nt_ldat="yes"
set -- $(cat ${md5_ldat}) ; omd5ldat="$1"
elif test ! -d ${md5_ldat%/*} ; then
mkdir -p ${md5_ldat%/*}
fi
if test -e ${md5_ldef} -a -r ${md5_ldef} ; then
- test ${md5_ldef} -nt ${cnf_ldef} && md5_nt_ldef="yes"
set -- $(cat ${md5_ldef}) ; omd5ldef="$1"
elif test ! -d ${md5_ldef%/*} ; then
mkdir -p ${md5_ldef%/*}
fi
if test -e ${md5_llua} -a -r ${md5_llua} ; then
- test ${md5_llua} -nt ${cnf_llua} && md5_nt_llua="yes"
set -- $(cat ${md5_llua}) ; omd5llua="$1"
elif test ! -d ${md5_llua%/*} ; then
mkdir -p ${md5_llua%/*}
@@ -229,18 +285,31 @@
#
# Create new formats for new language.dat and/or language.def if needed
#
- if test $omd5ldat = 0 -o \( $md5ldat != $omd5ldat -o "$md5_nt_ldat" !=
"yes" \)
- then
- > /var/run/texlive/run-fmtutil.language
- fi
- if test $omd5ldef = 0 -o \( $md5ldef != $omd5ldef -o "$md5_nt_ldef" !=
"yes" \)
- then
- > /var/run/texlive/run-fmtutil.language
- fi
- if test $omd5llua = 0 -o \( $md5llua != $omd5llua -o "$md5_nt_llua" !=
"yes" \)
- then
- > /var/run/texlive/run-fmtutil.language
- fi
+ while read format engine language rest
+ do
+ line=($rest)
+ last=${line[-1]}
+ inifile=${last#\*}
+ case "$engine" in
+ mpost) continue ;;
+ mf|mfw|mf-nowin) continue ;;
+ *) fmt="$format.fmt"; kpse=tex; engine=$engine ;;
+ esac
+ inifile=$(kpsewhich -progname=$format -format=$kpse $inifile
2>/dev/null) || continue
+ fmt="$(find ${WEB2C}/$engine -name $fmt)"
+ test -z "$fmt" && continue
+ for lang in ${language//,/ }
+ do
+ for cfg in ${cnf_ldat} ${cnf_ldef} ${cnf_llua}
+ do
+ test $lang = "${cfg##*/}" || continue
+ test $fmt -nt $cfg && continue
+ > /var/run/texlive/run-fmtutil.language
+ break 3
+ done
+ done
+ done < <(sed -r "/^(\#.*|[[:blank:]]*)$/d" "$cnf_fmtu")
+ unset format engine language lang rest line last inifile fmt kpse engine
fi
tcfmgr ()
@@ -347,13 +416,19 @@
test $VERBOSE = true && echo
((rc != 0)) || rm -f /var/run/texlive/run-fmtutil.refresh
;;
- *)
+ "")
test $VERBOSE = true && echo -en "\r[ ]Updating TeX formats."
fmtutil-sys ${option:+$option} --missing < /dev/null 1>&4 2>&4
let rc+=$?
test $VERBOSE = true && echo
((rc != 0)) || rm -f /var/run/texlive/run-fmtutil
;;
+ *)
+ test $VERBOSE = true && echo -en "\r[ ]Updating TeX format
${run#*fmtutil.}."
+ fmtutil-sys ${option:+$option} --byfmt "${run#*fmtutil.}" < /dev/null
1>&4 2>&4
+ let rc+=$?
+ test $VERBOSE = true && echo
+ ((rc != 0)) || rm -f /var/run/texlive/run-fmtutil
esac
done
@@ -451,22 +526,6 @@
# of various programs.
#
type -p texconfig-sys &> /dev/null || exit 0
-
-#
-# Configuration broken
-#
-if test ! -e "$TEXMFCNFFILE" ; then
- echo "${0##*/}: Configuration of texlive installation not found." 1>&2
- exit 0
-fi
-
-init=false
-for f in $(find ${WEB2C}/ -name '*.fmt' -name '*.mem' -o -name '*.base') ; do
- test -e "$f" || continue
- test -L "$f" && continue
- test "$TEXMFCNFFILE" -nt "$f" && init=true
- test -s "$f" && touch "$f"
-done
if test $init = true ; then
test $VERBOSE = true && echo -en "\r[ ]Initialize TeX configuration and
font mappings."
updmap-sys --cnffile $cnf_umap --syncwithtrees < /dev/null 1>&4 2>&4