Skip to main content

A library for getting information on TexLive installation

Project description

texlivemetadata

Get metadata on your TexLive installation using Python.

This library calls tlmgr and parse its ouput so it can then be processed and used from Python.

Usage

PyPI version

pip install texlivemetadata

TeXLive version information

import texlivemetadata

# Get version information on current TeXLive installation.
print(texlivemetadata.get_texlive_version_information())
# --->
# {'texlive': {'installation_path': '/opt/texlive/2019',
#              'modules': [{'name': 'TLConfig', 'value': '50190'},
#                          {'name': 'TLUtils', 'value': '50493'},
#                          {'name': 'TLPOBJ', 'value': '50211'},
#                          {'name': 'TLPDB', 'value': '51110'},
#                          {'name': 'TLPaper', 'value': '45795'},
#                          {'name': 'TLWinGoo', 'value': '47907'}],
#              'version': '2019'},
#  'tlmgr': {'revision': '51217', 'revision_date': '2019-05-24 23:47:41 +0200'}}

Package listing

import texlivemetadata

# List all packages exposed by tlmgr list:
print(texlivemetadata.list_packages())

# For listing only installed packages:
print(texlivemetadata.list_installed_packages())

Package information

import texlivemetadata

# To get information on package (and whether it is installed or not):
print(texlivemetadata.get_package_info("12many"))
# --->
# {
#     "cat-date": "2016-06-24T19:18:15+02:00",
#     "cat-license": "lppl",
#     "cat-topics": [
#         "maths"
#     ],
#     "cat-version": "0.3",
#     "category": "Package",
#     "collection": "collection-mathscience",
#     "installed": true,
#     "longdesc": "In the discrete branches of mathematics and the computer sciences, it will only take some seconds before you're faced with a set like {1,...,m}. Some people write $1\\ldotp\\ldotp m$, others $\\{j:1\\leq j\\leq m\\}$, and the journal you're submitting to might want something else entirely. The 12many package provides an interface that makes changing from one to another a one-line change.",
#     "package": "12many",
#     "relocatable": false,
#     "revision": "15878",
#     "shortdesc": "Generalising mathematical index sets",
#     "sizes": {
#         "run": "5k"
#     }
# }

Utils

import texlivemetadata

# To CTAN link for a package:
print(texlivemetadata.get_ctan_link("12many"))
# --->
# "https://ctan.org/pkg/12many"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for texlivemetadata, version 0.1.3
Filename, size File type Python version Upload date Hashes
Filename, size texlivemetadata-0.1.3-py2.py3-none-any.whl (6.2 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size texlivemetadata-0.1.3.tar.gz (4.0 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page