Commit Graph
1 Commits
Author SHA1 Message Date
AskaEth a85115c96e build(linux): 新增 deploy/build-linux.sh —— 手工拼 arm64 Console 包(绕开 electron-builder 在 Linux 上的必崩路径)
为什么手工拼:electron-builder 26.x 在「需要下载 Electron 运行时/7zip 工具」那条分支上会抛
`Cannot read properties of undefined (reading 'ReadWrite')`(`app-builder-lib/util/electronGet.ts` 里
`ElectronDownloadCacheMode` 未定义),本机与构建机都复现过。

脚本做三件事:
1. 交叉编译 arm64 服务端(CGO_ENABLED=0,纯 Go SQLite 驱动,产物静态链接);
2. 用本地现成的 Electron linux-arm64 运行时光手拼出可运行的包树
   (Electron 可执行改名 + resources/app/ 放 console 代码 + 服务端二进制放包根);
3. 打 tar.gz(幂等:每次先清旧产物)。

包内布局依据 console/main 里的路径解析链:服务端与 Console 同级(包根),
config.yaml / rules/ 也在包根(首启由 userpaths 复制到 $XDG_DATA_HOME/ScoreboardConsole/)。
本机 Xvfb 实测:Console 起得来、拉起服务端、/api/health 200、XDG 路径与 Linux 文件名都生效。
2026-09-15 01:14:50 +08:00