github.com/ActiveState/cli@v0.0.0-20240508170324-6801f60cd051/internal/runners/deploy/path_mac.go (about) 1 // +build darwin 2 3 package deploy 4 5 import ( 6 "os" 7 8 "github.com/ActiveState/cli/internal/fileutils" 9 "github.com/ActiveState/cli/internal/locale" 10 "github.com/thoas/go-funk" 11 ) 12 13 func usablePath() (string, error) { 14 binDir := "/usr/local/bin" 15 if !fileutils.DirExists(binDir) { 16 err := fileutils.Mkdir(binDir) 17 if err != nil { 18 return "", locale.WrapError(err, "deploy_usable_path", "Please ensure '{{.V0}}' exists and is on your PATH.", binDir) 19 } 20 } 21 22 if !funk.Contains(os.Getenv("PATH"), binDir) { 23 return binDir, locale.NewError("err_symlink_bin_macos", "Please ensure '{{.V0}}' exists and is on your PATH.", binDir) 24 } 25 26 return binDir, nil 27 }