Unverified Commit 249ef1a6 authored by Lin Jian's avatar Lin Jian Committed by GitHub
Browse files

Merge pull request #259558 from amesgen/borgbackup-package-option

nixos/borgbackup: add package option
parents 286fd480 bbf7f58b
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -84,8 +84,8 @@ let
      backupScript = mkBackupScript backupJobName cfg;
    in nameValuePair backupJobName {
      description = "BorgBackup job ${name}";
      path = with pkgs; [
        borgbackup openssh
      path =  [
        config.services.borgbackup.package pkgs.openssh
      ];
      script = "exec " + optionalString cfg.inhibitsSleep ''\
        ${pkgs.systemd}/bin/systemd-inhibit \
@@ -137,7 +137,7 @@ let
    '');

  mkBorgWrapper = name: cfg: mkWrapperDrv {
    original = "${pkgs.borgbackup}/bin/borg";
    original = getExe config.services.borgbackup.package;
    name = "borg-job-${name}";
    set = { BORG_REPO = cfg.repo; } // (mkPassEnv cfg) // cfg.environment;
  };
@@ -231,6 +231,8 @@ in {

  ###### interface

  options.services.borgbackup.package = mkPackageOptionMD pkgs "borgbackup" { };

  options.services.borgbackup.jobs = mkOption {
    description = lib.mdDoc ''
      Deduplicating backups using BorgBackup.
@@ -769,6 +771,7 @@ in {

      users = mkMerge (mapAttrsToList mkUsersConfig repos);

      environment.systemPackages = with pkgs; [ borgbackup ] ++ (mapAttrsToList mkBorgWrapper jobs);
      environment.systemPackages =
        [ config.services.borgbackup.package ] ++ (mapAttrsToList mkBorgWrapper jobs);
    });
}