vorta/README.md

63 lines
2.0 KiB
Markdown
Raw Normal View History

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
- [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.
- [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.
- [x] Tests (partly)
2018-10-26 11:24:13 +00:00
Missing features:
2018-10-26 11:24:13 +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
```
### 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](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)