lol

nixos/borgbackup: add package option

Co-authored-by: Lin Jian <me@linj.tech>

amesgen bbf7f58b 34d8d08f

+7 -4
+7 -4
nixos/modules/services/backup/borgbackup.nix
··· 84 84 backupScript = mkBackupScript backupJobName cfg; 85 85 in nameValuePair backupJobName { 86 86 description = "BorgBackup job ${name}"; 87 - path = with pkgs; [ 88 - borgbackup openssh 87 + path = [ 88 + config.services.borgbackup.package pkgs.openssh 89 89 ]; 90 90 script = "exec " + optionalString cfg.inhibitsSleep ''\ 91 91 ${pkgs.systemd}/bin/systemd-inhibit \ ··· 137 137 ''); 138 138 139 139 mkBorgWrapper = name: cfg: mkWrapperDrv { 140 - original = "${pkgs.borgbackup}/bin/borg"; 140 + original = getExe config.services.borgbackup.package; 141 141 name = "borg-job-${name}"; 142 142 set = { BORG_REPO = cfg.repo; } // (mkPassEnv cfg) // cfg.environment; 143 143 }; ··· 230 230 meta.doc = ./borgbackup.md; 231 231 232 232 ###### interface 233 + 234 + options.services.borgbackup.package = mkPackageOptionMD pkgs "borgbackup" { }; 233 235 234 236 options.services.borgbackup.jobs = mkOption { 235 237 description = lib.mdDoc '' ··· 769 771 770 772 users = mkMerge (mapAttrsToList mkUsersConfig repos); 771 773 772 - environment.systemPackages = with pkgs; [ borgbackup ] ++ (mapAttrsToList mkBorgWrapper jobs); 774 + environment.systemPackages = 775 + [ config.services.borgbackup.package ] ++ (mapAttrsToList mkBorgWrapper jobs); 773 776 }); 774 777 }