electron TodoList网页应用打包成linux deb、AppImage应用

这里用的是windows的wsl的ubuntu环境
electron应用打包linux应用需要linux下打包,这里用windows的wsl的ubuntu环境进行操作

1)linux ubuntu安装nodejs、electron

安装nodejs:

bash 复制代码
sudo apt update
sudo apt upgrade
##快捷安装
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs

安装完验证

安装electron:

bash 复制代码
##安装cnpm
sudo npm install -g cnpm --registry=https://registry.npmmirror.com
cnpm install --save-dev electron
cnpm install electron-builder --save-dev

2、electron打包linux应用

参考:

TodoList网页:https://cnloong.blog.csdn.net/article/details/140648621

TodoList打包文件夹内容基本都是上面和windows打包exe一样,只更改了package.json文件

新package.json内容:

linux下需要author、homepage、maintainer参数,不然会报错

bash 复制代码
{
  "name": "todolist-app",
  "version": "1.0.0",
  "main": "main.js",
  "homepage": "https://example.com",
  "author": {
    "name": "Your Name",
    "email": "[email protected]"
  },
  "build": {
    "appId": "com.yourcompany.todolist",
    "mac": {
      "category": "public.app-category.productivity"
    },
    "win": {
      "icon": "icons/icon.png",
      "target": [
        "nsis"
      ]
    },
    "linux": {
      "target": [
        "AppImage",
        "deb"
      ],
      "category": "Utility",
      "maintainer": "Your Name <[email protected]>"
    } 
    
  },
  "scripts": {
    "start": "electron .",
    "build": "electron-builder --linux"
  },
  "keywords": [],
  "license": "ISC",
  "description": "",
  "devDependencies": {
    "electron": "^31.2.1",
    "electron-builder": "^24.13.3"
  },
  "dependencies": {}
}

打包过程:

1)在windows的wsl的ubuntu环境进入对应windows目录TodoList下

一般/mnt下就是映射的windows的目录


2)build

npm run build

3)打包完成

在dist文件夹下可以看到linux平台的deb、AppImage安装包

dist\linux-unpacked 下是免安装包

ubuntu桌面查看

直接cmd进入linux-unpacked 目录下执行

bash 复制代码
./todolist-app --no-sandbox

如果不加--no-sandbox会报错

TodoList 运行效果

相关推荐
梨子同志几秒前
手动实现 JavaScript 的 call、apply 和 bind 方法
前端·javascript
梨子同志2 分钟前
ES6 let 和 const
前端·javascript
藥瓿锻13 分钟前
2024 CKA题库+详尽解析| 15、备份还原Etcd
linux·运维·数据库·docker·容器·kubernetes·cka
bbsh209922 分钟前
WebFuture:Ubuntu 系统上在线安装.NET Core 8 的步骤
linux·ubuntu·.netcore·webfuture
前端小白佬29 分钟前
【JS】事件传播--事件捕获/冒泡
javascript·面试
ZZZKKKRTSAE31 分钟前
快速上手Linux全局搜索正则表达式(grep)
linux·服务器·正则表达式
PasserbyX39 分钟前
ES6 WeakMap 生效的证明: FinalizationRegistry
前端·javascript
努力学习的小刘41 分钟前
如何使用react-router实现动态路由
前端·javascript
PasserbyX41 分钟前
JS原型链
前端·javascript
Danta1 小时前
从0开始学习three.js(1)😁
前端·javascript·three.js