From f520c992d5c6263cb8adee69ebae9b4b04738fb3 Mon Sep 17 00:00:00 2001 From: Ryan Yin Date: Mon, 2 Nov 2026 01:01:05 +0800 Subject: [PATCH] refactor(youko): order transmission-netns after the br0 device Replace the 30 s `ip link show br0` poll with BindsTo/After on sys-subsystem-net-devices-br0.device. Assisted-by: Claude Code (claude-opus-5-5) --- .../12kingdoms-youko/homelab-services/transmission.nix | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/hosts/12kingdoms-youko/homelab-services/transmission.nix b/hosts/12kingdoms-youko/homelab-services/transmission.nix index ccd49a70..b3aebc06 100644 --- a/hosts/12kingdoms-youko/homelab-services/transmission.nix +++ b/hosts/12kingdoms-youko/homelab-services/transmission.nix @@ -210,14 +210,8 @@ in systemd.services.transmission-netns = { description = "Network namespace for transmission"; wantedBy = [ "multi-user.target" ]; - after = [ "systemd-networkd.service" ]; - preStart = '' - for _ in $(seq 1 30); do - ${ip} link show br0 >/dev/null 2>&1 && break - sleep 1 - done - ${ip} link show br0 >/dev/null 2>&1 || { echo "br0 is not ready" >&2; exit 1; } - ''; + bindsTo = [ "sys-subsystem-net-devices-br0.device" ]; + after = [ "sys-subsystem-net-devices-br0.device" ]; serviceConfig = { Type = "oneshot"; RemainAfterExit = true;