lib/distrib.js
function (distroName, actions, callback) {
    if (distros[distroName] !== undefined) {
      var distro = distros[distroName];
      logger.info('Installing plugins...');
      async.eachSeries(distro.plugins, function addPlugin (pluginName, cb) {
        actions.installPlugin(pluginName, cb);
      }, function installApps (err) {
        if (err) {
          callback(err);
        } else {
          logger.info('Installing apps...');
          async.eachSeries(distro.apps, function addApp (appName, cb) {
            actions.installApp(appName, cb);
          }, callback);
        }
      });
    } else {
      throw new Error('Unknown distro, can\'t install it');
    }
  }
function (distroName, actions, callback) {
    if (distros[distroName] !== undefined) {
      var distro = distros[distroName];
      logger.info('Installing plugins...');
      async.eachSeries(distro.plugins, function addPlugin (pluginName, cb) {
        actions.installPlugin(pluginName, cb);
      }, function installApps (err) {
        if (err) {
          callback(err);
        } else {
          logger.info('Installing apps...');
          async.eachSeries(distro.apps, function addApp (appName, cb) {
            actions.installApp(appName, cb);
          }, callback);
        }
      });
    } else {
      throw new Error('Unknown distro, can\'t install it');
    }
  }
Install a full suite of application and plugins listed in given distro.

@param {String} distroName The name of the distribution to install.