feat: build IDE2 on darwin arm64

- Use Node.js 16+,
 - All workflow files use `.yml` instead of `.yaml`,
 - Use Arduino LS `0.7.2`,
 - Updated `electron-builder` to `23.3.3`,
 - Removed unused `conf-node-gyp.sh`,
 - Removed unused `THEIA_ELECTRON_SKIP_REPLACE_FFMPEG`, and
 - Aligned `node-gyp@9.3.0`, `electron-rebuild@3.2.9` to Theia.

Co-authored-by: per1234 <accounts@perglass.com>
Co-authored-by: Akos Kitta <a.kitta@arduino.cc>

Signed-off-by: Akos Kitta <a.kitta@arduino.cc>
This commit is contained in:
Akos Kitta
2022-05-30 15:28:33 +02:00
committed by Akos Kitta
parent 0d0550974a
commit f6275f9f62
21 changed files with 81 additions and 164 deletions

View File

@@ -11,7 +11,7 @@
"devDependencies": {
"@theia/cli": "1.25.0",
"cross-env": "^7.0.2",
"electron-builder": "23.0.2",
"electron-builder": "23.3.3",
"electron-notarize": "^1.1.1",
"is-ci": "^2.0.0",
"ncp": "^2.0.0",
@@ -26,7 +26,7 @@
"patch": "ncp ./patch/backend/main.js ./src-gen/backend/main.js"
},
"engines": {
"node": ">=14.0.0 <15"
"node": ">=16.0.0 <17"
},
"repository": {
"type": "git",
@@ -89,7 +89,10 @@
"hardenedRuntime": true,
"gatekeeperAssess": false,
"entitlements": "resources/entitlements.mac.plist",
"entitlementsInherit": "resources/entitlements.mac.plist"
"entitlementsInherit": "resources/entitlements.mac.plist",
"target": {
"target": "default"
}
},
"linux": {
"target": [

View File

@@ -1,11 +0,0 @@
#!/bin/sh
npm install --global node-gyp@7.0.0
if [ "$OSTYPE" = "cygwin" ] || [ "$OSTYPE" = "msys" ]; then
npm config set node_gyp "`npm prefix -g`\node_modules\node-gyp\bin\node-gyp.js"
else
npm config set node_gyp "`npm prefix -g`/lib/node_modules/node-gyp/bin/node-gyp.js"
fi
echo "npm config get node_gyp -> `npm config get node_gyp`"

View File

@@ -27,6 +27,9 @@ function artifactName() {
throw new Error(`Unsupported platform, arch: ${platform}, ${arch}`);
}
case 'darwin': {
if (arch === 'arm64') {
return `${name}_${id}_macOS_ARM64.\$\{ext}`;
}
return `${name}_${id}_macOS_64bit.\$\{ext}`;
}
case 'linux': {

View File

@@ -6,7 +6,6 @@
const shell = require('shelljs');
const glob = require('glob');
const isCI = require('is-ci');
shell.env.THEIA_ELECTRON_SKIP_REPLACE_FFMPEG = '1'; // Do not run the ffmpeg validation for the packager.
// Note, this will crash on PI if the available memory is less than desired heap size.
// https://github.com/shelljs/shelljs/issues/1024#issuecomment-1001552543
shell.env.NODE_OPTIONS = '--max_old_space_size=4096'; // Increase heap size for the CI

View File

@@ -33,7 +33,7 @@
"yargs": "^12.0.5"
},
"engines": {
"node": ">=14.0.0 <15"
"node": ">=16.0.0 <17"
},
"mocha": {
"reporter": "spec",