From 05b01edf56c54f79f4d3bd69677b1946f31ef5b8 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Fri, 18 Oct 2019 03:01:19 +0000 Subject: CTAN sync 201910180301 --- systems/texlive/tlnet/install-tl | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) (limited to 'systems/texlive/tlnet/install-tl') diff --git a/systems/texlive/tlnet/install-tl b/systems/texlive/tlnet/install-tl index 68c6f20f18..74be0fd1b9 100755 --- a/systems/texlive/tlnet/install-tl +++ b/systems/texlive/tlnet/install-tl @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# $Id: install-tl 51840 2019-08-07 22:27:00Z karl $ +# $Id: install-tl 52423 2019-10-17 22:32:30Z karl $ # Copyright 2007-2019 # Reinhard Kotucha, Norbert Preining, Karl Berry, Siep Kroonenberg. # This file is licensed under the GNU General Public License version 2 @@ -8,7 +8,7 @@ # Be careful when changing wording: *every* normal informational message # output here must be recognized by the long grep in tl-update-tlnet. -my $svnrev = '$Revision: 51840 $'; +my $svnrev = '$Revision: 52423 $'; $svnrev =~ m/: ([0-9]+) /; $::installerrevision = ($1 ? $1 : 'unknown'); @@ -180,6 +180,8 @@ use strict; # global list of lines that get logged (see TLUtils.pm::_logit). @::LOGLINES = (); +# if --version, --help, etc., this just gets thrown away, which is ok. +&log ("TeX Live installer invocation: $0", map { " $_" } @ARGV, "\n"); # global list of warnings @::WARNLINES = (); @@ -2122,9 +2124,23 @@ sub read_profile { } # read_profile sub do_install_packages { - my @what; - foreach my $package (sort keys %install) { - push @what, $package if ($install{$package} == 1); + # let's install the critical packages first, since they are the most + # likely to fail (so let's fail early), and nothing is usable without them. + my @what = (); + foreach my $package (sort { + if ($a =~ /$CriticalPackagesRegexp/) { + if ($b =~ /$CriticalPackagesRegexp/) { + return $a cmp $b; # both critical + } else { + return -1; # critical before non-critical + } + } elsif ($b =~ /$CriticalPackagesRegexp/) { + return 1; # critical before non-critical + } else { + return $a cmp $b; + } + } keys %install) { + push (@what, $package) if ($install{$package} == 1); } # temporary unset the localtlpdb options responsible for # running all kind of postactions, since install_packages @@ -3163,7 +3179,7 @@ This script and its documentation were written for the TeX Live distribution (L) and both are licensed under the GNU General Public License Version 2 or later. -$Id: install-tl 51840 2019-08-07 22:27:00Z karl $ +$Id: install-tl 52423 2019-10-17 22:32:30Z karl $ =cut # to remake HTML version: pod2html --cachedir=/tmp install-tl >/tmp/itl.html -- cgit v1.2.3