{ config, lib, ... }: let inherit (lib) mkDefault; in { config = { networking = { hostName = config.fediversityVm.name; domain = config.fediversityVm.domain; ## REVIEW: Do we actually need that, considering that we have static IPs? useDHCP = mkDefault true; interfaces = { eth0 = { ipv4 = { addresses = [ { inherit (config.fediversityVm.ipv4) address prefixLength; } ]; }; ipv6 = { addresses = [ { inherit (config.fediversityVm.ipv6) address prefixLength; } ]; }; }; }; defaultGateway = { address = config.fediversityVm.ipv4.gateway; interface = "eth0"; }; defaultGateway6 = { address = config.fediversityVm.ipv6.gateway; interface = "eth0"; }; firewall.enable = false; nftables = { enable = true; rulesetFile = ./nftables-ruleset.nft; }; }; }; }