Sync from SUSE:SLFO:Main texlive-filesystem revision 4f9615260e7c6b8020d8a70d9d48e505

This commit is contained in:
Adrian Schröter 2025-02-24 23:11:14 +01:00
parent 40c27c1e3c
commit 770b10d975
33 changed files with 2050 additions and 409 deletions

BIN
collection-bibtexextra.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-binextra.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-context.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-fontsextra.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-games.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-humanities.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-langarabic.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-langcyrillic.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-langenglish.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-langfrench.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-langgerman.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-langjapanese.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-langother.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-langportuguese.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-langspanish.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-latex.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-latexextra.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-latexrecommended.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-luatex.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-mathscience.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-metapost.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-music.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-pictures.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-plaingeneric.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-publishers.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
collection-xetex.tar.xz (Stored with Git LFS)

Binary file not shown.

View File

@ -1,3 +1,52 @@
-------------------------------------------------------------------
Thu Mar 21 13:54:30 UTC 2024 - Dr. Werner Fink <werner@suse.de>
- Run luaotfload-tool in update script even if mtxrun isn't there
-------------------------------------------------------------------
Thu Mar 14 12:35:01 UTC 2024 - Dr. Werner Fink <werner@suse.de>
- Update to TeXLive 2024
-------------------------------------------------------------------
Mon Jan 29 12:02:43 UTC 2024 - Dr. Werner Fink <werner@suse.de>
- We need a working full-featured setpriv(8) (boo#1212571)
-------------------------------------------------------------------
Tue Jul 4 09:16:37 UTC 2023 - Dr. Werner Fink <werner@suse.de>
- Rework lua(meta)tex/context resource findings
-------------------------------------------------------------------
Mon Jun 5 11:12:19 UTC 2023 - Dr. Werner Fink <werner@suse.de>
- For creation of ls-R after transactional update used secure
way via setpriv(8) (boo#1212006)
-------------------------------------------------------------------
Thu May 25 10:58:46 UTC 2023 - Dr. Werner Fink <werner@suse.de>
- Switch over to systemd to a) replace cron usage with timer
and b) to make use the transactional update support of the
update script (boo#1211613)
-------------------------------------------------------------------
Wed May 24 14:28:07 UTC 2023 - Dr. Werner Fink <werner@suse.de>
- Better support of transactional updates (boo#1211613)
-------------------------------------------------------------------
Tue May 23 14:12:52 UTC 2023 - Dr. Werner Fink <werner@suse.de>
- Enable the force mode of update script to handle broken
/var/lib and /var/cache texmf entries (boo#1211613)
-------------------------------------------------------------------
Mon May 15 13:03:04 UTC 2023 - Andreas Schwab <schwab@suse.de>
- Fix syntax error in update script
-------------------------------------------------------------------
Wed Apr 5 08:24:31 UTC 2023 - Dr. Werner Fink <werner@suse.de>

File diff suppressed because it is too large Load Diff

37
texlive-initial.service Normal file
View File

@ -0,0 +1,37 @@
[Unit]
Description=Initiate TeXLive Data Bases and Formats
Documentation=info:kpathsea
DefaultDependencies=no
After=local-fs.target
Before=sysinit.target shutdown.target
Conflicts=shutdown.target
RequiresMountsFor=/var/cache/texmf
RequiresMountsFor=/var/lib/texmf
ConditionPathExists=/etc/texmf/TRANSACTIONAL_UPDATE
[Service]
Type=oneshot
RemainAfterExit=yes
# Otherwise the update script can not remove
# our tag file /etc/texmf/TRANSACTIONAL_UPDATE
User=root
Group=mktex
UMask=0002
# Note that /etc/texmf/ls-R should be rw
ProtectSystem=true
ProtectHome=true
PrivateTmp=true
PrivateDevices=true
ProtectHostname=true
ProtectClock=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectKernelLogs=true
ProtectControlGroups=true
LockPersonality=true
RestrictRealtime=true
ExecStart=/usr/share/texmf/texconfig/update
[Install]
WantedBy=sysinit.target

View File

@ -22,6 +22,13 @@ OLDIFS=$IFS; IFS=':;'
VARTEXFONTS="$(kpsewhich --expand-var '$VARTEXFONTS' 2> /dev/null)"
IFS=$OLDIFS
if test "$(id -ur)" = 0
then
groups=--init-groups
else
groups=--keep-groups
fi
if test -n "$VARTEXFONTS" -a "$HAVE_MKTEX_MEMBERS" = yes
then
IFS=:
@ -36,9 +43,9 @@ then
for i in $(seq 3 $u)
do
find -P $p \( \( -type f -and -not -type l \) -and -user ${users[$i]} \) -print0 | \
xargs -r -L100 -0 -- setpriv --reuid ${users[$i]} --regid mktex --init-groups chmod g+rw
xargs -r -L100 -0 -- setpriv --reuid ${users[$i]} --regid mktex $groups chmod g+rw
find -P $p \( \( -type d -and -not -type l \) -and -user ${users[$i]} \) -print0 | \
xargs -r -L100 -0 -- setpriv --reuid ${users[$i]} --regid mktex --init-groups chmod g+rwsx
xargs -r -L100 -0 -- setpriv --reuid ${users[$i]} --regid mktex $groups chmod g+rwsx
done
done
unset i u
@ -51,7 +58,7 @@ then
test -d $p/pk && find -P $p/pk \( -not -type d -and -atime +20 \) -print0
test -d $p/tfm && find -P $p/tfm \( -not -type d -and -atime +60 \) -print0
test -d $p/source && find -P $p/source \( -not -type d -and -atime +60 \) -print0
done > >(exec -a xargs xargs -r -L100 -0 -- setpriv --reuid mktex --regid mktex --init-groups rm -f)
done > >(exec -a xargs xargs -r -L100 -0 -- setpriv --reuid mktex --regid mktex $groups rm -f)
fi
if test -n "$VARTEXFONTS"
then
@ -61,11 +68,11 @@ then
test -d $p/tfm && find -P $p/tfm \( -not -type d -and -not -name '*.tfm' \) -print0
test -d $p/source && find -P $p/source \( -not -type d -and -not -name '*.mf' \) -print0
test -d $p && find -P $p \( -not -type d -and -path '*/[^[:alnum:]]*' \) -print0
done > >(exec -a xargs xargs -r -L100 -0 -- setpriv --reuid mktex --regid mktex --init-groups rm -vf)
done > >(exec -a xargs xargs -r -L100 -0 -- setpriv --reuid mktex --regid mktex $groups rm -vf)
for p in $VARTEXFONTS
do
test -d $p && find -P $p -depth \( -type d -and -path '*/[^[:alnum:]]*' \) -print0
done > >(exec -a xargs xargs -r -L100 -0 -- setpriv --reuid mktex --regid mktex --init-groups rm -vfr)
done > >(exec -a xargs xargs -r -L100 -0 -- setpriv --reuid mktex --regid mktex $groups rm -vfr)
fi
#

31
texlive.service Normal file
View File

@ -0,0 +1,31 @@
[Unit]
Description=Daily TeXLive regeneration
Documentation=info:kpathsea
ConditionACPower=true
ConditionPathExists=/var/cache/texmf
ConditionPathExists=/var/lib/texmf
[Service]
Type=oneshot
# Otherwise we can not change ownerships below /var/cache/texmf
User=root
Group=mktex
UMask=0002
Nice=19
IOSchedulingClass=idle
IOSchedulingPriority=7
# Note that /etc/texmf/ls-R should be rw
ProtectSystem=true
ProtectHome=true
PrivateTmp=true
PrivateDevices=true
ProtectHostname=true
ProtectClock=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectKernelLogs=true
ProtectControlGroups=true
LockPersonality=true
RestrictRealtime=true
ExecStart=/usr/share/texmf/texconfig/daily

11
texlive.timer Normal file
View File

@ -0,0 +1,11 @@
[Unit]
Description=Daily TeXLive regeneration
Documentation=info:kpathsea
[Timer]
OnCalendar=daily
RandomizedDelaySec=12h
Persistent=true
[Install]
WantedBy=timers.target

View File

@ -19,7 +19,22 @@
# Author: Werner Fink, 1997-2012,2016
#
if test -n "${TRANSACTIONAL_UPDATE}"
then
umask 022
mkdir -p /etc/texmf
> /etc/texmf/TRANSACTIONAL_UPDATE
rm -rf /var/run/texlive || :
find /var/cache/texmf /var/lib/texmf -type f -exec rm -f '{}' \+
exit 0
elif test -e /etc/texmf/TRANSACTIONAL_UPDATE
then
set -- force
rm -f /etc/texmf/TRANSACTIONAL_UPDATE || :
fi
if test -n "$1" -a "$1" = force; then
umask 022
mkdir -p /var/run/texlive
for tag in run-mktexlsr run-hyphen \
run-fmtutil.language run-fmtutil \
@ -27,6 +42,23 @@ if test -n "$1" -a "$1" = force; then
do
> /var/run/texlive/$tag
done
if ! id mktex > /dev/null 2>&1; then
useradd -U -d /var/cache/texmf/fonts -c "System user for mktex" -s "/usr/sbin/nologin" mktex
fi
test -e /var/cache/texmf/fonts/ls-R || {
setpriv --reuid mktex --regid mktex --init-groups bash -c \
"umask 0002
set -C
echo '% ls-R -- filename database for kpathsea; do not change this line.' > /var/cache/texmf/fonts/ls-R"
}
for lsr in /var/lib/texmf/ls-R /var/lib/texmf/dist/ls-R /var/lib/texmf/main/ls-R
do
test -e $lsr && continue
setpriv --ruid root --regid mktex --init-groups bash -c \
"umask 0002
set -C
echo '% ls-R -- filename database for kpathsea; do not change this line.' > $lsr"
done
fi
# Empty directory means nothing todo
@ -491,6 +523,7 @@ make_context_fmts()
LUATEXDIR=${TEXMFDIST}/scripts/context/lua \
TEXMFCACHE=${TEXMFVAR} \
TEXMFCNF="home:texmf/web2c;${TEXMFCNFFILE%/*};${TEXMFDIST}/web2c" \
TEXMF=${TEXMFDIST} \
/usr/bin/context $fmt --make < /dev/null 1>&4 2>&4
let status+=$?
done
@ -503,6 +536,7 @@ make_context_fmts()
LUATEXDIR=${TEXMFDIST}/scripts/context/lua \
TEXMFCACHE=${TEXMFVAR} \
TEXMFCNF="home:texmf/web2c;${TEXMFCNFFILE%/*};${TEXMFDIST}/web2c" \
TEXMF=${TEXMFDIST} \
/usr/bin/context $fmt --luatex --make < /dev/null 1>&4 2>&4
let status+=$?
done
@ -510,10 +544,11 @@ make_context_fmts()
LUATEXDIR=${TEXMFDIST}/scripts/context/lua \
TEXMFCACHE=${TEXMFVAR} \
TEXMFCNF="home:texmf/web2c;${TEXMFCNFFILE%/*};${TEXMFDIST}/web2c" \
TEXMF=${TEXMFDIST} \
/usr/bin/mtxrun --script fonts --reload < /dev/null 1>&4 2>&4
let status+=$?
return status
return $status
}
#
@ -526,6 +561,7 @@ if test -x /usr/bin/mtxrun ; then
LUATEXDIR=${TEXMFDIST}/scripts/context/lua \
TEXMFCACHE=${TEXMFVAR} \
TEXMFCNF="home:texmf/web2c;${TEXMFCNFFILE%/*};${TEXMFDIST}/web2c" \
TEXMF=${TEXMFDIST} \
/usr/bin/mtxrun --generate < /dev/null 1>&4 2>&4
let rc+=$?
@ -533,12 +569,14 @@ if test -x /usr/bin/mtxrun ; then
LUATEXDIR=${TEXMFDIST}/scripts/context/lua \
TEXMFCACHE=${TEXMFVAR} \
TEXMFCNF="home:texmf/web2c;${TEXMFCNFFILE%/*};${TEXMFDIST}/web2c" \
TEXMF=${TEXMFDIST} \
/usr/bin/context --luatex --generate < /dev/null 1>&4 2>&4
let rc+=$?
LUATEXDIR=${TEXMFDIST}/scripts/context/lua \
TEXMFCACHE=${TEXMFVAR} \
TEXMFCNF="home:texmf/web2c;${TEXMFCNFFILE%/*};${TEXMFDIST}/web2c" \
TEXMF=${TEXMFDIST} \
/usr/bin/mtxrun --script fonts --reload < /dev/null 1>&4 2>&4
let rc+=$?
@ -550,14 +588,14 @@ if test -x /usr/bin/mtxrun ; then
/usr/bin/luatools --generate < /dev/null 1>&4 2>&4
let rc+=$?
fi
if test -x /usr/bin/luaotfload-tool ; then
fi
if test -x /usr/bin/luaotfload-tool ; then
TEXMF=${TEXMFDIST} \
TEXMFCACHE=${TEXMFVAR} \
TEXMFCNF=${TEXMFCNFFILE%/*} \
LUAINPUTS="$(kpsewhich --var-value=LUAINPUTS)" \
/usr/bin/luaotfload-tool --update --prefer-texmf --formats=+afm --log=stdout < /dev/null 1>&4 2>&4
/usr/bin/luaotfload-tool --update --force --log=stdout < /dev/null 1>&4 2>&4
let rc+=$?
fi
fi
((nl == 0)) || { echo; let nl=0; }