From a5a4be6f94cd2928c8fb1081e8243a16bf145187 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Felix=20Schr=C3=B6ter?= <dev@felschr.com>
Date: Sat, 10 May 2025 20:52:26 +0200
Subject: [PATCH] feat(networking): configure lan via systemd.network

---
 system/networking.nix | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/system/networking.nix b/system/networking.nix
index 8aa8c37..f7dc34c 100644
--- a/system/networking.nix
+++ b/system/networking.nix
@@ -2,6 +2,11 @@
 
 let
   isAdguardHost = config.services.adguardhome.enable;
+
+  interfaces.eth = [
+    "enp*"
+    "eth*"
+  ];
   nameservers = {
     local = [
       "127.0.0.1"
@@ -19,8 +24,6 @@ let
   };
 in
 {
-  networking.useDHCP = lib.mkDefault true;
-
   networking.nameservers = if isAdguardHost then nameservers.local else nameservers.remote;
 
   networking.nftables.enable = true;
@@ -29,6 +32,12 @@ in
   systemd.network = {
     enable = true;
     wait-online.ignoredInterfaces = [ "tailscale0" ];
+    networks = {
+      "10-lan" = {
+        matchConfig.Name = interfaces.eth;
+        networkConfig.DHCP = "yes";
+      };
+    };
   };
 
   services.dnsmasq.enable = false;