aboutsummaryrefslogtreecommitdiff
path: root/infra/modules/base/nix-settings.nix
blob: 9f806639af13ad6bcaa6fbec557e540d930fb30d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{ inputs, ... }:
{
  flake.modules.nixos.base =
    { config, ... }:
    {
      nix = {
        gc = {
          automatic = true;
          dates = "weekly";
          options = "--delete-older-than 5d --log-format internal-json";
          persistent = true;
        };

        optimise = {
          automatic = true;
          dates = "weekly";
          persistent = true;
        };

        settings = {
          auto-optimise-store = true;
          experimental-features = [
            "nix-command"
            "flakes"
          ];
          allowed-users = [ ];
          trusted-users = [ "@wheel" ];
        };
      };

      system =
        let
          self = inputs.self;
        in
        {
          configurationRevision = self.rev or self.dirtyRev or "unknown";
          nixos.label = "${config.system.nixos.release}-${self.shortRev or self.dirtyShortRev or "unknown"}";
        };
    };
}