Files
app-catalog-felhom.eu/REPORT.md
T
admin f7458487fb docs: REPORT for paperless OCR lang-pack fix
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 08:29:03 +02:00

29 lines
1.6 KiB
Markdown

# REPORT — paperless OCR lang-pack fix (2026-06-15)
Single catalog change this round: fix the paperless-ngx OCR-language crash-loop found while deploying it
live on guest 9201 (userdata-arc close-out). Trunk-based on `main` (commits, no semver). Pairs with
felhom-controller v0.66.2.
> Validate against the pushed compose at file:line.
## Commit
- `67037cc``templates/paperless-ngx/docker-compose.yml`: `PAPERLESS_OCR_LANGUAGES` is now a fixed
**space-separated** superset `eng hun deu` (was `${PAPERLESS_OCR_LANGUAGE:-}`, i.e. the `+`-joined
select value).
## Why
The default `PAPERLESS_OCR_LANGUAGE: "hun+eng"` (.felhom.yml) was fed verbatim into
`PAPERLESS_OCR_LANGUAGES` — but that var is the **install list** and must be space-separated (the image
apt-installs `tesseract-ocr-<each>`). The `+`-joined value made it try to install a bogus package
`tesseract-ocr-hun+eng` → not found → the `hun` pack was missing → Django's startup check failed
(`selected ocr language hun is not installed`) → **crash-loop** on the default selection. Confirmed it was
a malformed-name bug, not network: `apt-get install tesseract-ocr-hun` (correct name) installs cleanly.
## Verified live (guest 9201)
Redeployed paperless with the default `hun+eng` → boots **healthy**; `tesseract --list-langs` reports
`deu eng hun` (all packs installed via the space-separated list). Runs as uid 1000 (USERMAP_UID/GID 1000);
consume end-to-end works (PDF dropped into `import/paperless` → ingested + the consume file removed).
(The broader userdata repoint of media mounts to `${USERDATA_PATH}/...` shipped in the prior catalog
commits — see git history / the controller REPORT.)