(feature) Make the native installer interactive

Add an interactive setup flow to the systemd installer with defaults
for install paths, service identity, backup storage, bind address,
allowed hosts, CSRF origins, OS package installation, MariaDB support,
nginx setup, and first superuser creation.

Keep scripted installs supported through non-interactive mode, existing
overrides, environment variables, and explicit superuser flags.

Print a user-facing completion summary with the control panel URL,
Self Check reminder, first setup steps, and useful service log commands.
This commit is contained in:
2026-05-19 18:22:18 +02:00
parent 44d821c638
commit 38f946d1c4
3 changed files with 226 additions and 0 deletions

View File

@@ -62,6 +62,22 @@ pobsync discover-snapshots --host <host>
pobsync retention <host>
```
## Installer Development
The native installer is interactive by default when stdin is a terminal. It should keep every prompt backed by a command
line flag or environment variable so production installs remain scriptable.
Useful modes:
```
sudo scripts/install-systemd
sudo scripts/install-systemd --non-interactive
sudo scripts/install-systemd --create-superuser --superuser-username admin
```
The installer should print a short completion summary with the control panel URL, Self Check reminder, and service log
commands. Keep that output user-facing rather than developer-facing.
## Migration Helpers
Import existing legacy YAML configs: