DaH NixOS juH De'wI'wIj polmeH ghu' vIchoHpu'. jaj script vIlo'be', 'ach rep polmeH ghu' vIlo'. jupwI' Mastodon De'wI' 'IHqu' law' ghu'wIj 'IH puS – pa' 20 tupmey ZFS snapshotmey lu'agh – 'ach ghu'vam vImuSHa'. NixOS vImuSHa'choH. AI (De'wI' 'ong) vIlo'be'chugh, ghu'vam vIyajlaHbe', 'ach DaH Nix-De'ghunmey vIlaDlaH. Linux motlh vIlo' vInabpu', 'ach DaH majQa' ghu'vam...
-
/etc/nixos: NixOS ghu' (hoch .nix De'ghunmey). -
/opt/minecraft: Minecraft qo'mey De' je. -
/opt/satisfactory: Satisfactory quv De' ghu' je. -
/opt/Blog: Blog mu'ghun De' je. -
/opt/ui: Mastodon-UI 'ay'mey. -
/opt/audiobookshelf: paq chu'wI' De'ghun je.
S3 De' lulDaq RClone lo'taHvIS hoch De' vIlan.
NixOS ghu'
{ config, pkgs, ... }:
{
# BorgBackup ghu'
services.borgbackup.jobs.hourly = {
# S3-mountDaq repository He
repo = "/opt/S3/Backup/NixOSHomeServer_Borg";
# peghmu' nIteb
encryption.mode = "none";
# De' tIn choHmeH
compression = "auto,zstd";
# He polmeH
paths = [
"/etc/nixos"
"/opt/minecraft"
"/opt/satisfactory"
"/opt/Blog"
"/opt/ui"
"/opt/audiobookshelf"
];
# hoch rep
startAt = "hourly";
# repository tagh
doInit = true;
# polmeH chot
prune.keep = {
within = "1d"; # hoch snapshotmey 24 rep ret
daily = 7;
weekly = 4;
monthly = 12;
};
};
# S3-mount ghu' lugh 'e' yInID, Borg taghpa'
systemd.services.borgbackup-job-hourly = {
requires = [ "rclone-s3-mount.service" ];
after = [ "rclone-s3-mount.service" ];
};
}