restic-browser
restic-browser copied to clipboard
A GUI to browse and restore restic backup repositories.

A simple, cross-platform restic backup GUI for browsing and restoring restic repositories.
Built with Tauri, based on leaanthony's Restoric PoC.
Older versions of the restic browser were built using Wails2. The latest release based on Wails is v0.2.6.
Download
Prebuilt binaries can be downloaded from the GitHub releases page.
Features
This is not a fullblown restic backup GUI - it only allows you to browse existing repositories!
- Displays contents (snapshots, files) from local and remote restic repositories.
- Dumps selected files or folders (as a zip archive) to a desired location.
- Restores selected files or folders to a desired location.
- Opens selected files by moving them to TEMP, then opens them with your operating system's default programs.

Keyboard Navigation
The UI is navigatable via keyboard shortcuts. To change the focus area, hit Tab + Shift-Tab keys.
Global Shortcuts:
Control/CMD + O: Open new repository
Snapshot-List
Arrow keys,Page Up/Down,Home/End: Change selected snapshot
File-List
Arrow keys,Page Up/Down,Home/End: Change selected fileoorEnterorSpace: Open selected file or folderd: Dump selected file or folder as zip filer: Restore selected file or folder
Arguments
Usage
Restic-Browser [OPTIONS]
Options
-h, --help
Print help information
--insecure-tls
skip TLS certificate verification when connecting to the repo (insecure)
--password <password>
password for the repository - NOT RECOMMENDED - USE password-file/command instead. (default: $RESTIC_PASSWORD)
--password-command <password-command>
shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)
--password-file <password-file>
file to read the repository password from (default: $RESTIC_PASSWORD_FILE)
-r, --repo <repo>
repository to show or restore from (default: $RESTIC_REPOSITORY)
--rclone <rclone>
ABS path to the rclone executable that should be used for rclone locations. (default: 'rclone')
--repository-file <repository-file>
file to read the repository location from (default: $RESTIC_REPOSITORY_FILE)
--restic <restic>
ABS path to the restic executable that should be used. (default: find in $PATH)
-V, --version
Print version information
System Requirements
All platforms
- Install restic and make sure it is included in your $PATH.
On MacOS, where setting the PATH for desktop applications is a really hard thing to do, the restic executable will also be found if it's in one of the following folders:/usr/local/bin, /opt/local/bin, /opt/homebrew/bin, ~/bin.
Windows:
- Windows 10 or later with WebView2 Runtime
MacOS:
- macOS 10.13 or later
Linux:
- Linux with GLIBC_2.31 or later (e.g. Ubuntu 20.04 or later)
- WebKit2 (install via
apt install libwebkit2gtk-4.0on Ubuntu)
Development
Dependencies
- Follow the Tauri Prerequisites Docs to install a C/C++ toolchain and Rust for your platform.
- Make sure npm Node v18 LTS is installed.
- Install restic and make sure it is included in your $PATH.
Note: installing the tauri CLI via cargo is not necessary. Tauri can be launched through npm (see below).
Front-end and App Development
To work in live development mode with automatic hot-reloading, run npm run tauri dev in the root directory.
Rust Backend Debugging
To debug the Tauri Rust application code, you can use the included startup tasks of vscode. If you press "F5" in vscode, the application will be built in debug mode and then started.
Building Production Packages
To build a redistributable package in production mode, run npm run tauri build in the root directory.
License
MIT license. See LICENSE for the full text.
Contribute
Patches are welcome! Please fork the latest git repository and create a feature branch.