在麒麟龙芯(loongarch64)电脑上 使用electron 开发桌面应用。之前用electron-packager 打包出来的是文件夹 是 unpack 包。现在需要打包deb包,依据开发指南开始打包。
在项目文件夹下 打开终端 输入 npm run packager 先打包unpack包
然后打deb 包,步骤(具体参照指南):
1、安装 electron-installer-debian
npm install electron-installer-debian --save-dev
npm 安装不上 重新配置 npm config set registry https://registry.npmmirror.com
2、添加打 deb 包脚本 config.json
{"src": "out/Spliter-linux-loongarch64/","dest": "out/deb/","arch": "loongarch64","icon": "icons/512x512.png","categories": ["Utility"],"lintianOverrides": ["changelog-file-missing-in-native-package"]
注:
src 指的是 unpack 包的目录
dest 指的是生成 deb 包的目录
3、添加打 deb 包命令 "deb": "electron-installer-debian --config config.json"
{"name": "Spliter","version": "1.0.0","main": "main.js","description": "Upper computer debugging software","scripts": {"start": "electron ./main","package": "electron-packager . Spliter --platform=win32 --arch=ia32 --overwrite --icon=icon.ico --out=./out --asar --app-version=0.0.1","packager": "electron-packager . Spliter --platform=linux --arch=loongarch64 --overwrite --icon=512x512.png --out=./out --asar --app-version=0.0.1 --electron-zip-dir=/home/hedy/","deb1": "electron-installer-debian --src out/Spliter-linux-loongarch64 --dest out/deb/ --arch loongarch64","deb": "electron-installer-debian --config config.json"},"dependencies": {"body-parser": "1.19.0","electron": "10.1.3","express": "4.17.1","multer": "1.4.2","ws": "7.5.2"},"devDependencies": {"electron": "10.1.3","electron-installer-debian": "^3.2.0","electron-packager": "14.2.1"}
}
4、打 deb 包 npm run deb
5、修改 deb 包
使用如下命令将打好的 deb 包解包
$ fakeroot dpkg-deb -R Spliter_1.0.0_loongarch64.deb Spliter_1.0.0_loongarch64
按照打包规范对 deb 包进行调试
然后,使用如下命令重新打包
$ fakeroot dpkg-deb -b Spliter_1.0.0_loongarch64 .
注:
使用 dpkg -b 打包时不写打包名称会按照 control 文件自动进行命名打包,会将原包覆盖,可以
使用
$ fakeroot dpkg-deb -b Spliter_1.0.0_loongarch64 Spliter_1.0.0_loongarch64_new.deb
命令自定义新包名称来进行打包
6、验包
安装
在 loongarch64 架构机器上,双击或在终端执行 sudo dpkg -i ***.deb 来安装 deb 包
启动
遇到问题:
1、缺少项目描述
2、使用npm run deb1 时没有图标,使用config.json打包的有图标
3、我在 node 使用 fs.writeFileSync 写文件,但是提示没有权限
安装完的软件路径在 文件系统 usr/ lib/ 下 可以看到我想修改的文件是只读文件