k3s/vendor/github.com/mitchellh/go-homedir
Brian Downs 4d1f9eda9d
Etcd Snapshot/Restore to/from S3 Compatible Backends (#2902)
* Add functionality for etcd snapshot/restore to and from S3 compatible backends.
* Update etcd restore functionality to extract and write certificates and configs from snapshot.
2021-03-03 11:14:12 -07:00
..
go.mod Etcd Snapshot/Restore to/from S3 Compatible Backends (#2902) 2021-03-03 11:14:12 -07:00
homedir.go Etcd Snapshot/Restore to/from S3 Compatible Backends (#2902) 2021-03-03 11:14:12 -07:00
LICENSE Etcd Snapshot/Restore to/from S3 Compatible Backends (#2902) 2021-03-03 11:14:12 -07:00
README.md Etcd Snapshot/Restore to/from S3 Compatible Backends (#2902) 2021-03-03 11:14:12 -07:00

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.