texlive[59636] trunk: doc,sync

commits+karl at tug.org commits+karl at tug.org
Sat Jun 19 17:12:23 CEST 2021


Revision: 59636
          http://tug.org/svn/texlive?view=revision&revision=59636
Author:   karl
Date:     2021-06-19 17:12:23 +0200 (Sat, 19 Jun 2021)
Log Message:
-----------
doc,sync

Modified Paths:
--------------
    trunk/Build/source/texk/tests/TeXLive/TLConfig.pm
    trunk/Build/source/texk/tests/TeXLive/TLUtils.pm
    trunk/Master/texmf-dist/scripts/texlive/NEWS
    trunk/Master/tlpkg/dev/profiles/TLctx.pro
    trunk/Master/tlpkg/tlpsrc/scheme-context.tlpsrc

Added Paths:
-----------
    trunk/Master/tlpkg/dev/profiles/TLbasic.pro

Modified: trunk/Build/source/texk/tests/TeXLive/TLConfig.pm
===================================================================
--- trunk/Build/source/texk/tests/TeXLive/TLConfig.pm	2021-06-19 11:01:47 UTC (rev 59635)
+++ trunk/Build/source/texk/tests/TeXLive/TLConfig.pm	2021-06-19 15:12:23 UTC (rev 59636)
@@ -1,3 +1,4 @@
+# $Id: TLConfig.pm 59225 2021-05-16 17:41:12Z karl $
 # TeXLive::TLConfig.pm - module exporting configuration values
 # Copyright 2007-2021 Norbert Preining
 # This file is licensed under the GNU General Public License version 2
@@ -5,7 +6,7 @@
 
 package TeXLive::TLConfig;
 
-my $svnrev = '$Revision: 59122 $';
+my $svnrev = '$Revision: 59225 $';
 my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
 sub module_revision { return $_modulerevision; }
 
@@ -127,10 +128,8 @@
   'curl' => ['--user-agent', 'texlive/curl',
              '--retry', '4', '--retry-delay', '4',
              '--connect-timeout', "$NetworkTimeout", 
-             '--insecure',
              '--fail', '--location', '--silent', '--output'],
   'wget' => ['--user-agent=texlive/wget', '--tries=4',
-             '--no-check-certificate',
              "--timeout=$NetworkTimeout", '-q', '-O'],
 );
 # the way we package things on the web
@@ -278,7 +277,7 @@
 

 =head1 NAME
 
-C<TeXLive::TLConfig> -- TeX Live Configuration module
+C<TeXLive::TLConfig> -- TeX Live configuration parameters
 
 =head1 SYNOPSIS
 
@@ -289,13 +288,13 @@
 The L<TeXLive::TLConfig> module contains definitions of variables 
 configuring all of TeX Live.
 
-=over 4
+=head2 EXPORTED VARIABLES
 
-=head1 EXPORTED VARIABLES
-
 All of the following variables are pulled into the callers namespace,
 i.e., are declared with C<EXPORT> (and C<EXPORT_OK>).
 
+=over 4
+
 =item C<@TeXLive::TLConfig::MetaCategories>
 
 The list of meta categories, i.e., those categories whose packages only
@@ -378,7 +377,7 @@
 =head1 AUTHORS AND COPYRIGHT
 
 This script and its documentation were written for the TeX Live
