From 107362f80ef8b839ae79a842b2567b68bf47576e Mon Sep 17 00:00:00 2001 From: John Olheiser Date: Mon, 8 May 2023 12:29:04 -0500 Subject: [PATCH] Allow for env var to determine config dir (#210) Signed-off-by: jolheiser --- config/config.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/config/config.go b/config/config.go index dc0ba0c..6a602b7 100644 --- a/config/config.go +++ b/config/config.go @@ -117,7 +117,9 @@ func (cfg *Config) Load(file string) error { // GetDefaultConfigDir returns the default config directory func GetDefaultConfigDir() (dir string, err error) { - if runtime.GOOS == "windows" { + if env, ok := os.LookupEnv("PET_CONFIG_DIR"); ok { + dir = env + } else if runtime.GOOS == "windows" { dir = os.Getenv("APPDATA") if dir == "" { dir = filepath.Join(os.Getenv("USERPROFILE"), "Application Data", "pet") @@ -126,7 +128,7 @@ func GetDefaultConfigDir() (dir string, err error) { } else { dir = filepath.Join(os.Getenv("HOME"), ".config", "pet") } - if err := os.MkdirAll(dir, 0700); err != nil { + if err := os.MkdirAll(dir, 0o700); err != nil { return "", fmt.Errorf("cannot create directory: %v", err) } return dir, nil