From 9f37f7655d299b50c357a34099813cc19d5fdabb Mon Sep 17 00:00:00 2001 From: librelad Date: Tue, 26 May 2026 00:43:24 +0100 Subject: [PATCH] polish(webui): spacing + icon for the System config backup card; doc the status MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add .backup-system-card { margin-top: 20px } — the card stands alone below the two-column cards row (which has no bottom margin), so it was butting against it. - Add a server-stack icon to the card header (matches the nebula stroke-icon style). - DEVELOPMENT.md: document the dashboard "System config" card + its last-backup status (tag system=config → `system` in the dashboard JSON), the CLI/auto paths, and that the libreportal app is excluded from the per-app grid. Co-Authored-By: Claude Opus 4.7 Signed-off-by: librelad --- containers/libreportal/frontend/css/backup.css | 6 ++++++ .../libreportal/frontend/html/backup-content.html | 11 +++++++++-- docs/DEVELOPMENT.md | 8 +++++++- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/containers/libreportal/frontend/css/backup.css b/containers/libreportal/frontend/css/backup.css index 5eb2ad0..801ba3c 100755 --- a/containers/libreportal/frontend/css/backup.css +++ b/containers/libreportal/frontend/css/backup.css @@ -176,6 +176,12 @@ padding: 18px 22px; } +/* Stands alone below the two-column cards row (which has no bottom margin), so + give it the same vertical rhythm as the summary -> cards gap. */ +.backup-system-card { + margin-top: 20px; +} + .backup-card-header { display: flex; align-items: baseline; diff --git a/containers/libreportal/frontend/html/backup-content.html b/containers/libreportal/frontend/html/backup-content.html index 937ca7b..1cb4d7b 100644 --- a/containers/libreportal/frontend/html/backup-content.html +++ b/containers/libreportal/frontend/html/backup-content.html @@ -88,9 +88,16 @@
-
+
-

System config

+

+ + + + + + System config +

Global settings, WebUI login & backup-location credentials
diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index 01ea01a..741c3a4 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -201,7 +201,13 @@ is a dev-only escape hatch. from the release): `scripts/`, `tools/`, install templates, and the `libreportal` WebUI app itself (its frontend + generated JSON regenerate; its only state, the login, lives in the system config). Restore = reinstall the code, then restore - the system config + each app's data dir. + the system config + each app's data dir. The system snapshot runs automatically + in `backup all` and is also on-demand via `libreportal backup system` / + `restore system` (restore lands in a staging dir — never overwrites live config) + and the WebUI **backup dashboard → "System config" card**, which shows its + last-backup status (tag `system=config`, surfaced as `system` in the dashboard + JSON) the same way per-app tiles do. The `libreportal` app is excluded from the + per-app grid since it isn't backed up. - **New runtime script?** Add it under `scripts//…` and run `scripts/source/files/generate_arrays.sh run` (or `libreportal regen arrays`) so it's sourced (build/standalone tooling under `scripts/release` and