forked from pool/texlive-specs-c
6d0e7ce24a
OBS-URL: https://build.opensuse.org/package/show/Publishing:TeXLive/texlive-specs-c?expand=0&rev=90
345 lines
12 KiB
Plaintext
345 lines
12 KiB
Plaintext
---
|
||
texmf-dist/scripts/texlive/fmtutil-sys.sh | 1
|
||
texmf-dist/scripts/texlive/fmtutil.pl | 24 ++++++++---
|
||
texmf-dist/scripts/texlive/texconfig-dialog.sh | 14 +++++-
|
||
texmf-dist/scripts/texlive/texconfig-sys.sh | 1
|
||
texmf-dist/scripts/texlive/texconfig.sh | 35 ----------------
|
||
texmf-dist/scripts/texlive/texlinks.sh | 53 ++++++++++++++++---------
|
||
texmf-dist/scripts/texlive/updmap-sys.sh | 1
|
||
texmf-dist/scripts/texlive/updmap.pl | 16 ++++---
|
||
8 files changed, 80 insertions(+), 65 deletions(-)
|
||
|
||
--- texmf-dist/scripts/texlive/fmtutil-sys.sh
|
||
+++ texmf-dist/scripts/texlive/fmtutil-sys.sh 2018-05-11 10:51:14.298775065 +0000
|
||
@@ -22,4 +22,5 @@ PATH="$mydir:$PATH"; export PATH
|
||
# hack around a bug in zsh:
|
||
test -n "${ZSH_VERSION+set}" && alias -g '${1+"$@"}'='"$@"'
|
||
|
||
+umask 022
|
||
exec fmtutil --sys ${1+"$@"}
|
||
--- texmf-dist/scripts/texlive/fmtutil.pl
|
||
+++ texmf-dist/scripts/texlive/fmtutil.pl 2018-05-11 10:51:51.546080553 +0000
|
||
@@ -10,16 +10,16 @@
|
||
# History:
|
||
# Original shell script (C) 2001 Thomas Esser, public domain
|
||
|
||
-my $TEXMFROOT;
|
||
+my $TEXMFDIST;
|
||
|
||
BEGIN {
|
||
$^W = 1;
|
||
- $TEXMFROOT = `kpsewhich -var-value=TEXMFROOT`;
|
||
+ $TEXMFDIST = `kpsewhich -var-value=TEXMFDIST`;
|
||
if ($?) {
|
||
- die "$0: kpsewhich -var-value=TEXMFROOT failed, aborting early.\n";
|
||
+ die "$0: kpsewhich -var-value=TEXMFDIST failed, aborting early.\n";
|
||
}
|
||
- chomp($TEXMFROOT);
|
||
- unshift(@INC, "$TEXMFROOT/tlpkg", "$TEXMFROOT/texmf-dist/scripts/texlive");
|
||
+ chomp($TEXMFDIST);
|
||
+ unshift(@INC, "$TEXMFDIST/tlpkg", "$TEXMFDIST/scripts/texlive");
|
||
require "mktexlsr.pl";
|
||
TeX::Update->import();
|
||
}
|
||
@@ -70,7 +70,7 @@ TeXLive::TLUtils::prepend_own_path();
|
||
# this function checks by itself whether it is running on windows or not
|
||
reset_root_home();
|
||
|
||
-chomp(our $TEXMFDIST = `kpsewhich --var-value=TEXMFDIST`);
|
||
+chomp(our $TEXMFROOT = `kpsewhich --var-value=TEXMFROOT`);
|
||
chomp(our $TEXMFVAR = `kpsewhich -var-value=TEXMFVAR`);
|
||
chomp(our $TEXMFSYSVAR = `kpsewhich -var-value=TEXMFSYSVAR`);
|
||
chomp(our $TEXMFCONFIG = `kpsewhich -var-value=TEXMFCONFIG`);
|
||
@@ -361,7 +361,14 @@ sub callback_build_formats {
|
||
TeXLive::TLWinGoo::maybe_make_ro ($tmpdir);
|
||
}
|
||
} else {
|
||
+ my ($uid, $gid);
|
||
$tmpdir = File::Temp::tempdir(CLEANUP => 1);
|
||
+ if ($> == 0 && ($uid=getpwnam("nobody")) && ($gid=getgrnam("mktex"))) {
|
||
+ my $cnt = chown $uid, $gid, $tmpdir;
|
||
+ die "could not create directory $tmpdir" if $cnt <= 0;
|
||
+ $cnt = chmod 0770, $tmpdir;
|
||
+ die "could not create directory $tmpdir" if $cnt <= 0;
|
||
+ }
|
||
}
|
||
# set up destination directory
|
||
$opts{'fmtdir'} ||= "$texmfvar/web2c";
|
||
@@ -597,6 +604,7 @@ sub rebuild_one_format {
|
||
# check for existence of ini file before doing anything else
|
||
if (system("kpsewhich -progname=$fmt -format=$kpsefmt $inifile >$nul 2>&1") != 0) {
|
||
# we didn't find the ini file, skip
|
||
+ return $FMT_NOTAVAIL if (!$opts{'no-error-if-no-engine'});
|
||
print_deferred_warning("inifile $inifile for $fmt/$eng not found.\n");
|
||
# The original script just skipped it but in TeX Live we expect that
|
||
# all activated formats are also buildable, thus return failure.
|
||
@@ -656,11 +664,15 @@ sub rebuild_one_format {
|
||
",$opts{'no-error-if-no-engine'}," =~ m/,$eng,/) {
|
||
return $FMT_NOTAVAIL;
|
||
} else {
|
||
+ return $FMT_NOTAVAIL if (!$opts{'no-error-if-no-engine'});
|
||
print_deferred_error("not building $fmt due to missing engine $eng.\n");
|
||
return $FMT_FAILURE;
|
||
}
|
||
}
|
||
|
||
+ if ($ENV{batchmode} and $ENV{batchmode} eq "yes") {
|
||
+ $texargs="\\batchmode \\input $texargs" if $eng eq "tex" || $eng eq "ptex";
|
||
+ }
|
||
my $cmdline = "$eng -ini $tcxflag $recorderswitch $jobswitch "
|
||
. "$prgswitch $texargs";
|
||
print_verbose("running \`$cmdline' ...\n");
|
||
--- texmf-dist/scripts/texlive/texconfig-dialog.sh
|
||
+++ texmf-dist/scripts/texlive/texconfig-dialog.sh 2018-05-03 08:15:39.975645684 +0000
|
||
@@ -157,7 +157,14 @@ termCtl()
|
||
###############################################################################
|
||
menuMain()
|
||
{
|
||
- cat <<-'eof'
|
||
+ rows="$(stty size)"
|
||
+ columns=${rows##* }
|
||
+ rows=${rows%% *}
|
||
+ test -n "$rows" || rows=0
|
||
+ test -n "$columns" || columns=0
|
||
+
|
||
+ if test $rows -lt 24 -a $columns -lt 80 ; then
|
||
+ cat <<-'eof'
|
||
The interactive texconfig utility will be started now. Make sure
|
||
your screen has at least 24 rows and 80 columns. If texconfig
|
||
crashes now, you can still set up your TeX system using the
|
||
@@ -169,8 +176,9 @@ menuMain()
|
||
|
||
More likely these days, you're better off using tlmgr.
|
||
See http://tug.org/texlive/tlmgr.html.
|
||
-eof
|
||
- termCtl readln
|
||
+ eof
|
||
+ termCtl readln
|
||
+ fi
|
||
|
||
while :; do
|
||
logMessage='view logfile'
|
||
--- texmf-dist/scripts/texlive/texconfig-sys.sh
|
||
+++ texmf-dist/scripts/texlive/texconfig-sys.sh 2018-05-03 08:15:39.975645684 +0000
|
||
@@ -30,4 +30,5 @@ TEXMFVAR="$v"
|
||
TEXMFCONFIG="$c"
|
||
export TEXMFVAR TEXMFCONFIG
|
||
|
||
+umask 022
|
||
exec texconfig ${1+"$@"}
|
||
--- texmf-dist/scripts/texlive/texconfig.sh
|
||
+++ texmf-dist/scripts/texlive/texconfig.sh 2009-09-02 12:47:26.000000000 +0000
|
||
@@ -40,7 +40,7 @@ envVars="
|
||
TEXMFDBS TEXMFINI TEXMFSCRIPTS TEXPICTS TEXPKS TEXPOOL TEXPSHEADERS
|
||
TEXSOURCES TFMFONTS TRFONTS TTFONTS VFFONTS WEB2C WEBINPUTS
|
||
"
|
||
-tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/tctmp.$$
|
||
+tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/tctmp.$$.$RANDOM
|
||
needsCleanup=false
|
||
lastUpdatedFile=
|
||
|
||
@@ -997,21 +997,6 @@ For more information about these \`featu
|
||
;;
|
||
|
||
formats)
|
||
- cat >&2 <<EOM
|
||
-texconfig formats is no longer supported, because manual edits of
|
||
-fmtutil.cnf will be overwritten by the new TeX Live package manager,
|
||
-tlmgr, which regenerates that file as needed upon package changes.
|
||
-Thus, to add or remove formats, the recommended method is to use tlmgr
|
||
-to add or remove the appropriate package.
|
||
-
|
||
-If you need to make manual additions, you can edit the file
|
||
-fmtutil-local.cnf under TEXMFLOCAL. Further information with
|
||
-tlmgr --help and at http://tug.org/texlive/tlmgr.html.
|
||
-
|
||
-Exiting.
|
||
-EOM
|
||
- exit 1 # but leave the real code for posterity
|
||
-
|
||
setupTmpDir
|
||
echo "$progname: analyzing old configuration..." >&2
|
||
fmtutil --catcfg > $tmpdir/pre
|
||
@@ -1037,22 +1022,6 @@ EOM
|
||
|
||
# "hyphen FORMAT"
|
||
hyphen)
|
||
- cat >&2 <<EOM
|
||
-texconfig hyphen is no longer supported, because manual edits of
|
||
-language.dat (or language.def) will be overwritten by the new TeX Live
|
||
-package manager, tlmgr, which regenerates those configuration files as
|
||
-needed upon package changes. Thus, to add or remove hyphenation
|
||
-patterns, the recommended method is to use tlmgr to add or remove the
|
||
-appropriate package.
|
||
-
|
||
-If you need to make manual additions, you can edit the files
|
||
-language-local.dat and language-local.def under TEXMFLOCAL. Further
|
||
-information with tlmgr --help and at http://tug.org/texlive/tlmgr.html.
|
||
-
|
||
-Exiting.
|
||
-EOM
|
||
- exit 1 # but leave the real code for posterity
|
||
-
|
||
tcBatchHyphenFormat=$2
|
||
formatsForHyphen=`getFormatsForHyphen`
|
||
formatsForHyphenFmt=`echo "$formatsForHyphen" | myFmt | sed 's@^@ @'`
|
||
@@ -1301,7 +1270,7 @@ Valid PAPER settings:
|
||
;;
|
||
|
||
rehash)
|
||
- mktexlsr
|
||
+ ( unset KPSE_DOT; mktexlsr )
|
||
;;
|
||
|
||
#
|
||
--- texmf-dist/scripts/texlive/texlinks.sh
|
||
+++ texmf-dist/scripts/texlive/texlinks.sh 2018-05-03 08:15:39.979645610 +0000
|
||
@@ -100,7 +100,7 @@ setupTmpDir()
|
||
|
||
trap 'cleanup 1' 1 2 3 7 13 15
|
||
needsCleanup=true
|
||
- (umask 077; mkdir "$tmpdir") \
|
||
+ (umask 077; mkdir -m 0700 "$tmpdir") \
|
||
|| abort "could not create directory \`$tmpdir'"
|
||
}
|
||
|
||
@@ -108,16 +108,18 @@ setupTmpDir()
|
||
# search a binary along $PATH:
|
||
check_for_binary()
|
||
{
|
||
- testbin=$1
|
||
- set x `echo "$PATH" | sed 's/^:/.:/; s/:$/:./; s/::/:.:/g; s/:/ /g'`; shift
|
||
- for i
|
||
- do
|
||
- if [ -x "$i/$testbin" ]; then
|
||
- echo "$i/$testbin"
|
||
- return 0
|
||
- fi
|
||
- done
|
||
- return 1
|
||
+# testbin=$1
|
||
+# set x `echo "$PATH" | sed 's/^:/.:/; s/:$/:./; s/::/:.:/g; s/:/ /g'`; shift
|
||
+# for i
|
||
+# do
|
||
+# if [ -x "$i/$testbin" ]; then
|
||
+# echo "$i/$testbin"
|
||
+# return 0
|
||
+# fi
|
||
+# done
|
||
+# return 1
|
||
+
|
||
+ type -p $1
|
||
}
|
||
|
||
|
||
@@ -208,8 +210,22 @@ search_symlinkdir()
|
||
upd_symlinkdir()
|
||
{
|
||
search_symlinkdir || return 0
|
||
- for i in `sed 's@ .*@@' cnf_file_ln.$$`; do
|
||
- install_link "$selfautoloc/$i" "$symlinkdir/$i"
|
||
+ set x `cat cnf_file_ln.$$` ; shift
|
||
+ while test $# != 0; do
|
||
+ fmt=$1; ini=$3; shift; shift; shift
|
||
+
|
||
+ # Some broken shells destroy the positional arguments when calling a
|
||
+ # shellfunction. Therefore, we save and restore them "by hand" in the
|
||
+ # main_args_while variable.
|
||
+ main_args_while="$@"
|
||
+
|
||
+ kpsewhich -progname=$fmt -format=tex $ini >/dev/null 2>&1
|
||
+ test $? -ne 0 && continue
|
||
+
|
||
+ install_link "$selfautoloc/$fmt" "$symlinkdir/$fmt"
|
||
+
|
||
+ # restore positional arguments:
|
||
+ set x $main_args_while; shift
|
||
done
|
||
}
|
||
|
||
@@ -274,12 +290,12 @@ main()
|
||
test -f "$cnf_file" || abort "config file \`$cnf' not found"
|
||
|
||
|
||
- tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/texlinks.$$
|
||
+ tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/texlinks.$$.$RANDOM
|
||
setupTmpDir
|
||
cd "$tmpdir" || cleanup 1
|
||
|
||
- sed '/^[ ]*#/d; /^[ ]*$/d' $cnf_file \
|
||
- | awk '{print $1, $2}' > cnf_file_ln.$$
|
||
+ sed '/^[ ]*#/d; /^[ ]*$/d; s%\*%%' $cnf_file \
|
||
+ | awk '{print $1, $2, $NF}' > cnf_file_ln.$$
|
||
|
||
if test -z "$dirs"; then
|
||
if test $multiplatform = true; then
|
||
@@ -300,13 +316,16 @@ main()
|
||
# cnf_file_ln.$$ has lines with "format engine" pairs
|
||
set x `cat cnf_file_ln.$$`; shift
|
||
while test $# != 0; do
|
||
- fmt=$1; engine=$2; shift; shift
|
||
+ fmt=$1; engine=$2; ini=$3; shift; shift; shift
|
||
|
||
# Some broken shells destroy the positional arguments when calling a
|
||
# shellfunction. Therefore, we save and restore them "by hand" in the
|
||
# main_args_while variable.
|
||
main_args_while="$@"
|
||
|
||
+ kpsewhich -progname=$fmt -format=tex $ini >/dev/null 2>&1
|
||
+ test $? -ne 0 && continue
|
||
+
|
||
test "x$fmt" = "x$engine" && continue
|
||
if test -f "$d/$engine$exeext"; then
|
||
case $unlink in
|
||
--- texmf-dist/scripts/texlive/updmap-sys.sh
|
||
+++ texmf-dist/scripts/texlive/updmap-sys.sh 2018-05-11 10:53:43.971984421 +0000
|
||
@@ -22,4 +22,5 @@ PATH="$mydir:$PATH"; export PATH
|
||
# hack around a bug in zsh:
|
||
test -n "${ZSH_VERSION+set}" && alias -g '${1+"$@"}'='"$@"'
|
||
|
||
+umask 022
|
||
exec updmap --sys ${1+"$@"}
|
||
--- texmf-dist/scripts/texlive/updmap.pl
|
||
+++ texmf-dist/scripts/texlive/updmap.pl 2018-06-19 08:49:26.931648791 +0000
|
||
@@ -16,15 +16,17 @@
|
||
|
||
my $svnid = '$Id: updmap.pl 50442 2019-03-18 11:35:23Z hironobu $';
|
||
|
||
-my $TEXMFROOT;
|
||
+my $TEXMFDIST;
|
||
BEGIN {
|
||
$^W = 1;
|
||
- $TEXMFROOT = `kpsewhich -var-value=TEXMFROOT`;
|
||
+ $TEXMFDIST = `kpsewhich -var-value=TEXMFDIST`;
|
||
if ($?) {
|
||
- die "$0: kpsewhich -var-value=TEXMFROOT failed, aborting early.\n";
|
||
+ die "$0: kpsewhich -var-value=TEXMFDIST failed, aborting early.\n";
|
||
}
|
||
- chomp($TEXMFROOT);
|
||
- unshift(@INC, "$TEXMFROOT/tlpkg");
|
||
+ chomp($TEXMFDIST);
|
||
+ unshift(@INC, "$TEXMFDIST/tlpkg", "$TEXMFDIST/scripts/texlive");
|
||
+ require "mktexlsr.pl";
|
||
+ TeX::Update->import();
|
||
}
|
||
|
||
my $lastchdate = '$Date: 2019-03-18 12:35:23 +0100 (Mon, 18 Mar 2019) $';
|
||
@@ -46,7 +48,7 @@ use TeXLive::TLUtils qw(mkdirhier mktexu
|
||
# see more comments at the definition of this function.
|
||
reset_root_home();
|
||
|
||
-chomp(my $TEXMFDIST = `kpsewhich --var-value=TEXMFDIST`);
|
||
+chomp(my $TEXMFROOT = `kpsewhich --var-value=TEXMFROOT`);
|
||
chomp(my $TEXMFVAR = `kpsewhich -var-value=TEXMFVAR`);
|
||
chomp(my $TEXMFSYSVAR = `kpsewhich -var-value=TEXMFSYSVAR`);
|
||
chomp(my $TEXMFCONFIG = `kpsewhich -var-value=TEXMFCONFIG`);
|
||
@@ -398,6 +400,8 @@ sub main {
|
||
print "in $changes_config_file\n";
|
||
print "Do you really want to continue (y/N)? ";
|
||
my $answer = <STDIN>;
|
||
+ my $dosync = $ENV{'UPDMAPSYNC'};
|
||
+ $answer = "y" if !defined($dosync);
|
||
$answer = "n" if !defined($answer);
|
||
chomp($answer);
|
||
print "answer =$answer=\n";
|