--- a/bridge/bridge.go 2025-05-13 07:36:58.578038227 +0000 +++ b/bridge/bridge.go 2025-05-13 07:39:01.667180229 +0000 @@ -41,13 +41,13 @@ } func CreateApp(fs embed.FS) *App { - exePath, err := os.Executable() - if err != nil { - panic(err) + Env.AppName = "GUI.for.SingBox" + xdgDataHome := os.Getenv("XDG_DATA_HOME") + if xdgDataHome == "" { + homeDir, _ := os.UserHomeDir() + xdgDataHome = filepath.Join(homeDir, ".local", "share") } - - Env.BasePath = filepath.Dir(exePath) - Env.AppName = filepath.Base(exePath) + Env.BasePath = filepath.Join(xdgDataHome, Env.AppName) if slices.Contains(os.Args, "tasksch") { Env.FromTaskSch = true @@ -76,7 +76,7 @@ } func (a *App) RestartApp() FlagResult { - exePath := Env.BasePath + "/" + Env.AppName + exePath := "@basepath@/bin" + "/" + Env.AppName cmd := exec.Command(exePath) SetCmdWindowHidden(cmd)