summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xMaster/texmf/scripts/texlive/tlmgr.pl17
1 files changed, 17 insertions, 0 deletions
diff --git a/Master/texmf/scripts/texlive/tlmgr.pl b/Master/texmf/scripts/texlive/tlmgr.pl
index 3be42d549ec..a1541de04f1 100755
--- a/Master/texmf/scripts/texlive/tlmgr.pl
+++ b/Master/texmf/scripts/texlive/tlmgr.pl
@@ -1971,6 +1971,23 @@ sub auto_remove_install_force_packages {
}
}
#
+ # for some packages (texworks, psview, ...) we only have w32 packages
+ # in the repository, but it is possible that alternative repositories
+ # ship binaries for some platforms (like texworks for linux on tlcontrib)
+ # currently updating from tlnet will remove these alternative .ARCH
+ # packages because they are not listed anywhere locally, so they
+ # are considered as disappearing.
+ # We remove here packages PKG.ARCH if the main package PKG is found
+ # here and is *not* disappearing, from the removal hash
+ for my $p (keys %removals_full) {
+ if ($p =~ m/^([^.]*)\./) {
+ my $mpkg = $1;
+ if (!defined($removals_full{$mpkg})) {
+ delete($removals_full{$p});
+ }
+ }
+ }
+ #
# now take only the subset of packages that is in @todo
# note that @todo is already expanded in action_updated according
# to the --no-depends and --no-depends-at-all options