dashboard: per-player settings, storage usage; drop Config tab

- Remove the separate Config tab (3 tabs now); each player's settings
  (content type, mount point, music folder, fat order, sync command) are shown
  in a PLAYER SETTINGS card on the dashboard
- Show mounted storage on the device card: total/free space (statvfs) plus a
  usage gauge
- Add library + sync-pipeline cards and full-width SYNC PATH chain
- Update keybar/help/README for 3 tabs
This commit is contained in:
Sebastian
2026-08-22 09:57:53 +02:00
parent 416776bdf4
commit 88b53e50d1
12 changed files with 243 additions and 154 deletions
+7 -7
View File
@@ -13,12 +13,12 @@ living dashboard instead of a batch CLI.
bars.
- **Devices sidebar** — live mount status (green dot = mounted), firmware tags,
last-sync age per device.
- **4 tabs** — Dashboard (device + library cards, source-chain diagram), Sync
(live step pipeline + progress gauge), Logs (color-coded, follow mode),
Config (syntax-coloured TOML).
- **Live sync engine** — streams `rclone` and `rsync` output, parses progress,
NFC-aware diffing for macOS→FAT32/Android devices, optional `fatsort`
finalize for Mlove devices.
- **3 tabs** — Dashboard (per-player overview + settings, storage usage when
mounted, library + sync pipeline), Sync (live step pipeline + progress
gauge), Logs (color-coded, follow mode).
- **Live sync engine** — streams `rclone` and `rsync` output, parses progress
(byte-weighted via `--info=progress2`), NFC-aware diffing for
macOS→FAT32/Android devices, optional `fatsort` finalize for Mlove devices.
- **Abort-safe** — `a` kills the running child process cleanly.
- Reads the existing `~/.config/dap-sync/config.toml` (compatible with
`dap-sync`), persists last-sync state to `~/.local/share/dap-sync/sync-state.toml`.
@@ -39,7 +39,7 @@ cargo build --release
| `↑`/`↓` `j`/`k` | move selection |
| `s` / `Enter`| sync selected device |
| `a` | abort running sync |
| `Tab` / `1-4`| switch tab |
| `Tab` / `1-3`| switch tab |
| `r` | refresh device mounts |
| `f` | toggle log follow |
| `u` / `d` | scroll logs |