prepackage-plugins.js 813 B

12345678910111213141516171819202122232425
  1. #!/usr/bin/env node
  2. const rebuild = require('electron-rebuild').default
  3. const sh = require('shelljs')
  4. const path = require('path')
  5. const fs = require('fs')
  6. const vars = require('./vars')
  7. const log = require('npmlog')
  8. let target = path.resolve(__dirname, '../builtin-plugins')
  9. sh.mkdir('-p', target)
  10. fs.writeFileSync(path.join(target, 'package.json'), '{}')
  11. sh.cd(target)
  12. vars.builtinPlugins.forEach(plugin => {
  13. log.info('install', plugin)
  14. sh.cp('-r', path.join('..', plugin), '.')
  15. sh.rm('-rf', path.join(plugin, 'node_modules'))
  16. sh.cd(plugin)
  17. sh.exec(`npm install --only=prod`)
  18. log.info('rebuild', 'native')
  19. if (fs.existsSync('node_modules')) {
  20. rebuild(path.resolve('.'), vars.electronVersion, process.arch, [], true)
  21. }
  22. sh.cd('..')
  23. })
  24. fs.unlinkSync(path.join(target, 'package.json'), '{}')