Skip to content

Upgrade the base image to Debian 13 Trixie - #32

Merged
Paebbels merged 1 commit into
devfrom
claude/debian-trixie
Sep 17, 2026
Merged

Paebbels merged 1 commit into
devfrom
claude/debian-trixie

Conversation

@pytooling-claude

Copy link
Copy Markdown

Changes

  • The base image moves from python:3.14-slim-bookworm to python:3.14-slim-trixie - Debian 13 Trixie. Pipeline.yml sets base_image_os_version="13" and base_image_os_codename="Trixie"; everything else derives from those two variables, including the MiKTeX apt distribution.
    • MiKTeX's apt repository carries trixie since 2026-05, currently at 26.5-trixie1 - the same MiKTeX version as 26.5-bookworm1, so the distribution changes and the TeX distribution does not.
    • Every Debian package in Base.packages, Common.packages and Sphinx.packages resolves on Trixie. nodejs moves from 18.x to 20.x, which @mermaid-js/mermaid-cli requires anyway.

Bug Fixes

  • Dockerfile reads its MIKTEX_SRC_REPO argument. The apt sources line hardcoded bookworm, while the argument was declared twice, passed by Pipeline.yml on every build from miktex_source_repository, and then ignored - so the MiKTeX distribution could not follow the base image. It is derived from base_image_os_codename now, which makes the next upgrade a one-variable change.

Documentation

  • README.md names Debian 13.x Trixie as the base.

Known Issues

  • The trixie distribution of the MiKTeX repository holds only 26.2 and 26.5, against eleven versions for bookworm. Pinning an older MiKTeX is therefore not possible on Trixie.

Related Issues and Pull-Requests

  • Follows v1.5.1 #31 (v1.5.1).
  • Verified outside the pipeline: this container is Debian 13.6 Trixie, and miktex 26.5-trixie1 from the trixie distribution installs the 130 packages of Common.list plus Sphinx.list with mpm and compiles pyTooling's pyTooling.tex to PDF without a missing file.
  • Promote images to their official tags only after the checks pass #28 covers the risk of this change: the image is built, pushed and tested as ci-<short sha>, and the official tags are moved onto it only after the tests pass - a broken Trixie build cannot replace pytooling/miktex:dev or :latest.

The MiKTeX apt repository now carries a 'trixie' distribution, at the same
MiKTeX version as 'bookworm' (26.5).

'Dockerfile' hardcoded 'bookworm' in the apt sources line while ignoring its
own 'MIKTEX_SRC_REPO' argument, which the pipeline has always passed. Reading
the argument ties the MiKTeX distribution to 'base_image_os_codename', so the
next upgrade is a single variable again.

Co-Authored-By: Patrick Lehmann <Paebbels@gmail.com>
@pytooling-claude pytooling-claude Bot added CI Pipeline Related to the CI pipeline enhancement New feature or request MiKTeX Relatex to the MiKTeX distribution. labels Sep 17, 2026
@Paebbels
Paebbels merged commit dc45f62 into dev Sep 17, 2026
12 of 13 checks passed
@Paebbels
Paebbels deleted the claude/debian-trixie branch September 17, 2026 06:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI Pipeline Related to the CI pipeline enhancement New feature or request MiKTeX Relatex to the MiKTeX distribution.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants