electron-forge
Version:
A complete tool for building modern Electron applications
120 lines (94 loc) • 7.48 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.isSupportedOnCurrentPlatform = undefined;
var _assign = require('babel-runtime/core-js/object/assign');
var _assign2 = _interopRequireDefault(_assign);
var _regenerator = require('babel-runtime/regenerator');
var _regenerator2 = _interopRequireDefault(_regenerator);
var _bluebird = require('bluebird');
var _path = require('path');
var _path2 = _interopRequireDefault(_path);
var _pify = require('pify');
var _pify2 = _interopRequireDefault(_pify);
var _ensureOutput = require('../../util/ensure-output');
var _configFn = require('../../util/config-fn');
var _configFn2 = _interopRequireDefault(_configFn);
var _isInstalled = require('../../util/is-installed');
var _isInstalled2 = _interopRequireDefault(_isInstalled);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var isSupportedOnCurrentPlatform = exports.isSupportedOnCurrentPlatform = function () {
var _ref = (0, _bluebird.coroutine)(_regenerator2.default.mark(function _callee() {
return _regenerator2.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
return _context.abrupt('return', (0, _isInstalled2.default)('electron-installer-debian'));
case 1:
case 'end':
return _context.stop();
}
}
}, _callee, undefined);
}));
return function isSupportedOnCurrentPlatform() {
return _ref.apply(this, arguments);
};
}();
function debianArch(nodeArch) {
switch (nodeArch) {
case 'ia32':
return 'i386';
case 'x64':
return 'amd64';
case 'armv7l':
return 'armhf';
case 'arm':
return 'armel';
default:
return nodeArch;
}
}
exports.default = function () {
var _ref2 = (0, _bluebird.coroutine)(_regenerator2.default.mark(function _callee2(_ref3) {
var dir = _ref3.dir,
targetArch = _ref3.targetArch,
forgeConfig = _ref3.forgeConfig,
packageJSON = _ref3.packageJSON;
var installer, arch, userConfig, versionedName, outPath, debianDefaults, debianConfig;
return _regenerator2.default.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
installer = require('electron-installer-debian');
arch = debianArch(targetArch);
userConfig = (0, _configFn2.default)(forgeConfig.electronInstallerDebian, targetArch);
userConfig.options = userConfig.options || {};
versionedName = (userConfig.options.name || packageJSON.name) + '_' + packageJSON.version + '_' + arch;
outPath = _path2.default.resolve(dir, '../make', versionedName + '.deb');
_context2.next = 8;
return (0, _ensureOutput.ensureFile)(outPath);
case 8:
debianDefaults = {
arch: arch,
dest: _path2.default.dirname(outPath),
src: dir
};
debianConfig = (0, _assign2.default)({}, userConfig, debianDefaults);
_context2.next = 12;
return (0, _pify2.default)(installer)(debianConfig);
case 12:
return _context2.abrupt('return', [outPath]);
case 13:
case 'end':
return _context2.stop();
}
}
}, _callee2, undefined);
}));
return function (_x) {
return _ref2.apply(this, arguments);
};
}();
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1ha2Vycy9saW51eC9kZWIuanMiXSwibmFtZXMiOlsiaXNTdXBwb3J0ZWRPbkN1cnJlbnRQbGF0Zm9ybSIsImRlYmlhbkFyY2giLCJub2RlQXJjaCIsImRpciIsInRhcmdldEFyY2giLCJmb3JnZUNvbmZpZyIsInBhY2thZ2VKU09OIiwiaW5zdGFsbGVyIiwicmVxdWlyZSIsImFyY2giLCJ1c2VyQ29uZmlnIiwiZWxlY3Ryb25JbnN0YWxsZXJEZWJpYW4iLCJvcHRpb25zIiwidmVyc2lvbmVkTmFtZSIsIm5hbWUiLCJ2ZXJzaW9uIiwib3V0UGF0aCIsInJlc29sdmUiLCJkZWJpYW5EZWZhdWx0cyIsImRlc3QiLCJkaXJuYW1lIiwic3JjIiwiZGViaWFuQ29uZmlnIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFFQTs7QUFDQTs7OztBQUNBOzs7Ozs7QUFFTyxJQUFNQTtBQUFBLGlFQUErQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsNkNBQVksMkJBQVksMkJBQVosQ0FBWjs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxHQUEvQjs7QUFBQTtBQUFBO0FBQUE7QUFBQSxHQUFOOztBQUVQLFNBQVNDLFVBQVQsQ0FBb0JDLFFBQXBCLEVBQThCO0FBQzVCLFVBQVFBLFFBQVI7QUFDRSxTQUFLLE1BQUw7QUFBYSxhQUFPLE1BQVA7QUFDYixTQUFLLEtBQUw7QUFBWSxhQUFPLE9BQVA7QUFDWixTQUFLLFFBQUw7QUFBZSxhQUFPLE9BQVA7QUFDZixTQUFLLEtBQUw7QUFBWSxhQUFPLE9BQVA7QUFDWjtBQUFTLGFBQU9BLFFBQVA7QUFMWDtBQU9EOzs7a0VBRWM7QUFBQSxRQUFTQyxHQUFULFNBQVNBLEdBQVQ7QUFBQSxRQUFjQyxVQUFkLFNBQWNBLFVBQWQ7QUFBQSxRQUEwQkMsV0FBMUIsU0FBMEJBLFdBQTFCO0FBQUEsUUFBdUNDLFdBQXZDLFNBQXVDQSxXQUF2QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDUEMscUJBRE8sR0FDS0MsUUFBUSwyQkFBUixDQURMO0FBR1BDLGdCQUhPLEdBR0FSLFdBQVdHLFVBQVgsQ0FIQTtBQUlQTSxzQkFKTyxHQUlNLHdCQUFTTCxZQUFZTSx1QkFBckIsRUFBOENQLFVBQTlDLENBSk47O0FBS2JNLHVCQUFXRSxPQUFYLEdBQXFCRixXQUFXRSxPQUFYLElBQXNCLEVBQTNDO0FBQ01DLHlCQU5PLElBTVlILFdBQVdFLE9BQVgsQ0FBbUJFLElBQW5CLElBQTJCUixZQUFZUSxJQU5uRCxVQU0yRFIsWUFBWVMsT0FOdkUsU0FNa0ZOLElBTmxGO0FBT1BPLG1CQVBPLEdBT0csZUFBS0MsT0FBTCxDQUFhZCxHQUFiLEVBQWtCLFNBQWxCLEVBQWdDVSxhQUFoQyxVQVBIO0FBQUE7QUFBQSxtQkFTUCw4QkFBV0csT0FBWCxDQVRPOztBQUFBO0FBVVBFLDBCQVZPLEdBVVU7QUFDckJULHdCQURxQjtBQUVyQlUsb0JBQU0sZUFBS0MsT0FBTCxDQUFhSixPQUFiLENBRmU7QUFHckJLLG1CQUFLbEI7QUFIZ0IsYUFWVjtBQWVQbUIsd0JBZk8sR0FlUSxzQkFBYyxFQUFkLEVBQWtCWixVQUFsQixFQUE4QlEsY0FBOUIsQ0FmUjtBQUFBO0FBQUEsbUJBaUJQLG9CQUFLWCxTQUFMLEVBQWdCZSxZQUFoQixDQWpCTzs7QUFBQTtBQUFBLDhDQWtCTixDQUFDTixPQUFELENBbEJNOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEciLCJmaWxlIjoibWFrZXJzL2xpbnV4L2RlYi5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHBpZnkgZnJvbSAncGlmeSc7XG5cbmltcG9ydCB7IGVuc3VyZUZpbGUgfSBmcm9tICcuLi8uLi91dGlsL2Vuc3VyZS1vdXRwdXQnO1xuaW1wb3J0IGNvbmZpZ0ZuIGZyb20gJy4uLy4uL3V0aWwvY29uZmlnLWZuJztcbmltcG9ydCBpc0luc3RhbGxlZCBmcm9tICcuLi8uLi91dGlsL2lzLWluc3RhbGxlZCc7XG5cbmV4cG9ydCBjb25zdCBpc1N1cHBvcnRlZE9uQ3VycmVudFBsYXRmb3JtID0gYXN5bmMgKCkgPT4gaXNJbnN0YWxsZWQoJ2VsZWN0cm9uLWluc3RhbGxlci1kZWJpYW4nKTtcblxuZnVuY3Rpb24gZGViaWFuQXJjaChub2RlQXJjaCkge1xuICBzd2l0Y2ggKG5vZGVBcmNoKSB7XG4gICAgY2FzZSAnaWEzMic6IHJldHVybiAnaTM4Nic7XG4gICAgY2FzZSAneDY0JzogcmV0dXJuICdhbWQ2NCc7XG4gICAgY2FzZSAnYXJtdjdsJzogcmV0dXJuICdhcm1oZic7XG4gICAgY2FzZSAnYXJtJzogcmV0dXJuICdhcm1lbCc7XG4gICAgZGVmYXVsdDogcmV0dXJuIG5vZGVBcmNoO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGFzeW5jICh7IGRpciwgdGFyZ2V0QXJjaCwgZm9yZ2VDb25maWcsIHBhY2thZ2VKU09OIH0pID0+IHtcbiAgY29uc3QgaW5zdGFsbGVyID0gcmVxdWlyZSgnZWxlY3Ryb24taW5zdGFsbGVyLWRlYmlhbicpO1xuXG4gIGNvbnN0IGFyY2ggPSBkZWJpYW5BcmNoKHRhcmdldEFyY2gpO1xuICBjb25zdCB1c2VyQ29uZmlnID0gY29uZmlnRm4oZm9yZ2VDb25maWcuZWxlY3Ryb25JbnN0YWxsZXJEZWJpYW4sIHRhcmdldEFyY2gpO1xuICB1c2VyQ29uZmlnLm9wdGlvbnMgPSB1c2VyQ29uZmlnLm9wdGlvbnMgfHwge307XG4gIGNvbnN0IHZlcnNpb25lZE5hbWUgPSBgJHt1c2VyQ29uZmlnLm9wdGlvbnMubmFtZSB8fCBwYWNrYWdlSlNPTi5uYW1lfV8ke3BhY2thZ2VKU09OLnZlcnNpb259XyR7YXJjaH1gO1xuICBjb25zdCBvdXRQYXRoID0gcGF0aC5yZXNvbHZlKGRpciwgJy4uL21ha2UnLCBgJHt2ZXJzaW9uZWROYW1lfS5kZWJgKTtcblxuICBhd2FpdCBlbnN1cmVGaWxlKG91dFBhdGgpO1xuICBjb25zdCBkZWJpYW5EZWZhdWx0cyA9IHtcbiAgICBhcmNoLFxuICAgIGRlc3Q6IHBhdGguZGlybmFtZShvdXRQYXRoKSxcbiAgICBzcmM6IGRpcixcbiAgfTtcbiAgY29uc3QgZGViaWFuQ29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgdXNlckNvbmZpZywgZGViaWFuRGVmYXVsdHMpO1xuXG4gIGF3YWl0IHBpZnkoaW5zdGFsbGVyKShkZWJpYW5Db25maWcpO1xuICByZXR1cm4gW291dFBhdGhdO1xufTtcbiJdfQ==