UNPKG

electron-forge

Version:

A complete tool for building modern Electron applications

120 lines (94 loc) 7.43 kB
'use strict'; 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-redhat')); case 1: case 'end': return _context.stop(); } } }, _callee, undefined); })); return function isSupportedOnCurrentPlatform() { return _ref.apply(this, arguments); }; }(); function rpmArch(nodeArch) { switch (nodeArch) { case 'ia32': return 'i386'; case 'x64': return 'x86_64'; case 'armv7l': return 'armv7hl'; case 'arm': return 'armv6hl'; 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, rpmDefaults, rpmConfig; return _regenerator2.default.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: installer = require('electron-installer-redhat'); arch = rpmArch(targetArch); userConfig = (0, _configFn2.default)(forgeConfig.electronInstallerRedhat, targetArch); userConfig.options = userConfig.options || {}; versionedName = (userConfig.options.name || packageJSON.name) + '-' + packageJSON.version + '.' + arch; outPath = _path2.default.resolve(dir, '../make', versionedName + '.rpm'); _context2.next = 8; return (0, _ensureOutput.ensureFile)(outPath); case 8: rpmDefaults = { arch: arch, dest: _path2.default.dirname(outPath), src: dir }; rpmConfig = (0, _assign2.default)({}, userConfig, rpmDefaults); _context2.next = 12; return (0, _pify2.default)(installer)(rpmConfig); 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1ha2Vycy9saW51eC9ycG0uanMiXSwibmFtZXMiOlsiaXNTdXBwb3J0ZWRPbkN1cnJlbnRQbGF0Zm9ybSIsInJwbUFyY2giLCJub2RlQXJjaCIsImRpciIsInRhcmdldEFyY2giLCJmb3JnZUNvbmZpZyIsInBhY2thZ2VKU09OIiwiaW5zdGFsbGVyIiwicmVxdWlyZSIsImFyY2giLCJ1c2VyQ29uZmlnIiwiZWxlY3Ryb25JbnN0YWxsZXJSZWRoYXQiLCJvcHRpb25zIiwidmVyc2lvbmVkTmFtZSIsIm5hbWUiLCJ2ZXJzaW9uIiwib3V0UGF0aCIsInJlc29sdmUiLCJycG1EZWZhdWx0cyIsImRlc3QiLCJkaXJuYW1lIiwic3JjIiwicnBtQ29uZmlnIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFFQTs7QUFDQTs7OztBQUNBOzs7Ozs7QUFFTyxJQUFNQTtBQUFBLGlFQUErQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsNkNBQVksMkJBQVksMkJBQVosQ0FBWjs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxHQUEvQjs7QUFBQTtBQUFBO0FBQUE7QUFBQSxHQUFOOztBQUVQLFNBQVNDLE9BQVQsQ0FBaUJDLFFBQWpCLEVBQTJCO0FBQ3pCLFVBQVFBLFFBQVI7QUFDRSxTQUFLLE1BQUw7QUFBYSxhQUFPLE1BQVA7QUFDYixTQUFLLEtBQUw7QUFBWSxhQUFPLFFBQVA7QUFDWixTQUFLLFFBQUw7QUFBZSxhQUFPLFNBQVA7QUFDZixTQUFLLEtBQUw7QUFBWSxhQUFPLFNBQVA7QUFDWjtBQUFTLGFBQU9BLFFBQVA7QUFMWDtBQU9EOzs7a0VBRWM7QUFBQSxRQUFTQyxHQUFULFNBQVNBLEdBQVQ7QUFBQSxRQUFjQyxVQUFkLFNBQWNBLFVBQWQ7QUFBQSxRQUEwQkMsV0FBMUIsU0FBMEJBLFdBQTFCO0FBQUEsUUFBdUNDLFdBQXZDLFNBQXVDQSxXQUF2QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDUEMscUJBRE8sR0FDS0MsUUFBUSwyQkFBUixDQURMO0FBR1BDLGdCQUhPLEdBR0FSLFFBQVFHLFVBQVIsQ0FIQTtBQUlQTSxzQkFKTyxHQUlNLHdCQUFTTCxZQUFZTSx1QkFBckIsRUFBOENQLFVBQTlDLENBSk47O0FBS2JNLHVCQUFXRSxPQUFYLEdBQXFCRixXQUFXRSxPQUFYLElBQXNCLEVBQTNDO0FBQ01DLHlCQU5PLElBTVlILFdBQVdFLE9BQVgsQ0FBbUJFLElBQW5CLElBQTJCUixZQUFZUSxJQU5uRCxVQU0yRFIsWUFBWVMsT0FOdkUsU0FNa0ZOLElBTmxGO0FBT1BPLG1CQVBPLEdBT0csZUFBS0MsT0FBTCxDQUFhZCxHQUFiLEVBQWtCLFNBQWxCLEVBQWdDVSxhQUFoQyxVQVBIO0FBQUE7QUFBQSxtQkFTUCw4QkFBV0csT0FBWCxDQVRPOztBQUFBO0FBVVBFLHVCQVZPLEdBVU87QUFDbEJULHdCQURrQjtBQUVsQlUsb0JBQU0sZUFBS0MsT0FBTCxDQUFhSixPQUFiLENBRlk7QUFHbEJLLG1CQUFLbEI7QUFIYSxhQVZQO0FBZVBtQixxQkFmTyxHQWVLLHNCQUFjLEVBQWQsRUFBa0JaLFVBQWxCLEVBQThCUSxXQUE5QixDQWZMO0FBQUE7QUFBQSxtQkFpQlAsb0JBQUtYLFNBQUwsRUFBZ0JlLFNBQWhCLENBakJPOztBQUFBO0FBQUEsOENBa0JOLENBQUNOLE9BQUQsQ0FsQk07O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRyIsImZpbGUiOiJtYWtlcnMvbGludXgvcnBtLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgcGlmeSBmcm9tICdwaWZ5JztcblxuaW1wb3J0IHsgZW5zdXJlRmlsZSB9IGZyb20gJy4uLy4uL3V0aWwvZW5zdXJlLW91dHB1dCc7XG5pbXBvcnQgY29uZmlnRm4gZnJvbSAnLi4vLi4vdXRpbC9jb25maWctZm4nO1xuaW1wb3J0IGlzSW5zdGFsbGVkIGZyb20gJy4uLy4uL3V0aWwvaXMtaW5zdGFsbGVkJztcblxuZXhwb3J0IGNvbnN0IGlzU3VwcG9ydGVkT25DdXJyZW50UGxhdGZvcm0gPSBhc3luYyAoKSA9PiBpc0luc3RhbGxlZCgnZWxlY3Ryb24taW5zdGFsbGVyLXJlZGhhdCcpO1xuXG5mdW5jdGlvbiBycG1BcmNoKG5vZGVBcmNoKSB7XG4gIHN3aXRjaCAobm9kZUFyY2gpIHtcbiAgICBjYXNlICdpYTMyJzogcmV0dXJuICdpMzg2JztcbiAgICBjYXNlICd4NjQnOiByZXR1cm4gJ3g4Nl82NCc7XG4gICAgY2FzZSAnYXJtdjdsJzogcmV0dXJuICdhcm12N2hsJztcbiAgICBjYXNlICdhcm0nOiByZXR1cm4gJ2FybXY2aGwnO1xuICAgIGRlZmF1bHQ6IHJldHVybiBub2RlQXJjaDtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBhc3luYyAoeyBkaXIsIHRhcmdldEFyY2gsIGZvcmdlQ29uZmlnLCBwYWNrYWdlSlNPTiB9KSA9PiB7XG4gIGNvbnN0IGluc3RhbGxlciA9IHJlcXVpcmUoJ2VsZWN0cm9uLWluc3RhbGxlci1yZWRoYXQnKTtcblxuICBjb25zdCBhcmNoID0gcnBtQXJjaCh0YXJnZXRBcmNoKTtcbiAgY29uc3QgdXNlckNvbmZpZyA9IGNvbmZpZ0ZuKGZvcmdlQ29uZmlnLmVsZWN0cm9uSW5zdGFsbGVyUmVkaGF0LCB0YXJnZXRBcmNoKTtcbiAgdXNlckNvbmZpZy5vcHRpb25zID0gdXNlckNvbmZpZy5vcHRpb25zIHx8IHt9O1xuICBjb25zdCB2ZXJzaW9uZWROYW1lID0gYCR7dXNlckNvbmZpZy5vcHRpb25zLm5hbWUgfHwgcGFja2FnZUpTT04ubmFtZX0tJHtwYWNrYWdlSlNPTi52ZXJzaW9ufS4ke2FyY2h9YDtcbiAgY29uc3Qgb3V0UGF0aCA9IHBhdGgucmVzb2x2ZShkaXIsICcuLi9tYWtlJywgYCR7dmVyc2lvbmVkTmFtZX0ucnBtYCk7XG5cbiAgYXdhaXQgZW5zdXJlRmlsZShvdXRQYXRoKTtcbiAgY29uc3QgcnBtRGVmYXVsdHMgPSB7XG4gICAgYXJjaCxcbiAgICBkZXN0OiBwYXRoLmRpcm5hbWUob3V0UGF0aCksXG4gICAgc3JjOiBkaXIsXG4gIH07XG4gIGNvbnN0IHJwbUNvbmZpZyA9IE9iamVjdC5hc3NpZ24oe30sIHVzZXJDb25maWcsIHJwbURlZmF1bHRzKTtcblxuICBhd2FpdCBwaWZ5KGluc3RhbGxlcikocnBtQ29uZmlnKTtcbiAgcmV0dXJuIFtvdXRQYXRoXTtcbn07XG4iXX0=