summaryrefslogtreecommitdiff
path: root/hosts/skadhi/networking/default.nix
blob: 4d6edd97351f235f40bf51d84e87ad205c30abb3 (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
{ flake, config, ... }:
{
  imports = with flake.nixosModules.systemProfiles; [
    networkmanager
  ];

  config = {
    environment.persistence."/persistent".directories = [
      "/etc/NetworkManager/system-connections"
    ];

    networking = {
      domain = "yggdrasil";
      search = [ "yggdrasil" ];
      hosts = {
        "127.0.0.1" = [ "${config.networking.hostName}.yggdrasil" config.networking.hostName ];
        "::1" = [ "${config.networking.hostName}.yggdrasil" config.networking.hostName ];
      };

      firewall.enable = false;
      nftables = {
        enable = true;
        rulesetFile = ./ruleset.nft;
      };

      useDHCP = false;
      useNetworkd = true;
    };

    environment.etc."NetworkManager/dnsmasq.d/yggdrasil.conf" = {
      text = ''
        server=/yggdrasil/2a03:4000:52:ada:1:1::@yggdrasil
        server=/141.10.in-addr.arpa/2a03:4000:52:ada:1:1::@yggdrasil
        server=/1.0.0.0.a.d.a.0.2.5.0.0.0.0.0.4.3.0.a.2.ip6.arpa/2a03:4000:52:ada:1:1::@yggdrasil
      '';
    };
  };
}