diff --git a/internal/cmd/root.go b/internal/cmd/root.go index 577d4ccb4abaa79275a5a556c463cb52b16aab11..b33303d1bbabb408988d50378ea2370896fb929b 100644 --- a/internal/cmd/root.go +++ b/internal/cmd/root.go @@ -179,12 +179,19 @@ func supportsProgressBar() bool { } func setupAppWithProgressBar(cmd *cobra.Command) (*app.App, error) { - if supportsProgressBar() { + app, err := setupApp(cmd) + if err != nil { + return nil, err + } + + // Check if progress bar is enabled in config (defaults to true if nil) + progressEnabled := app.Config().Options.Progress == nil || *app.Config().Options.Progress + if progressEnabled && supportsProgressBar() { _, _ = fmt.Fprintf(os.Stderr, ansi.SetIndeterminateProgressBar) defer func() { _, _ = fmt.Fprintf(os.Stderr, ansi.ResetProgressBar) }() } - return setupApp(cmd) + return app, nil } // setupApp handles the common setup logic for both interactive and non-interactive modes.