aboutsummaryrefslogtreecommitdiff
path: root/machines
diff options
context:
space:
mode:
authorMax Audron <audron@cocaine.farm>2026-01-08 14:00:34 +0100
committerMax Audron <audron@cocaine.farm>2026-01-08 14:00:34 +0100
commit918156723c78c1bfe724d5030325c9ed2e46d92b (patch)
tree7cd675e608848d4578c89cf8f1d42e3bce0c4f40 /machines
parentfix some update stuff (diff)
add backups for ettves
Diffstat (limited to 'machines')
-rw-r--r--machines/ettves/backup.nix47
-rw-r--r--machines/ettves/default.nix2
2 files changed, 48 insertions, 1 deletions
diff --git a/machines/ettves/backup.nix b/machines/ettves/backup.nix
new file mode 100644
index 0000000..03c381d
--- /dev/null
+++ b/machines/ettves/backup.nix
@@ -0,0 +1,47 @@
+{ config, ... }:
+
+{
+ services.kopia = {
+ enable = true;
+ instances = {
+ b2 = {
+ enable = true;
+ environmentFile = config.secrets.b2.dest;
+ repository.b2.bucket = "ettves-vapor-systems";
+
+ snapshots = {
+ schedule = "daily";
+ paths = [
+ # Game Servers
+ "/var/lib/private/factorio"
+ "/var/lib/satisfactory"
+ "/var/lib/minecraft"
+ "/var/lib/minecraft_mods"
+ "/var/lib/acc-server/cfg"
+
+ # Others
+ "/var/lib/git"
+ "/var/lib/teamspeak6-server"
+ ];
+ };
+
+ policy = [{
+ retention = {
+ keepLatest = 5;
+ keepDaily = 30;
+ keepWeekly = 4;
+ keepMonthly = 3;
+ keepAnnual = 0;
+ };
+ }];
+ };
+ };
+ };
+
+ secrets = {
+ b2 = {
+ source = ../../secrets/backup/ettves.vapor.systems.env;
+ dest = "/etc/secrets/b2.env";
+ };
+ };
+}
diff --git a/machines/ettves/default.nix b/machines/ettves/default.nix
index 549990a..dc90eb7 100644
--- a/machines/ettves/default.nix
+++ b/machines/ettves/default.nix
@@ -2,7 +2,7 @@
let endpoint = "195.201.245.25";
in {
- imports = [ ./fs.nix ];
+ imports = [ ./fs.nix ./backup.nix ];
boot.initrd.availableKernelModules = [ "ahci" "nvme" ];
boot.kernelModules = [ "kvm-amd" ];