code: func Install(i Installer) error {
  	if _, pathErr := os.Stat(path.Dir(i.Path())); os.IsNotExist(pathErr) {
  		return errors.New(`plugin home "$HELM_HOME/plugins" does not exist`)
  	}
  
  	if _, pathErr := os.Stat(i.Path()); !os.IsNotExist(pathErr) {
  		return errors.New("plugin already exists")
  	}
  
  	return i.Install()
  }
docs: // Install installs a plugin to $HELM_HOME.