This package provides a simple interface to user extended attributes on Linux and OSX. Support for xattrs is filesystem dependant, so not a given even if you are running one of those operating systems.
Support for extended attributes is available on ext3/ext4 but generally not enabled by default on most distributions. Make sure that you add the
user_xattr
flag to /etc/fstab for the filesystem you want to use.
goinstall github.com/davecheney/xattr
godoc github.com/davecheney/xattr
A example program is provided with the source. The simplest way to compile and install it is
make -C $GOROOT/src/pkg/github.com/davecheney/xattr/example clean install
This will install it to your $GOBIN directory. If you have trouble running this example, make sure there isn't another xattr somewhere higher in your $PATH.
All extended attributes need a file to be associated with. In this example I'm going to create an empty file in my home directory (see notes in the installation section)
touch ~/testfile
% $GOBIN/xattr -w username dave ~/testfile
% $GOBIN/xattr ~/testfile
username
% $GOBIN/xattr -p username ~/testfile
dave
% $GOBIN/xattr -l ~/testfile
username: dave