Files
Ustagammon/docs/adr/0004-outils-de-developpement-dans-docker.md
T

2.0 KiB

0004. Outils de développement dans Docker

  • Statut : accepté
  • Date : 2026-11-02
  • Décideurs : Claude Code

Contexte

La machine de développement est ancienne et doit rester légère. Le cadrage prévoit déjà que les chaînes d'outils lourdes (NDK, Emscripten, gnubg de référence) tournent dans Docker. La question s'est posée dès le premier outil de vérification, ShellCheck, absent du PC.

Décision

Rien n'est installé sur le PC en dehors de git, make, Docker et adb. Chaque outil tourne dans une image Docker de version figée, récupérée ou construite par make setup. Premier cas : ShellCheck (GPLv3), image koalaman/shellcheck-alpine:v0.10.0.

Alternatives écartées

  • Installer les outils avec apt : versions qui varient d'une machine à l'autre, et pollution du système.

Conséquences

  • make lint demande d'avoir lancé make setup une fois ; il le dit explicitement sinon.
  • Chaque nouvelle image est signalée avec sa licence dans CREDITS.md.

Amendements

2026-11-02 — Outils validés pour l'étape 0

Validé par Pierre. Tous tournent dans Docker et servent seulement à construire ou tester ; rien n'est embarqué dans l'application.

Outil Licence Image Usage
ShellCheck GPLv3 koalaman/shellcheck-alpine:v0.10.0 Lint des scripts shell
Node.js, @cucumber/gherkin MIT ustagammon/gherkin (docker/gherkin/) Validation des scénarios
Debian trixie, GNU Backgammon logiciels libres, GPLv3+ ustagammon/gnubg-reference gnubg de bureau de référence
gcc, make GPLv3 ustagammon/build-c (docker/build-c/) Compilation du moteur
GLib LGPL 2.1+ ustagammon/build-c Outils officiels de génération des données (makeweights, makebearoff)
Python 3 PSF ustagammon/build-c Comparateur des références
jq MIT ustagammon/build-c Lecture du JSON dans les tests
Emscripten MIT / NCSA emscripten/emsdk:3.1.64 Compilation du moteur en WebAssembly (étape 0b)