anchor.diff:        inherit (cfg) startAt;
       };
   
  +  mkBackupTimers = name: cfg:
  +    nameValuePair "borgbackup-job-${name}" {
  +      description = "BorgBackup job ${name} timer";
  +      timerConfig = {
  +        Persistent = cfg.persistentTimer;
  +      };
  +    };
  +
     # utility function around makeWrapper
     mkWrapperDrv = {
         original, name, set ? {}
  
positive.code:             '';
            };
  
            user = mkOption {
              type = types.str;
              description = ''
  
negative.code:         # A repo named "foo" is mapped to systemd.services.borgbackup-repo-foo
          // mapAttrs' mkRepoService repos;
  
        # A job named "foo" is mapped to systemd.timers.borgbackup-job-foo
        systemd.timers = mapAttrs' mkBackupTimers jobs;
  
        users = mkMerge (mapAttrsToList mkUsersConfig repos);
  
        environment.systemPackages = with pkgs; [ borgbackup ] ++ (mapAttrsToList mkBorgWrapper jobs);
  