//+build ignore package main import ( "fmt" "io/ioutil" "os" "runtime" ) func check(e error) { if e != nil { panic(e) } } func main() { if runtime.GOOS == "darwin" { if len(os.Args) == 2 { rawInfoPlistString := ` CFBundleIdentifier io.github.micro-editor CFBundleName micro CFBundleInfoDictionaryVersion 6.0 CFBundlePackageType APPL CFBundleShortVersionString ` + os.Args[1] + ` ` infoPlistData := []byte(rawInfoPlistString) err := ioutil.WriteFile("/tmp/micro-info.plist", infoPlistData, 0644) check(err) fmt.Println("-linkmode external -extldflags -Wl,-sectcreate,__TEXT,__info_plist,/tmp/micro-info.plist") } else { panic("missing argument for version number!") } } }