summaryrefslogtreecommitdiff
path: root/Master/tlpkg/bin/tltestnet
blob: c3fb4e228db32d1631f017ebebc870a88f8cd675 (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
#!/bin/sh
# $Id$
# Public domain.  Originally written 2019, Karl Berry.
# 
# Convenience script for the 2019 change to versioned containers.
# See tlpkg/doc/packages.txt for some info. Assumes variables
# in ~karl/.bash_login and plenty more, sorry.

renice 20 $$ >/dev/null 2>&1
cd $HOME

if test "x$1" = x-s; then
  svn=/usr/local/bin/svn
  for f in $xx/tlmgr.pl $pp/TLPOBJ.pm $pb/tl-update-containers; do
    test -z "`$svn status $f`" || { echo "$f modified, goodbye"; exit 1; }
    cp -pv $f.new $f || exit 1
  done
  exit 0

elif test "x$1" = x-S; then
  svn=/usr/local/bin/svn
  for f in $xx/tlmgr.pl $pp/TLPOBJ.pm $pb/tl-update-containers; do
    cmp -s $f $f.new || { echo "modified $f, goodbye"; exit 1; }
    mv $f $f.new || exit 1
    $svn update $f
  done
  exit 0

elif test "x$1" = x-d; then
  for f in $xx/tlmgr.pl $pp/TLPOBJ.pm $pb/tl-update-containers; do
    diff -u1 $f $f.new
  done >/tmp/dif
  exit 0

elif test "x$1" = x-i; then
  dest=/tmp/ki
  PATH=$dest/bin/x86_64-linux:/usr/bin; export PATH
  rm -rf $dest*
  #
  TEXLIVE_INSTALL_ENV_NOCHECK=1; export TEXLIVE_INSTALL_ENV_NOCHECK
  TEXLIVE_INSTALL_NO_WELCOME=1;  export TEXLIVE_INSTALL_NO_WELCOME
  #
  pro=--profile=/home/texlive/trunk/Master/tlpkg/dev/profiles/TLinfra.pro
  #
  thisrel=/usr/local/texlive/`date +%Y` 
  $thisrel/install-tl $pro || exit 1 # make throwaway test install
  exit $?

elif test "x$1" = x--rebuild; then
  # update test repository. Do -s first to put code in place, and -S after.
  destdir=/home/ftp/texlive/test-tlnet
  set -x
  tl-update-tlnet --critical --scheme infraonly --dest $destdir
  tl-update-tlcritical --tlcrit $destdir --no-containers

elif test "x$1" = x-u || test "x$1" = x--all || test "x$1" = x--self; then
  # update installations.
  if test "x$1" = x-u || test "x$1" = x--all; then
    uarg=--all
  elif test "x$1" = x--self; then
    uarg=--self
  else
    echo "$0: impossible update arg: $1" >&2
    exit 1
  fi
  for i in tlhttp tlftp tldsk tldev tla; do
    bin=/tmp/$i/bin/x86_64-linux
    printf "\n\f $bin/tlmgr update $uarg\n"
    env PATH=$bin:/usr/bin tlmgr update $uarg
  done

else
  echo "$0: what to do? ($*)" >&2
  exit 1
fi

##repo=--repo=/home/ftp/texlive/test-tlnet
##repo=--repo=/home/ftp/texlive/tlnet
##repo=--repo=/home/ftp/texlive/tlcritical
##repo=--repo=/home/ftp/texlive/tlverpkg
##repo=--repo=ftp://fm.tug.org/texlive/test-tlnet
#
#set -x
#tlmgr version
#tlmgr -v $repo update --self
##tlmgr $repo update