From 669bfe763a3f36ec73559e299e0098d422fd77bf Mon Sep 17 00:00:00 2001 From: Nick Flueckiger Date: Sun, 8 Nov 2020 17:49:29 +0100 Subject: [PATCH] A small change that enables direct lazygit directory config --- main.go | 2 +- pkg/config/app_config.go | 17 ++++++++++++----- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/main.go b/main.go index 131f1e6e3..50efdca67 100644 --- a/main.go +++ b/main.go @@ -100,7 +100,7 @@ func main() { } if configDirFlag { - fmt.Printf("%s\n", config.ConfigDir()) + fmt.Printf("%s\n", config.ConfigDir("jesseduffield")) os.Exit(0) } diff --git a/pkg/config/app_config.go b/pkg/config/app_config.go index b4671e047..787d2a8e0 100644 --- a/pkg/config/app_config.go +++ b/pkg/config/app_config.go @@ -81,21 +81,28 @@ func NewAppConfig(name, version, commit, date string, buildSource string, debugg return appConfig, nil } -func ConfigDir() string { +func SelectDefaultConfiguration() string { + configDirectory := ConfigDir("") + if _, err := os.Stat(configDirectory); !os.IsNotExist(err) { + return configDirectory + } + legacyConfigDirectory := ConfigDir("jesseduffield") + return legacyConfigDirectory +} + +func ConfigDir(vendor string) string { envConfigDir := os.Getenv("CONFIG_DIR") if envConfigDir != "" { return envConfigDir } - // chucking my name there is not for vanity purposes, the xdg spec (and that // function) requires a vendor name. May as well line up with github - configDirs := xdg.New("jesseduffield", "lazygit") + configDirs := xdg.New(vendor, "lazygit") return configDirs.ConfigHome() } func findOrCreateConfigDir() (string, error) { - folder := ConfigDir() - + folder := SelectDefaultConfiguration() err := os.MkdirAll(folder, 0755) if err != nil { return "", err