22f9e6f4c0
Prepare a dedicated `.next/electron-standalone` bundle before running electron-builder so desktop packaging operates on a stable, Electron-specific server payload. This also adds a preflight that rejects standalone bundles whose top-level `node_modules` is a symlink, because electron-builder preserves `extraResources` symlinks and would otherwise ship an app that depends on the build machine at runtime.
133 lines
3.0 KiB
JSON
133 lines
3.0 KiB
JSON
{
|
|
"name": "omniroute-desktop",
|
|
"version": "2.3.13",
|
|
"description": "OmniRoute Desktop Application",
|
|
"main": "main.js",
|
|
"author": {
|
|
"name": "OmniRoute Team",
|
|
"email": "support@omniroute.online"
|
|
},
|
|
"license": "MIT",
|
|
"homepage": "https://omniroute.online",
|
|
"scripts": {
|
|
"start": "electron .",
|
|
"dev": "electron . --no-sandbox",
|
|
"prepare:bundle": "node ../scripts/prepare-electron-standalone.mjs",
|
|
"build": "npm run prepare:bundle && electron-builder",
|
|
"build:win": "npm run prepare:bundle && electron-builder --win",
|
|
"build:mac": "npm run prepare:bundle && electron-builder --mac",
|
|
"build:mac-x64": "npm run prepare:bundle && electron-builder --mac --x64",
|
|
"build:mac-arm64": "npm run prepare:bundle && electron-builder --mac --arm64",
|
|
"build:linux": "npm run prepare:bundle && electron-builder --linux",
|
|
"pack": "npm run prepare:bundle && electron-builder --dir"
|
|
},
|
|
"dependencies": {
|
|
"electron-updater": "^6.8.3"
|
|
},
|
|
"devDependencies": {
|
|
"electron": "^40.6.1",
|
|
"electron-builder": "^25.1.8"
|
|
},
|
|
"build": {
|
|
"appId": "online.omniroute.desktop",
|
|
"productName": "OmniRoute",
|
|
"copyright": "Copyright © 2025 OmniRoute",
|
|
"directories": {
|
|
"output": "dist-electron",
|
|
"buildResources": "assets"
|
|
},
|
|
"publish": {
|
|
"provider": "github",
|
|
"owner": "diegosouzapw",
|
|
"repo": "OmniRoute"
|
|
},
|
|
"files": [
|
|
"main.js",
|
|
"preload.js",
|
|
"package.json"
|
|
],
|
|
"extraResources": [
|
|
{
|
|
"from": "../.next/electron-standalone",
|
|
"to": "app",
|
|
"filter": [
|
|
"**/*"
|
|
]
|
|
},
|
|
{
|
|
"from": "assets",
|
|
"to": "assets",
|
|
"filter": [
|
|
"icon.png",
|
|
"tray-icon.png"
|
|
]
|
|
}
|
|
],
|
|
"win": {
|
|
"target": [
|
|
{
|
|
"target": "nsis",
|
|
"arch": [
|
|
"x64"
|
|
]
|
|
},
|
|
{
|
|
"target": "portable",
|
|
"arch": [
|
|
"x64"
|
|
]
|
|
}
|
|
],
|
|
"icon": "assets/icon.ico"
|
|
},
|
|
"mac": {
|
|
"target": [
|
|
"dmg"
|
|
],
|
|
"icon": "assets/icon.icns",
|
|
"category": "public.app-category.productivity"
|
|
},
|
|
"linux": {
|
|
"target": [
|
|
{
|
|
"target": "AppImage",
|
|
"arch": [
|
|
"x64"
|
|
]
|
|
},
|
|
{
|
|
"target": "deb",
|
|
"arch": [
|
|
"x64",
|
|
"arm64"
|
|
]
|
|
}
|
|
],
|
|
"icon": "assets/icons",
|
|
"category": "Utility"
|
|
},
|
|
"nsis": {
|
|
"oneClick": false,
|
|
"allowToChangeInstallationDirectory": true,
|
|
"createDesktopShortcut": true,
|
|
"createStartMenuShortcut": true,
|
|
"installerIcon": "assets/icon.ico",
|
|
"uninstallerIcon": "assets/icon.ico"
|
|
},
|
|
"dmg": {
|
|
"contents": [
|
|
{
|
|
"x": 130,
|
|
"y": 220
|
|
},
|
|
{
|
|
"x": 410,
|
|
"y": 220,
|
|
"type": "link",
|
|
"path": "/Applications"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|