src/vorta | ||
tests | ||
.bumpversion.cfg | ||
.gitignore | ||
LICENSE.txt | ||
MANIFEST.in | ||
README.md | ||
requirements-dev.txt | ||
setup.cfg | ||
setup.py | ||
vorta.spec |
Vorta - A Boring GUI for BorgBackup
Vorta is an open source macOS/Linux GUI for BorgBackup. It's currently in alpha status.
Main features
- Encrypted, deduplicated and compressed backups.
- Works with any remote SSH account that has
borg
installed. Or try BorgBase for advanced features like append-only repositories and monitoring. - Add SSH keys and initialize repos directly from the GUI.
- Repo keys are securely stored in macOS Keychain, Secret Service or KWallet.
- Mount existing snapshots via FUSE.
- Prune and check backups periodically.
- Flexible scheduling for automatic background backups. Only allow on certain Wifis.
- View a list of snapshots and action logs.
- Exclude options/patterns.
Coming soon:
- Support multiple backup profiles (in progress)
- Full test coverage (currently: 65%)
- Packaging for Linux? How?
Installation and Download
Vorta should work on all platforms that support Qt and Borg. Currently Borg doesn't support Windows, but this may change in the future. Setting allowed Wifi networks is currently not supported on Linux, but everything else should work.
macOS
Download the pre-built macOS binary from Releases. Just download, unzip and run.
Linux
First install Borg and its own dependencies. Then install Vorta from Pypi:
$ pip install vorta
After installation run with the vorta
command.
$ vorta
Development
Install in development/editable mode while in the repo:
$ pip install -e .
Then run via
$ vorta
Install developer packages we use (pytest, tox, pyinstaller):
pip install -r requirements-dev.txt
Qt Creator is used to edit views. Install from their site or using Homebrew and then open the .ui files in vorta/UI
:
$ brew cask install qt-creator
$ brew install qt
To build a binary package:
$ pyinstaller --clean --noconfirm vorta.spec
Testing (work in progress)
Tests are in the folder /tests
. Testing happens at the level of UI components. Calls to borg
are mocked and can be replaced with some example json-output. To run tests:
$ python setup.py test
To update and view coverage information
$ coverage run -m pytest
$ coverage report
Privacy Policy
- No personal data is ever stored or transmitted by this application.
- During beta, crash reports are sent to Sentry to quickly find bugs.
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