commit | c6895596a5369d8f255ed90cde80981baac8be5b | [log] [tgz] |
---|---|---|
author | Tianon Gravi <admwiggin@gmail.com> | Tue Oct 06 09:47:39 2015 -0700 |
committer | Tianon Gravi <admwiggin@gmail.com> | Fri Oct 16 12:32:50 2015 -0700 |
tree | 596876c29262ccbdbaa7a2b17f3d114efda48f83 | |
parent | df55a15e5ce646808815381b3db47a8c66ea62f4 [diff] |
Update "dirUnix" to use "getent" and only fallback to shell if that fails
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.