# 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//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: ."