From c77a1c5d9d635c7ddf515f732699f4346445d058 Mon Sep 17 00:00:00 2001 From: Daniel Patterson Date: Wed, 2 Mar 2022 03:39:01 +0000 Subject: config: expand tilde in search directories Will expand a user-provided custom sharedir, XDG_CONFIG_HOME and XDG_DATA_HOME if necessary. Will not alter those strings if they do not begin with a tilde. Signed-off-by: Daniel Patterson Acked-by: Robin Jarry --- config/config.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'config/config.go') diff --git a/config/config.go b/config/config.go index f5d43ec..3fecb36 100644 --- a/config/config.go +++ b/config/config.go @@ -20,6 +20,7 @@ import ( "github.com/go-ini/ini" "github.com/imdario/mergo" "github.com/kyoh86/xdg" + "github.com/mitchellh/go-homedir" "git.sr.ht/~rjarry/aerc/lib/templates" ) @@ -311,13 +312,20 @@ func buildDefaultDirs() []string { // Add XDG_CONFIG_HOME and XDG_DATA_HOME for _, v := range prefixes { if v != "" { + v, err := homedir.Expand(v) + if err != nil { + log.Println(err) + } defaultDirs = append(defaultDirs, path.Join(v, "aerc")) } } // Add custom buildtime shareDir if shareDir != "" && shareDir != "/usr/local/share/aerc" { - defaultDirs = append(defaultDirs, shareDir) + shareDir, err := homedir.Expand(shareDir) + if err == nil { + defaultDirs = append(defaultDirs, shareDir) + } } // Add fixed fallback locations -- cgit v1.2.3