Backup Config

This commit is contained in:
2023-08-19 23:18:01 -04:00
parent 007f51bd36
commit ab5ae35f6f
3 changed files with 63 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
{ config, lib, pkgs, ...}: let
secretPerm = {
owner = "root";
mode = "0400";
};
in {
imports = [
./backups/postgresql.nix
./backups/gitea.nix
];
sops.secrets."restic/repo" = secretPerm;
sops.secrets."restic/passwd" = secretPerm;
sops.secrets."restic/backblaze" = secretPerm;
services.restic.backups.hippocampus = {
user = "root";
initialize = true;
timerConfig = {
OnCalendar = "03:00";
Persistent = true;
};
passwordFile = config.sops.secrets."restic/passwd".path;
paths = [
"/etc/group"
"/etc/machine-id"
"/etc/passwd"
"/etc/subgid"
"/home"
"/root"
"/var/backup"
"/var/lib"
"/jelly/conf"
];
# USE REPOSITORYFILE
repositoryFile = config.sops.secrets."restic/repo".path;
environmentFile = config.sops.secrets."restic/backblaze".path;
pruneOpts = [
"--keep-daily 2"
"--keep-weekly 4"
"--keep-yearly 8"
];
};
}

View File

@@ -0,0 +1,6 @@
{ ... }: {
services.gitea.dump = {
enable = true;
interval = "2:45";
};
}

View File

@@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }: {
services.postgresqlBackup = {
enable = true;
startAt = "*-*-* 02:45:00";
location = "/var/backup/postgresql";
};
}