tlbuild: tlmgr CONFIGURATION FILE FOR TLMGR

 
 B.7 CONFIGURATION FILE FOR TLMGR
 ================================
 
 'tlmgr' reads two configuration files: one is system-wide, in
 'TEXMFSYSCONFIG/tlmgr/config', and the other is user-specific, in
 'TEXMFCONFIG/tlmgr/config'.  The user-specific one is the default for
 the 'conf tlmgr' action.  (Run 'kpsewhich -var-value=TEXMFSYSCONFIG' or
 '... TEXMFCONFIG ...' to see the actual directory names.)
 
    A few defaults corresponding to command-line options can be set in
 these configuration files.  In addition, the system-wide file can
 contain a directive to restrict the allowed actions.
 
    In these config files, empty lines and lines starting with # are
 ignored.  All other lines must look like:
 
   key = value
 
    where the spaces are optional but the '=' is required.
 
    The allowed keys are:
 
 'auto-remove =' 0 or 1 (default 1), same as command-line option.
 
 'gui-expertmode =' 0 or 1 (default 1). This switches between the full GUI and a simplified GUI with only the most common settings.
 
 'gui-lang =' _llcode_, with a language code value as with the command-line option.
 
 'no-checksums =' 0 or 1 (default 0, see below).
 
 'persistent-downloads =' 0 or 1 (default 1), same as command-line option.
 
 'require-verification =' 0 or 1 (default 0), same as command-line option.
 
 'tkfontscale =' _floating-point number_ (default 1.0); scaling factor for fonts in the Tk-based frontends.
 
 'update-exclude =' _comma-separated list of packages_ (no spaces allowed). Same as the command line option '--exclude' for the 'update' action.
 
 'verify-downloads =' 0 or 1 (default 1), same as command-line option.
 
    The system-wide config file can contain one additional key:
 
 'allowed-actions =' _action1_[,_action2_,...] The value is a comma-separated list (no spaces) of 'tlmgr' actions which are allowed to be executed when 'tlmgr' is invoked in system mode (that is, without '--usermode'). This allows distributors to include 'tlmgr' in their packaging, but allow only a restricted set of actions that do not interfere with their distro package manager. For native TeX Live installations, it doesn't make sense to set this.
 
    Finally, the 'no-checksums' key needs more explanation.  By default,
 package checksums computed and stored on the server (in the TLPDB) are
 compared to checksums computed locally after downloading.
 'no-checksums' disables this process.  The checksum algorithm is
 SHA-512.  Your system must have one of (looked for in this order) the
 Perl 'Digest::SHA' module, the 'openssl' program
 (<https://openssl.org>), the 'sha512sum' program (from GNU Coreutils,
 <https://www.gnu.org/software/coreutils>), or finally the 'shasum'
 program (just to support old Macs).  If none of these are available, a
 warning is issued and 'tlmgr' proceeds without checking checksums.
 'no-checksums' avoids the warning.  (Incidentally, other SHA
 implementations, such as the pure Perl and pure Lua modules, are much
 too slow to be usable in our context.)