From 9cdbd7cf35e3d24ee2fa105e682a3271a7d43ed1 Mon Sep 17 00:00:00 2001 From: balanza Date: Tue, 31 Mar 2026 18:06:24 +0200 Subject: [PATCH] refactor(config): root cli command to read config from new package --- cmd/distrobox/main.go | 7 ++++--- internal/cli/root.go | 22 +++++++++++----------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/cmd/distrobox/main.go b/cmd/distrobox/main.go index bc08a316..dd9f100f 100644 --- a/cmd/distrobox/main.go +++ b/cmd/distrobox/main.go @@ -6,15 +6,16 @@ import ( "os" "github.com/89luca89/distrobox/internal/cli" - "github.com/89luca89/distrobox/internal/config" + "github.com/89luca89/distrobox/pkg/config" ) func main() { - if err := config.LoadConfig(); err != nil { + cfg, err := config.LoadValues() + if err != nil { log.Fatal(err) } - cmd := cli.NewRootCommand() + cmd := cli.NewRootCommand(cfg) if err := cmd.Run(context.Background(), os.Args); err != nil { log.Fatal(err) } diff --git a/internal/cli/root.go b/internal/cli/root.go index 346f62e9..ce172f1d 100644 --- a/internal/cli/root.go +++ b/internal/cli/root.go @@ -8,6 +8,7 @@ import ( "github.com/urfave/cli/v3" + "github.com/89luca89/distrobox/pkg/config" "github.com/89luca89/distrobox/pkg/containermanager" "github.com/89luca89/distrobox/pkg/containermanager/providers" ) @@ -16,23 +17,22 @@ type contextKey string const containerManagerKey contextKey = "containerManager" -func NewRootCommand() *cli.Command { +func NewRootCommand(cfg *config.Values) *cli.Command { return &cli.Command{ Name: "distrobox", Version: "1.0.0", Flags: []cli.Flag{ &cli.StringFlag{ - Name: "container-manager", - Usage: "", - Sources: cli.EnvVars("DBX_CONTAINER_MANAGER", "container_manager"), - Hidden: true, + Name: "container-manager", + Usage: "", + Hidden: true, + Value: cfg.ContainerManagerType, }, &cli.StringFlag{ - Name: "sudo-command", - Usage: "", - Sources: cli.EnvVars("DBX_SUDO_COMMAND", "sudo_command"), - Hidden: true, - Value: "sudo", + Name: "sudo-command", + Usage: "", + Hidden: true, + Value: cfg.SudoProgram, }, &cli.BoolFlag{ Name: "root", @@ -45,7 +45,7 @@ func NewRootCommand() *cli.Command { Name: "verbose", Aliases: []string{"v"}, Usage: "show more verbosity", - Sources: cli.EnvVars("DBX_VERBOSE", "verbose"), + Value: cfg.Verbose, }, }, Before: beforeAction,