
有没有什么方法让 Electron 软件原生运行?
有!提取 Windows 版本的资源包搬到 Linux上运行!
deepin资深用户 @米饭虚拟机 以《PDF切题工具v2.4》为例,展示了在 deepin 25 上迁移 Electron 软件到 Linux 的思路。
一、迁移全攻略
1. 分析 Electron 结构
-
Electron 软件目录如下:

- 进入 resources 文件夹,里面放着 app 文件夹或 .asar 文件:


Electron 软件(果) = app 文件夹 或 .asar 文件(核) + Electron 框架(壳)
2. 判断 Electron 版本
Electron 版本多,破坏性更改也多,选择合适的版本非常重要。
我们可以用 ImHex 查 Electron 版本。
- deepin 应用商店搜索下载 ImHex:

- 将 .exe 文件拖进 ImHex,Ctrl+f 调用搜索,找到关键词“Electron v”,即可知道版本。

3. 下载对应版本的 Electron 框架
-
转至Github Electron 项目,并点击“Releases” :

项目地址:https://github.com/electron/electron
- 搜索目标版本并下载:


- 解压到桌面(注意要创建文件夹防止桌面变乱):

解压目录:/home/用户名/Desktop/xyz-amd64
4. 移动 app 文件夹或 .asar 文件
将 app 文件夹或 .asar 文件移动至步骤3 解压目录的 resources 文件夹中。
-
如果是 app 文件夹,先压缩再移动:

app 文件夹小文件多,直接移动要花大量时间。压缩移动再解压反而省时。
- 如果是 .asar 文件,直接移动即可:

- 移动完成,删除 default_app.asar 文件(防止冲突):

5. 启动软件
-
返回上一级,启动 electron 二进制文件:

稍等一会,软件界面出现在眼前:

体验时,软件功能完整,流畅度跟 Windows 版别无二致。

6. 打包、安装 deb包
-
按照 deepin 标准,将移植的软件打包成 deb 包:


- 安装打好的 deb 包:

- 成功启动!

移植成功!
二、常见问题
1. 软件运行不起来怎么办?
软件无法启动,说明软件源码有问题。
右键终端执行命令看看报错。知道报错原因,用 asar 工具拆包。需要安装 Node.js 和 asar模块才能拆包。(安装方法可自行问ai)
右键终端,在 resources 目录执行 asar 拆包命令:
asar e app.asar ./app这样就能改源码,针对性修 bug 了。
修好后仍用 asar 命令封包:
asar p ./app app.asar终端重新执行启动命令,发现软件可以正常启动。
2. 怎么向 ARM 和 龙芯移植?
把资源文件放进 arm64版和龙芯版的 Electron 框架就行。
- Release 的 Assets 中有 arm64版:

- 龙芯版则要到龙芯开源社区下载:

地址:https://ftp.loongnix.cn/electron/LoongArch/
3. 如何获取软件图标?
可用“採图标”软件获取 exe 软件图标。
- 到 deepin 应用商店搜索并下载“採图标”:

- 将 .exe文件拖进软件中,然后等待:

.exe 文件较大,软件读取图标需要一些时间。
- 点“批量导出”,选“确定”并放置在桌面上:


- 打开目录,图标文件就出现了:

以上就是在 deepin 操作系统上进行 Electron 软件迁移的完整思路。
值得注意的是,该方法并不仅限于 deepin —— 它利用 Electron 跨平台运行的本质,将 Windows 版本的资源包提取出来,搭配对应架构和版本的 Electron 二进制文件即可原生运行。因此,也同样适用于主流 Linux 发行版,用户可以按照上述步骤轻松完成迁移,为 Linux 生态贡献一份力量。
若你在移植过程中遇到任何问题,欢迎前往deepin论坛与我们的作者@米饭虚拟机 交流!
也欢迎参与应用投递,投递方式参见:应用商店 | 你的应用,值得被千万用户看见!
deepin 作为在 DistroWatch 全球排名中表现亮眼、广受全球用户认可的开源操作系统,诚邀所有热爱开源的朋友,加入我们的 deepin 共建队伍,无论你是技术大牛,还是刚入门的技术爱好者,只要你认同开源精神,愿意为 Linux 生态贡献一份力量,这里都有你的一席之地。