{ lib, ... }:
{
  systemd.services.nix-daemon.serviceConfig = {
    CPUSchedulingPolicy = lib.mkForce "idle";
    IOSchedulingClass = lib.mkForce "idle";
    # 0: high priority, 7: low priority
    IOSchedulingPriority = lib.mkForce 4;
    Nice = 19;
  };

  systemd.services.nix-gc.serviceConfig = {
    CPUSchedulingPolicy = "idle";
    IOSchedulingClass = "idle";
    IOSchedulingPriority = 7;
    Nice = 19;
  };

  systemd.sleep.extraConfig = ''
    AllowSuspend=yes
    AllowHibernation=yes
  '';

}