expand ~ before constructing abspath; go doesn't understand ~