Blame SOURCES/texlive-20180414-tlmgr-ignore-warning.patch

80769b
diff -up texmf-dist/scripts/texlive/tlmgr.pl.orig texmf-dist/scripts/texlive/tlmgr.pl
80769b
--- texmf-dist/scripts/texlive/tlmgr.pl.orig	2017-09-13 03:55:27.000000000 +0200
80769b
+++ texmf-dist/scripts/texlive/tlmgr.pl	2020-07-24 15:01:13.810411690 +0200
80769b
@@ -225,6 +225,7 @@ my %action_specification = (
80769b
       "dry-run|n" => 1,
80769b
       "file" => 1,
80769b
       "force" => 1,
80769b
+      "ignore-warning" => 1,
80769b
       "no-depends"        => 1,
80769b
       "no-depends-at-all" => 1,
80769b
       "reinstall" => 1,
80769b
@@ -329,6 +330,7 @@ my %action_specification = (
80769b
       "dry-run|n" => 1,
80769b
       "exclude" => "=s@",
80769b
       "force" => 1,
80769b
+      "ignore-warning" => 1,
80769b
       "list" => 1,
80769b
       "no-auto-install"            => 1,
80769b
       "no-auto-remove"             => 1,
80769b
@@ -2339,6 +2341,15 @@ sub upd_info {
80769b
 }
80769b
 
80769b
 sub action_update {
80769b
+  if (!($opts{"ignore-warning"})) {
80769b
+    print("*** WARNING ***: Performing this action will likely destroy the RHEL TeXLive install on your system.\n");
80769b
+    print("*** WARNING ***: This is almost NEVER what you want to do.\n");
80769b
+    print("*** WARNING ***: Try using dnf install/update instead.\n");
80769b
+    print("*** WARNING ***: If performing this action is really what you want to do, pass the \"ignore-warning\" option.\n");
80769b
+    print("*** WARNING ***: But please do not file any bugs with the OS Vendor.\n");
80769b
+    exit;
80769b
+  }
80769b
+
80769b
   init_local_db(1);
80769b
   $opts{"no-depends"} = 1 if $opts{"no-depends-at-all"};
80769b
 
80769b
@@ -3336,6 +3347,15 @@ sub check_announce_format_triggers {
80769b
 # anymore!  That has all to be done by the caller.
80769b
 #
80769b
 sub action_install {
80769b
+  if (!($opts{"ignore-warning"})) {
80769b
+    print("*** WARNING ***: Performing this action will likely destroy the RHEL TeXLive install on your system.\n");
80769b
+    print("*** WARNING ***: This is almost NEVER what you want to do.\n");
80769b
+    print("*** WARNING ***: Try using dnf install/update instead.\n");
80769b
+    print("*** WARNING ***: If performing this action is really what you want to do, pass the \"ignore-warning\" option.\n");
80769b
+    print("*** WARNING ***: But please do not file any bugs with the OS Vendor.\n");
80769b
+    exit;
80769b
+  } 
80769b
+
80769b
   init_local_db(1);
80769b
   my $ret = $F_OK;
80769b
   return ($F_ERROR) if !check_on_writable();
80769b
@@ -7657,6 +7677,13 @@ If updates to C<tlmgr> itself (or other
80769b
 infrastructure) are present, C<tlmgr> will bail out and not perform the
80769b
 installation unless this option is given.  Not recommended.
80769b
 
80769b
+=item B<--ignore-warning>
80769b
+
80769b
+The tlmgr tool can really ruin a RHEL install of TeXLive.
80769b
+We have added a warning check here to try to keep you from
80769b
+blindly following a tutorial and doing this. If you still want to
80769b
+proceed, just use this option.
80769b
+
80769b
 =item B<--no-depends>
80769b
 
80769b
 Do not install dependencies.  (By default, installing a package ensures
80769b
@@ -8275,6 +8302,13 @@ In short:
80769b
 Nothing is actually installed; instead, the actions to be performed are
80769b
 written to the terminal.  This is a more detailed report than C<--list>.
80769b
 
80769b
+=item B<--ignore-warning>
80769b
+
80769b
+The tlmgr tool can really ruin a RHEL install of TeXLive.
80769b
+We have added a warning check here to try to keep you from
80769b
+blindly following a tutorial and doing this. If you still want to
80769b
+proceed, just use this option.
80769b
+
80769b
 =item B<--list> [I<pkg>]
80769b
 
80769b
 Concisely list the packages which would be updated, newly installed, or