First off, thanks for taking the time to contribute!
All contributions that improve Vorta for everyone are welcome. This includes bug fixes, new features, translations, answering questions or improving documentation.
Before actually coding a new feature it’s usually best to discuss it with other users and maintainers on GitHub Discussions.
If your questions are Borg-specific it might be advisable to join the #borgbackup IRC channel on chat.freenode.net instead. Matrix is very suitable to be used as an always-on IRC-client, simply register/identify to NickServ and then join the room
If you have an issue with a current release, the issue may already be fixed in our Github repo. To test the latest code without doing much setup, you can install Vorta directly from Github:
$ pip install git+https://github.com/borgbase/vorta#egg=vorta
Clone the latest version of this repo:
$ git clone https://github.com/borgbase/vorta/
Install in development/editable mode while in the repo root:
$ pip install -e .
Install additional developer packages (pytest, tox, pyinstaller):
pip install -r requirements.d/dev.txt
Then run as Python script. Any changes from your source folder should be reflected.
Qt Creator is used to edit views. Install from their site or using Homebrew and then open the .ui files in
vorta/assets/UI with Qt Creator:
$ brew cask install qt-creator $ brew install qt
For UI icons, we use Fontawesome. You can browse available icons here and download them as SVG here. New icons are first added to src/vorta/assets/icons, and can be gotten with the
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:
To test for style errors: