services: borg-backup: no longer needed
This commit is contained in:
parent
238294b7bf
commit
3b99096af9
|
@ -1,9 +0,0 @@
|
||||||
{ lib }:
|
|
||||||
let
|
|
||||||
inherit (lib)
|
|
||||||
fileContents
|
|
||||||
;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
poseidon-repo = fileContents ./poseidon-repo.secret;
|
|
||||||
}
|
|
Binary file not shown.
|
@ -16,7 +16,6 @@ in {
|
||||||
nextcloud-admin-user = fileContents ./nextcloud-admin-user.secret;
|
nextcloud-admin-user = fileContents ./nextcloud-admin-user.secret;
|
||||||
lohr-shared-secret = fileContents ./lohr-shared-secret.secret;
|
lohr-shared-secret = fileContents ./lohr-shared-secret.secret;
|
||||||
|
|
||||||
borg-backup = import ./borg-backup { inherit lib; };
|
|
||||||
paperless = import ./paperless { inherit lib; };
|
paperless = import ./paperless { inherit lib; };
|
||||||
restic-backup = import ./restic-backup { inherit lib; };
|
restic-backup = import ./restic-backup { inherit lib; };
|
||||||
|
|
||||||
|
|
|
@ -1,79 +0,0 @@
|
||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
let
|
|
||||||
inherit (lib)
|
|
||||||
mkEnableOption
|
|
||||||
mkIf
|
|
||||||
mkOption
|
|
||||||
;
|
|
||||||
cfg = config.my.services.borg-backup;
|
|
||||||
in {
|
|
||||||
options.my.services.borg-backup = let inherit (lib) types; in {
|
|
||||||
enable = mkEnableOption "Enable Borg backups for this host";
|
|
||||||
|
|
||||||
repo = mkOption {
|
|
||||||
type = types.str;
|
|
||||||
default = null;
|
|
||||||
example = "deadbeef@deadbeef.repo.borgbase.com:repo";
|
|
||||||
description = "Borgbase repo info. Required.";
|
|
||||||
};
|
|
||||||
|
|
||||||
prune = mkOption {
|
|
||||||
type = types.attrs;
|
|
||||||
default = {
|
|
||||||
keep = {
|
|
||||||
daily = 7;
|
|
||||||
weekly = 4;
|
|
||||||
monthly = 6;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
description = "pruning options for borg";
|
|
||||||
};
|
|
||||||
|
|
||||||
paths = mkOption {
|
|
||||||
type = types.listOf types.str;
|
|
||||||
default = [];
|
|
||||||
example = [
|
|
||||||
"/var/lib"
|
|
||||||
"/home"
|
|
||||||
];
|
|
||||||
description = "Paths to backup";
|
|
||||||
};
|
|
||||||
|
|
||||||
exclude = mkOption {
|
|
||||||
type = types.listOf types.str;
|
|
||||||
default = [];
|
|
||||||
example = [
|
|
||||||
# very large paths
|
|
||||||
"/var/lib/docker"
|
|
||||||
"/var/lib/systemd"
|
|
||||||
"/var/lib/libvirt"
|
|
||||||
|
|
||||||
# temporary files created by cargo and `go build`
|
|
||||||
"**/target"
|
|
||||||
"/home/*/go/bin"
|
|
||||||
"/home/*/go/pkg"
|
|
||||||
];
|
|
||||||
description = "Paths to exclude from backup";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
services.borgbackup.jobs."borgbase" = {
|
|
||||||
paths = cfg.paths;
|
|
||||||
exclude = cfg.exclude;
|
|
||||||
repo = cfg.repo;
|
|
||||||
encryption = {
|
|
||||||
mode = "repokey-blake2";
|
|
||||||
passCommand = "cat /root/borgbackup/passphrase";
|
|
||||||
};
|
|
||||||
environment.BORG_RSH = "ssh -i /root/borgbackup/ssh_key";
|
|
||||||
extraCreateArgs = "--stats --list";
|
|
||||||
extraPruneArgs = "--stats --list --save-space";
|
|
||||||
doInit = true;
|
|
||||||
compression = "auto,zstd";
|
|
||||||
startAt = "daily";
|
|
||||||
prune = cfg.prune;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -3,7 +3,6 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./vaultwarden.nix
|
./vaultwarden.nix
|
||||||
./borg-backup.nix
|
|
||||||
./fail2ban.nix
|
./fail2ban.nix
|
||||||
./fava.nix
|
./fava.nix
|
||||||
./gitea
|
./gitea
|
||||||
|
|
Loading…
Reference in a new issue