1package fsext
2
3import (
4 "cmp"
5 "os"
6 "os/user"
7 "sync"
8)
9
10var HomeDir = sync.OnceValue(func() string {
11 u, err := user.Current()
12 if err == nil {
13 return u.HomeDir
14 }
15 return cmp.Or(
16 os.Getenv("HOME"),
17 os.Getenv("USERPROFILE"),
18 os.Getenv("HOMEPATH"),
19 )
20})