-distribution (L<http://tug.org/texlive>) and both are licensed under the
+distribution (L<https://tug.org/texlive>) and both are licensed under the
 GNU General Public License Version 2 or later.
 
 =cut

Modified: trunk/Build/source/texk/tests/TeXLive/TLUtils.pm
===================================================================
--- trunk/Build/source/texk/tests/TeXLive/TLUtils.pm	2021-06-19 11:01:47 UTC (rev 59635)
+++ trunk/Build/source/texk/tests/TeXLive/TLUtils.pm	2021-06-19 15:12:23 UTC (rev 59636)
@@ -1,3 +1,4 @@
+# $Id: TLUtils.pm 59259 2021-05-18 21:39:53Z karl $
 # TeXLive::TLUtils.pm - the inevitable utilities for TeX Live.
 # Copyright 2007-2021 Norbert Preining, Reinhard Kotucha
 # This file is licensed under the GNU General Public License version 2
@@ -5,7 +6,7 @@
 
 package TeXLive::TLUtils;
 
-my $svnrev = '$Revision: 59149 $';
+my $svnrev = '$Revision: 59259 $';
 my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
 sub module_revision { return $_modulerevision; }
 
@@ -13,7 +14,7 @@
 
 =head1 NAME
 
-C<TeXLive::TLUtils> - utilities used in TeX Live infrastructure
+C<TeXLive::TLUtils> - TeX Live infrastructure miscellany
 
 =head1 SYNOPSIS
 
@@ -245,6 +246,12 @@
 The result is stored in a global variable C<$::_platform_>, and
 subsequent calls just return that value.
 
+As of 2021, C<config.guess> unfortunately requires a shell that
+understands the C<$(...)> construct. This means that on old-enough
+systems, such as Solaris, we have to look for a shell. We use the value
+of the C<CONFIG_SHELL> environment variable if it is set, else
+C</bin/ksh> if it exists, else C</bin/bash> if it exists, else give up.
+
 =cut
 
 sub platform {
@@ -254,12 +261,58 @@
     } else {
       my $config_guess = "$::installerdir/tlpkg/installer/config.guess";
 
+      # For example, if the disc or reader has hardware problems.
+      die "$0: config.guess script does not exist, goodbye: $config_guess"
+        if ! -r $config_guess;
+
       # We cannot rely on #! in config.guess but have to call /bin/sh
       # explicitly because sometimes the 'noexec' flag is set in
       # /etc/fstab for ISO9660 file systems.
-      chomp (my $guessed_platform = `/bin/sh '$config_guess'`);
+      # 
+      # In addition, config.guess was (unnecessarily) changed in 2020 by
+      # to use $(...) instead of `...`, although $(...) is not supported
+      # by Solaris /bin/sh (and others). The maintainers have declined
+      # to revert the change, so now every caller of config.guess must
+      # laboriously find a usable shell. Sigh.
+      # 
+      my $config_shell = $ENV{"CONFIG_SHELL"} || "/bin/sh";
+      #
+      # check if $(...) is supported:
+      my $paren_cmdout = `'$config_shell' -c 'echo \$(echo foo)' 2>/dev/null`;
+      #warn "paren test out: `$paren_cmdout'.\n";
+      #
+      # The echo command might output a newline (maybe CRLF?) even if
+      # the $(...) fails, so don't just check for non-empty output.
+      # Maybe checking exit status would be better, but maybe not.
+      # 
+      if (length ($paren_cmdout) <= 2) {
+        # if CONFIG_SHELL is set to something bad, give up.
+        if ($ENV{"CONFIG_SHELL"}) {
+          die <<END_BAD_CONFIG_SHELL;
+$0: the CONFIG_SHELL environment variable is set to $ENV{CONFIG_SHELL}
+  but this cannot execute \$(...) shell constructs,
+  which is required. Set CONFIG_SHELL to something that works.
+END_BAD_CONFIG_SHELL
 
-      # For example, if the disc or reader has hardware problems.
+        } elsif (-x "/bin/ksh") {
+          $config_shell = "/bin/ksh";
+
+        } elsif (-x "/bin/bash") {
+          $config_shell = "/bin/bash";
+
+        } else {
+          die <<END_NO_PAREN_CMDS_SHELL
+$0: can't find shell to execute $config_guess
+  (which gratuitously requires support for \$(...) command substitution).
+  Tried $config_shell, /bin/ksh, bin/bash.
+  Set the environment variable CONFIG_SHELL to specify explicitly.
+END_NO_PAREN_CMDS_SHELL
+        }
+      }
+      #warn "executing config.guess with $config_shell\n";
+      chomp (my $guessed_platform = `'$config_shell' '$config_guess'`);
+
+      # If we didn't get anything usable, give up.
       die "$0: could not run $config_guess, cannot proceed, sorry"
         if ! $guessed_platform;
 
@@ -272,19 +325,24 @@
 
 =item C<platform_name($canonical_host)>
 
-Convert ORIG_PLATFORM, a canonical host name as returned by
-C<config.guess>, into a TeX Live platform name.
+Convert the C<$canonical_host> argument, a system description as
+returned by C<config.guess>, into a TeX Live platform name, that is, a
+name used as a subdirectory of our C<bin/> dir. Our names have the
+form CPU-OS, for example, C<x86_64-linux>.
 
-CPU type is determined by a regexp, and any C</^i.86/> name is replaced
-by C<i386>.
-
-For the OS value we need a list because what's returned is not likely to
+We need this because what's returned from C<config.,guess> does not
 match our historical names, e.g., C<config.guess> returns C<linux-gnu>
-but we need C<linux>. This list contains old OSs which are no longer
-supported, just in case.
+but we need C<linux>.
 
-If the environment variable TEXLIVE_OS_NAME is set, it is used as-is.
+The C<CPU> part of our name is always taken from the argument, with
+various transformation.
 
+For the C<OS> part, if the environment variable C<TEXLIVE_OS_NAME> is
+set, it is used as-is. Otherwise we do our best to figure it out.
+
+This function still handles old systems which are no longer supported,
+just in case.
+
 =cut
 
 sub platform_name {
@@ -2527,6 +2585,23 @@
       setup_one(($isWin ? "w32" : "unix"), $defprog,
                  "$bindir/$dltype/$defprog.$platform", "--version", $tlfirst);
   }
+  # check for wget/ssl support
+  if (member("wget", @working_downloaders)) {
+    debug("TLUtils::setup_programs: checking for ssl enabled wget\n");
+    my @lines = `$::progs{'wget'} --version 2>&1`;
+    if (grep(/\+ssl/, @lines)) {
+      $::progs{'options'}{'wget-ssl'} = 1;
+      my @wgetargs = @{$TeXLive::TLConfig::FallbackDownloaderArgs{'wget'}};
+      # can't push new arg at end of list because builtin list ends with
+      # -O to set the output file.
+      unshift (@wgetargs, '--no-check-certificate');
+      $TeXLive::TLConfig::FallbackDownloaderArgs{'wget'} = \@wgetargs;
+      debug("TLUtils::setup_programs: wget has ssl, final wget args: @{$TeXLive::TLConfig::FallbackDownloaderArgs{'wget'}}\n");
+    } else {
+      debug("TLUtils::setup_programs: wget without ssl support found\n");
+      $::progs{'options'}{'wget-ssl'} = 0;
+    }
+  }
   $::progs{'working_downloaders'} = [ @working_downloaders ];
   my @working_compressors;
   for my $defprog (sort 
@@ -3927,7 +4002,22 @@
   if (TeXLive::TLUtils::member("curl", @working_downloaders)) {
     return query_ctan_mirror_curl();
   } elsif (TeXLive::TLUtils::member("wget", @working_downloaders)) {
-    return query_ctan_mirror_wget();
+    if ($::progs{'options'}{'wget-ssl'}) {
+      # we need ssl enabled wget to query ctan
+      return query_ctan_mirror_wget();
+    } else {
+      tlwarn(<<END_NO_SSL);
+TLUtils::query_ctan_mirror: neither curl nor an ssl-enabled wget is
+  available, so no CTAN mirror can be resolved via https://mirror.ctan.org.
+
+  Please install curl or ssl-enabled wget; otherwise, please pick an
+  http (not https) mirror from the list at https://ctan.org/mirrors/mirmon.
+
+  To report a bug about this, please rerun your command with -vv and
+  include the resulting output with the report.
+END_NO_SSL
+      return;
+    }
   } else {
     return;
   }

Modified: trunk/Master/texmf-dist/scripts/texlive/NEWS
===================================================================
--- trunk/Master/texmf-dist/scripts/texlive/NEWS	2021-06-19 11:01:47 UTC (rev 59635)
+++ trunk/Master/texmf-dist/scripts/texlive/NEWS	2021-06-19 15:12:23 UTC (rev 59636)
@@ -1,6 +1,8 @@
 (This file public domain.  Originally written by Norbert Preining and
 Karl Berry, 2010.)
 
+<li>omit “done running” line for fmtutil.
+
 <p><b>tlmgr 59208 (released 15may21):</b>
 <li>still trying to optimize the ssl multiplexor resolution.
 

Added: trunk/Master/tlpkg/dev/profiles/TLbasic.pro
===================================================================
--- trunk/Master/tlpkg/dev/profiles/TLbasic.pro	                        (rev 0)
+++ trunk/Master/tlpkg/dev/profiles/TLbasic.pro	2021-06-19 15:12:23 UTC (rev 59636)
@@ -0,0 +1,24 @@
+# $Id$
+selected_scheme scheme-basic
+TEXDIR /tmp/ki
+TEXMFCONFIG /tmp/ki/user/conf
+TEXMFHOME /tmp/ki/user/xmf
+TEXMFLOCAL /tmp/ki/texmf-local
+TEXMFSYSCONFIG /tmp/ki/sys/conf
+TEXMFSYSVAR /tmp/ki/sys/var
+TEXMFVAR /tmp/ki/user/var
+binary_x86_64-linux 1
+collection-basic 1
+option_desktop_integration 1
+option_doc 0
+option_file_assocs 1
+option_fmt 1
+option_letter 0
+option_path 0
+option_post_code 1
+option_src 0
+option_sys_bin /usr/local/bin
+option_sys_info /usr/local/info
+option_sys_man /usr/local/man
+option_w32_multi_user 0
+option_write18_restricted 1


Property changes on: trunk/Master/tlpkg/dev/profiles/TLbasic.pro
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+Date Author Id Revision
\ No newline at end of property
Modified: trunk/Master/tlpkg/dev/profiles/TLctx.pro
===================================================================
--- trunk/Master/tlpkg/dev/profiles/TLctx.pro	2021-06-19 11:01:47 UTC (rev 59635)
+++ trunk/Master/tlpkg/dev/profiles/TLctx.pro	2021-06-19 15:12:23 UTC (rev 59636)
@@ -13,7 +13,6 @@
 binary_i386-linux 1
 collection-basic 1
 collection-context 1
-from_dvd 0
 option_desktop_integration 1
 option_doc 0
 option_file_assocs 1

Modified: trunk/Master/tlpkg/tlpsrc/scheme-context.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/scheme-context.tlpsrc	2021-06-19 11:01:47 UTC (rev 59635)
+++ trunk/Master/tlpkg/tlpsrc/scheme-context.tlpsrc	2021-06-19 15:12:23 UTC (rev 59636)
@@ -5,15 +5,15 @@
 depend collection-metapost
 #
 # Polish and OpenType Math fonts are nice to have
-depend tex-gyre
-depend tex-gyre-math
 depend antt
+depend asana-math
+depend gentium-tug
 depend iwona
 depend kurier
 depend poltawski
+depend tex-gyre
+depend tex-gyre-math
 depend xits
-depend Asana-Math
-depend gentium-tug
 #
 # These are needed for TeX Gyre Math
 depend pxfonts



More information about the tex-live-commits mailing list.