mirror of
https://github.com/Eugeny/tabby
synced 2024-11-14 00:47:15 +00:00
64d9c98538
- Build now uses a bare `debootstrap` as a build-sysroot instead of a `chroot` and use its libraries for cross compiling using `crossbuild-essential-*` package using `--sysroot` GCC/G++ flag and `PKG_CONFIG_PATH` to specify path to find `*.pc` files for target arch - Use node 18 (16 is EOL) - Fix a potential ambiguous case in scripts/vars.mjs
80 lines
2.3 KiB
JavaScript
Executable file
80 lines
2.3 KiB
JavaScript
Executable file
import * as path from 'path'
|
|
import * as fs from 'fs'
|
|
import * as semver from 'semver'
|
|
import * as childProcess from 'child_process'
|
|
|
|
process.env.ARCH = ((process.env.ARCH || process.arch) === 'arm') ? 'armv7l' : (process.env.ARCH || process.arch)
|
|
|
|
import * as url from 'url'
|
|
const __dirname = url.fileURLToPath(new URL('.', import.meta.url))
|
|
|
|
const electronInfo = JSON.parse(fs.readFileSync(path.resolve(__dirname, '../node_modules/electron/package.json')))
|
|
|
|
export let version = childProcess.execSync('git describe --tags', { encoding:'utf-8' })
|
|
version = version.substring(1).trim()
|
|
version = version.replace('-', '-c')
|
|
|
|
if (version.includes('-c')) {
|
|
version = semver.inc(version, 'prepatch').replace('-0', `-nightly.${process.env.REV ?? 0}`)
|
|
}
|
|
|
|
export const builtinPlugins = [
|
|
'tabby-core',
|
|
'tabby-settings',
|
|
'tabby-terminal',
|
|
'tabby-web',
|
|
'tabby-community-color-schemes',
|
|
'tabby-ssh',
|
|
'tabby-serial',
|
|
'tabby-telnet',
|
|
'tabby-local',
|
|
'tabby-electron',
|
|
'tabby-plugin-manager',
|
|
'tabby-linkifier',
|
|
]
|
|
|
|
export const packagesWithDocs = [
|
|
['.', 'tabby-core'],
|
|
['terminal', 'tabby-terminal'],
|
|
['local', 'tabby-local'],
|
|
['settings', 'tabby-settings'],
|
|
]
|
|
|
|
export const allPackages = [
|
|
...builtinPlugins,
|
|
'web',
|
|
'tabby-web-demo',
|
|
]
|
|
|
|
export const bundledModules = [
|
|
'@angular',
|
|
'@ng-bootstrap',
|
|
]
|
|
export const electronVersion = electronInfo.version
|
|
|
|
export const keygenConfig = {
|
|
provider: 'keygen',
|
|
account: 'a06315f2-1031-47c6-9181-e92a20ec815e',
|
|
channel: 'stable',
|
|
product: {
|
|
win32: {
|
|
x64: 'f481b9d6-d5da-4970-b926-f515373e986f',
|
|
arm64: '950999b9-371c-419b-b291-938c5e4d364c',
|
|
}[process.env.ARCH],
|
|
darwin: {
|
|
arm64: '98fbadee-c707-4cd6-9d99-56683595a846',
|
|
x86_64: 'f5a48841-d5b8-4b7b-aaa7-cf5bffd36461',
|
|
x64: 'f5a48841-d5b8-4b7b-aaa7-cf5bffd36461',
|
|
}[process.env.ARCH],
|
|
linux: {
|
|
x64: '7bf45071-3031-4a26-9f2e-72604308313e',
|
|
arm64: '39e3c736-d4d4-4fbf-a201-324b7bab0d17',
|
|
armv7l: '50ae0a82-7f47-4fa4-b0a8-b0d575ce9409',
|
|
armhf: '7df5aa12-04ab-4075-a0fe-93b0bbea9643',
|
|
}[process.env.ARCH],
|
|
}[process.platform],
|
|
}
|
|
|
|
if (!keygenConfig.product) {
|
|
throw new Error(`Unrecognized platform ${process.platform}/${process.env.ARCH}`)
|
|
}
|