.gitignore | ||
LICENSE | ||
README.org |
Borg-Qt
Borg-Qt is a Python 3 based graphical frontend for the backup tool BorgBackup as its name implies it is using the Qt5 Framework. Currently it works only on Linux.
Motivation
I think Borg is a great backup tool which should be available to many move users. Since command line tools can be a bit scary for less experienced users I decided to write a GUI as my "thesis" during my final semester at the IBZ school in Aarau, Switzerland.
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Prerequisites
You need to have Borg installed in order to have Borg-Qt working. You can get a
binary for your operating system here:
https://github.com/borgbackup/borg/releases
On a Debian based system you can install it by copying to ~/.local/bin/
. Borg
needs to be able to get executed by calling the command borg
.
cp ~/Downloads/borg-linux64 ~/.local/bin/borg
chmod +x ~/.local/bin/borg
For other systems check their documenation.
Installing
Installing Borg-Qt is very simple. Download the binary for your operating system here: https://github.com/Nebucatnetzer/borg-qt/releases
You can then either run it by double clicking on it or by copying it to
~/.local/bin/
like Borg. If you do that you might want to create a desktop
file for it. Puth the following code into a borg-qt.desktop
file in
~/.local/share/applications/
.
#+example [Desktop Entry] Version=1.0 Name=Borg-Qt Exec=/home/username/.local/bin/borg-qt Terminal=false Type=Application Categories=Tools MimeType=x-scheme-handler/tg; #+example
Make sure the file is executable:
chmod +x ~/.local/share/applications/borg-qt.desktop
Now you should find Borg-Qt in your desktops start menu.
Development
To start working on Borg-Qt first clone the git repository and install BorgBackup as described in /Nebucatnetzer/borg-qt/src/commit/b1b9853593460cc873e4068b8b31e2c34043bb14/Prerequisites.
git clone https://github.com/borg-qt/borg-qt.git
Now create a virtual environment.
cd borg-qt
python3 -m venv venv
And activate it.
source venv/bin/activate
Finally you can install the depencies.
pip3 install -r requirements.txt
You're now all set to work on Borg-Qt. It's a good idea to run the tests before starting. You can do this with the following command.
python3 -m unittest
Used packages
- PyQt5 - the GUI framework
- PyInstaller - used for creating the binary
Contributing
Since I'm currently working on this as part of my thesis I won't be able to accept any pull requests. After the 18th or March 2019 everybody is more than invited to contribute.
Versioning
Currently there is no versioning as such. In the future a versioning scheme based on semantic Versioning might get used. However the master branch is considered to be the stable branch. Other branches might be highly experimental.
Authors
- Andreas Zweili - Initial work - Nebucatnetzer
License
This project is licensed under the GPLv3 License - see the /Nebucatnetzer/borg-qt/src/commit/b1b9853593460cc873e4068b8b31e2c34043bb14/LICENSE file for details.
Acknowledgments
- Thanks to PurpleBooth for her README template.
- Thanks to "Back in Time" for the inspiration