Skip to content

borgbackup 🔹

Efficient, deduplicating backup program with optional compression and secure encryption.

Categories

System

BorgBackup (short: Borg) gives you:

  • Space efficient storage of backups.
  • Secure, authenticated encryption.
  • Compression: lz4, zstd, zlib, lzma or none.
  • Mountable backups with FUSE.
  • Easy installation on multiple platforms: Linux, macOS, BSD, …
  • Free software (BSD license).
  • Backed by a large and active open-source community.

Inventory Roles

Predefined roles

- `server`
- `client`

For more information, see the inventory guide.

Usage

To use this module, import it like th:

{config, lib, inputs, ...}: {
    imports = [ inputs.clan-core.clanModules.borgbackup ];
    # ...
}

Module Options

clan.borgbackup.destinations

destinations where the machine should be backuped to

Type: attribute set of (submodule)

Default:

{ }

borgbackup

clan.borgbackup.destinations.<name>.name

the name of the backup job

Type: string matching the pattern ^[a-zA-Z0-9._-]+$

Default:

"‹name›"

borgbackup

clan.borgbackup.destinations.<name>.repo

the borgbackup repository to backup to

Type: string

borgbackup

clan.borgbackup.destinations.<name>.rsh

the rsh to use for the backup

Type: string

Default:

"ssh -i \${config.clan.core.facts.services.borgbackup.secret.\"borgbackup.ssh\".path} -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"

borgbackup

clan.borgbackup.exclude

Directories/Files to exclude from the backup. Use * as a wildcard.

Type: list of string

Default:

[ ]
Example
[
  "*.pyc"
]

borgbackup