Fix GUI instance counts and launcher tmp paths
This commit is contained in:
@@ -4,18 +4,39 @@ import (
|
||||
"flag"
|
||||
"log"
|
||||
"os"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
|
||||
"vrc_osc_go/internal/app"
|
||||
)
|
||||
|
||||
func main() {
|
||||
var configPath string
|
||||
var mode string
|
||||
var noGUI bool
|
||||
flag.StringVar(&configPath, "config", "config/config.toml", "path to config.toml")
|
||||
flag.StringVar(&mode, "mode", "", "generate-json or extract-log")
|
||||
flag.BoolVar(&noGUI, "no-gui", false, "do not launch the GUI companion")
|
||||
flag.Parse()
|
||||
|
||||
if err := app.Run(configPath); err != nil {
|
||||
if mode == "" && !noGUI {
|
||||
launchGUI()
|
||||
}
|
||||
|
||||
if err := app.Run(configPath, mode); err != nil {
|
||||
log.SetOutput(os.Stderr)
|
||||
log.Fatalf("vrc_osc_go: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func launchGUI() {
|
||||
exe, err := os.Executable()
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
gui := filepath.Join(filepath.Dir(exe), "vrc_osc_gui.exe")
|
||||
if _, err := os.Stat(gui); err != nil {
|
||||
return
|
||||
}
|
||||
_ = exec.Command(gui).Start()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user