tlmgr-platform
Manage TeX Live platform-specific binaries
TLDR
List all available platforms in the package repository
Add the executables for a specific platform
Remove the executables for a specific platform
Auto-detect and switch to the current platform
Switch to a specific platform
SYNOPSIS
While "tlmgr-platform" is not a direct executable command, its functionalities are integrated into the tlmgr utility. The concept is often utilized implicitly by tlmgr or explicitly through options:tlmgr <action> [options] [package-name[-PLATFORM_SUFFIX]]tlmgr option --platform platform_stringtlmgr install package-name[-platform_string]
PARAMETERS
--platform=platform_string
Used with various tlmgr commands (e.g., update, install, option) to specify the target platform. A platform_string identifies a specific OS and architecture (e.g., x86_64-linux, win32, universal-darwin). When used with option, it sets the default platform for future operations.--list-platform-files
(Used with tlmgr info) Lists files specifically associated with the current or specified platform for a given package.--only-platform
(Used with tlmgr list) Filters the output to show only platform-specific packages.-platform_suffix
Not a command-line option, but a common suffix appended to binary package names (e.g., collection-luatex-bin-x86_64-linux) to indicate the platform for which the binary is compiled. tlmgr uses this suffix to select the correct package.
DESCRIPTION
The term "tlmgr-platform" refers not to a standalone command, but to the crucial concept within the TeX Live Manager (tlmgr) for handling platform-dependent software components. TeX Live provides a comprehensive distribution of TeX and related programs. Many of these programs are compiled binaries that are specific to a particular operating system and CPU architecture (e.g., Linux on x86_64, Windows on i386, macOS on arm64).
"tlmgr-platform" encompasses the mechanism by which tlmgr identifies, installs, updates, and manages these platform-specific packages. This ensures that users receive the correct binaries for their system, maintaining compatibility and proper functionality. For instance, when installing a package like luatex-bin, tlmgr automatically selects the version compiled for the detected platform, such as luatex-bin-x86_64-linux or luatex-bin-win32. Users can also explicitly specify platforms for advanced scenarios.
CAVEATS
"tlmgr-platform" is not a standalone command; it represents the platform-management aspect of the tlmgr utility. Misunderstanding or incorrectly specifying platform options can lead to installation issues, incompatible binaries, or a broken TeX Live environment. Users should generally allow tlmgr to auto-detect the platform unless specific cross-platform management is required.
PLATFORM STRING DEFINITION
A "platform string" is a concise identifier specifying an operating system and its architecture. Examples include x86_64-linux (64-bit Linux), i386-linux (32-bit Linux), win32 (32-bit Windows, also used for 64-bit systems), universal-darwin (macOS, for Intel and ARM binaries). tlmgr uses this string to match packages to the user's system.
AUTO-DETECTION VS. MANUAL SPECIFICATION
By default, tlmgr automatically detects the current system's platform and installs or updates corresponding binaries. Manual specification using --platform is typically reserved for advanced use cases, such as preparing an installation for a different architecture (e.g., building a TeX Live installation for a server from a client machine).
HISTORY
The need for "tlmgr-platform" capabilities arose with the increasing diversity of operating systems and CPU architectures on which TeX Live is deployed. As TeX Live evolved from its earlier distribution methods (e.g., manual installation, older update scripts), tlmgr was developed to provide a robust, cross-platform package management solution. The platform concept was integral to tlmgr from its inception, allowing a single distribution to serve users on Linux, Windows, macOS, and various other Unix-like systems, ensuring that correct compiled binaries are delivered to the appropriate environments. This modular approach significantly simplified maintenance and distribution.


