anchor.diff:            restartIfChanged = false;
             serviceConfig = {
               Type = "oneshot";
  -            ExecStart = "${resticCmd} backup ${concatStringsSep " " backup.extraBackupArgs} ${concatStringsSep " " backup.paths}";
  +            ExecStart = [ "${resticCmd} backup ${concatStringsSep " " backup.extraBackupArgs} ${concatStringsSep " " backup.paths}" ] ++ pruneCmd;
               User = backup.user;
             } // optionalAttrs (backup.s3CredentialsFile != null) {
               EnvironmentFile = backup.s3CredentialsFile;
  
positive.code:         let
            extraOptions = concatMapStrings (arg: " -o ${arg}") backup.extraOptions;
            resticCmd = "${pkgs.restic}/bin/restic${extraOptions}";
          in nameValuePair "restic-backups-${name}" ({
            environment = {
              RESTIC_PASSWORD_FILE = backup.passwordFile;
  
negative.code:             Create the repository if it doesn't exist.
            '';
          };
  
          pruneOpts = mkOption {
            type = types.listOf types.str;
            default = [];
            description = ''
              A list of options (--keep-* et al.) for 'restic forget
              --prune', to automatically prune old snapshots.  The
              'forget' command is run *after* the 'backup' command, so
              keep that in mind when constructing the --keep-* options.
            '';
            example = [
              "--keep-daily 7"
              "--keep-weekly 5"
              "--keep-monthly 12"
              "--keep-yearly 75"
            ];
          };
        };
      }));
      default = {};
  