borgini
=======
.. image:: https://img.shields.io/badge/License-MIT-yellow.svg
:target: https://opensource.org/licenses/MIT
:alt: License
.. image:: https://img.shields.io/pypi/v/borgini
:target: https://pypi.org/project/borgini/
:alt: PyPI
.. image:: https://github.com/jshwi/borgini/actions/workflows/ci.yml/badge.svg
:target: https://github.com/jshwi/borgini/actions/workflows/ci.yml
:alt: CI
.. image:: https://results.pre-commit.ci/badge/github/jshwi/borgini/master.svg
:target: https://results.pre-commit.ci/latest/github/jshwi/borgini/master
:alt: pre-commit.ci status
.. image:: https://github.com/jshwi/borgini/actions/workflows/codeql-analysis.yml/badge.svg
:target: https://github.com/jshwi/borgini/actions/workflows/codeql-analysis.yml
:alt: CodeQL
.. image:: https://codecov.io/gh/jshwi/borgini/branch/master/graph/badge.svg
:target: https://codecov.io/gh/jshwi/borgini
:alt: codecov.io
.. image:: https://readthedocs.org/projects/borgini/badge/?version=latest
:target: https://borgini.readthedocs.io/en/latest/?badge=latest
:alt: readthedocs.org
.. image:: https://img.shields.io/badge/python-3.8-blue.svg
:target: https://www.python.org/downloads/release/python-380
:alt: python3.8
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/psf/black
:alt: Black
.. image:: https://img.shields.io/badge/linting-pylint-yellowgreen
:target: https://github.com/PyCQA/pylint
:alt: pylint
ini config for borg backup
--------------------------
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
.. code-block:: console
$ 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
.. code-block:: console
$ borgini vim --config
..
.. note::
The selected editor is up to the user
The following would also work (provided they are installed)
.. code-block:: console
$ 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
.. code-block:: console
$ 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``
.. code-block:: console
$ 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
.. code-block:: console
$ 0 0 * * * /usr/local/bin/borgini
$ 0 0 * * * /usr/local/bin/borgini -s profile2 # easy for multiple repos
..
Raw data
{
"_id": null,
"home_page": "https://pypi.org/project/borgini/",
"name": "borgini",
"maintainer": "jshwi",
"docs_url": null,
"requires_python": ">=3.8,<4.0",
"maintainer_email": "stephen@jshwisolutions.com",
"keywords": "backup,borg,config,deduplicate,ini",
"author": "jshwi",
"author_email": "stephen@jshwisolutions.com",
"download_url": "https://files.pythonhosted.org/packages/5d/6f/9b63d90dc78ac5353e7e16cd99c71e71b5848a9b9a33c62bf44941c16b47/borgini-1.2.0.tar.gz",
"platform": null,
"description": "borgini\n=======\n.. image:: https://img.shields.io/badge/License-MIT-yellow.svg\n :target: https://opensource.org/licenses/MIT\n :alt: License\n.. image:: https://img.shields.io/pypi/v/borgini\n :target: https://pypi.org/project/borgini/\n :alt: PyPI\n.. image:: https://github.com/jshwi/borgini/actions/workflows/ci.yml/badge.svg\n :target: https://github.com/jshwi/borgini/actions/workflows/ci.yml\n :alt: CI\n.. image:: https://results.pre-commit.ci/badge/github/jshwi/borgini/master.svg\n :target: https://results.pre-commit.ci/latest/github/jshwi/borgini/master\n :alt: pre-commit.ci status\n.. image:: https://github.com/jshwi/borgini/actions/workflows/codeql-analysis.yml/badge.svg\n :target: https://github.com/jshwi/borgini/actions/workflows/codeql-analysis.yml\n :alt: CodeQL\n.. image:: https://codecov.io/gh/jshwi/borgini/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/jshwi/borgini\n :alt: codecov.io\n.. image:: https://readthedocs.org/projects/borgini/badge/?version=latest\n :target: https://borgini.readthedocs.io/en/latest/?badge=latest\n :alt: readthedocs.org\n.. image:: https://img.shields.io/badge/python-3.8-blue.svg\n :target: https://www.python.org/downloads/release/python-380\n :alt: python3.8\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :target: https://github.com/psf/black\n :alt: Black\n.. image:: https://img.shields.io/badge/linting-pylint-yellowgreen\n :target: https://github.com/PyCQA/pylint\n :alt: pylint\n\nini config for borg backup\n--------------------------\n\nA wrapper to quickly get you started backing up with borg\n\nAn easy to use ini style and profile based format\n\nRequires:\n\n - Python 3 >= 3.5.0, plus development headers\n - OpenSSL >= 1.0.0, plus development headers\n - libacl (which depends on libattr), both plus development headers\n - liblz4 >= 1.7.0 (r129)\n - libzstd >= 1.3.0\n - libb2\n\n For information on how to install these dependencies for Borg:\n https://borgbackup.readthedocs.io/en/stable/installation.html\n\nInitialize the config\n\n.. code-block:: console\n\n $ borgini\n First run detected for profile: default\n Make all necessary changes to config before running this again\n You can do this by running the command:\n\n . borgini EDITOR --config --select default\n\n Default settings have been written to the ``include`` and ``exclude`` lists\n These can be edited by running:\n\n . borgini EDITOR --include --select default\n . borgini EDITOR --exclude --select default\n..\n\n.. note::\n the ``--select`` optional argument does not need to be passed if using the default profile\n\nEdit the config\n\n.. code-block:: console\n\n $ borgini vim --config\n..\n\n.. note::\n The selected editor is up to the user\n\n The following would also work (provided they are installed)\n\n.. code-block:: console\n\n $ borgini code --config\n $ borgini gedit --config\n $ borgini notepad --config\n..\n\nEnsure to make necessary changes to the ``DEFAULT`` section\n\nAnd ensure to configure the ``SSH`` section if an ssh repo is configured\n\nThe remaining configurations will suite most people\n\nIf you use the ``BORG_PASSPHRASE`` environment variable edit the ``ENVIRONMENT``\nsection to point to the keyfile\n\n.. note::\n the file should contain one line and a password stored with safe read-write and ownership permissions\n\nEdit the include and exclude files\n\n.. code-block:: console\n\n $ borgini vim --include # add a list of paths to back up\n $ borgini vim --exclude # add a list of paths to exclude\n..\n\n.. note::\n The exclude list can contain subdirectories and files listed within the include list\n\n This will override their inclusion\n\nTo switch between profiles add ``--select PROFILE``\n\n.. code-block:: console\n\n $ borgini vim --config # edit default config\n $ borgini vim --config --select profile2 # edit profile2's config\n $ borgini vim --include --select profile2 # edit profile2's include file\n $ borgini vim --exclude --select profile2 # edit profile2's exclude file\n $ borgini --select profile2 # run profile2's backup\n..\n\nAdd the following for nightly backups at 12:00 to your crontab\n\n.. code-block:: console\n\n $ 0 0 * * * /usr/local/bin/borgini\n $ 0 0 * * * /usr/local/bin/borgini -s profile2 # easy for multiple repos\n..\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "ini config for borg backup",
"version": "1.2.0",
"split_keywords": [
"backup",
"borg",
"config",
"deduplicate",
"ini"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "d3f359f9038829b1e6e26e25920bafa8d2fb92c24b6522669fa38d1cff674b58",
"md5": "be2df72f132cd4a0a977cca0d87ed500",
"sha256": "b265c2e7c9d4ca785198ae2d2abc962b5483a545f086cb99554bd9a85dfe1a08"
},
"downloads": -1,
"filename": "borgini-1.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "be2df72f132cd4a0a977cca0d87ed500",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8,<4.0",
"size": 17661,
"upload_time": "2023-01-04T12:31:56",
"upload_time_iso_8601": "2023-01-04T12:31:56.779185Z",
"url": "https://files.pythonhosted.org/packages/d3/f3/59f9038829b1e6e26e25920bafa8d2fb92c24b6522669fa38d1cff674b58/borgini-1.2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5d6f9b63d90dc78ac5353e7e16cd99c71e71b5848a9b9a33c62bf44941c16b47",
"md5": "abd22b62381ed22c4ea51f4ea4c25eee",
"sha256": "7d45cd5b1fac5396edb5955f1adfc140cb0140c0437177ba5aa06bb8f81f1952"
},
"downloads": -1,
"filename": "borgini-1.2.0.tar.gz",
"has_sig": false,
"md5_digest": "abd22b62381ed22c4ea51f4ea4c25eee",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8,<4.0",
"size": 16866,
"upload_time": "2023-01-04T12:31:58",
"upload_time_iso_8601": "2023-01-04T12:31:58.339596Z",
"url": "https://files.pythonhosted.org/packages/5d/6f/9b63d90dc78ac5353e7e16cd99c71e71b5848a9b9a33c62bf44941c16b47/borgini-1.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-01-04 12:31:58",
"github": false,
"gitlab": false,
"bitbucket": false,
"lcname": "borgini"
}