package main import ( "flag" "log" ) type Opts struct { Config string Force bool } func ParseOpts() Opts { var opts Opts flag.StringVar(&opts.Config, "config", "config.json", "config file") flag.BoolVar(&opts.Force, "force", false, "force a full convert") flag.Parse() return opts } func main() { opts := ParseOpts() config := LoadSettings(opts.Config) err := RenderImages(config, opts.Force) if err != nil { log.Fatalf("failed to walk dir %s: %v", config.Source, err) } }