diff options
author | Norbert Preining <preining@logic.at> | 2010-06-05 16:31:31 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2010-06-05 16:31:31 +0000 |
commit | aec43c7830a63c5cc82c699f4490862af0d91958 (patch) | |
tree | 585e905c2b287f9f517a516e26859391d3937427 /Master/install-tl | |
parent | d65aa576328f6698d7e7bf7c65119281cbca0981 (diff) |
various changes:
- install-tl: try to add /systems/texlive/tlnet if initial download does not
succeed
- TLDownload errorcount/enable/disable support (used in install-tl)
- TLUtils: check for TLDownload enabled status
- TLPDB: remove warning about unsuccessfull download of .tlpdb, it is now
in tlmgr (where it was already) and install-tl.
git-svn-id: svn://tug.org/texlive/trunk@18756 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/install-tl')
-rwxr-xr-x | Master/install-tl | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/Master/install-tl b/Master/install-tl index d21bc841204..bd24f67ac5b 100755 --- a/Master/install-tl +++ b/Master/install-tl @@ -1227,7 +1227,42 @@ sub load_tlpdb { info("Loading $master/$TeXLive::TLConfig::InfraLocation/$TeXLive::TLConfig::DatabaseName\n"); $tlpdb=TeXLive::TLPDB->new(root => "$master"); if (!defined($tlpdb)) { - die "$0: Could not load TeX Live Database from $master, goodbye.\n"; + my $do_die = 1; + # if that failed, and: + # - we are installing from the network + # - the location string does not contain "tlnet" + # then we simply add "/systems/texlive/tlnet" in case someone just + # gave an arbitrary CTAN mirror address without the full path + if ($media eq "NET" && $location !~ m/tlnet/) { + tlwarn("First attempt for net installation failed.\n"); + tlwarn("Location string does not contain \"tlnet\",\n"); + tlwarn("so we retry adding \"/systems/texlive/tlnet\".\n"); + $location .= "/systems/texlive/tlnet"; + $master = $location; + # + # since we change location, we reset the error count of the + # download object + $::tldownload_server->enable if (defined($::tldownload_server)); + # + $tlpdb=TeXLive::TLPDB->new(root => "$master"); + if (!defined($tlpdb)) { + tlwarn("Also that one did not help.\n"); + tlwarn(<<END_EXPLICIT_MIRROR); + +You may want to try specifying an explicit or different CTAN mirror; +see the information and examples for the -repository option at +http://tug.org/texlive/doc/install-tl.html +(or in the output of install-tl --help). + +END_EXPLICIT_MIRROR + } else { + # hurray, that worked out + info("Loading $master/$TeXLive::TLConfig::InfraLocation/$TeXLive::TLConfig::DatabaseName\n"); + $do_die = 0; + } + } + die "$0: Could not load TeX Live Database from $master, goodbye.\n" + if $do_die; } # set the defaults to what is specified in the tlpdb $vars{'option_doc'} = $tlpdb->option("install_docfiles"); |