Convertir des documents html en pdf.
-
Télécharger le paquet
.debdepuis la page Releases. -
Installer le paquet :
dpkg -i tmp/weasyprint_server_2026-01-15-14-18+c744464_amd64.deb
-
Lancer le serveur :
BASE_URL=http://127.0.0.1:4000 UWSGI_HTTP_SOCKET=0.0.0.0:8000 UWSGI_STATS=0.0.0.0:9191 UWSGI_PROCESSES=4 UWSGI_ENABLE_THREADS=true UWSGI_MODULE=wsgi:app UWSGI_CHDIR=/opt/weasyprint/app /opt/weasyprint/app/.venv/bin/uwsgi
La configuration se fait par variables d'environnement.
BASE_URL: URL vers le chemin de base des assets (css, images, etc).UWSGI_HTTP_SOCKET: l'IP et le port sur lequel binder le serveur.UWSGI_PROCESSES: nombre de processus par instance du serveur (valeur conseillée :4).UWSGI_MODULE: module WSGI racine à charger (valeur conseillée :wsgi:app).UWSGI_ENABLE_THREADS: active l'utilisation des threads (valeur conseillée :true)SENTRY_DSN(optionnel): identifiant Sentry pour la remontée des exceptions applicatives.
On utilise uv pour gérer python et ces dépendances.
On copy les variables d'env
cp env.example .envPour macosx il faut ajouter ces 2 étapes :
1- installer weasyprint avec homebrew
brew install weasyprint2- éxécuter cette ligne de commande
export DYLD_FALLBACK_LIBRARY_PATH=/opt/homebrew/lib:$DYLD_FALLBACK_LIBRARY_PATHuv run flask run --debug
# or any process manager reading Procfile.dev
overmind startuv run python -m unittestuv run ruff format --check && uv run ruff check- Builder un paquet .deb:
cd package_scripts && build.sh - Lancer le serveur dans un conteneur Docker :
cd package_scripts && run.sh - Les deux d'un coup:
cd package.sh && main.sh