From f811c3fd809512c5b354d04ee73601d07b83cde9 Mon Sep 17 00:00:00 2001
From: Peter Adam
Date: Tue, 5 May 2026 14:40:48 +0200
Subject: [PATCH] Move Python generation step into Docker, no local Python
required
Add python3 and python3-yaml to the Docker image so generate_cards.py
runs inside the container. Both the generate and build-blanko Makefile
targets now use docker run instead of a local python3 call.
Remove Python/PyYAML from the README prerequisites.
Co-Authored-By: Claude Sonnet 4.6
---
Dockerfile | 2 ++
Makefile | 12 +++++++++---
README.md | 1 -
3 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/Dockerfile b/Dockerfile
index b06d836..1427d3e 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -5,6 +5,8 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
texlive-pictures \
texlive-fonts-recommended \
make \
+ python3 \
+ python3-yaml \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /workspace
\ No newline at end of file
diff --git a/Makefile b/Makefile
index c3a1b0a..0ca5cc9 100644
--- a/Makefile
+++ b/Makefile
@@ -29,13 +29,16 @@ build-back: build-image
@echo "PDF generated: $(PDF_FILE_BACK)"
# Generate all tex files from CSV + event.yml
-generate:
+generate: build-image
@echo "Generating cards from $(CSV_FILE) + event.yml..."
@if [ ! -f "$(CSV_FILE)" ]; then \
echo "Error: $(CSV_FILE) not found!"; \
exit 1; \
fi
- python3 generate_cards.py
+ docker run --rm \
+ -v $(PWD):/workspace \
+ $(IMAGE_NAME) \
+ python3 generate_cards.py
# Build personalized front + event back side PDFs
build-personalized: generate build-image
@@ -55,7 +58,10 @@ build-personalized: generate build-image
# Build blank (blanko) front + event back side PDFs (no CSV required)
build-blanko: build-image
@echo "Generating blank card..."
- python3 generate_cards.py --blanko
+ docker run --rm \
+ -v $(PWD):/workspace \
+ $(IMAGE_NAME) \
+ python3 generate_cards.py --blanko
@echo "Compiling blank front side to PDF..."
docker run --rm \
-v $(PWD):/workspace \
diff --git a/README.md b/README.md
index 327a3a2..6207783 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,6 @@ LaTeX-basierter Generator für Audax Randonneurs Allemagne Brevetkarten mit Vord
- Docker
- Make
-- Python 3 + PyYAML (`pip install pyyaml`)
## Konfigurationsdateien