README.md

Sun, 21 Jan 2018 22:43:57 +0000

author
Tuomo Valkonen <tuomov@iki.fi>
date
Sun, 21 Jan 2018 22:43:57 +0000
changeset 43
8f3ac19f11b6
parent 41
e2641cb9ca6d
child 44
ac449729a896
permissions
-rw-r--r--

Use platform package to detect whether to:
* rumps vs. xdg for configuration file location, and
* try to display a tray icon

# Borgend

This is a retrying scheduler as well as a MacOS tray icon for [BorgBackup](https://borgbackup.readthedocs.io/en/stable/).
If you are not on MacOS, no tray icon will be displayed, but you can still use Borgend as a retrying scheduler.

The lead author is Tuomo Valkonen (<tuomov@iki.fi>).

## Installation

You will need to install the following non-standard Python packages:

 - [keyring](https://pypi.python.org/pypi/keyring) to extract passphrases from the keychain

The use the tray icon on Mac OS, you will need:

 - [rumps](https://github.com/jaredks/rumps) (Ridiculously Uncomplicated macOS Python Statusbar apps)

If you are not on Mac OS, you will need:

 - [xdg](https://pypi.python.org/pypi/xdg/3.0.0) for configuration file location

For passphrase use authentication to work correctly, it is useful to create a standalone Mac app. This can be don with `py2app`. You can install it with

    pip install py2app

(for alternatives see [py2app documentation](https://py2app.readthedocs.io/en/latest/install.html)). Then, to build the standalone app, run

    python3 setup.py py2app

The apps hould be placed under `dist/`.


## Usage and configuration

### Configuration file

See the included `config.example.yaml`, which shoud be relatively self-explanatory. Everything under `common_parameters`, `create_parameters`, and `prune_parameters` are simply Borg command line key–value parameters.
Edit the sample configuration file and copy it to `~/.config/borgend/config.yaml`.

### Passphrases

Passphrases are stored in the OS X Keychain (or whatever the keyring package supports on other systems). In the Borgend configuration file, you only configure the ‘account’ of the of the password using `keychain_account` keyword of each backup set. The ‘service’ of the password has to be `borg-backup`. To add a password into the keychain for the ‘my-borg-backup’, you may use:

    security add-generic-password -a my-borg-backup -s borg-backup -w [PASSWORD]


## License

This software is distributed under an ANTI-ABUSE LICENSE (aka. *fuck copyright and fuck distributions license*), and without any warranty whatsoever. If you redistribute this software as part of a larger collection/distribution/suite of software, you must do either of the following:

(a) Always redistribute the **unmodified** and **latest** version provided
by the lead author. If the lead author releases a new version (on a specific branch, such as 'stable' or 'development'), you must promptly make that new
version the default version offered to your users (on that specific branch).

(b) Rename the software, and make it obvious that your modified or obsolete software is in no way connected to the lead author of the original software. The users of your version should under no circumstances be under the illusion that they can contact the lead author or any of the authors of the original software if they have any complaints or queries.

Otherwise, do whatever you want with this software.

mercurial