This repository has been archived and is no longer maintained
A wrapper to quickly get you started backing up with borg
An easy to use ini style and profile based format
Requires:
- Python 3 >= 3.5.0, plus development headers
- OpenSSL >= 1.0.0, plus development headers
- libacl (which depends on libattr), both plus development headers
- liblz4 >= 1.7.0 (r129)
- libzstd >= 1.3.0
- libb2
For information on how to install these dependencies for Borg: https://borgbackup.readthedocs.io/en/stable/installation.html
Initialize the config
$ borgini
First run detected for profile: default
Make all necessary changes to config before running this again
You can do this by running the command:
. borgini EDITOR --config --select default
Default settings have been written to the ``include`` and ``exclude`` lists
These can be edited by running:
. borgini EDITOR --include --select default
. borgini EDITOR --exclude --select default
Note
the --select
optional argument does not need to be passed if using the default profile
Edit the config
$ borgini vim --config
Note
The selected editor is up to the user
The following would also work (provided they are installed)
$ borgini code --config
$ borgini gedit --config
$ borgini notepad --config
Ensure to make necessary changes to the DEFAULT
section
And ensure to configure the SSH
section if an ssh repo is configured
The remaining configurations will suite most people
If you use the BORG_PASSPHRASE
environment variable edit the ENVIRONMENT
section to point to the keyfile
Note
the file should contain one line and a password stored with safe read-write and ownership permissions
Edit the include and exclude files
$ borgini vim --include # add a list of paths to back up
$ borgini vim --exclude # add a list of paths to exclude
Note
The exclude list can contain subdirectories and files listed within the include list
This will override their inclusion
To switch between profiles add --select PROFILE
$ borgini vim --config # edit default config
$ borgini vim --config --select profile2 # edit profile2's config
$ borgini vim --include --select profile2 # edit profile2's include file
$ borgini vim --exclude --select profile2 # edit profile2's exclude file
$ borgini --select profile2 # run profile2's backup
Add the following for nightly backups at 12:00 to your crontab
$ 0 0 * * * /usr/local/bin/borgini
$ 0 0 * * * /usr/local/bin/borgini -s profile2 # easy for multiple repos