How to use the command tlmgr dump-tlpdb (with examples)
The tlmgr dump-tlpdb
command is a command-line tool provided by TeX Live, a popular distribution of the TeX typesetting system. This command allows users to dump the TeX Live package database, providing information about the installed packages.
Use case 1: Dump the local package database
Code:
tlmgr dump-tlpdb --local
Motivation: Sometimes, it’s useful to have a local copy of the package database, especially when you want to analyze or inspect the installed packages on your system. By using tlmgr dump-tlpdb --local
, you can generate a local package database dump.
Explanation: The --local
flag is used to specify that you want to dump the local package database. This means that the command will only provide information about the packages installed on your system.
Example Output:
[...]
name collection-basic
category Collection
revision 57937
shortdesc Essential programs and files
longdesc The collection ``basic'' contains the packages which are
longdesc considered the starting point for a basic MiKTeX
longdesc installation. In addition to MiKTeX
longdesc components, it contains the TeXworks editor, the
longdesc TeX Live Manager (tlmgr) and the MiKTeX Package
longdesc Manager (mpm).
depend basic
markerlist texworks dviout postscript pdftex dvips pstricks ps2pdf
[...]
Use case 2: Dump the remote package database
Code:
tlmgr dump-tlpdb --remote
Motivation: The remote package database provides information about the packages available for installation or update. By using tlmgr dump-tlpdb --remote
, you can retrieve the latest information about the packages without the need for an actual update.
Explanation: The --remote
flag is used to specify that you want to dump the remote package database. This means that the command will provide information about all the packages available for installation or update, regardless of whether they are installed on your system.
Example Output:
[...]
name collection-extra
category Collection
shortdesc Extra packages and tools
longdesc The collection ``extra'' contains additional packages and
longdesc tools that are not required for a basic MiKTeX installation,
longdesc but may be useful or interesting for some users. Packages
longdesc included in this collection are considered to be of general
longdesc interest or have broad application, but are also larger or
longdesc require external dependencies that are not distributed with
longdesc MiKTeX. Depending on your needs, you may consider installing
longdesc additional MiKTeX packages from this collection.
depend extra
markerlist acro acrobat amiri arabeyes-ukij-t1 arabluatex arphic baekmuk
[...]
Use case 3: Dump the local package database as JSON
Code:
tlmgr dump-tlpdb --local --json
Motivation: JSON (JavaScript Object Notation) is a popular data interchange format, widely supported by various programming languages. By using tlmgr dump-tlpdb --local --json
, you can get the local package database dumped in JSON format, making it easier to process the information using scripts or tools.
Explanation: The --json
flag is used to specify that you want the output in JSON format instead of the default plaintext format. When combined with the --local
flag, it will produce a JSON dump of the local package database.
Example Output:
{
"name" : "collection-basic",
"category" : "Collection",
"revision" : "57937",
"shortdesc" : "Essential programs and files",
"longdesc" : "The collection \"basic\" contains the packages which are considered the starting point for a basic MiKTeX installation. In addition to MiKTeX components, it contains the TeXworks editor, the TeX Live Manager (tlmgr) and the MiKTeX Package Manager (mpm).",
"depend" : "basic",
"markerlist" : "texworks dviout postscript pdftex dvips pstricks ps2pdf"
}
Conclusion:
The tlmgr dump-tlpdb
command is a powerful tool for retrieving information about the TeX Live package database. Whether you want to inspect the installed packages on your system, get the latest information about available packages, or process the database in JSON format, this command provides the necessary functionality.