Initial import of borg-restore

This commit is contained in:
Marek Miklewicz
2026-07-04 11:20:44 +02:00
commit bd66a92f30
24 changed files with 11365 additions and 0 deletions
+64
View File
@@ -0,0 +1,64 @@
# borg-restore 2.x - state snapshot
## Current state
- Working dir: `borg-restore_2x/borg-restore`
- Latest version in `plugin.conf`: `2.0.7`
- Latest package: `borg-restore_2x/2.0.7/borg-restore.tar.gz`
## Packaging layout (required)
- Source (editable): `borg-restore_2x/borg-restore/`
- Packages: `borg-restore_2x/<version>/borg-restore.tar.gz`
## Key behavior (current)
- Restore types:
- `web` (Pliki www)
- `mail` (Zawartosc skrzynki pocztowej)
- Restore modes:
- `location` (przywracanie do lokalizacji)
- `overwrite` (nadpisywanie)
- `update` (scalenie; UI label: "Polaczenie danych kopii zapasowej z obecnymi danymi")
- For mail merge:
- rsync excludes Dovecot indexes and can optionally delete them after merge.
- Target path picker (location mode) is limited to `/home/DA_USER`.
- Restore path restriction (if enabled) is applied only to restore path and overwrite/update.
- Warning modal uses pink background; overlay uses transparent dark scrim.
## Config (plugin-settings.conf)
- `BB_PATH=/opt/bb`
- `BORG_PATH=/usr/bin/borg`
- `BORG_VARIABLES_FILE=/opt/bb/bbvars.sh`
- `WEB_RESTORE_LOCATION=/home/DA_USER/domains`
- `MAIL_RESTORE_LOCATION=/home/DA_USER/imap`
- `DEFAULT_RESTORE_DESTINATION=/home/DA_USER/bb`
- `BLOCK_RESTORE_OUTSIDE_LOCATION=TRUE`
- `PREVENT_RESTORE_MAIN_DOMAINS_DIR=TRUE`
- `PREVENT_RESTORE_MAIN_IMAP_DIR=TRUE`
- `CLEAR_DOVECOT_INDEXES_AFTER_MERGE=TRUE`
- `RESTORE_PATH_MODE=full`
## Notable logic changes
- Mail merge uses rsync with excludes for:
- `dovecot.index*`, `dovecot-uidlist`, `dovecot-uidvalidity`,
`dovecot.list.index*`, `dovecot.list.log`
- Optional cleanup of these indexes after merge if config flag is TRUE.
- Logs: lines containing "Permanently added" and "known host" are filtered out of user-facing logs.
- New config flags to allow/deny restoring whole `/home/DA_USER/domains` and `/home/DA_USER/imap`.
- Default target path for location mode uses `DEFAULT_RESTORE_DESTINATION`.
- Picker: creating a new dir jumps into it.
## CSS/UI
- Overlay: `rgba(15, 23, 42, 0.35)`
- Warning modal: class `br-modal-warning` with background `#f3c8c8`
- Picker modal: white background (default `.br-modal`)
## Recent files touched
- `borg-restore_2x/borg-restore/user/index.html`
- `borg-restore_2x/borg-restore/scripts/restore.sh`
- `borg-restore_2x/borg-restore/plugin-settings.conf`
- `borg-restore_2x/borg-restore/user/enhanced.css`
- `borg-restore_2x/borg-restore/user/evolution.css`
## Next step template (for new chat)
- "Pracujemy w `borg-restore_2x/borg-restore/`. Aktualna wersja w plugin.conf: 2.0.7."
- "Ostatnia paczka: `borg-restore_2x/2.0.7/borg-restore.tar.gz`."
- "Cel: <opis zmiany>."