This commit is contained in:
James Andariese 2025-04-19 01:20:31 +00:00
parent 4aa6a6f858
commit ec462190f9
3 changed files with 16 additions and 9 deletions

View File

@ -4,7 +4,7 @@
{ config, pkgs, lib, inputs, ... }: { config, pkgs, lib, inputs, ... }:
let iface = import ../iface-templates.nix; let iface = import ../iface-templates.nix {inherit lib;};
in { in {
imports = imports =
[ # Include the results of the hardware scan. [ # Include the results of the hardware scan.

View File

@ -1,26 +1,28 @@
let build = iface: mac: rest: { {lib,...}:
let build = iface: mac: rest: lib.recursiveUpdate rest {
systemd.network.enable = true; systemd.network.enable = true;
systemd.network.links."${iface}" = { systemd.network.links."${iface}" = {
linkConfig.Name = iface; linkConfig.Name = iface;
matchConfig.PermanentMACAddress = mac; matchConfig.PermanentMACAddress = mac;
}; };
systemd.network.networks."${iface}".enable = true; systemd.network.networks."${iface}".enable = true;
} // rest; in }; in
{ {
bridge = bridge: ip: gateway: build { bridge = br: ip: gateway: iface: mac: build iface mac {
systemd.network.networks."${iface}".bridge = [ bridge ]; systemd.network.networks."${iface}".bridge = [ br ];
systemd.network.networks."${bridge}" = { systemd.network.networks."${br}" = {
address = [ ip ]; address = [ ip ];
gateway = [ gateway ]; gateway = [ gateway ];
}; };
systemd.network.netdevs."${bridge}" = { systemd.network.netdevs."${br}" = {
netdevConfig = { netdevConfig = {
Name = bridge; Name = br;
Kind = "bridge"; Kind = "bridge";
}; };
}; };
}; };
dhcp = build { dhcp = iface: mac: build iface mac {
systemd.network.networks."${iface}" = { systemd.network.networks."${iface}" = {
DHCP = "yes"; DHCP = "yes";
}; };

View File

@ -5,7 +5,12 @@
{ config, pkgs, lib, flake-inputs, ... }: { config, pkgs, lib, flake-inputs, ... }:
{ {
services.resolved.enable = false;
networking.networkmanager.enable = false; networking.networkmanager.enable = false;
networking.nameservers = [
"172.16.1.53"
"172.16.1.8"
];
virtualisation = { virtualisation = {
kvmgt.enable = true; kvmgt.enable = true;