summaryrefslogtreecommitdiff
path: root/Master/tlpkg/archive/tlnet-by-hand.txt
blob: 72a0f6f2d20c6550126e0e288faacac1f60d2aa5 (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
 Part II.5: As a special case, we need to update tlnet even after the
final freeze.
  pretest is going on. To do that, the idea is to make a tag+branch for
  the last update before switching to the pretest, check that out,
  and use it for such critical updates. To do that,
  a) look at https://tug.org/svn/texlive/tags/ to choose the right
     tag name. For TL19 (during the TL20 pretest), it was texlive-2019.4,
     since .0-3 were used during the release.
  b) look at https://tug.org/pipermail/tex-live-commits/ to determine
     the right revision number: probably the "autoupdate" during the
     last build before the pretest setup. For TL19, that was 53984.
  c) run the svn commands given below to create the tag and branch.
  d) make working checkout of the new branch (at this point we should
     be fine to wipe out the old branch checkout, if there was one).
mkdir /home/texlive/branch 
cd !$
tlyear=2019
subnum=4
nice -19 svn co -q svn://tug.org/texlive/branches/branch$tlyear.$subnum .

  e) make the required update, probably most easily by copying the
     affected files from the trunk. Running ctan2tl (or c2l) inside the
     branch checkout should also work, if no other changes have intervened.
  
  f) remake tlnet (not tlpretest); cron.tl does too much overhead for
     this delicate situation, so run the commands by hand.
     1) update tlpdb so we'll get the new revision number;
        must run from branch, not trunk, or all will be wrong!
cd /home/texlive/branch/Master/tlpkg/bin # must be in branch directory
        Use Catalogue snapshot saved above (at "preserve Catalogue")
          to avoid myriad Catalogue changes.
        If files have been removed without any other changes to a given
          package (hopefully not), add --fix-reverse-revisions.
catdir=/home/texlive/catalogue-freeze
./tl-update-tlpdb --catalogue=$catdir
        Check that only expected changes are made. 
        Might be easier to run this, get the new revision number(s),
        then revert and manually edit if there are additional unneeded
        changes. Don't worry about 00texlive.*, they aren't distributed.

     2) for safety, make a backup of tlnet:
tar -cf /tmp/tlnet.tar -C /home/ftp/texlive/tlnet .  # remove when done

     3) update tlnet, again from the branch, not trunk. Double check!
        we don't want to update the installer packages, as they have
        already been getting updated from trunk, so are newer.
cd /home/texlive/branch/Master/tlpkg/bin
./tl-update-tlnet --no-install-pkgs
        It will take about an hour to run. hopefully only the intended
        packages will get updated. if not, that's why we made the tar backup.

  g) Update the tlnet-final directory in historic:
tlnet_live=/home/ftp/texlive/tlnet
tlnet_historic=/home/ftp/historic/systems/texlive/2019/tlnet-final
rsync -av -n $tlnet_live/ $tlnet_historic/ # trailing /'s needed
# remove the -n after checking that only expected files are updated.