vorta/README.md

2.0 KiB

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