12345678910111213141516171819202122232425262728293031323334353637 |
- #!/usr/bin/env node
- import { rebuild } from 'electron-rebuild'
- import * as path from 'path'
- import * as vars from './vars.mjs'
- import * as url from 'url'
- const __dirname = url.fileURLToPath(new URL('.', import.meta.url))
- if (process.platform === 'win32' || process.platform === 'linux') {
- process.env.ARCH = ((process.env.ARCH || process.arch) === 'arm') ? 'armv7l' : process.env.ARCH || process.arch
- } else {
- process.env.ARCH ??= process.arch
- }
- let lifecycles = []
- for (let dir of ['app', 'tabby-core', 'tabby-local', 'tabby-ssh', 'tabby-terminal']) {
- const build = rebuild({
- buildPath: path.resolve(__dirname, '../' + dir),
- electronVersion: vars.electronVersion,
- arch: process.env.ARCH,
- force: true,
- })
- build.catch(e => {
- console.error(e)
- process.exit(1)
- })
- lifecycles.push([build.lifecycle, dir])
- }
- console.info('Building against Electron', vars.electronVersion)
- for (let [lc, dir] of lifecycles) {
- lc.on('module-found', name => {
- console.info('Rebuilding', dir + '/' + name)
- })
- }
|