package main import ( "flag" "fmt" r "gitnet.fr/deblan/i3-blocks-go/rendering" "os" "os/exec" "sync" ) func runCmd(wg *sync.WaitGroup, value string) { defer wg.Done() command := exec.Command("tmux", "new", "-d", value) command.Run() } func main() { var wg sync.WaitGroup argBlockName := flag.String("block", "app", "block name") argName := flag.String("name", "", "name of the app") argCommand := flag.String("cmd", "", "command to run on click") argBgColor := flag.String("bg-color", "#333333", "background color") argFbColor := flag.String("fg-color", "#ffffff", "foreground color") flag.Parse() if os.Getenv("BLOCK_BUTTON") == "1" && *argCommand != "" { wg.Add(1) go runCmd(&wg, *argCommand) } options := r.NewBlockOptions() options.FullText = r.TextWithPadding(*argName, r.FB{ Background: *argBgColor, Foreground: *argFbColor, }) block := r.Block(*argBlockName, options) fmt.Println(block) wg.Wait() }