git-sync/vendor/github.com/mitchellh/go-homedir
Tim Hockin b161f3f0c7 Add infrastructure for build tools
As per discussion with Go team.  it's hacky but it works.

create tools.go
git add tools.go
go mod vendor
git add vendor
go mod tidy
go mod vendor # again
2021-03-29 16:35:13 -07:00
..
LICENSE Add infrastructure for build tools 2021-03-29 16:35:13 -07:00
README.md Add infrastructure for build tools 2021-03-29 16:35:13 -07:00
go.mod Add infrastructure for build tools 2021-03-29 16:35:13 -07:00
homedir.go Add infrastructure for build tools 2021-03-29 16:35:13 -07:00

README.md

go-homedir

This is a Go library for detecting the user's home directory without the use of cgo, so the library can be used in cross-compilation environments.

Usage is incredibly simple, just call homedir.Dir() to get the home directory for a user, and homedir.Expand() to expand the ~ in a path to the home directory.

Why not just use os/user? The built-in os/user package requires cgo on Darwin systems. This means that any Go code that uses that package cannot cross compile. But 99% of the time the use for os/user is just to retrieve the home directory, which we can do for the current user without cgo. This library does that, enabling cross-compilation.