client/systray: allow specifying tailscaled socket

Pass a local.Client to systray.Run, so we can use the existing global
localClient in the cmd/tailscale CLI.  Add socket flag to cmd/systray.

Updates #1708

Change-Id: Ia101a4a3005adb9118051b3416f5a64a4a45987d
Signed-off-by: Will Norris <will@tailscale.com>
This commit is contained in:
Will Norris
2025-08-04 17:09:32 -07:00
committed by Will Norris
parent 5bb42e3018
commit 9f29c428f4
3 changed files with 17 additions and 5 deletions

View File

@@ -7,9 +7,17 @@
package main
import (
"flag"
"tailscale.com/client/local"
"tailscale.com/client/systray"
"tailscale.com/paths"
)
var socket = flag.String("socket", paths.DefaultTailscaledSocket(), "path to tailscaled socket")
func main() {
new(systray.Menu).Run()
flag.Parse()
lc := &local.Client{Socket: *socket}
new(systray.Menu).Run(lc)
}

View File

@@ -17,8 +17,7 @@ var systrayCmd = &ffcli.Command{
ShortUsage: "tailscale systray",
ShortHelp: "Run a systray application to manage Tailscale",
Exec: func(_ context.Context, _ []string) error {
// TODO(will): pass localClient to menu to use the global --socket flag
new(systray.Menu).Run()
new(systray.Menu).Run(&localClient)
return nil
},
}