An implementation of Vorta in Golang to improve deployment and packaging.
Functional, but still missing some features. Use the Python version if you need something that works.
Borg Commands:
-
init -
create -
info -
check -
extract -
mount -
delete -
diff -
list-archive -
list-repo -
prune -
umountand mount status -
version
Backend Functionality
- Keychain/SecretService
- Background scheduler
- Single App
- Read and parse existing SSH keys
- Create new SSH key
- Check Borg version for available features
- Tests
- Read list of WiFis
- Check Wifi before scheduled backup
-
Password fallback to database - Translations
- Notifications from scheduler
- Settings an related functionality (icon color, etc)
- Sparkle updates for macOS
Packaging (via Docker)
- macOS
- Ubuntu 19.04
- Debian 10
- Fedora 30
- Archlinux
- Windows?
Other issues:
- Exclusions
- Cancel button
- Backup status (icon, menu)
- Bug: exclusions are lost
- Follow the official steps to set up a Go project in Module Mode. E.g. for macOS
export GO111MODULE=on
go install -v -tags=no_env github.com/therecipe/qt/cmd/...
go mod vendor
git clone https://github.com/therecipe/env_darwin_amd64_513.git vendor/github.com/therecipe/env_darwin_amd64_513
- Test app using
$ qtdeploy -debug -uic=false -quickcompiler test - Package for deployment
$ qtdeploy -uic=false -quickcompiler buildormake darwin
Important folders:
/uihas.uifiles provided by Qt Designer/qmlhas icons and other assets
See the Makefile for different deployment options. Needs Docker installed. E.g.
$ make darwin$ make linux DISTRO=archlinux
For Linux, Qt5 is linked dynamically to match your distro's look and feel. Install required Qt5 packages like this:
- Ubuntu/Debian:
$ apt install qt5-default libqt5qml5 - Archlinux:
$ pacman -S qt5 - Fedora:
$ yum install qt5-qtbase
- extract strings:
lupdate -extensions ui ui/*.ui -ts qml/i18n/ui_en.ts - merge .ts files:
lconvert -i primary.ts secondary.ts -o complete.ts - compile .ts to .qm:
lrelease qml/i18n/ui_de.ts -qm qml/i18n/ui_de.qm
- Thank you to all the people who already contributed to Vorta: code, translations
- Licensed under GPLv3. See LICENSE.txt for details.
- Icons by FontAwesome