Packaging was silently hanging forever because yauzl 2.10.0 read streams
emit no data events under Node 26, causing extract-zip to block indefinitely
inside @electron/packager 20. Fix: postinstall script patches
@electron/packager/dist/unzip.js to use bsdtar (libarchive) instead.
bsdtar was chosen over 7z because 7z refuses chained symlinks in macOS
.app framework bundles. Both package:linux and package:mac now produce
correct output.
Also corrects the V3 API bootstrap contract in api_client.ts:
- SearchQuery body was wrapped in an extra {search_query: ...} layer — removed
- x-no-account-id header standardised to 'bypass'
- Redundant x-no-account-id removed from file download headers
- Smoke test rewritten to validate the real two-step bootstrap path
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
26 lines
857 B
JSON
26 lines
857 B
JSON
{
|
|
"name": "aether_app_native_electron",
|
|
"version": "1.0.0",
|
|
"description": "AE Native Launcher V3",
|
|
"main": "dist/main/index.js",
|
|
"scripts": {
|
|
"postinstall": "node scripts/patch-packager-unzip.js",
|
|
"start": "tsc && electron .",
|
|
"dev": "tsc && electron .",
|
|
"build": "tsc",
|
|
"watch": "tsc -w",
|
|
"package:linux": "tsc && electron-packager . aether_launcher --platform=linux --arch=x64 --out=builds --overwrite --prune=true",
|
|
"package:mac": "tsc && electron-packager . aether_launcher --platform=darwin --arch=x64,arm64 --out=builds --overwrite --prune=true --icon=resources/img/osit_logo.icns"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^22.19.0",
|
|
"electron": "^42.0.1",
|
|
"@electron/packager": "^20.0.0",
|
|
"ts-node": "^10.9.2",
|
|
"typescript": "^5.9.3"
|
|
},
|
|
"dependencies": {
|
|
"axios": "^1.13.2"
|
|
}
|
|
}
|