The language is really growing on me, but some things really seem to be harder than they need to be. Like how to figure out the return value of a process you exec'ed: you take the error from exec.Command(...).Run() , and if it’s not nil, then it’s simply a matter of

err.(*exec.ExitError).ProcessState.Sys().(syscall.WaitStatus).ExitStatus()