| .forgejo/workflows | ||
| Formula | ||
| src | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| README.md | ||
resticview
A TUI browser for restic backup repositories. Browse snapshots, explore the file tree of any snapshot, and restore whole snapshots or single paths on demand.
Installation
macOS (Homebrew)
brew tap janvete/tools https://git.janvete.com/seth/homebrew-tools.git
brew install resticview
Debian / Ubuntu (.deb)
Add the janvete APT repository and install:
echo "deb [trusted=yes] https://git.janvete.com/seth/apt/raw/branch/main ./" | sudo tee /etc/apt/sources.list.d/janvete.list
sudo apt update
sudo apt install resticview
Prebuilt binaries
Each release also ships standalone binaries: resticview-macos (Apple Silicon) and resticview-linux (x86_64). Put the file on your PATH and make it executable:
chmod +x resticview-linux
sudo mv resticview-linux /usr/local/bin/resticview
From source
cargo install --git ssh://git@git-ssh.janvete.com:554/seth/resticview
restic must be installed and on PATH.
Usage
resticview reads restic credentials (RESTIC_REPOSITORY, RESTIC_PASSWORD, …) from env files stored in ~/.restic. It picks up every hidden file (name starting with ., e.g. .env, .hetzner) directly in that directory as well as inside hidden subdirectories, one level deep (e.g. ~/.restic/.work/.env). If several env files are found, a picker is shown; with exactly one it is loaded directly.
resticview # use env files from ~/.restic
resticview --env-dir DIR # use a different env directory
resticview --select # always show the env file picker
The main view has three panels: snapshots (left), the file tree of the selected snapshot (middle), and repository / snapshot info (right). The right panel shows the repository name, env file, total snapshot count, and details of the selected snapshot (time, host, user, paths, tags). The focused panel has a highlighted border.
Restore (r) asks for a target directory (pre-filled with ~/restic-restore-<id>), asks for confirmation, and then runs restic restore in the background. With the focus on the snapshot list the whole snapshot is restored; with the focus on the file tree only the selected path is restored (--include).
Controls
| Key | Action |
|---|---|
q / Ctrl-C |
quit |
Tab / Shift-Tab |
cycle focus between panels |
j / k or ↓ / ↑ |
move selection / scroll |
| mouse wheel | scroll the focused panel |
Enter |
expand/collapse directory (Files panel) |
h / l or ← / → |
collapse / expand directory |
g / G |
jump to top / bottom |
r |
restore selected snapshot or path |
R |
refresh snapshots |
Esc |
close prompt / dialog, clear status |
License
MIT