summaryrefslogtreecommitdiff
path: root/Master/texmf/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf/scripts')
-rw-r--r--Master/texmf/scripts/texlive/tlmgrgui.pl24
1 files changed, 20 insertions, 4 deletions
diff --git a/Master/texmf/scripts/texlive/tlmgrgui.pl b/Master/texmf/scripts/texlive/tlmgrgui.pl
index 20daa064c2c..36b6076445d 100644
--- a/Master/texmf/scripts/texlive/tlmgrgui.pl
+++ b/Master/texmf/scripts/texlive/tlmgrgui.pl
@@ -1635,14 +1635,30 @@ sub update_list_remote {
}
}
#
- # TODO TODO
- #
- # add to the warning text: NN further updates are available after updating
- # telxive.infra.!!!!
#
if (@critical_updates) {
+ # add to the warning text if further updates are available
+ # compute the number of further updates
+ # we do NOT make a correct computation here like done in the actual
+ # tlmgr.pl sub action_update, but only count the numbers of packages
+ # that would be updated (without any forcibly remove/new counting)
+ my $min_action = 0;
+ for my $p (keys %Packages) {
+ next if member($p, @critical);
+ if (defined($Packages{$p}{'localrevision'}) &&
+ defined($Packages{$p}{'remoterevision'}) &&
+ $Packages{$p}{'localrevision'} < $Packages{$p}{'remoterevision'}) {
+ $min_action++;
+ }
+ }
+ #
+ # create the warning dialog
+ #
my $sw = $mw->DialogBox(-title => __("Warning"), -buttons => [ __("Ok") ]);
my $t = __("Updates for the tlmgr are present.\nInstallation and upgrades won't work without being forced.\nPlease select \"Update all installed\" button below.\nThe program will terminate after the update.\nThen you can restart the program for further updates.");
+ if ($min_action) {
+ $t .= "\n\n" . __("At least %s further updates are available after tlmgr has been updated.", $min_action);
+ }
$t .= "\n\n" . __("Please wait a bit after the program has terminated so that the update can be completed.") if win32();
$sw->add("Label", -text => $t)->pack(-padx => "3m", -pady => "3m");
$sw->Show;