development & deployment
darktable’s documentation is maintained in the dtdocs repository. Changes are introduced through pull requests (see workflow). Translations are maintained through weblate; see translations.
🔗Building
The full set of outputs (HTML site, EPUB, and per-language PDFs) is built by ./tools/build-all.sh <base_url>
This generates the translated content from the PO files, then builds the
HTML site, the EPUB, and one PDF per enabled language. Outputs are written
under public/, with PDFs at public/<lang>/darktable_user_manual.pdf.
Requirements: Hugo (extended), weasyprint, and po4a for the
translation step.
🔗GitHub Pages deployment (for development)
For development purposes, the docs are deployed to GitHub Pages on every push: A GitHub Action runs tools/build-all.sh, which generates HTML, EPUB and PDF outputs. These are committed to the repository’s gh-pages branch and served via GitHub Pages at https://darktable-org.github.io/dtdocs/. Generation of translated pages is disabled in the GitHub pages deployment.
🔗Official deployment to darktable.org
The official deployment of the manual is on the pixls.us server at docs.darktable.org/usermanual/stable/ for the current release and docs.darktable.org/usermanual/development/ for darktable’s current development snapshot.
The repositories are pulled regularly and the documentation is built with Hugo, including translations as well as EPUB and PDF outputs. The build log can be found here.
🔗Versioning and archiving of the manual
With each major release of darktable a release-x.x branch is created, from which a versioned snapshot of the manual is maintained and deployed as described above.
Older versions of the docs are taken offline from time to time and are archived in EPUB and PDF format as releases on GitHub:
- https://github.com/darktable-org/dtdocs/releases/tag/v4.8
- https://github.com/darktable-org/dtdocs/releases/tag/v4.6
- https://github.com/darktable-org/dtdocs/releases/tag/v4.2
- https://github.com/darktable-org/dtdocs/releases/tag/v4.0
- https://github.com/darktable-org/dtdocs/releases/tag/v3.8
- https://github.com/darktable-org/dtdocs/releases/tag/v3.6
Between 4.8 and 5.6 no snapshots are available because versioning of the manual had been suspended in that period.