aboutsummaryrefslogtreecommitdiff
path: root/hosts/canadian-government-system/disks.nix
blob: 67b20b80af46bc91ea0cf545fbc45f340cee23ce (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
{
  disko.devices.disk = {
    boot1 = {
      content = {
        partitions = {
          efi = {
            content = {
              format = "vfat";
              mountOptions = [ "umask=0077" ];
              mountpoint = "/boot";
              type = "filesystem";
            };

            size = "512M";
            type = "EF00";
          };

          # the root partition is set up in boot2
          root.size = "100%";
        };

        type = "gpt";
      };

      device = "/dev/sda";
      type = "disk";
    };

    boot2 = {
      content = {
        partitions = {
          efi = {
            content = {
              format = "vfat";
              mountOptions = [ "umask=0077" ];
              mountpoint = "/boot";
              type = "filesystem";
            };

            size = "512M";
            type = "EF00";
          };

          root = {
            content = {
              extraArgs = [
                "-f"
                "-d raid1"
                "/dev/sda2";
              ];

              subvolumes = {
                "/nix" = {
                  mountOptions = [
                    "compress=zstd"
                    "noatime"
                  ];

                  mountpoint = "/nix";
                };

                "/root" = {
                  mountpoint = "/";
                  mountOptions = [ "noatime" ];
                };
              };

              type = "btrfs";
            };

            size = "100%";
          };
        };

        type = "gpt";
      };

      device = "/dev/sdb";
      type = "disk";
    };
  };
}