diff --git a/machines/mimir/configuration.nix b/machines/mimir/configuration.nix index 2a58ff8..17990ec 100644 --- a/machines/mimir/configuration.nix +++ b/machines/mimir/configuration.nix @@ -260,76 +260,85 @@ }; }; - systemd.network = { - enable = true; + systemd = { + network = { + enable = true; - # wait-online.extraArgs = [ "--interface=enp4s0" ]; - wait-online.anyInterface = true; + # wait-online.extraArgs = [ "--interface=enp4s0" ]; + wait-online.anyInterface = true; - links = { - "40-enp4s0" = { - matchConfig = { - Name = "enp4s0"; + links = { + "40-enp4s0" = { + matchConfig = { + Name = "enp4s0"; + }; + linkConfig = { + WakeOnLan = "magic"; + }; }; - linkConfig = { - WakeOnLan = "magic"; + }; + + netdevs = { + "10-microvm" = { + netdevConfig = { + Kind = "bridge"; + Name = "microvm"; + }; + }; + }; + + networks = { + "40-enp4s0" = { + enable = true; + DHCP = "yes"; + + domains = [ + "internal.horus.nu" + "bedum.horus.nu" + ]; + + dhcpV4Config = { + RouteMetric = 64; + }; + + matchConfig = { + Name = "enp4s0"; + }; + }; + + "40-enp5s0f1" = { + enable = true; + linkConfig = { + RequiredForOnline = "no"; + }; + matchConfig = { + Name = "enp5s0f1"; + }; + }; + + "10-microvm" = { + matchConfig = { + Name = "microvm"; + }; + + addresses = [ { Address = "172.16.0.1/24"; } ]; + }; + + "11-microvm" = { + matchConfig = { + Name = "vm-*"; + }; + networkConfig = { + Bridge = "microvm"; + }; }; }; }; - netdevs = { - "10-microvm" = { - netdevConfig = { - Kind = "bridge"; - Name = "microvm"; - }; - }; - }; - - networks = { - "40-enp4s0" = { - enable = true; - DHCP = "yes"; - - domains = [ - "internal.horus.nu" - "bedum.horus.nu" - ]; - - dhcpV4Config = { - RouteMetric = 64; - }; - - matchConfig = { - Name = "enp4s0"; - }; - }; - - "40-enp5s0f1" = { - enable = true; - linkConfig = { - RequiredForOnline = "no"; - }; - matchConfig = { - Name = "enp5s0f1"; - }; - }; - - "10-microvm" = { - matchConfig = { - Name = "microvm"; - }; - - addresses = [ { Address = "172.16.0.1/24"; } ]; - }; - - "11-microvm" = { - matchConfig = { - Name = "vm-*"; - }; - networkConfig = { - Bridge = "microvm"; - }; + services = { + ollama = { + after = [ "tailscaled.service" ]; + preStart = "${pkgs.coreutils}/bin/sleep 10"; # Tailscale reports ready before getting an IP address }; }; };