summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/scripts
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2017-07-17 23:59:48 +0000
committerNorbert Preining <preining@logic.at>2017-07-17 23:59:48 +0000
commit2d26c66e38feab1b32428af33fa6859c64b78915 (patch)
tree67439dbbda4fde2a14a77dedd1760626d82f31ee /Master/texmf-dist/scripts
parent6e57bc8799075980ca390ea519a76c883b242009 (diff)
prohibit dist-upgrades with tlmgr
git-svn-id: svn://tug.org/texlive/trunk@44836 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/scripts')
-rwxr-xr-xMaster/texmf-dist/scripts/texlive/tlmgr.pl16
1 files changed, 14 insertions, 2 deletions
diff --git a/Master/texmf-dist/scripts/texlive/tlmgr.pl b/Master/texmf-dist/scripts/texlive/tlmgr.pl
index 8ac034b2e53..59fad25caf1 100755
--- a/Master/texmf-dist/scripts/texlive/tlmgr.pl
+++ b/Master/texmf-dist/scripts/texlive/tlmgr.pl
@@ -6262,7 +6262,7 @@ END_NO_CHECKSUMS
$remotetlpdb->make_virtual;
my $locstr = $repos{'main'};
- my ($tlmdb, $errormsg) = setup_one_remotetlpdb($locstr);
+ my ($tlmdb, $errormsg) = setup_one_remotetlpdb($locstr, 'main');
if (!defined($tlmdb)) {
return (0, $errormsg);
}
@@ -6336,7 +6336,7 @@ sub _init_tlmedia {
}
my $errormsg;
- ($remotetlpdb, $errormsg) = setup_one_remotetlpdb($location);
+ ($remotetlpdb, $errormsg) = setup_one_remotetlpdb($location, 'main');
if (!defined($remotetlpdb)) {
return(0, $errormsg);
}
@@ -6359,6 +6359,8 @@ sub _init_tlmedia {
sub setup_one_remotetlpdb {
my $location = shift;
+ my $addarg = shift;
+ my $is_main = ((defined($addarg) && ($addarg eq 'main')) ? 1 : 0);
my $remotetlpdb;
# TODO
@@ -6494,6 +6496,16 @@ $rroot
do not include the version of the local installation
($TeXLive::TLConfig::ReleaseYear).");
}
+ #
+ # if the release of the installed TL is less than the release
+ # of the main remote repository, then
+ # warn that one needs to call update-tlmgr-latest.sh --update
+ if ($is_main && $TeXLive::TLConfig::ReleaseYear < $texlive_release_year) {
+ return (undef, "Remote repository is newer than local ($TeXLive::TLConfig::ReleaseYear < $texlive_release_year)\n"
+ . "Cross release updates are only supported with\n"
+ . " update-tlmgr-latest(.sh/.exe) --update\n"
+ . "Please see https://tug.org/texlive/upgrade.html for details.")
+ }
} else {
# $texlive_minrelease not defined, so only one year is valid
if ($texlive_release_year != $TeXLive::TLConfig::ReleaseYear) {