diff --git a/cmd/ctrld/cli.go b/cmd/ctrld/cli.go index 805db1a..9f97f3b 100644 --- a/cmd/ctrld/cli.go +++ b/cmd/ctrld/cli.go @@ -186,11 +186,7 @@ func initCLI() { if os.Args[1] == "service" { osArgs = os.Args[3:] } - if runtime.GOOS == "linux" { - sc.Dependencies = []string{ - "After=NetworkManager-wait-online.service", - } - } + setDependencies(sc) sc.Arguments = append([]string{"run"}, osArgs...) if dir, err := os.UserHomeDir(); err == nil { // WorkingDirectory is not supported on Windows. diff --git a/cmd/ctrld/prog_linux.go b/cmd/ctrld/prog_linux.go index d1d5ee2..7d4f87a 100644 --- a/cmd/ctrld/prog_linux.go +++ b/cmd/ctrld/prog_linux.go @@ -9,3 +9,12 @@ func (p *prog) preRun() { p.setDNS() } } + +func setDependencies(svc *service.Config) { + svc.Dependencies = []string{ + "Wants=network-online.target", + "After=network-online.target", + "Wants=NetworkManager-wait-online.service", + "After=NetworkManager-wait-online.service", + } +} diff --git a/cmd/ctrld/prog_others.go b/cmd/ctrld/prog_others.go index 10310d5..9d72f91 100644 --- a/cmd/ctrld/prog_others.go +++ b/cmd/ctrld/prog_others.go @@ -3,4 +3,8 @@ package main +import "github.com/kardianos/service" + func (p *prog) preRun() {} + +func setDependencies(svc *service.Config) {}