fedora-csb-system-manager
 1{ lib, ... }:
 2{
 3  fileSystems."/" = {
 4    device = "/dev/vda1";
 5    fsType = "ext4";
 6  };
 7  swapDevices = [
 8    {
 9      device = "/swapfile";
10      size = 1024;
11    }
12  ];
13
14  # DigitalOcean volume for persistent data
15  fileSystems."/data" = {
16    device = "/dev/disk/by-uuid/c77f5139-e18a-4138-974f-f63300def495";
17    fsType = "ext4";
18    options = [
19      "defaults"
20      "noatime"
21      "discard"
22    ];
23  };
24
25  # Bind mounts for transparent access at original paths
26  fileSystems."/home/vincent/git" = {
27    device = "/data/home/vincent/git";
28    options = [ "bind" ];
29    depends = [ "/data" ];
30  };
31
32  fileSystems."/home/vincent/desktop" = {
33    device = "/data/home/vincent/desktop";
34    options = [ "bind" ];
35    depends = [ "/data" ];
36  };
37
38  fileSystems."/home/vincent/sync" = {
39    device = "/data/home/vincent/sync";
40    options = [ "bind" ];
41    depends = [ "/data" ];
42  };
43
44  fileSystems."/var/www" = {
45    device = "/data/www";
46    options = [ "bind" ];
47    depends = [ "/data" ];
48  };
49
50  # START OF DigitalOcean specifics
51  # This file was populated at runtime with the networking
52  # details gathered from the active system.
53  networking = {
54    nameservers = [
55      "67.207.67.2"
56      "67.207.67.3"
57    ];
58    defaultGateway = "188.166.64.1";
59    defaultGateway6 = "";
60    dhcpcd.enable = false;
61    usePredictableInterfaceNames = lib.mkForce true;
62    interfaces = {
63      eth0 = {
64        ipv4.addresses = [
65          {
66            address = "188.166.102.243";
67            prefixLength = 18;
68          }
69          {
70            address = "10.18.0.5";
71            prefixLength = 16;
72          }
73        ];
74        ipv6.addresses = [
75          {
76            address = "fe80::8035:3aff:fe72:1036";
77            prefixLength = 64;
78          }
79        ];
80      };
81
82    };
83  };
84  services.udev.extraRules = ''
85    ATTR{address}=="82:35:3a:72:10:36", NAME="eth0"
86
87  '';
88  # END OF DigitalOcean specifics
89}