host: settings backup envelope and encrypted folder sync

backup: the versioned .waybetter envelope (format/version checks, only the
app's registered sections kept), secret-key scrubbing, the plugins /
customCss / accounts sections every app has, plugin import checks and
atomic writes. sync: Argon2id + XChaCha20-Poly1305 snapshots of the
settings backup in a folder the owner syncs, moved unchanged from the
wayBetter for X app with its tests.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
CRTkafa 2026-09-29 10:58:15 +07:00
parent d36e2d8709
commit 8ff27a629f
5 changed files with 885 additions and 0 deletions

View file

@ -15,9 +15,12 @@
//! - [`tabs`]: tab layout/state payloads, link routing and tab-chrome validation.
//! - [`layout`]: native placement bookkeeping (unchanged bounds skipped, window-resize follow).
//! - [`i18n`]: the strings native UI and site tabs get in the owner's language (validated data), OS locale.
//! - [`backup`]: the settings backup envelope, secret scrubbing and the plugin/account sections.
//! - [`sync`]: encrypted settings sync through a folder the owner syncs (Argon2id + XChaCha20-Poly1305).
//!
//! With the `tauri` feature, [`host`] adds the Tauri glue that does not depend on app state.
pub mod backup;
pub mod hotfix;
pub mod i18n;
pub mod layout;
@ -25,6 +28,7 @@ pub mod plugins;
pub mod policy;
pub mod profiles;
pub mod site;
pub mod sync;
pub mod tabs;
pub mod update;