code: func link(src, dest string) error {
  	return filepath.Walk(src, func(path string, info os.FileInfo, err error) error {
  		if err != nil {
  			return err
  		}
  		// We have the following:
  		// - src = "a/b"
  		// - dest = "dist/linuxamd64/b"
  		// - path = "a/b/c.txt"
  		// So we join "a/b" with "c.txt" and use it as the destination.
  		var dst = filepath.Join(dest, strings.Replace(path, src, "", 1))
  		log.WithFields(log.Fields{
  			"src": path,
  			"dst": dst,
  		}).Debug("extra file")
  		if info.IsDir() {
  			return os.MkdirAll(dst, info.Mode())
  		}
  		return os.Link(path, dst)
  	})
  }
docs: // walks the src, recreating dirs and hard-linking files