Directory macros/context/base
ConTeXt Packaging Scripts
This repository hosts the scripts used to package the contents of the ConTeXt Standalone Distribution into TeX Live and CTAN.
Specifically, this is the source of the CTAN package context
, which contains the TeX Live packages context
(ConTeXt MkXL/LMTX runtime TeX files), context.ARCH
(LuaMetaTeX binaries), context-legacy
(ConTeXt MkII runtime TeX files), and mptopdf
(mptopdf
command-line script), and the TLContrib package context-nonfree
(ConTeXt runtime files that are not free software).
Goals
The primary goal of this project is to make an installation of TeX Live with scheme-context
(plus context-nonfree
from TLContrib) behave identically to the ConTeXt Standalone Distribution with all modules installed. Note that scheme-full
(AKA the default “Full” TeX Live installation) is a superset of scheme-context
, which means that most users will have a complete ConTeXt installation by default.
Known Deviations
- The ConTeXt Standalone Distribution always sets the default paper size to A4; TeX Live allows users to configure this to either A4 or Letter). Regardless, users may (and should) configure this for each individual document with
\setuppapersize
.
- The ConTeXt Standalone Distribution frequently updates its LuaTeX binaries to the latest release; TeX Live only updates its LuaTeX binaries once per year. LuaTeX is mostly frozen, so this should generally make no difference. Regardless, the distinct LuaMetaTeX engine will be updated multiple times per year in TeX Live, just like the ConTeXt Standalone Distribution.
- The ConTeXt Standalone Distribution permits documents to run arbitrary executables while compiling; TeX Live attempts to restrict this to a handful of known-safe programs. Note that this is provided as a convenience feature only, and is NOT a security feature. Users must not compile untrusted ConTeXt documents without using external sandboxing mechanisms (Docker, Bubblewrap, systemd-run, etc.).
- The ConTeXt Standalone Distribution distributes lexers/themes/plugins for various editors; TeX Live omits these files since editor support is outside its purview.
Any other differences from the ConTeXt Standalone Distribution are considered bugs, so if you find any deviations in this package, please let me know, and I will fix it for the next release.
Architecture
- Every day, my server updates its standalone ConTeXt installation.
- Afterwards, the
daily-check
workflow in this repository runs. It extracts the version number of the current ConTeXt installation, and then attempts to make a corresponding Git tag. If it fails (because the tag already exists), it gracefully exits; if it succeeds, it pushes the tag to this repository.
- Whenever a tag is pushed, the
make-release
workflow in this repository runs. It reorganizes and zips the contents of the ConTeXt standalone distribution into the format expected by TeX Live. Afterwards, it uploads the.zip
files into a new GitHub release.
- Whenever a new release is created, GitHub emails me. Then, I will manually download the
.zip
files from the release and upload them to CTAN.
Note that steps 2 and 3 (where all the important stuff happens) are executed on Woodpecker CI, so the full build logs are publicly available.
Files
A few TeX Live-specific files for ConTeXt are contained in the files/
directory. Check the comments in each file for more details.
Support and Contributing
If you have a problem with ConTeXt itself, it is best to report it to the official ntg-context@ntg.nl
mailing list.
If you notice that ConTeXt is mispackaged in TeX Live, then please open a new issue on GitHub, email the public ntg-context@ntg.nl
or tex-live@tug.org
mailing lists, or email me privately at tex@maxchernoff.ca
. Pull requests are also gladly accepted.
Installing
ConTeXt is a fairly complex package to install—if at all possible, please use tlmgr
(TeX Live) or mpm
(MikTeX), since manually unpacking and installing the files is error-prone and complicated. But if you insist on installing manually, please refer to INSTALLING.md
.
Licence
The vast majority of files in the zip archives originate from ConTeXt itself; please see doc/context/documents/general/manuals/mreadme.pdf
for details on their licensing. The files directly contained in this repository are placed in the public domain.
context – The ConTeXt macro package
A full featured, parameter driven macro package, which fully supports advanced interactive documents. See the ConTeXt Wiki for more information.
This content on CTAN is packaged independently of the ConTeXt project, so if you have a problem with ConTeXt itself, it is best to report it to the official ntg-context@ntg.nl mailing list.
If you notice that ConTeXt is mispackaged in TeX Live or CTAN, then please open a new issue on GitHub, email the public ntg-context@ntg.nl or tex-live@tug.org mailing lists, or email me privately at tex@maxchernoff.ca. Pull requests are also gladly accepted.
Package | context |
Home page | http://www.pragma-ade.nl/ |
Support | https://mailman.ntg.nl/archives/list/ntg-context@ntg.nl/ |
Repository | https://github.com/contextgarden/context |
Version | 2025-06-12 14:21 A |
Licenses | Free license not otherwise listed |
Maintainer | Hans Hagen |
Contained in | TeX Live as context |
Topics | ConTeXt Format |
