{ ... }:
{
  nix = {
    gc = {
      automatic = true;
      dates = "05:30";
      options = "--delete-older-than 7d";
    };
    settings = {
      keep-outputs = true;
      auto-optimise-store = true;
      experimental-features = [
        "nix-command"
        "flakes"
      ];
      trusted-users = [
        "root"
        "nixremote"
        "@wheel"
      ];

      builders-use-substitutes = true;
    };

    distributedBuilds = true;
    buildMachines = [
      {
        hostName = "lilith-server-builder";
        system = "x86_64-linux";
        protocol = "ssh-ng";

        speedFactor = 1;
        supportedFeatures = [
          "kvm"
          "big-parallel"
          "nixos-test"
          "benchmark"
        ];
      }
      {
        hostName = "lilith-pc";
        system = "x86_64-linux";
        protocol = "ssh-ng";

        speedFactor = 2;
        supportedFeatures = [
          "kvm"
          "big-parallel"
          "nixos-test"
          "benchmark"
        ];
      }
    ];
  };
}
