v1.0.1 — Installer locale detection
Immutable
release. Only release title and notes can be modified.
What's new
The installer now detects the browser language from the very first request via the Accept-Language header and automatically picks the matching branding:
| Browser language | Language | Brand |
|---|---|---|
de-* as top preference |
German | Schneespur |
All others (en, zh, ja, ar, it, fr, …) |
English | Wintertrace |
There is also a DE/EN switcher in the header for manual override — the choice applies for the browser session.
Previously the language was only chosen in step 5 (config), so steps 1–4 (welcome, DB setup, preflight, migrations) were always German regardless of browser. That's now fixed.
Changes in detail
- New
SetInstallerLocalemiddleware using Symfony'sgetPreferredLanguagefor clean q-value handling - The
brand()helper returns the correct name even without a database connection (locale-based) - Step 5 uses the language already detected server-side instead of running a second JS detection
- Explicit
ext-sodiumComposer requirement (needed by the auto-update mechanism)
Upgrading from v1.0.0
- Download the ZIP
- Copy the contents over the existing installation via FTP (overwrite files)
- Do not overwrite
.envandstorage/app/installed.lock - Done — no DB migration needed
Or via auto-update (if configured): offered automatically on the next update check.
Requirements
- PHP ≥ 8.2 with
ext-sodium(present by default on Strato/IONOS/All-Inkl) - MySQL ≥ 5.7