src/vorta | ||
tests | ||
.bumpversion.cfg | ||
.gitignore | ||
environment.yml | ||
LICENSE.txt | ||
README.md | ||
setup.cfg | ||
setup.py | ||
vorta.spec |
Vorta - A Boring GUI for BorgBackup
Vorta is a GUI for BorgBackup. It's in alpha status and currently has the following features:
- Select and create SSH keys without using the Terminal
- Securely save repo password in Keychain.
- Initialize new remote Borg repositories
- Create new Borg snapshots (backups) from local folders
- Mount existing snapshots with FUSE
- Settings stored in sqlite
- Exclude options/patterns.
- Rule-based scheduling by time, Wifi SSID, etc.
- Scheduling for background backups.
- Tests (partly)
Missing features:
- Repo pruning
- Repo checking
Download
The app package under Releases should include everything. Just download, unzip and run.
Development
Conda is used for dependency management. Create a new virtual env using:
$ conda env create environment.yml
Qt Creator is used to edit views. Install using Homebrew and then open the .ui files in vorta/UI
:
$ brew cask install qt-creator
$ brew install qt
To run directly:
PYTHONPATH=src python -m vorta
To build a binary package:
$ pyinstaller --clean --noconfirm vorta.spec
Testing (work in progress)
Tests are in the folder /tests
. Run them with PYTHONPATH=src pytest
. Testing happens at the level of UI components. Calls to borg
are mocked and can be replaced with some example json-output.
Why the Name?
Vorta are a race referenced in Star Trek. They serve the Dominion and are replaced by their clones if they die. Just like our backups.
Author
(C) 2018 Manuel Riel for BorgBase.com
License and Credits
- Licensed under GPLv3. See LICENSE.txt for details.
- Uses the excellent BorgBackup
- Based on PyQt and Qt.
- Icons by FontAwesome