summaryrefslogtreecommitdiff
path: root/modules/core/nix/default.nix
blob: 0928b4926606092c273327818c234e5ccdaf4082 (plain) (blame)
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
{
  inputs,
  pkgs,
  lib,
  ...
}:
{
  imports = [
    ./distributed-builds.nix
    ./extended-support.nix
    ./nh.nix
  ];

  nix = {
    optimise.automatic = true;
    registry.nixpkgs.flake = inputs.nixpkgs;
  };

  nix.settings = {
    auto-optimise-store = true;
    http-connections = 0;
    warn-dirty = false;
    log-lines = 30;
    sandbox-fallback = false;
    keep-going = true;
    connect-timeout = 5;
    stalled-download-timeout = 20;
    auto-allocate-uids = true;
    use-cgroups = pkgs.stdenv.isLinux;
    builders-use-substitutes = true;
    nix-path = lib.mkForce "nixpkgs=flake:nixpkgs";
    flake-registry = "${inputs.flake-registry}/flake-registry.json";
    trusted-users = [ "@wheel" ];
    max-jobs = "auto";
    keep-outputs = true;

    system-features = [
      "nixos-test"
      "kvm"
      "recursive-nix"
      "big-parallel"
    ];

    allowed-users = [
      "root"
      "@wheel"
    ];

    extra-substituters = [
      "https://nix-community.cachix.org"
      "https://hyprland.cachix.org"
      "https://nyx.chaotic.cx/"
      "https://nixpkgs-wayland.cachix.org"
      "https://cuda-maintainers.cachix.org"
      "https://nixpkgs-unfree.cachix.org"
      # "https://cache.flox.dev"
      "https://cache.iog.io"
      "https://ezkea.cachix.org"
      "https://nix-gaming.cachix.org"
      "https://tsutsumi.cachix.org"
      "https://devenv.cachix.org"
    ];

    extra-trusted-public-keys = [
      "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
      "hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
      "nyx.cachix.org-1:HfnXSw4pj95iI/n17rIDy40agHj12WfF+Gqk6SonIT8="
      "nixpkgs-wayland.cachix.org-1:3lwxaILxMRkVhehr5StQprHdEo4IrE8sRho9R9HOLYA="
      "cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E="
      "nixpkgs-unfree.cachix.org-1:hqvoInulhbV4nJ9yJOEr+4wxhDV4xq2d1DK7S6Nj6rs="
      # "flox-cache-public-1:7F4OyH7ZCnFhcze3fJdfyXYLQw/aV7GEed86nQ7IsOs="
      "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
      "ezkea.cachix.org-1:ioBmUbJTZIKsHmWWXPe1FSFbeVe+afhfgqgTSNd34eI="
      "nix-gaming.cachix.org-1:nbjlureqMbRAxR1gJ/f3hxemL9svXaZF/Ees8vCUUs4="
      "tsutsumi.cachix.org-1:MojIlGI60CT5EoyuTgjB4VRVgf/uUvakZVWoYJThQNk="
      "devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw="
    ];

    experimental-features = [
      "nix-command"
      "flakes"
      "recursive-nix"
      "ca-derivations"
      "auto-allocate-uids"
      "cgroups"
      "no-url-literals"
      "dynamic-derivations"
    ];
  };
}