mirror of
https://github.com/enso-org/enso.git
synced 2024-12-21 08:31:32 +03:00
a4f56e92aa
This PR introduces a new installer and uninstaller for the Windows platform. Both are written in Rust and compiled to a single executable. The executable has no dependencies (other than what is included in the Windows), links the C++ runtime statically if needed. The change is motivated by numerous issues with with the `electron-builder`-generated installers. The new installer should behave better, not have issues with long paths and unblock the `electron-builder` upgrade (which will significantly simplify the workflow definitions). To build an installer, one needs to provide the unpacked application (generated by `electron-builder`) and the `electron-builder` configuration (with a few minor extensions). Code signing is also supported.
68 lines
2.7 KiB
JSON
68 lines
2.7 KiB
JSON
{
|
|
"version": "0.0.0-dev",
|
|
"type": "module",
|
|
"author": {
|
|
"name": "Enso Team",
|
|
"email": "contact@enso.org"
|
|
},
|
|
"homepage": "https://github.com/enso-org/ide",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git@github.com:enso-org/ide.git"
|
|
},
|
|
"bugs": {
|
|
"url": "https://github.com/enso-org/ide/issues"
|
|
},
|
|
"name": "enso",
|
|
"description": "Enso Data Processing Environment.",
|
|
"main": "index.cjs",
|
|
"dependencies": {
|
|
"@types/mime-types": "^2.1.1",
|
|
"@types/opener": "^1.4.0",
|
|
"@types/tar": "^6.1.4",
|
|
"@types/yargs": "^17.0.30",
|
|
"chalk": "^5.2.0",
|
|
"create-servers": "3.2.0",
|
|
"electron-is-dev": "^2.0.0",
|
|
"mime-types": "^2.1.35",
|
|
"opener": "^1.5.2",
|
|
"string-length": "^5.0.1",
|
|
"tar": "^6.1.13",
|
|
"yargs": "17.6.2"
|
|
},
|
|
"comments": {
|
|
"electron-builder": "Cannot be updated to a newer version because of a NSIS installer issue: https://github.com/enso-org/enso/issues/5169"
|
|
},
|
|
"devDependencies": {
|
|
"@electron/notarize": "2.1.0",
|
|
"@types/node": "^20.10.5",
|
|
"electron": "25.7.0",
|
|
"electron-builder": "^22.14.13",
|
|
"enso-common": "^1.0.0",
|
|
"esbuild": "^0.19.3",
|
|
"fast-glob": "^3.2.12",
|
|
"lightningcss": "^1.24.0",
|
|
"portfinder": "^1.0.32",
|
|
"sharp": "^0.31.2",
|
|
"to-ico": "^1.1.5",
|
|
"tsx": "^4.7.1",
|
|
"vite": "^5.1.4"
|
|
},
|
|
"optionalDependencies": {
|
|
"@esbuild/darwin-x64": "^0.17.15",
|
|
"@esbuild/linux-x64": "^0.17.15",
|
|
"@esbuild/windows-x64": "^0.17.15",
|
|
"dmg-license": "^1.0.11"
|
|
},
|
|
"scripts": {
|
|
"typecheck": "npm run --workspace=enso-gui2 compile-server && tsc --build",
|
|
"start": "tsx start.ts",
|
|
"build": "tsx bundle.ts",
|
|
"dist": "tsx dist.ts",
|
|
"watch": "tsx watch.ts",
|
|
"watch:windows": "cross-env ENSO_BUILD_IDE=%LOCALAPPDATA%/Temp/enso/dist/ide ENSO_BUILD_PROJECT_MANAGER=%CD%/../../../../dist/backend ENSO_BUILD_PROJECT_MANAGER_IN_BUNDLE_PATH=bin/project-manager.exe ENSO_BUILD_IDE_BUNDLED_ENGINE_VERSION=0 tsx watch.ts",
|
|
"watch:linux": "ENSO_BUILD_IDE=\"${ENSO_BUILD_IDE:-/tmp/enso/dist/ide}\" ENSO_BUILD_PROJECT_MANAGER=\"${ENSO_BUILD_PROJECT_MANAGER:-\"$(pwd)/../../../../dist/backend\"}\" ENSO_BUILD_PROJECT_MANAGER_IN_BUNDLE_PATH=\"${ENSO_BUILD_PROJECT_MANAGER_IN_BUNDLE_PATH:-bin/project-manager}\" ENSO_BUILD_IDE_BUNDLED_ENGINE_VERSION=\"${ENSO_BUILD_IDE_BUNDLED_ENGINE_VERSION:-0}\" tsx watch.ts \"$@\"",
|
|
"watch:macos": "ENSO_BUILD_IDE=\"${ENSO_BUILD_IDE:-/tmp/enso/dist/ide}\" ENSO_BUILD_PROJECT_MANAGER=\"${ENSO_BUILD_PROJECT_MANAGER:-\"$(pwd)/../../../../dist/backend\"}\" ENSO_BUILD_PROJECT_MANAGER_IN_BUNDLE_PATH=\"${ENSO_BUILD_PROJECT_MANAGER_IN_BUNDLE_PATH:-bin/project-manager}\" ENSO_BUILD_IDE_BUNDLED_ENGINE_VERSION=\"${ENSO_BUILD_IDE_BUNDLED_ENGINE_VERSION:-0}\" tsx watch.ts \"$@\""
|
|
}
|
|
}
|