2018-10-28 17:33:14 +00:00
# Vorta - A Boring GUI for BorgBackup
2018-10-26 11:24:13 +00:00
2018-10-28 17:19:12 +00:00
![](https://files.qmax.us/vorta-screencast-2.gif)
2018-10-27 11:21:14 +00:00
2018-10-26 16:01:59 +00:00
[Vorta ](http://memory-alpha.wikia.com/wiki/Vorta ) is a GUI for [BorgBackup ](https://borgbackup.readthedocs.io ). It's in alpha status and currently has the following features:
2018-10-26 11:24:13 +00:00
2018-10-29 05:12:45 +00:00
- [x] Select and create SSH keys without using the Terminal
2018-10-29 17:26:34 +00:00
- [x] Securely save repo password in Keychain.
2018-10-28 15:40:38 +00:00
- [x] Initialize new remote Borg repositories
- [x] Create new Borg snapshots (backups) from local folders
- [x] Mount existing snapshots with FUSE
- [x] Settings stored in sqlite
- [x] Exclude options/patterns.
2018-10-29 17:26:34 +00:00
- [x] Rule-based scheduling by time, Wifi SSID, etc.
- [x] Scheduling for background backups.
2018-10-30 17:46:37 +00:00
- [x] Tests (partly)
2018-10-26 11:24:13 +00:00
2018-10-27 10:12:30 +00:00
Missing features:
2018-10-26 11:24:13 +00:00
2018-10-28 15:40:38 +00:00
- [ ] Repo pruning
- [ ] Repo checking
2018-10-26 11:24:13 +00:00
2018-10-27 12:04:55 +00:00
## Download
The app package under [Releases ](https://github.com/borgbase/vorta/releases ) should include everything. Just download, unzip and run.
2018-10-26 11:24:13 +00:00
## Development
2018-10-26 16:01:59 +00:00
Conda is used for dependency management. Create a new virtual env using:
```
$ conda env create environment.yml
```
2018-10-26 11:24:13 +00:00
2018-10-26 16:01:59 +00:00
Qt Creator is used to edit views. Install using Homebrew and then open the .ui files in `vorta/UI` :
```
2018-10-27 11:33:59 +00:00
$ brew cask install qt-creator
2018-10-26 16:01:59 +00:00
$ brew install qt
```
2018-10-31 11:14:12 +00:00
To run directly:
```
PYTHONPATH=src python -m vorta
```
2018-10-26 16:01:59 +00:00
To build a binary package:
```
$ pyinstaller --clean --noconfirm vorta.spec
```
2018-10-30 17:46:37 +00:00
### 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.
2018-10-27 10:12:30 +00:00
## Why the Name?
[Vorta ](http://memory-alpha.wikia.com/wiki/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.
2018-10-26 16:01:59 +00:00
## Author
(C) 2018 Manuel Riel for [BorgBase.com ](https://www.borgbase.com )
## License and Credits
- Licensed under GPLv3. See LICENSE.txt for details.
- Uses the excellent [BorgBackup ](https://www.borgbackup.org )
- Based on PyQt and Qt.
2018-10-27 17:40:08 +00:00
- Icons by [FontAwesome ](https://fontawesome.com )