func Run(name string, file string, args ...string) *exec.Cmd {
	s, err := os.Stat(file)
	if err != nil {
		log.Warn("Could not stat file:", err)
		return nil
	}
	if !s.Mode().IsRegular() || s.Mode()&0111 == 0 {
		log.Warn("File at path '" + file + "' is not an executable file!")
		return nil
	}
	cmd := exec.Command(file, args...)
	cmd.Args[0] = name
	cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true, Pgid: 0}
	return cmd
}
Run Attempts to make a *exec.Cmd setup to run the specified file, with system-specific
API calls to prevent tying the child processes lifetime to the parents.
Returns a valid *exec.Cmd that can run the file upon success, or nil upon failure
package procexec
import (
	"os"
	"os/exec"
	"syscall"
	"github.com/spkaeros/rscgo/pkg/log"
)