TUI browser for restic backup repositories
Find a file
2026-09-14 16:50:54 +02:00
.forgejo/workflows ci: remove corrupted .deb files before dpkg-scanpackages 2026-09-10 15:43:19 +02:00
Formula chore: update formula to v0.1.4, build from Forgejo source archive 2026-09-14 16:50:54 +02:00
src Remove slow restic stats call, add snapshot details to repo panel 2026-08-28 22:07:45 +02:00
.gitignore Initial resticview implementation 2026-08-16 19:30:55 +02:00
Cargo.lock Initial resticview implementation 2026-08-16 19:30:55 +02:00
Cargo.toml ci: switch release workflow to Forgejo, update repo URLs 2026-09-10 14:37:49 +02:00
README.md docs: update install instructions for Forgejo 2026-09-10 14:22:15 +02:00

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