53 lines
1.2 KiB
Nix

{ pkgs, homeDirectory, ... }:
{
programs.borgmatic = {
enable = true;
package = pkgs.borgmatic;
backups = {
home = {
location = {
sourceDirectories = (
map (f: "${homeDirectory}/${f}") [
".zen"
".local/share/fish"
".ssh"
"Documents"
"projects"
"Pictures"
"school"
]
++ (map (f: ".config/Signal/${f}") [
"stickers.noindex"
"attachments.noindex"
"downloads.noindex"
"drafts.noindex"
"sql"
"IndexedDB"
"Local Storage"
"SharedStorage"
"config.json"
"Preferences"
])
);
excludeHomeManagerSymlinks = true;
repositories = [ "ssh://server-public/tank/bak/laptop" ];
extraConfig = {
compression = "zstd";
};
};
retention = {
keepHourly = 10;
keepDaily = 30;
keepWeekly = 8;
keepMonthly = 2;
keepYearly = 0;
};
};
};
};
}