all repos — nixfiles @ c408e91c8dd06788ec1f2c61ca1f2fdc0df5b4e7

System and user configuration, managed by nix and home-manager

data/default.nix (view raw)

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
let
  homenet = "home.arpa";
  pubnet = "alin.ovh";
  tailnet = "fin-marlin.ts.net";
  ulaPrefix = "fd12:d04f:65d";

  machines = {
    r5 = {
      publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHM1oPhD2wJA0MSQPqTBdjxWlNbZN0nOT9D9sxWJBFcS";
      domains = [
        homenet
        tailnet
      ];
      builder = {
        system = "aarch64-linux";
        maxJobs = 4;
      };
    };
    hasel = {
      publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIaV14RWED5RhN5XIDhdV48d0OIw7eFf1t5eSIiCZ68D";
      domains = [
        tailnet
        pubnet
      ];
      builder = {
        system = "x86_64-linux";
      };
    };
    smrk = {
      publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINU03etY1me+35aJ7DTJID60cHlvYx6lV8A6V+OiR7hr";
      domains = [
        tailnet
        pubnet
      ];
      builder = {
        system = "x86_64-linux";
      };
    };
    buk = {
      publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGHMu4LyHI2Kc3tC20lmBsVrofbebIR+y3wJ8EwUdjJV";
      domains = [
        pubnet
        tailnet
      ];
      builder = {
        system = "x86_64-linux";
        maxJobs = 16;
        speedFactor = 16;
        supportedFeatures = [
          "big-parallel"
        ];
      };
    };
    prefect = {
      publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGmHQIaiJAz9EZwu0anojtj9lO4gXN2YtWqk37WAROKW";
      domains = [
        tailnet
        homenet
      ];
    };
  };

  canon = hostname: map (d: "${hostname}.${d}");
in
{
  inherit
    homenet
    pubnet
    tailnet
    ulaPrefix
    ;

  machines = builtins.mapAttrs (
    name: machine:
    machine
    // {
      extraHostNames = canon name machine.domains;
    }
  ) machines;
}