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": "your.email@example.com"
  },
  "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 <your.email@example.com>"
    } 
    
  },
  "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 运行效果

相关推荐
怕浪猫9 小时前
给AI配一台电脑,开源版Muse来了,OpenMuse赶紧去二次开发吧
javascript·面试·github
Jack N9 小时前
【Strapi 系列之二】Collection / Single / Component 怎么选?Strapi 字段大全一篇讲透
前端·javascript·strapi
2402_882893869 小时前
Linux 进程概念详解(下)—— 进程调度、环境变量与虚拟地址空间
linux·进程·虚拟地址空间
虚无的纽扣9 小时前
【Linux】揭开文件系统神秘的面纱:第四讲:可执行文件的组装车间
linux·运维·服务器
YMWM_9 小时前
ubuntu系统字体缩放配置
linux·运维·ubuntu
Amelio_Ming9 小时前
rk3588 pcie驱动分析之二 (pcie设备树节点分析)
linux·嵌入式硬件
郑州光合科技余经理10 小时前
本地生活服务系统:预约状态和进度通知接口怎么拆
java·开发语言·前端·javascript·后端·php·生活
zbyyd10 小时前
Linux字符设备驱动:LED驱动实战开发
linux·单片机·arm·驱动
曦夜日长10 小时前
Git系统篇,Git远程仓库(三):本地仓库与远程仓库的交互
linux·服务器·网络·git·交互
学linux的QQ蛋10 小时前
sys文件系统与misc文件系统学习小总结
linux·学习·驱动