diff --git a/cmd/lncli/main.go b/cmd/lncli/main.go index 6dbff198..85d0f7ad 100644 --- a/cmd/lncli/main.go +++ b/cmd/lncli/main.go @@ -8,6 +8,7 @@ import ( "fmt" "io/ioutil" "os" + "os/user" "path/filepath" "strings" @@ -236,7 +237,15 @@ func main() { func cleanAndExpandPath(path string) string { // Expand initial ~ to OS specific home directory. if strings.HasPrefix(path, "~") { - homeDir := filepath.Dir(defaultLndDir) + var homeDir string + + user, err := user.Current() + if err == nil { + homeDir = user.HomeDir + } else { + homeDir = os.Getenv("HOME") + } + path = strings.Replace(path, "~", homeDir, 1) } diff --git a/config.go b/config.go index 07dfa8ac..5030b552 100644 --- a/config.go +++ b/config.go @@ -9,6 +9,7 @@ import ( "io/ioutil" "net" "os" + "os/user" "path" "path/filepath" "regexp" @@ -609,7 +610,15 @@ func loadConfig() (*config, error) { func cleanAndExpandPath(path string) string { // Expand initial ~ to OS specific home directory. if strings.HasPrefix(path, "~") { - homeDir := filepath.Dir(defaultLndDir) + var homeDir string + + user, err := user.Current() + if err == nil { + homeDir = user.HomeDir + } else { + homeDir = os.Getenv("HOME") + } + path = strings.Replace(path, "~", homeDir, 1) }