diff --git a/flake.lock b/flake.lock index c709aec..2db332a 100644 --- a/flake.lock +++ b/flake.lock @@ -73,19 +73,19 @@ "type": "github" } }, - "nixpkgs-master": { + "nixpkgs-btrbk": { "locked": { - "lastModified": 1735418999, - "narHash": "sha256-nFnQAzDqYhPsAdrcFRZMSnH0Tuj0gjKhSAJAep08Szc=", - "owner": "nixos", + "lastModified": 1735587871, + "narHash": "sha256-BXVJ4yIrBPJgReaQi3IdFvRhVg4wGPYGUBR/Id0hvWo=", + "owner": "cything", "repo": "nixpkgs", - "rev": "42b2d9e78979c3df637916721e6373d99016503d", + "rev": "9fd33c2070cfc3df4296eed81e041a3e313cea5f", "type": "github" }, "original": { - "owner": "nixos", + "owner": "cything", + "ref": "btrbk", "repo": "nixpkgs", - "rev": "42b2d9e78979c3df637916721e6373d99016503d", "type": "github" } }, @@ -111,7 +111,7 @@ "home-manager": "home-manager", "nixpkgs": "nixpkgs", "nixpkgs-borg": "nixpkgs-borg", - "nixpkgs-master": "nixpkgs-master", + "nixpkgs-btrbk": "nixpkgs-btrbk", "sops-nix": "sops-nix", "treefmt": "treefmt" } diff --git a/flake.nix b/flake.nix index b67754f..99e8f24 100644 --- a/flake.nix +++ b/flake.nix @@ -18,7 +18,7 @@ }; nixpkgs-borg.url = "github:cything/nixpkgs/borg"; - nixpkgs-master.url = "github:nixos/nixpkgs/42b2d9e78979c3df637916721e6373d99016503d"; + nixpkgs-btrbk.url = "github:cything/nixpkgs/btrbk"; }; outputs = diff --git a/hosts/ytnix/default.nix b/hosts/ytnix/default.nix index 1d92f59..6dc3ac3 100644 --- a/hosts/ytnix/default.nix +++ b/hosts/ytnix/default.nix @@ -1,7 +1,6 @@ { config, pkgs, - lib, inputs, ... }: @@ -10,9 +9,13 @@ ./hardware-configuration.nix ../common.nix { - disabledModules = [ "services/backup/borgbackup.nix" ]; + disabledModules = [ + "services/backup/borgbackup.nix" + "services/backup/btrbk.nix" + ]; } (inputs.nixpkgs-borg + "/nixos/modules/services/backup/borgbackup.nix") + (inputs.nixpkgs-btrbk + "/nixos/modules/services/backup/btrbk.nix") ]; sops.age.keyFile = "/root/.config/sops/age/keys.txt"; @@ -251,7 +254,9 @@ services.btrbk.instances.local = { onCalendar = "hourly"; + snapshotOnly = true; settings = { + # only create snapshots automatically. backups are triggered manually with `btrbk resume` snapshot_preserve = "7d"; snapshot_preserve_min = "2d"; target_preserve = "*d"; @@ -265,9 +270,6 @@ }; }; }; - # only create snapshots automatically. backups are triggered manually - systemd.services."btrbk-local".serviceConfig.ExecStart = - lib.mkForce "${pkgs.btrbk}/bin/btrbk -c /etc/btrbk/local.conf snapshot"; programs.steam = { enable = true;