summaryrefslogtreecommitdiff
path: root/Master/texmf
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-03-09 03:35:46 +0000
committerKarl Berry <karl@freefriends.org>2013-03-09 03:35:46 +0000
commitb16e9cf88cab0233b4029c885b87caf3e012bf75 (patch)
tree50cbc1ddf3489227cab727fde0e1dc40ac562fc7 /Master/texmf
parent30e72c18e20a9b5beb130bed42a126a8925e7329 (diff)
/home/texlive/karl/Master/tlpkg/bin/tl-update-auto
git-svn-id: svn://tug.org/texlive/trunk@29317 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf')
-rw-r--r--Master/texmf/doc/man/man1/tlmgr.11165
-rw-r--r--Master/texmf/doc/man/man1/tlmgr.man1.pdfbin73333 -> 74525 bytes
2 files changed, 592 insertions, 573 deletions
diff --git a/Master/texmf/doc/man/man1/tlmgr.1 b/Master/texmf/doc/man/man1/tlmgr.1
index cf20772df57..5652c205c3f 100644
--- a/Master/texmf/doc/man/man1/tlmgr.1
+++ b/Master/texmf/doc/man/man1/tlmgr.1
@@ -124,7 +124,7 @@
.\" ========================================================================
.\"
.IX Title "TLMGR 1"
-.TH TLMGR 1 "2013-01-31" "perl v5.16.2" "User Contributed Perl Documentation"
+.TH TLMGR 1 "2013-03-08" "perl v5.16.2" "User Contributed Perl Documentation"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -285,220 +285,6 @@ Gives this help information (same as \f(CW\*(C`\-\-help\*(C'\fR).
Gives version information (same as \f(CW\*(C`\-\-version\*(C'\fR).
.PP
If \f(CW\*(C`\-v\*(C'\fR has been given the revisions of the used modules are reported, too.
-.SS "gui"
-.IX Subsection "gui"
-Start the graphical user interface. See \fB\s-1GUI\s0\fR below.
-.SS "install [\fIoption\fP]... \fIpkg\fP..."
-.IX Subsection "install [option]... pkg..."
-Install each \fIpkg\fR given on the command line. By default this installs
-all packages on which the given \fIpkg\fRs are dependent, also. Options:
-.IP "\fB\-\-file\fR" 4
-.IX Item "--file"
-Instead of fetching a package from the installation repository, use
-the packages files given on the command line. These files need
-to be proper TeX Live package files (with contained tlpobj file).
-.IP "\fB\-\-reinstall\fR" 4
-.IX Item "--reinstall"
-Reinstall a package (including dependencies for collections) even if it
-seems to be already installed (i.e, is present in the \s-1TLPDB\s0). This is
-useful to recover from accidental removal of files in the hierarchy.
-.Sp
-When re-installing, only dependencies on normal packages are followed
-(not those of category Scheme or Collection).
-.IP "\fB\-\-no\-depends\fR" 4
-.IX Item "--no-depends"
-Do not install dependencies. (By default, installing a package ensures
-that all dependencies of this package are fulfilled.)
-.IP "\fB\-\-no\-depends\-at\-all\fR" 4
-.IX Item "--no-depends-at-all"
-When you install a package which ships binary files the respective
-binary package will also be installed. That is, for a package \f(CW\*(C`foo\*(C'\fR,
-the package \f(CW\*(C`foo.i386\-linux\*(C'\fR will also be installed on an \f(CW\*(C`i386\-linux\*(C'\fR
-system. This switch suppresses this behavior, and also implies
-\&\f(CW\*(C`\-\-no\-depends\*(C'\fR. Don't use it unless you are sure of what you are
-doing.
-.IP "\fB\-\-dry\-run\fR" 4
-.IX Item "--dry-run"
-Nothing is actually installed; instead, the actions to be performed are
-written to the terminal.
-.IP "\fB\-\-force\fR" 4
-.IX Item "--force"
-If updates to \f(CW\*(C`tlmgr\*(C'\fR itself (or other parts of the basic
-infrastructure) are present, \f(CW\*(C`tlmgr\*(C'\fR will bail out and not perform the
-installation unless this option is given. Not recommended.
-.SS "update [\fIoption\fP]... [\fIpkg\fP]..."
-.IX Subsection "update [option]... [pkg]..."
-Updates the packages given as arguments to the latest version available
-at the installation source. Either \f(CW\*(C`\-\-all\*(C'\fR or at least one \fIpkg\fR name
-must be specified. Options:
-.IP "\fB\-\-all\fR" 4
-.IX Item "--all"
-Update all installed packages except for \f(CW\*(C`tlmgr\*(C'\fR itself. Thus, if
-updates to \f(CW\*(C`tlmgr\*(C'\fR itself are present, this will simply give an error,
-unless also the option \f(CW\*(C`\-\-force\*(C'\fR or \f(CW\*(C`\-\-self\*(C'\fR is given. (See below.)
-.Sp
-In addition to updating the installed packages, during the update of a
-collection the local installation is (by default) synchronized to the
-status of the collection on the server, for both additions and removals.
-.Sp
-This means that if a package has been removed on the server (and thus
-has also been removed from the respective collection), \f(CW\*(C`tlmgr\*(C'\fR will
-remove the package in the local installation. This is called
-``auto\-remove'' and is announced as such when using the option
-\&\f(CW\*(C`\-\-list\*(C'\fR. This auto-removal can be suppressed using the option
-\&\f(CW\*(C`\-\-no\-auto\-remove\*(C'\fR.
-.Sp
-Analogously, if a package has been added to a collection on the server
-that is also installed locally, it will be added to the local
-installation. This is called ``auto\-install'' and is announced as such
-when using the option \f(CW\*(C`\-\-list\*(C'\fR. This auto-installation can be
-suppressed using the option \f(CW\*(C`\-\-no\-auto\-install\*(C'\fR.
-.Sp
-An exception to the collection dependency checks (including the
-auto-installation of packages just mentioned) are those that have been
-``forcibly removed'' by you, that is, you called \f(CW\*(C`tlmgr remove \-\-force\*(C'\fR
-on them. (See the \f(CW\*(C`remove\*(C'\fR action documentation.) To reinstall any
-such forcibly removed packages use \f(CW\*(C`\-\-reinstall\-forcibly\-removed\*(C'\fR.
-.Sp
-If you want to exclude some packages from the current update run (e.g.,
-due to a slow link), see the \f(CW\*(C`\-\-exclude\*(C'\fR option below.
-.IP "\fB\-\-self\fR" 4
-.IX Item "--self"
-Update \f(CW\*(C`tlmgr\*(C'\fR itself (that is, the infrastructure packages) if updates
-to it are present. On Windows this includes updates to the private Perl
-interpreter shipped inside TeX Live.
-.Sp
-If this option is given together with either \f(CW\*(C`\-\-all\*(C'\fR or a list of
-packages, then \f(CW\*(C`tlmgr\*(C'\fR will be updated first and, if this update
-succeeds, the new version will be restarted to complete the rest of the
-updates.
-.Sp
-In short:
-.Sp
-.Vb 4
-\& tlmgr update \-\-self # update infrastructure only
-\& tlmgr update \-\-self \-\-all # update infrastructure and all packages
-\& tlmgr update \-\-force \-\-all # update all packages but *not* infrastructure
-\& # ... this last at your own risk, not recommended!
-.Ve
-.IP "\fB\-\-dry\-run\fR" 4
-.IX Item "--dry-run"
-Nothing is actually installed; instead, the actions to be performed are
-written to the terminal. This is a more detailed report than \f(CW\*(C`\-\-list\*(C'\fR.
-.IP "\fB\-\-list\fR [\fIpkg\fR]" 4
-.IX Item "--list [pkg]"
-Concisely list the packages which would be updated, newly installed, or
-removed, without actually changing anything.
-If \f(CW\*(C`\-\-all\*(C'\fR is also given, all available updates are listed.
-If \f(CW\*(C`\-\-self\*(C'\fR is given, but not \f(CW\*(C`\-\-all\*(C'\fR, only updates to the
-critical packages (tlmgr, texlive infrastructure, perl on Windows, etc.)
-are listed.
-If neither \f(CW\*(C`\-\-all\*(C'\fR nor \f(CW\*(C`\-\-self\*(C'\fR is given, and in addition no \fIpkg\fR is
-given, then \f(CW\*(C`\-\-all\*(C'\fR is assumed (thus, \f(CW\*(C`tlmgr update \-\-list\*(C'\fR is the
-same as \f(CW\*(C`tlmgr update \-\-list \-\-all\*(C'\fR).
-If neither \f(CW\*(C`\-\-all\*(C'\fR nor \f(CW\*(C`\-\-self\*(C'\fR is given, but specific package names are
-given, those packages are checked for updates.
-.IP "\fB\-\-exclude\fR \fIpkg\fR" 4
-.IX Item "--exclude pkg"
-Exclude \fIpkg\fR from the update process. If this option is given more
-than once, its arguments accumulate.
-.Sp
-An argument \fIpkg\fR excludes both the package \fIpkg\fR itself and all
-its related platform-specific packages \fIpkg.ARCH\fR. For example,
-.Sp
-.Vb 1
-\& tlmgr update \-\-all \-\-exclude a2ping
-.Ve
-.Sp
-will not update \f(CW\*(C`a2ping\*(C'\fR, \f(CW\*(C`a2ping.i386\-linux\*(C'\fR, or
-any other \f(CW\*(C`a2ping.\*(C'\fR\fI\s-1ARCH\s0\fR package.
-.Sp
-If this option specifies a package that would otherwise be a candidate
-for auto-installation, auto-removal, or reinstallation of a forcibly
-removed package, \f(CW\*(C`tlmgr\*(C'\fR quits with an error message. Excludes are not
-supported in these circumstances.
-.IP "\fB\-\-no\-auto\-remove\fR [\fIpkg\fR]..." 4
-.IX Item "--no-auto-remove [pkg]..."
-Under normal circumstances \f(CW\*(C`tlmgr\*(C'\fR tries to remove packages which have
-disappeared on the server, as described above under \f(CW\*(C`\-\-all\*(C'\fR. This
-option prevents any such removals, either for all packages (with
-\&\f(CW\*(C`\-\-all\*(C'\fR), or the given \fIpkg\fR names.
-.IP "\fB\-\-no\-auto\-install\fR [\fIpkg\fR]..." 4
-.IX Item "--no-auto-install [pkg]..."
-Under normal circumstances \f(CW\*(C`tlmgr\*(C'\fR will install packages which are new
-on the server, as described above under \f(CW\*(C`\-\-all\*(C'\fR. This option prevents
-any such automatic installation, either for all packages (with
-\&\f(CW\*(C`\-\-all\*(C'\fR), or the given \fIpkg\fR names.
-.Sp
-Furthermore, after the \f(CW\*(C`tlmgr\*(C'\fR run using this has finished, the
-packages that would have been auto-installed \fIwill be considered as
-forcibly removed\fR. So, if \f(CW\*(C`foobar\*(C'\fR is the only new package on the
-server, then
-.Sp
-.Vb 1
-\& tlmgr update \-\-all \-\-no\-auto\-install
-.Ve
-.Sp
-is equivalent to
-.Sp
-.Vb 2
-\& tlmgr update \-\-all
-\& tlmgr remove \-\-force foobar
-.Ve
-.IP "\fB\-\-reinstall\-forcibly\-removed\fR" 4
-.IX Item "--reinstall-forcibly-removed"
-Under normal circumstances \f(CW\*(C`tlmgr\*(C'\fR will not install packages that have
-been forcibly removed by the user; that is, removed with \f(CW\*(C`remove
-\&\-\-force\*(C'\fR, or whose installation was prohibited by \f(CW\*(C`\-\-no\-auto\-install\*(C'\fR
-during an earlier update.
-.Sp
-This option makes \f(CW\*(C`tlmgr\*(C'\fR ignore the forcible removals and re-install
-all such packages. This can be used to completely synchronize an
-installation with the server's idea of what is available:
-.Sp
-.Vb 1
-\& tlmgr update \-\-reinstall\-forcibly\-removed \-\-all
-.Ve
-.IP "\fB\-\-backup\fR and \fB\-\-backupdir\fR \fIdirectory\fR" 4
-.IX Item "--backup and --backupdir directory"
-These two options control the creation of backups of packages \fIbefore\fR
-updating; that is, backup of packages as currently installed. If
-neither of these options are given, no backup package will be saved. If
-\&\f(CW\*(C`\-\-backupdir\*(C'\fR is given and specifies a writable directory then a backup
-will be made in that location. If only \f(CW\*(C`\-\-backup\*(C'\fR is given, then a
-backup will be made to the directory previously set via the \f(CW\*(C`option\*(C'\fR
-action (see below). If both are given then a backup will be made to the
-specified \fIdirectory\fR.
-.Sp
-You can set options via the \f(CW\*(C`option\*(C'\fR action to automatically create
-backups for all packages, and/or keep only a certain number of
-backups. Please see the \f(CW\*(C`option\*(C'\fR action for details.
-.Sp
-\&\f(CW\*(C`tlmgr\*(C'\fR always makes a temporary backup when updating packages, in case
-of download or other failure during an update. In contrast, the purpose
-of this \f(CW\*(C`\-\-backup\*(C'\fR option is to allow you to save a persistent backup
-in case the actual \fIcontent\fR of the update causes problems, e.g.,
-introduces an incompatibility.
-.Sp
-The \f(CW\*(C`restore\*(C'\fR action explains how to restore from a backup.
-.IP "\fB\-\-no\-depends\fR" 4
-.IX Item "--no-depends"
-If you call for updating a package normally all depending packages
-will also be checked for updates and updated if necessary. This switch
-suppresses this behavior.
-.IP "\fB\-\-no\-depends\-at\-all\fR" 4
-.IX Item "--no-depends-at-all"
-See above under \fBinstall\fR (and beware).
-.IP "\fB\-\-force\fR" 4
-.IX Item "--force"
-Force update of normal packages, without updating \f(CW\*(C`tlmgr\*(C'\fR itself
-(unless the \f(CW\*(C`\-\-self\*(C'\fR option is also given). Not recommended.
-.Sp
-Also, \f(CW\*(C`update \-\-list\*(C'\fR is still performed regardless of this option.
-.PP
-If the package on the server is older than the package already installed
-(e.g., if the selected mirror is out of date), \f(CW\*(C`tlmgr\*(C'\fR does not
-downgrade. Also, packages for uninstalled platforms are not installed.
.SS "backup [\-\-clean[=\fIN\fP]] [\-\-backupdir \fIdir\fP] [\-\-all | \fIpkg\fP]..."
.IX Subsection "backup [--clean[=N]] [--backupdir dir] [--all | pkg]..."
If the \f(CW\*(C`\-\-clean\*(C'\fR option is not specified, this action makes a backup of
@@ -536,107 +322,293 @@ of packages together with this option, as desired.
.IX Item "--dry-run"
Nothing is actually backed up or removed; instead, the actions to be
performed are written to the terminal.
-.SS "restore [\-\-backupdir \fIdir\fP] [\-\-all | \fIpkg\fP [\fIrev\fP]]"
-.IX Subsection "restore [--backupdir dir] [--all | pkg [rev]]"
-Restore a package from a previously-made backup.
+.SS "candidates"
+.IX Subsection "candidates"
+.IP "\fBcandidates \f(BIpkg\fB\fR" 4
+.IX Item "candidates pkg"
+Shows the available candidate repositories for package \fIpkg\fR.
+See \*(L"\s-1MULTIPLE\s0 \s-1REPOSITORIES\s0\*(R" below.
+.SS "check [\fIoption\fP]... [files|depends|executes|runfiles|all]"
+.IX Subsection "check [option]... [files|depends|executes|runfiles|all]"
+Executes one (or all) check(s) on the consistency of the installation.
+.IP "\fBfiles\fR" 4
+.IX Item "files"
+Checks that all files listed in the local \s-1TLPDB\s0 (\f(CW\*(C`texlive.tlpdb\*(C'\fR) are
+actually present, and lists those missing.
+.IP "\fBdepends\fR" 4
+.IX Item "depends"
+Lists those packages which occur as dependencies in an installed collections,
+but are themselves not installed, and those packages that are not
+contained in any collection.
+.Sp
+If you call \f(CW\*(C`tlmgr check collections\*(C'\fR this test will be carried out
+instead since former versions for \f(CW\*(C`tlmgr\*(C'\fR called it that way.
+.IP "\fBexecutes\fR" 4
+.IX Item "executes"
+Check that the files referred to by \f(CW\*(C`execute\*(C'\fR directives in the TeX
+Live Database are present.
+.IP "\fBrunfiles\fR" 4
+.IX Item "runfiles"
+List those filenames that are occurring more than one time in the runfiles.
.PP
-If \f(CW\*(C`\-\-all\*(C'\fR is given, try to restore the latest revision of all
-package backups found in the backup directory.
+Options:
+.IP "\fB\-\-use\-svn\fR" 4
+.IX Item "--use-svn"
+Use the output of \f(CW\*(C`svn status\*(C'\fR instead of listing the files; for
+checking the \s-1TL\s0 development repository.
+.SS "conf [texmf|tlmgr [\fIkey\fP [\fIvalue\fP]]]"
+.IX Subsection "conf [texmf|tlmgr [key [value]]]"
+With only \f(CW\*(C`conf\*(C'\fR, show general configuration information for TeX Live,
+including active configuration files, path settings, and more. This is
+like the \f(CW\*(C`texconfig conf\*(C'\fR call, but works on all supported platforms.
.PP
-Otherwise, if neither \fIpkg\fR nor \fIrev\fR are given, list the available backup
-revisions for all packages.
+With either \f(CW\*(C`conf texmf\*(C'\fR or \f(CW\*(C`conf tlmgr\*(C'\fR given in addition, shows all
+key/value pairs (i.e., all settings) as saved in \f(CW\*(C`ROOT/texmf.cnf\*(C'\fR or
+the tlmgr configuration file (see below), respectively.
.PP
-With \fIpkg\fR given but no \fIrev\fR, list all available backup revisions of
-\&\fIpkg\fR.
+If \fIkey\fR is given in addition, shows the value of only that given
+\&\fIkey\fR in the respective file.
.PP
-When listing available packages tlmgr shows the revision and in
-parenthesis the creation time if available (in format yyyy-mm-dd hh:mm).
+If \fIvalue\fR is given in addition, \fIkey\fR is set to \fIvalue\fR in the
+respective file. \fINo error checking is done!\fR
.PP
-With both \fIpkg\fR and \fIrev\fR, tries to restore the package from the
-specified backup.
+Practical application: if the execution of (some or all) system commands
+via \f(CW\*(C`\ewrite18\*(C'\fR was left enabled during installation, you can disable
+it afterwards:
+.PP
+.Vb 1
+\& tlmgr conf texmf shell_escape 0
+.Ve
+.PP
+Warning: The general facility is here, but tinkering with settings in
+this way is very strongly discouraged. Again, no error checking is
+done, so any sort of breakage is possible.
+.SS "dump-tlpdb [\-\-local|\-\-remote]"
+.IX Subsection "dump-tlpdb [--local|--remote]"
+Dump complete local or remote \s-1TLPDB\s0 to standard output, as-is. The
+output is analogous to the \f(CW\*(C`\-\-machine\-readable\*(C'\fR output; see
+\&\*(L"MACHINE-READABLE \s-1OUTPUT\s0\*(R" section.
.PP
Options:
-.IP "\fB\-\-all\fR" 4
-.IX Item "--all"
-Try to restore the latest revision of all package backups found in the
-backup directory. Additional non-option arguments (like \fIpkg\fR) are not
-allowed.
-.IP "\fB\-\-backupdir\fR \fIdirectory\fR" 4
-.IX Item "--backupdir directory"
-Specify the directory where the backups are to be found. If not given it
-will be taken from the configuration setting in the \s-1TLPDB\s0.
-.IP "\fB\-\-dry\-run\fR" 4
-.IX Item "--dry-run"
-Nothing is actually restored; instead, the actions to be performed are
-written to the terminal.
-.IP "\fB\-\-force\fR" 4
-.IX Item "--force"
-Don't ask questions.
-.SS "remove [\fIoption\fP]... \fIpkg\fP..."
-.IX Subsection "remove [option]... pkg..."
-Remove each \fIpkg\fR specified. Removing a collection removes all package
-dependencies (unless \f(CW\*(C`\-\-no\-depends\*(C'\fR is specified), but not any
-collection dependencies of that collection. However, when removing a
-package, dependencies are never removed. Options:
+.IP "\fB\-\-local\fR" 4
+.IX Item "--local"
+Dump the local tlpdb.
+.IP "\fB\-\-remote\fR" 4
+.IX Item "--remote"
+Dump the remote tlpdb.
+.PP
+Exactly one of \f(CW\*(C`\-\-local\*(C'\fR and \f(CW\*(C`\-\-remote\*(C'\fR must be given.
+.PP
+In either case, the first line of the output specifies the repository
+location, in this format:
+.PP
+.Vb 1
+\& "location\-url" "\et" location
+.Ve
+.PP
+where \f(CW\*(C`location\-url\*(C'\fR is the literal field name, followed by a tab, and
+\&\fIlocation\fR is the file or url to the repository.
+.PP
+Line endings may be either \s-1LF\s0 or \s-1CRLF\s0 depending on the current platform.
+.SS "generate [\fIoption\fP]... \fIwhat\fP"
+.IX Subsection "generate [option]... what"
+.IP "\fBgenerate language\fR" 4
+.IX Item "generate language"
+.PD 0
+.IP "\fBgenerate language.dat\fR" 4
+.IX Item "generate language.dat"
+.IP "\fBgenerate language.def\fR" 4
+.IX Item "generate language.def"
+.IP "\fBgenerate language.dat.lua\fR" 4
+.IX Item "generate language.dat.lua"
+.IP "\fBgenerate fmtutil\fR" 4
+.IX Item "generate fmtutil"
+.PD
+.PP
+The \f(CW\*(C`generate\*(C'\fR action overwrites any manual changes made in the
+respective files: it recreates them from scratch based on the
+information of the installed packages, plus local adaptions.
+The TeX Live installer and \f(CW\*(C`tlmgr\*(C'\fR routinely call \f(CW\*(C`generate\*(C'\fR for
+all of these files.
+.PP
+For managing your own fonts, please read the \f(CW\*(C`updmap \-\-help\*(C'\fR
+information and/or <http://tug.org/fonts/fontinstall.html>.
+.PP
+In more detail: \f(CW\*(C`generate\*(C'\fR remakes any of the configuration files
+\&\f(CW\*(C`language.dat\*(C'\fR, \f(CW\*(C`language.def\*(C'\fR, \f(CW\*(C`language.dat.lua\*(C'\fR, and
+\&\f(CW\*(C`fmtutil.cnf\*(C'\fR, from the information present in the local \s-1TLPDB\s0, plus
+locally-maintained files.
+.PP
+The locally-maintained files are \f(CW\*(C`language\-local.dat\*(C'\fR,
+\&\f(CW\*(C`language\-local.def\*(C'\fR, \f(CW\*(C`language\-local.dat.lua\*(C'\fR, or
+\&\f(CW\*(C`fmtutil\-local.cnf\*(C'\fR, searched for in \f(CW\*(C`TEXMFLOCAL\*(C'\fR in the respective
+directories. If local additions are present, the final file is made by
+starting with the main file, omitting any entries that the local file
+specifies to be disabled, and finally appending the local file.
+.PP
+(Historical note: The formerly supported \f(CW\*(C`updmap\-local.cfg\*(C'\fR is no longer
+read, since \f(CW\*(C`updmap\*(C'\fR now supports multiple \f(CW\*(C`updmap.cfg\*(C'\fR files. Thus,
+local additions can and should be put into an \f(CW\*(C`updmap.cfg\*(C'\fR file in
+\&\f(CW\*(C`TEXMFLOCAL\*(C'\fR. The \f(CW\*(C`generate updmap\*(C'\fR action no longer exists.)
+.PP
+Local files specify entries to be disabled with a comment line, namely
+one of these:
+.PP
+.Vb 3
+\& #!NAME
+\& %!NAME
+\& \-\-!NAME
+.Ve
+.PP
+where \f(CW\*(C`fmtutil.cnf\*(C'\fR uses \f(CW\*(C`#\*(C'\fR, \f(CW\*(C`language.dat\*(C'\fR and \f(CW\*(C`language.def\*(C'\fR use
+\&\f(CW\*(C`%\*(C'\fR, and \f(CW\*(C`language.dat.lua\*(C'\fR use \f(CW\*(C`\-\-\*(C'\fR. In all cases, the \fIname\fR is
+the respective format name or hyphenation pattern identifier.
+Examples:
+.PP
+.Vb 3
+\& #!pdflatex
+\& %!german
+\& \-\-!usenglishmax
+.Ve
+.PP
+(Of course, you're not likely to actually want to disable those
+particular items. They're just examples.)
+.PP
+After such a disabling line, the local file can include another entry
+for the same item, if a different definition is desired. In general,
+except for the special disabling lines, the local files follow the same
+syntax as the master files.
+.PP
+The form \f(CW\*(C`generate language\*(C'\fR recreates all three files \f(CW\*(C`language.dat\*(C'\fR,
+\&\f(CW\*(C`language.def\*(C'\fR, and \f(CW\*(C`language.dat.lua\*(C'\fR, while the forms with an
+extension recreates only that given language file.
+.PP
+Options:
+.IP "\fB\-\-dest\fR \fIoutput_file\fR" 4
+.IX Item "--dest output_file"
+specifies the output file (defaults to the respective location in
+\&\f(CW\*(C`TEXMFSYSVAR\*(C'\fR). If \f(CW\*(C`\-\-dest\*(C'\fR is given to \f(CW\*(C`generate language\*(C'\fR, it
+serves as a basename onto which \f(CW\*(C`.dat\*(C'\fR will be appended for the name of
+the \f(CW\*(C`language.dat\*(C'\fR output file, \f(CW\*(C`.def\*(C'\fR will be appended to the value
+for the name of the \f(CW\*(C`language.def\*(C'\fR output file, and \f(CW\*(C`.dat.lua\*(C'\fR to the
+name of the \f(CW\*(C`language.dat.lua\*(C'\fR file. (This is just to avoid
+overwriting; if you want a specific name for each output file, we
+recommend invoking \f(CW\*(C`tlmgr\*(C'\fR twice.)
+.IP "\fB\-\-localcfg\fR \fIlocal_conf_file\fR" 4
+.IX Item "--localcfg local_conf_file"
+specifies the (optional) local additions (defaults to the respective
+location in \f(CW\*(C`TEXMFLOCAL\*(C'\fR).
+.IP "\fB\-\-rebuild\-sys\fR" 4
+.IX Item "--rebuild-sys"
+tells tlmgr to run necessary programs after config files have been
+regenerated. These are:
+\&\f(CW\*(C`fmtutil\-sys \-\-all\*(C'\fR after \f(CW\*(C`generate fmtutil\*(C'\fR,
+\&\f(CW\*(C`fmtutil\-sys \-\-byhyphen .../language.dat\*(C'\fR after \f(CW\*(C`generate language.dat\*(C'\fR,
+and
+\&\f(CW\*(C`fmtutil\-sys \-\-byhyphen .../language.def\*(C'\fR after \f(CW\*(C`generate language.def\*(C'\fR.
+.Sp
+These subsequent calls cause the newly-generated files to actually take
+effect. This is not done by default since those calls are lengthy
+processes and one might want to made several related changes in
+succession before invoking these programs.
+.PP
+The respective locations are as follows:
+.PP
+.Vb 4
+\& tex/generic/config/language.dat (and language\-local.dat);
+\& tex/generic/config/language.def (and language\-local.def);
+\& tex/generic/config/language.dat.lua (and language\-local.dat.lua);
+\& web2c/fmtutil.cnf (and fmtutil\-local.cnf);
+.Ve
+.SS "gui"
+.IX Subsection "gui"
+Start the graphical user interface. See \fB\s-1GUI\s0\fR below.
+.SS "info [\fIoption\fP...] [collections|schemes|\fIpkg\fP...]"
+.IX Subsection "info [option...] [collections|schemes|pkg...]"
+With no argument, lists all packages available at the package
+repository, prefixing those already installed with \f(CW\*(C`i\*(C'\fR.
+.PP
+With the single word \f(CW\*(C`collections\*(C'\fR or \f(CW\*(C`schemes\*(C'\fR as the argument, lists
+the request type instead of all packages.
+.PP
+With any other arguments, display information about \fIpkg\fR: the name,
+category, short and long description, installation status, and TeX Live
+revision number. If \fIpkg\fR is not locally installed, searches in the
+remote installation source.
+.PP
+It also displays information taken from the TeX Catalogue, namely the
+package version, date, and license. Consider these, especially the
+package version, as approximations only, due to timing skew of the
+updates of the different pieces. By contrast, the \f(CW\*(C`revision\*(C'\fR value
+comes directly from \s-1TL\s0 and is reliable.
+.PP
+The former actions \f(CW\*(C`show\*(C'\fR and \f(CW\*(C`list\*(C'\fR are merged into this action,
+but are still supported for backward compatibility.
+.PP
+Options:
+.IP "\fB\-\-list\fR" 4
+.IX Item "--list"
+If the option \f(CW\*(C`\-\-list\*(C'\fR is given with a package, the list of contained
+files is also shown, including those for platform-specific dependencies.
+When given with schemes and collections, \f(CW\*(C`\-\-list\*(C'\fR outputs their
+dependencies in a similar way.
+.IP "\fB\-\-only\-installed\fR" 4
+.IX Item "--only-installed"
+If this options is given, the installation source will
+not be used; only locally installed packages, collections, or schemes
+are listed.
+(Does not work for listing of packages for now)
+.IP "\fB\-\-taxonomy\fR" 4
+.IX Item "--taxonomy"
+.PD 0
+.IP "\fB\-\-keyword\fR" 4
+.IX Item "--keyword"
+.IP "\fB\-\-functionality\fR" 4
+.IX Item "--functionality"
+.IP "\fB\-\-characterization\fR" 4
+.IX Item "--characterization"
+.PD
+In addition to the normal data displayed, also display information for
+given packages from the corresponding taxonomy (or all of them). See
+\&\*(L"\s-1TAXONOMIES\s0\*(R" below for details.
+.SS "install [\fIoption\fP]... \fIpkg\fP..."
+.IX Subsection "install [option]... pkg..."
+Install each \fIpkg\fR given on the command line. By default this installs
+all packages on which the given \fIpkg\fRs are dependent, also. Options:
+.IP "\fB\-\-file\fR" 4
+.IX Item "--file"
+Instead of fetching a package from the installation repository, use
+the packages files given on the command line. These files need
+to be proper TeX Live package files (with contained tlpobj file).
+.IP "\fB\-\-reinstall\fR" 4
+.IX Item "--reinstall"
+Reinstall a package (including dependencies for collections) even if it
+seems to be already installed (i.e, is present in the \s-1TLPDB\s0). This is
+useful to recover from accidental removal of files in the hierarchy.
+.Sp
+When re-installing, only dependencies on normal packages are followed
+(not those of category Scheme or Collection).
.IP "\fB\-\-no\-depends\fR" 4
.IX Item "--no-depends"
-Do not remove dependent packages.
+Do not install dependencies. (By default, installing a package ensures
+that all dependencies of this package are fulfilled.)
.IP "\fB\-\-no\-depends\-at\-all\fR" 4
.IX Item "--no-depends-at-all"
-See above under \fBinstall\fR (and beware).
-.IP "\fB\-\-force\fR" 4
-.IX Item "--force"
-By default, removal of a package or collection that is a dependency of
-another collection or scheme is not allowed. With this option, the
-package will be removed unconditionally. Use with care.
-.Sp
-A package that has been removed using the \f(CW\*(C`\-\-force\*(C'\fR option because it
-is still listed in an installed collection or scheme will not be
-updated, and will be mentioned as \fBforcibly removed\fR in the output of
-\&\fBtlmgr update \-\-list\fR.
+When you install a package which ships binary files the respective
+binary package will also be installed. That is, for a package \f(CW\*(C`foo\*(C'\fR,
+the package \f(CW\*(C`foo.i386\-linux\*(C'\fR will also be installed on an \f(CW\*(C`i386\-linux\*(C'\fR
+system. This switch suppresses this behavior, and also implies
+\&\f(CW\*(C`\-\-no\-depends\*(C'\fR. Don't use it unless you are sure of what you are
+doing.
.IP "\fB\-\-dry\-run\fR" 4
.IX Item "--dry-run"
-Nothing is actually removed; instead, the actions to be performed are
+Nothing is actually installed; instead, the actions to be performed are
written to the terminal.
-.SS "repository"
-.IX Subsection "repository"
-.IP "\fBrepository list\fR" 4
-.IX Item "repository list"
-.PD 0
-.IP "\fBrepository list \f(BIpath|tag\fB\fR" 4
-.IX Item "repository list path|tag"
-.IP "\fBrepository add \f(BIpath\fB [\f(BItag\fB]\fR" 4
-.IX Item "repository add path [tag]"
-.IP "\fBrepository remove \f(BIpath|tag\fB\fR" 4
-.IX Item "repository remove path|tag"
-.IP "\fBrepository set \f(BIpath\fB[#\f(BItag\fB] [\f(BIpath\fB[#\f(BItag\fB] ...]\fR" 4
-.IX Item "repository set path[#tag] [path[#tag] ...]"
-.PD
-This action manages the list of repositories. See \*(L"\s-1MULTIPLE\s0
-\&\s-1REPOSITORIES\s0\*(R" below for detailed explanations.
-.Sp
-The first form (\f(CW\*(C`list\*(C'\fR) lists all configured repositories and the
-respective tags if set. If a path, url, or tag is given after the
-\&\f(CW\*(C`list\*(C'\fR keyword, it is interpreted as source from where to
-initialize a TeX Live Database and lists the contained packages.
-This can also be an up-to-now not used repository, both locally
-and remote. If one pass in addition \f(CW\*(C`\-\-with\-platforms\*(C'\fR, for each
-package the available platforms (if any) are listed, too.
-.Sp
-The third form (\f(CW\*(C`add\*(C'\fR) adds a repository
-(optionally attaching a tag) to the list of repositories. The forth
-form (\f(CW\*(C`remove\*(C'\fR) removes a repository, either by full path/url, or by
-tag. The last form (\f(CW\*(C`set\*(C'\fR) sets the list of repositories to the items
-given on the command line, not keeping previous settings
-.Sp
-In all cases, one of the repositories must be tagged as \f(CW\*(C`main\*(C'\fR;
-otherwise, all operations will fail!
-.SS "candidates"
-.IX Subsection "candidates"
-.IP "\fBcandidates \f(BIpkg\fB\fR" 4
-.IX Item "candidates pkg"
-Shows the available candidate repositories for package \fIpkg\fR.
-See \*(L"\s-1MULTIPLE\s0 \s-1REPOSITORIES\s0\*(R" below.
+.IP "\fB\-\-force\fR" 4
+.IX Item "--force"
+If updates to \f(CW\*(C`tlmgr\*(C'\fR itself (or other parts of the basic
+infrastructure) are present, \f(CW\*(C`tlmgr\*(C'\fR will bail out and not perform the
+installation unless this option is given. Not recommended.
.SS "option"
.IX Subsection "option"
.IP "\fBoption [show]\fR" 4
@@ -741,33 +713,6 @@ a sub-folder of the Start menu for \f(CW\*(C`tlmgr gui\*(C'\fR, documentation, e
\&\f(CW\*(C`postaction\*(C'\fR action). Finally, if \f(CW\*(C`multiuser\*(C'\fR is set, then adaptions
to the registry and the menus are done for all users on the system
instead of only the current user. All three options are on by default.
-.SS "conf [texmf|tlmgr [\fIkey\fP [\fIvalue\fP]]]"
-.IX Subsection "conf [texmf|tlmgr [key [value]]]"
-With only \f(CW\*(C`conf\*(C'\fR, show general configuration information for TeX Live,
-including active configuration files, path settings, and more. This is
-like the \f(CW\*(C`texconfig conf\*(C'\fR call, but works on all supported platforms.
-.PP
-With either \f(CW\*(C`conf texmf\*(C'\fR or \f(CW\*(C`conf tlmgr\*(C'\fR given in addition, shows all
-key/value pairs (i.e., all settings) as saved in \f(CW\*(C`ROOT/texmf.cnf\*(C'\fR or
-the tlmgr configuration file (see below), respectively.
-.PP
-If \fIkey\fR is given in addition, shows the value of only that given
-\&\fIkey\fR in the respective file.
-.PP
-If \fIvalue\fR is given in addition, \fIkey\fR is set to \fIvalue\fR in the
-respective file. \fINo error checking is done!\fR
-.PP
-Practical application: if the execution of (some or all) system commands
-via \f(CW\*(C`\ewrite18\*(C'\fR was left enabled during installation, you can disable
-it afterwards:
-.PP
-.Vb 1
-\& tlmgr conf texmf shell_escape 0
-.Ve
-.PP
-Warning: The general facility is here, but tinkering with settings in
-this way is very strongly discouraged. Again, no error checking is
-done, so any sort of breakage is possible.
.SS "paper"
.IX Subsection "paper"
.IP "\fBpaper [a4|letter]\fR" 4
@@ -800,6 +745,51 @@ Incidentally, this syntax of having a specific program name before the
longstanding \f(CW\*(C`texconfig\*(C'\fR script, which supports other configuration
settings for some programs, notably \f(CW\*(C`dvips\*(C'\fR. \f(CW\*(C`tlmgr\*(C'\fR does not support
those extra settings at present.
+.SS "path [\-\-w32mode=user|admin] [add|remove]"
+.IX Subsection "path [--w32mode=user|admin] [add|remove]"
+On Unix, merely adds or removes symlinks for binaries, man pages, and
+info pages in the system directories specified by the respective options
+(see the option description above). Does not change any
+initialization files, either system or personal.
+.PP
+On Windows, the registry part where the binary directory is added or
+removed is determined in the following way:
+.PP
+If the user has admin rights, and the option \f(CW\*(C`\-\-w32mode\*(C'\fR is not given,
+the setting \fIw32_multi_user\fR determines the location (i.e., if it is
+on then the system path, otherwise the user path is changed).
+.PP
+If the user has admin rights, and the option \f(CW\*(C`\-\-w32mode\*(C'\fR is given, this
+option determines the path to be adjusted.
+.PP
+If the user does not have admin rights, and the option \f(CW\*(C`\-\-w32mode\*(C'\fR
+is not given, and the setting \fIw32_multi_user\fR is off, the user path
+is changed, while if the setting \fIw32_multi_user\fR is on, a warning is
+issued that the caller does not have enough privileges.
+.PP
+If the user does not have admin rights, and the option \f(CW\*(C`\-\-w32mode\*(C'\fR
+is given, it must be \fBuser\fR and the user path will be adjusted. If a
+user without admin rights uses the option \f(CW\*(C`\-\-w32mode admin\*(C'\fR a warning
+is issued that the caller does not have enough privileges.
+.SS "pinning"
+.IX Subsection "pinning"
+The pinning action manages the pinning file, see Pinning for details.
+.IP "\fBpinning show\fR" 4
+.IX Item "pinning show"
+Shows the current pinning data.
+.IP "\fBpinning check\fR" 4
+.IX Item "pinning check"
+Not implemented at the moment.
+.IP "\fBpinning add \f(BIrepo\fB \f(BIpgkglob\fB [\f(BIpkgglob\fB]\fR" 4
+.IX Item "pinning add repo pgkglob [pkgglob]"
+Pins the packages specified by \fIpkgglob\fR to the repo \fIrepo\fR.
+.IP "\fBpinning remove \f(BIrepo\fB \f(BIpgkglob\fB [\f(BIpkgglob\fB]\fR" 4
+.IX Item "pinning remove repo pgkglob [pkgglob]"
+If there is a the very package glob <pkgglob> recorded in the pinning file
+for the given repo \fIrepo\fR, it is removed.
+.IP "\fBpinning remove \f(BIrepo\fB \-\-all\fR" 4
+.IX Item "pinning remove repo --all"
+Remove all pinning data for repo \fIrepo\fR.
.SS "platform list|add|remove \fIplatform\fP..."
.IX Subsection "platform list|add|remove platform..."
.SS "platform set \fIplatform\fP"
@@ -832,59 +822,123 @@ Options:
.IX Item "--dry-run"
Nothing is actually installed; instead, the actions to be performed are
written to the terminal.
+.SS "postaction [\-\-w32mode=user|admin] [\-\-fileassocmode=1|2] [\-\-all] [install|remove] [shortcut|fileassoc|script] [\fIpkg\fP]..."
+.IX Subsection "postaction [--w32mode=user|admin] [--fileassocmode=1|2] [--all] [install|remove] [shortcut|fileassoc|script] [pkg]..."
+Carry out the postaction \f(CW\*(C`shortcut\*(C'\fR, \f(CW\*(C`fileassoc\*(C'\fR, or \f(CW\*(C`script\*(C'\fR given
+as the second required argument in install or remove mode (which is the
+first required argument), for either the packages given on the command
+line, or for all if \f(CW\*(C`\-\-all\*(C'\fR is given.
+.PP
+If the option \f(CW\*(C`\-\-w32mode\*(C'\fR is given the value \f(CW\*(C`user\*(C'\fR, all actions will
+only be carried out in the user-accessible parts of the
+registry/filesystem, while the value \f(CW\*(C`admin\*(C'\fR selects the system-wide
+parts of the registry for the file associations. If you do not have
+enough permissions, using \f(CW\*(C`\-\-w32mode=admin\*(C'\fR will not succeed.
+.PP
+\&\f(CW\*(C`\-\-fileassocmode\*(C'\fR specifies the action for file associations. If it is
+set to 1 (the default), only new associations are added; if it is set to
+2, all associations are set to the TeX Live programs. (See also
+\&\f(CW\*(C`option fileassocs\*(C'\fR.)
.SS "print-platform"
.IX Subsection "print-platform"
Print the TeX Live identifier for the detected platform
(hardware/operating system) combination to standard output, and exit.
\&\f(CW\*(C`\-\-print\-arch\*(C'\fR is a synonym.
-.SS "info [\fIoption\fP...] [collections|schemes|\fIpkg\fP...]"
-.IX Subsection "info [option...] [collections|schemes|pkg...]"
-With no argument, lists all packages available at the package
-repository, prefixing those already installed with \f(CW\*(C`i\*(C'\fR.
+.SS "restore [\-\-backupdir \fIdir\fP] [\-\-all | \fIpkg\fP [\fIrev\fP]]"
+.IX Subsection "restore [--backupdir dir] [--all | pkg [rev]]"
+Restore a package from a previously-made backup.
.PP
-With the single word \f(CW\*(C`collections\*(C'\fR or \f(CW\*(C`schemes\*(C'\fR as the argument, lists
-the request type instead of all packages.
+If \f(CW\*(C`\-\-all\*(C'\fR is given, try to restore the latest revision of all
+package backups found in the backup directory.
.PP
-With any other arguments, display information about \fIpkg\fR: the name,
-category, short and long description, installation status, and TeX Live
-revision number. If \fIpkg\fR is not locally installed, searches in the
-remote installation source.
+Otherwise, if neither \fIpkg\fR nor \fIrev\fR are given, list the available backup
+revisions for all packages.
.PP
-It also displays information taken from the TeX Catalogue, namely the
-package version, date, and license. Consider these, especially the
-package version, as approximations only, due to timing skew of the
-updates of the different pieces. By contrast, the \f(CW\*(C`revision\*(C'\fR value
-comes directly from \s-1TL\s0 and is reliable.
+With \fIpkg\fR given but no \fIrev\fR, list all available backup revisions of
+\&\fIpkg\fR.
.PP
-The former actions \f(CW\*(C`show\*(C'\fR and \f(CW\*(C`list\*(C'\fR are merged into this action,
-but are still supported for backward compatibility.
+When listing available packages tlmgr shows the revision and in
+parenthesis the creation time if available (in format yyyy-mm-dd hh:mm).
+.PP
+With both \fIpkg\fR and \fIrev\fR, tries to restore the package from the
+specified backup.
.PP
Options:
-.IP "\fB\-\-list\fR" 4
-.IX Item "--list"
-If the option \f(CW\*(C`\-\-list\*(C'\fR is given with a package, the list of contained
-files is also shown, including those for platform-specific dependencies.
-When given with schemes and collections, \f(CW\*(C`\-\-list\*(C'\fR outputs their
-dependencies in a similar way.
-.IP "\fB\-\-only\-installed\fR" 4
-.IX Item "--only-installed"
-If this options is given, the installation source will
-not be used; only locally installed packages, collections, or schemes
-are listed.
-(Does not work for listing of packages for now)
-.IP "\fB\-\-taxonomy\fR" 4
-.IX Item "--taxonomy"
+.IP "\fB\-\-all\fR" 4
+.IX Item "--all"
+Try to restore the latest revision of all package backups found in the
+backup directory. Additional non-option arguments (like \fIpkg\fR) are not
+allowed.
+.IP "\fB\-\-backupdir\fR \fIdirectory\fR" 4
+.IX Item "--backupdir directory"
+Specify the directory where the backups are to be found. If not given it
+will be taken from the configuration setting in the \s-1TLPDB\s0.
+.IP "\fB\-\-dry\-run\fR" 4
+.IX Item "--dry-run"
+Nothing is actually restored; instead, the actions to be performed are
+written to the terminal.
+.IP "\fB\-\-force\fR" 4
+.IX Item "--force"
+Don't ask questions.
+.SS "remove [\fIoption\fP]... \fIpkg\fP..."
+.IX Subsection "remove [option]... pkg..."
+Remove each \fIpkg\fR specified. Removing a collection removes all package
+dependencies (unless \f(CW\*(C`\-\-no\-depends\*(C'\fR is specified), but not any
+collection dependencies of that collection. However, when removing a
+package, dependencies are never removed. Options:
+.IP "\fB\-\-no\-depends\fR" 4
+.IX Item "--no-depends"
+Do not remove dependent packages.
+.IP "\fB\-\-no\-depends\-at\-all\fR" 4
+.IX Item "--no-depends-at-all"
+See above under \fBinstall\fR (and beware).
+.IP "\fB\-\-force\fR" 4
+.IX Item "--force"
+By default, removal of a package or collection that is a dependency of
+another collection or scheme is not allowed. With this option, the
+package will be removed unconditionally. Use with care.
+.Sp
+A package that has been removed using the \f(CW\*(C`\-\-force\*(C'\fR option because it
+is still listed in an installed collection or scheme will not be
+updated, and will be mentioned as \fBforcibly removed\fR in the output of
+\&\fBtlmgr update \-\-list\fR.
+.IP "\fB\-\-dry\-run\fR" 4
+.IX Item "--dry-run"
+Nothing is actually removed; instead, the actions to be performed are
+written to the terminal.
+.SS "repository"
+.IX Subsection "repository"
+.IP "\fBrepository list\fR" 4
+.IX Item "repository list"
.PD 0
-.IP "\fB\-\-keyword\fR" 4
-.IX Item "--keyword"
-.IP "\fB\-\-functionality\fR" 4
-.IX Item "--functionality"
-.IP "\fB\-\-characterization\fR" 4
-.IX Item "--characterization"
+.IP "\fBrepository list \f(BIpath|tag\fB\fR" 4
+.IX Item "repository list path|tag"
+.IP "\fBrepository add \f(BIpath\fB [\f(BItag\fB]\fR" 4
+.IX Item "repository add path [tag]"
+.IP "\fBrepository remove \f(BIpath|tag\fB\fR" 4
+.IX Item "repository remove path|tag"
+.IP "\fBrepository set \f(BIpath\fB[#\f(BItag\fB] [\f(BIpath\fB[#\f(BItag\fB] ...]\fR" 4
+.IX Item "repository set path[#tag] [path[#tag] ...]"
.PD
-In addition to the normal data displayed, also display information for
-given packages from the corresponding taxonomy (or all of them). See
-\&\*(L"\s-1TAXONOMIES\s0\*(R" below for details.
+This action manages the list of repositories. See \*(L"\s-1MULTIPLE\s0
+\&\s-1REPOSITORIES\s0\*(R" below for detailed explanations.
+.Sp
+The first form (\f(CW\*(C`list\*(C'\fR) lists all configured repositories and the
+respective tags if set. If a path, url, or tag is given after the
+\&\f(CW\*(C`list\*(C'\fR keyword, it is interpreted as source from where to
+initialize a TeX Live Database and lists the contained packages.
+This can also be an up-to-now not used repository, both locally
+and remote. If one pass in addition \f(CW\*(C`\-\-with\-platforms\*(C'\fR, for each
+package the available platforms (if any) are listed, too.
+.Sp
+The third form (\f(CW\*(C`add\*(C'\fR) adds a repository
+(optionally attaching a tag) to the list of repositories. The forth
+form (\f(CW\*(C`remove\*(C'\fR) removes a repository, either by full path/url, or by
+tag. The last form (\f(CW\*(C`set\*(C'\fR) sets the list of repositories to the items
+given on the command line, not keeping previous settings
+.Sp
+In all cases, one of the repositories must be tagged as \f(CW\*(C`main\*(C'\fR;
+otherwise, all operations will fail!
.SS "search [\fIoption\fP...] \fIwhat\fP"
.IX Subsection "search [option...] what"
\fIsearch [\fIoption\fI...] \-\-file \fIwhat\fI\fR
@@ -945,220 +999,185 @@ descriptions. See \*(L"\s-1TAXONOMIES\s0\*(R" below.
.IP "\fB\-\-all\fR" 4
.IX Item "--all"
Search for package names, descriptions, and taxonomies, but not files.
-.SS "dump-tlpdb [\-\-local|\-\-remote]"
-.IX Subsection "dump-tlpdb [--local|--remote]"
-Dump complete local or remote \s-1TLPDB\s0 to standard output, as-is. The
-output is analogous to the \f(CW\*(C`\-\-machine\-readable\*(C'\fR output; see
-\&\*(L"MACHINE-READABLE \s-1OUTPUT\s0\*(R" section.
-.PP
-Options:
-.IP "\fB\-\-local\fR" 4
-.IX Item "--local"
-Dump the local tlpdb.
-.IP "\fB\-\-remote\fR" 4
-.IX Item "--remote"
-Dump the remote tlpdb.
-.PP
-Exactly one of \f(CW\*(C`\-\-local\*(C'\fR and \f(CW\*(C`\-\-remote\*(C'\fR must be given.
-.PP
-In either case, the first line of the output specifies the repository
-location, in this format:
-.PP
-.Vb 1
-\& "location\-url" "\et" location
-.Ve
-.PP
-where \f(CW\*(C`location\-url\*(C'\fR is the literal field name, followed by a tab, and
-\&\fIlocation\fR is the file or url to the repository.
-.PP
-Line endings may be either \s-1LF\s0 or \s-1CRLF\s0 depending on the current platform.
-.SS "check [\fIoption\fP]... [files|depends|executes|runfiles|all]"
-.IX Subsection "check [option]... [files|depends|executes|runfiles|all]"
-Executes one (or all) check(s) on the consistency of the installation.
-.IP "\fBfiles\fR" 4
-.IX Item "files"
-Checks that all files listed in the local \s-1TLPDB\s0 (\f(CW\*(C`texlive.tlpdb\*(C'\fR) are
-actually present, and lists those missing.
-.IP "\fBdepends\fR" 4
-.IX Item "depends"
-Lists those packages which occur as dependencies in an installed collections,
-but are themselves not installed, and those packages that are not
-contained in any collection.
-.Sp
-If you call \f(CW\*(C`tlmgr check collections\*(C'\fR this test will be carried out
-instead since former versions for \f(CW\*(C`tlmgr\*(C'\fR called it that way.
-.IP "\fBexecutes\fR" 4
-.IX Item "executes"
-Check that the files referred to by \f(CW\*(C`execute\*(C'\fR directives in the TeX
-Live Database are present.
-.IP "\fBrunfiles\fR" 4
-.IX Item "runfiles"
-List those filenames that are occurring more than one time in the runfiles.
-.PP
-Options:
-.IP "\fB\-\-use\-svn\fR" 4
-.IX Item "--use-svn"
-Use the output of \f(CW\*(C`svn status\*(C'\fR instead of listing the files; for
-checking the \s-1TL\s0 development repository.
-.SS "path [\-\-w32mode=user|admin] [add|remove]"
-.IX Subsection "path [--w32mode=user|admin] [add|remove]"
-On Unix, merely adds or removes symlinks for binaries, man pages, and
-info pages in the system directories specified by the respective options
-(see the option description above). Does not change any
-initialization files, either system or personal.
-.PP
-On Windows, the registry part where the binary directory is added or
-removed is determined in the following way:
-.PP
-If the user has admin rights, and the option \f(CW\*(C`\-\-w32mode\*(C'\fR is not given,
-the setting \fIw32_multi_user\fR determines the location (i.e., if it is
-on then the system path, otherwise the user path is changed).
-.PP
-If the user has admin rights, and the option \f(CW\*(C`\-\-w32mode\*(C'\fR is given, this
-option determines the path to be adjusted.
-.PP
-If the user does not have admin rights, and the option \f(CW\*(C`\-\-w32mode\*(C'\fR
-is not given, and the setting \fIw32_multi_user\fR is off, the user path
-is changed, while if the setting \fIw32_multi_user\fR is on, a warning is
-issued that the caller does not have enough privileges.
-.PP
-If the user does not have admin rights, and the option \f(CW\*(C`\-\-w32mode\*(C'\fR
-is given, it must be \fBuser\fR and the user path will be adjusted. If a
-user without admin rights uses the option \f(CW\*(C`\-\-w32mode admin\*(C'\fR a warning
-is issued that the caller does not have enough privileges.
-.SS "postaction [\-\-w32mode=user|admin] [\-\-fileassocmode=1|2] [\-\-all] [install|remove] [shortcut|fileassoc|script] [\fIpkg\fP]..."
-.IX Subsection "postaction [--w32mode=user|admin] [--fileassocmode=1|2] [--all] [install|remove] [shortcut|fileassoc|script] [pkg]..."
-Carry out the postaction \f(CW\*(C`shortcut\*(C'\fR, \f(CW\*(C`fileassoc\*(C'\fR, or \f(CW\*(C`script\*(C'\fR given
-as the second required argument in install or remove mode (which is the
-first required argument), for either the packages given on the command
-line, or for all if \f(CW\*(C`\-\-all\*(C'\fR is given.
-.PP
-If the option \f(CW\*(C`\-\-w32mode\*(C'\fR is given the value \f(CW\*(C`user\*(C'\fR, all actions will
-only be carried out in the user-accessible parts of the
-registry/filesystem, while the value \f(CW\*(C`admin\*(C'\fR selects the system-wide
-parts of the registry for the file associations. If you do not have
-enough permissions, using \f(CW\*(C`\-\-w32mode=admin\*(C'\fR will not succeed.
-.PP
-\&\f(CW\*(C`\-\-fileassocmode\*(C'\fR specifies the action for file associations. If it is
-set to 1 (the default), only new associations are added; if it is set to
-2, all associations are set to the TeX Live programs. (See also
-\&\f(CW\*(C`option fileassocs\*(C'\fR.)
.SS "uninstall"
.IX Subsection "uninstall"
Uninstalls the entire TeX Live installation. Options:
.IP "\fB\-\-force\fR" 4
.IX Item "--force"
Do not ask for confirmation, remove immediately.
-.SS "generate [\fIoption\fP]... \fIwhat\fP"
-.IX Subsection "generate [option]... what"
-.IP "\fBgenerate language\fR" 4
-.IX Item "generate language"
-.PD 0
-.IP "\fBgenerate language.dat\fR" 4
-.IX Item "generate language.dat"
-.IP "\fBgenerate language.def\fR" 4
-.IX Item "generate language.def"
-.IP "\fBgenerate language.dat.lua\fR" 4
-.IX Item "generate language.dat.lua"
-.IP "\fBgenerate fmtutil\fR" 4
-.IX Item "generate fmtutil"
-.PD
-.PP
-The \f(CW\*(C`generate\*(C'\fR action overwrites any manual changes made in the
-respective files: it recreates them from scratch based on the
-information of the installed packages, plus local adaptions.
-The TeX Live installer and \f(CW\*(C`tlmgr\*(C'\fR routinely call \f(CW\*(C`generate\*(C'\fR for
-all of these files.
-.PP
-For managing your own fonts, please read the \f(CW\*(C`updmap \-\-help\*(C'\fR
-information and/or <http://tug.org/fonts/fontinstall.html>.
-.PP
-In more detail: \f(CW\*(C`generate\*(C'\fR remakes any of the configuration files
-\&\f(CW\*(C`language.dat\*(C'\fR, \f(CW\*(C`language.def\*(C'\fR, \f(CW\*(C`language.dat.lua\*(C'\fR, and
-\&\f(CW\*(C`fmtutil.cnf\*(C'\fR, from the information present in the local \s-1TLPDB\s0, plus
-locally-maintained files.
-.PP
-The locally-maintained files are \f(CW\*(C`language\-local.dat\*(C'\fR,
-\&\f(CW\*(C`language\-local.def\*(C'\fR, \f(CW\*(C`language\-local.dat.lua\*(C'\fR, or
-\&\f(CW\*(C`fmtutil\-local.cnf\*(C'\fR, searched for in \f(CW\*(C`TEXMFLOCAL\*(C'\fR in the respective
-directories. If local additions are present, the final file is made by
-starting with the main file, omitting any entries that the local file
-specifies to be disabled, and finally appending the local file.
-.PP
-(Historical note: The formerly supported \f(CW\*(C`updmap\-local.cfg\*(C'\fR is no longer
-read, since \f(CW\*(C`updmap\*(C'\fR now supports multiple \f(CW\*(C`updmap.cfg\*(C'\fR files. Thus,
-local additions can and should be put into an \f(CW\*(C`updmap.cfg\*(C'\fR file in
-\&\f(CW\*(C`TEXMFLOCAL\*(C'\fR. The \f(CW\*(C`generate updmap\*(C'\fR action no longer exists.)
-.PP
-Local files specify entries to be disabled with a comment line, namely
-one of these:
-.PP
-.Vb 3
-\& #!NAME
-\& %!NAME
-\& \-\-!NAME
+.SS "update [\fIoption\fP]... [\fIpkg\fP]..."
+.IX Subsection "update [option]... [pkg]..."
+Updates the packages given as arguments to the latest version available
+at the installation source. Either \f(CW\*(C`\-\-all\*(C'\fR or at least one \fIpkg\fR name
+must be specified. Options:
+.IP "\fB\-\-all\fR" 4
+.IX Item "--all"
+Update all installed packages except for \f(CW\*(C`tlmgr\*(C'\fR itself. Thus, if
+updates to \f(CW\*(C`tlmgr\*(C'\fR itself are present, this will simply give an error,
+unless also the option \f(CW\*(C`\-\-force\*(C'\fR or \f(CW\*(C`\-\-self\*(C'\fR is given. (See below.)
+.Sp
+In addition to updating the installed packages, during the update of a
+collection the local installation is (by default) synchronized to the
+status of the collection on the server, for both additions and removals.
+.Sp
+This means that if a package has been removed on the server (and thus
+has also been removed from the respective collection), \f(CW\*(C`tlmgr\*(C'\fR will
+remove the package in the local installation. This is called
+``auto\-remove'' and is announced as such when using the option
+\&\f(CW\*(C`\-\-list\*(C'\fR. This auto-removal can be suppressed using the option
+\&\f(CW\*(C`\-\-no\-auto\-remove\*(C'\fR.
+.Sp
+Analogously, if a package has been added to a collection on the server
+that is also installed locally, it will be added to the local
+installation. This is called ``auto\-install'' and is announced as such
+when using the option \f(CW\*(C`\-\-list\*(C'\fR. This auto-installation can be
+suppressed using the option \f(CW\*(C`\-\-no\-auto\-install\*(C'\fR.
+.Sp
+An exception to the collection dependency checks (including the
+auto-installation of packages just mentioned) are those that have been
+``forcibly removed'' by you, that is, you called \f(CW\*(C`tlmgr remove \-\-force\*(C'\fR
+on them. (See the \f(CW\*(C`remove\*(C'\fR action documentation.) To reinstall any
+such forcibly removed packages use \f(CW\*(C`\-\-reinstall\-forcibly\-removed\*(C'\fR.
+.Sp
+If you want to exclude some packages from the current update run (e.g.,
+due to a slow link), see the \f(CW\*(C`\-\-exclude\*(C'\fR option below.
+.IP "\fB\-\-self\fR" 4
+.IX Item "--self"
+Update \f(CW\*(C`tlmgr\*(C'\fR itself (that is, the infrastructure packages) if updates
+to it are present. On Windows this includes updates to the private Perl
+interpreter shipped inside TeX Live.
+.Sp
+If this option is given together with either \f(CW\*(C`\-\-all\*(C'\fR or a list of
+packages, then \f(CW\*(C`tlmgr\*(C'\fR will be updated first and, if this update
+succeeds, the new version will be restarted to complete the rest of the
+updates.
+.Sp
+In short:
+.Sp
+.Vb 4
+\& tlmgr update \-\-self # update infrastructure only
+\& tlmgr update \-\-self \-\-all # update infrastructure and all packages
+\& tlmgr update \-\-force \-\-all # update all packages but *not* infrastructure
+\& # ... this last at your own risk, not recommended!
.Ve
-.PP
-where \f(CW\*(C`fmtutil.cnf\*(C'\fR uses \f(CW\*(C`#\*(C'\fR, \f(CW\*(C`language.dat\*(C'\fR and \f(CW\*(C`language.def\*(C'\fR use
-\&\f(CW\*(C`%\*(C'\fR, and \f(CW\*(C`language.dat.lua\*(C'\fR use \f(CW\*(C`\-\-\*(C'\fR. In all cases, the \fIname\fR is
-the respective format name or hyphenation pattern identifier.
-Examples:
-.PP
-.Vb 3
-\& #!pdflatex
-\& %!german
-\& \-\-!usenglishmax
+.IP "\fB\-\-dry\-run\fR" 4
+.IX Item "--dry-run"
+Nothing is actually installed; instead, the actions to be performed are
+written to the terminal. This is a more detailed report than \f(CW\*(C`\-\-list\*(C'\fR.
+.IP "\fB\-\-list\fR [\fIpkg\fR]" 4
+.IX Item "--list [pkg]"
+Concisely list the packages which would be updated, newly installed, or
+removed, without actually changing anything.
+If \f(CW\*(C`\-\-all\*(C'\fR is also given, all available updates are listed.
+If \f(CW\*(C`\-\-self\*(C'\fR is given, but not \f(CW\*(C`\-\-all\*(C'\fR, only updates to the
+critical packages (tlmgr, texlive infrastructure, perl on Windows, etc.)
+are listed.
+If neither \f(CW\*(C`\-\-all\*(C'\fR nor \f(CW\*(C`\-\-self\*(C'\fR is given, and in addition no \fIpkg\fR is
+given, then \f(CW\*(C`\-\-all\*(C'\fR is assumed (thus, \f(CW\*(C`tlmgr update \-\-list\*(C'\fR is the
+same as \f(CW\*(C`tlmgr update \-\-list \-\-all\*(C'\fR).
+If neither \f(CW\*(C`\-\-all\*(C'\fR nor \f(CW\*(C`\-\-self\*(C'\fR is given, but specific package names are
+given, those packages are checked for updates.
+.IP "\fB\-\-exclude\fR \fIpkg\fR" 4
+.IX Item "--exclude pkg"
+Exclude \fIpkg\fR from the update process. If this option is given more
+than once, its arguments accumulate.
+.Sp
+An argument \fIpkg\fR excludes both the package \fIpkg\fR itself and all
+its related platform-specific packages \fIpkg.ARCH\fR. For example,
+.Sp
+.Vb 1
+\& tlmgr update \-\-all \-\-exclude a2ping
.Ve
-.PP
-(Of course, you're not likely to actually want to disable those
-particular items. They're just examples.)
-.PP
-After such a disabling line, the local file can include another entry
-for the same item, if a different definition is desired. In general,
-except for the special disabling lines, the local files follow the same
-syntax as the master files.
-.PP
-The form \f(CW\*(C`generate language\*(C'\fR recreates all three files \f(CW\*(C`language.dat\*(C'\fR,
-\&\f(CW\*(C`language.def\*(C'\fR, and \f(CW\*(C`language.dat.lua\*(C'\fR, while the forms with an
-extension recreates only that given language file.
-.PP
-Options:
-.IP "\fB\-\-dest\fR \fIoutput_file\fR" 4
-.IX Item "--dest output_file"
-specifies the output file (defaults to the respective location in
-\&\f(CW\*(C`TEXMFSYSVAR\*(C'\fR). If \f(CW\*(C`\-\-dest\*(C'\fR is given to \f(CW\*(C`generate language\*(C'\fR, it
-serves as a basename onto which \f(CW\*(C`.dat\*(C'\fR will be appended for the name of
-the \f(CW\*(C`language.dat\*(C'\fR output file, \f(CW\*(C`.def\*(C'\fR will be appended to the value
-for the name of the \f(CW\*(C`language.def\*(C'\fR output file, and \f(CW\*(C`.dat.lua\*(C'\fR to the
-name of the \f(CW\*(C`language.dat.lua\*(C'\fR file. (This is just to avoid
-overwriting; if you want a specific name for each output file, we
-recommend invoking \f(CW\*(C`tlmgr\*(C'\fR twice.)
-.IP "\fB\-\-localcfg\fR \fIlocal_conf_file\fR" 4
-.IX Item "--localcfg local_conf_file"
-specifies the (optional) local additions (defaults to the respective
-location in \f(CW\*(C`TEXMFLOCAL\*(C'\fR).
-.IP "\fB\-\-rebuild\-sys\fR" 4
-.IX Item "--rebuild-sys"
-tells tlmgr to run necessary programs after config files have been
-regenerated. These are:
-\&\f(CW\*(C`fmtutil\-sys \-\-all\*(C'\fR after \f(CW\*(C`generate fmtutil\*(C'\fR,
-\&\f(CW\*(C`fmtutil\-sys \-\-byhyphen .../language.dat\*(C'\fR after \f(CW\*(C`generate language.dat\*(C'\fR,
-and
-\&\f(CW\*(C`fmtutil\-sys \-\-byhyphen .../language.def\*(C'\fR after \f(CW\*(C`generate language.def\*(C'\fR.
.Sp
-These subsequent calls cause the newly-generated files to actually take
-effect. This is not done by default since those calls are lengthy
-processes and one might want to made several related changes in
-succession before invoking these programs.
-.PP
-The respective locations are as follows:
-.PP
-.Vb 4
-\& tex/generic/config/language.dat (and language\-local.dat);
-\& tex/generic/config/language.def (and language\-local.def);
-\& tex/generic/config/language.dat.lua (and language\-local.dat.lua);
-\& web2c/fmtutil.cnf (and fmtutil\-local.cnf);
+will not update \f(CW\*(C`a2ping\*(C'\fR, \f(CW\*(C`a2ping.i386\-linux\*(C'\fR, or
+any other \f(CW\*(C`a2ping.\*(C'\fR\fI\s-1ARCH\s0\fR package.
+.Sp
+If this option specifies a package that would otherwise be a candidate
+for auto-installation, auto-removal, or reinstallation of a forcibly
+removed package, \f(CW\*(C`tlmgr\*(C'\fR quits with an error message. Excludes are not
+supported in these circumstances.
+.IP "\fB\-\-no\-auto\-remove\fR [\fIpkg\fR]..." 4
+.IX Item "--no-auto-remove [pkg]..."
+Under normal circumstances \f(CW\*(C`tlmgr\*(C'\fR tries to remove packages which have
+disappeared on the server, as described above under \f(CW\*(C`\-\-all\*(C'\fR. This
+option prevents any such removals, either for all packages (with
+\&\f(CW\*(C`\-\-all\*(C'\fR), or the given \fIpkg\fR names.
+.IP "\fB\-\-no\-auto\-install\fR [\fIpkg\fR]..." 4
+.IX Item "--no-auto-install [pkg]..."
+Under normal circumstances \f(CW\*(C`tlmgr\*(C'\fR will install packages which are new
+on the server, as described above under \f(CW\*(C`\-\-all\*(C'\fR. This option prevents
+any such automatic installation, either for all packages (with
+\&\f(CW\*(C`\-\-all\*(C'\fR), or the given \fIpkg\fR names.
+.Sp
+Furthermore, after the \f(CW\*(C`tlmgr\*(C'\fR run using this has finished, the
+packages that would have been auto-installed \fIwill be considered as
+forcibly removed\fR. So, if \f(CW\*(C`foobar\*(C'\fR is the only new package on the
+server, then
+.Sp
+.Vb 1
+\& tlmgr update \-\-all \-\-no\-auto\-install
+.Ve
+.Sp
+is equivalent to
+.Sp
+.Vb 2
+\& tlmgr update \-\-all
+\& tlmgr remove \-\-force foobar
+.Ve
+.IP "\fB\-\-reinstall\-forcibly\-removed\fR" 4
+.IX Item "--reinstall-forcibly-removed"
+Under normal circumstances \f(CW\*(C`tlmgr\*(C'\fR will not install packages that have
+been forcibly removed by the user; that is, removed with \f(CW\*(C`remove
+\&\-\-force\*(C'\fR, or whose installation was prohibited by \f(CW\*(C`\-\-no\-auto\-install\*(C'\fR
+during an earlier update.
+.Sp
+This option makes \f(CW\*(C`tlmgr\*(C'\fR ignore the forcible removals and re-install
+all such packages. This can be used to completely synchronize an
+installation with the server's idea of what is available:
+.Sp
+.Vb 1
+\& tlmgr update \-\-reinstall\-forcibly\-removed \-\-all
.Ve
+.IP "\fB\-\-backup\fR and \fB\-\-backupdir\fR \fIdirectory\fR" 4
+.IX Item "--backup and --backupdir directory"
+These two options control the creation of backups of packages \fIbefore\fR
+updating; that is, backup of packages as currently installed. If
+neither of these options are given, no backup package will be saved. If
+\&\f(CW\*(C`\-\-backupdir\*(C'\fR is given and specifies a writable directory then a backup
+will be made in that location. If only \f(CW\*(C`\-\-backup\*(C'\fR is given, then a
+backup will be made to the directory previously set via the \f(CW\*(C`option\*(C'\fR
+action (see below). If both are given then a backup will be made to the
+specified \fIdirectory\fR.
+.Sp
+You can set options via the \f(CW\*(C`option\*(C'\fR action to automatically create
+backups for all packages, and/or keep only a certain number of
+backups. Please see the \f(CW\*(C`option\*(C'\fR action for details.
+.Sp
+\&\f(CW\*(C`tlmgr\*(C'\fR always makes a temporary backup when updating packages, in case
+of download or other failure during an update. In contrast, the purpose
+of this \f(CW\*(C`\-\-backup\*(C'\fR option is to allow you to save a persistent backup
+in case the actual \fIcontent\fR of the update causes problems, e.g.,
+introduces an incompatibility.
+.Sp
+The \f(CW\*(C`restore\*(C'\fR action explains how to restore from a backup.
+.IP "\fB\-\-no\-depends\fR" 4
+.IX Item "--no-depends"
+If you call for updating a package normally all depending packages
+will also be checked for updates and updated if necessary. This switch
+suppresses this behavior.
+.IP "\fB\-\-no\-depends\-at\-all\fR" 4
+.IX Item "--no-depends-at-all"
+See above under \fBinstall\fR (and beware).
+.IP "\fB\-\-force\fR" 4
+.IX Item "--force"
+Force update of normal packages, without updating \f(CW\*(C`tlmgr\*(C'\fR itself
+(unless the \f(CW\*(C`\-\-self\*(C'\fR option is also given). Not recommended.
+.Sp
+Also, \f(CW\*(C`update \-\-list\*(C'\fR is still performed regardless of this option.
+.PP
+If the package on the server is older than the package already installed
+(e.g., if the selected mirror is out of date), \f(CW\*(C`tlmgr\*(C'\fR does not
+downgrade. Also, packages for uninstalled platforms are not installed.
.SH "TLMGR CONFIGURATION FILE"
.IX Header "TLMGR CONFIGURATION FILE"
A small subset of the command line options can be set in a config file
diff --git a/Master/texmf/doc/man/man1/tlmgr.man1.pdf b/Master/texmf/doc/man/man1/tlmgr.man1.pdf
index dc9fbf64bdd..84e354a4c52 100644
--- a/Master/texmf/doc/man/man1/tlmgr.man1.pdf
+++ b/Master/texmf/doc/man/man1/tlmgr.man1.pdf
Binary files differ