麒麟龙芯loongarch64 electron 打包deb包

news2025/1/16 5:52:17

在麒麟龙芯(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/ 下 可以看到我想修改的文件是只读文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1623181.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AIGC算法3:Attention及其变体

1.Attention Attention是Transformer的核心部分,Attention机制帮助模型进行信息筛选,通过Q,K,V,对信息进行加工 1.1 attention计算公式 Attention ⁡ ( Q , K , V ) softmax ⁡ ( Q K T d k ) V \operatorname{Attention}(Q, K…

Fisher 准则分类

目录 一、什么是Fisher 准则 二、具体实例 三、代码实现 四、结果 一、什么是Fisher 准则 Fisher准则,即Fisher判别准则(Fisher Discriminant Criterion),是统计学和机器学习中常用的一种分类方法,由统计学家罗纳…

【golang学习之旅】Go 的基本数据类型

系列文章 【golang学习之旅】报错:a declared but not used 目录 系列文章总览布尔型(bool)字符串型(string)整数型(int、uint、byte、rune)浮点型(float32、float64)复…

网络安全之防范钓鱼邮件

随着互联网的快速发展,新的网络攻击形式“网络钓鱼”呈现逐年上升的趋势,利用网络钓鱼进行欺骗的行为越来越猖獗,对互联网的安全威胁越来越大。网络钓鱼最常见的欺骗方式就是向目标群体发送钓鱼邮件,而邮件标题和内容,…

类的六个构造函数相关干货

构造函数 特点 1.名字与类名相同 2.无返回值 3.对象实例化的时候编译器自动调用这个函数 4.构造函数可以重载(无参构造函数,拷贝构造等) 5.如果类中没有显式定义构造函数(深拷贝),则编译器会自动生成一个…

OpenSPG v0.0.3 发布,新增大模型统一知识抽取图谱可视化

基于非结构化文档的知识构建一直是知识图谱大规模落地的关键难题之一,4 月 23 日,OpenSPG 发布 v0.0.3 版本,正式发布了大模型统一知识抽取功能,可大幅降低领域知识图谱的构建成本。还可用于增强大模型缓解幻觉并提升稳定性&#…

Spring Boot中判断轨迹数据是否经过设置的打卡点,且在PGSQL中把点拼接成线,判断某个点是否在线上或在线的50米范围内

问题描述 轨迹数据判断是否经过打卡点,轨迹数据太多,循环判断的话非常消耗内存。解决办法只需要把所有轨迹数据点拼成了一条线,然后只需要循环打卡点即可,打卡点不多,一般不会超过100个,如果多的话&#x…

C++高级特性:异常概念与处理机制(十四)

1、异常的基本概念 异常:是指在程序运行的过程中发生的一些异常事件(如:除数为0,数组下标越界,栈溢出,访问非法内存等) C的异常机制相比C语言的异常处理: 函数的返回值可以忽略&…

C++ | Leetcode C++题解之第41题缺失的第一个正数

题目&#xff1a; 题解&#xff1a; class Solution { public:int firstMissingPositive(vector<int>& nums) {int n nums.size();for (int i 0; i < n; i) {while (nums[i] > 0 && nums[i] < n && nums[nums[i] - 1] ! nums[i]) {swap(…

助力实现更可持续未来的智能解决方案:AI如何改变世界

人工智能已然成为今年的热门话题。由于生成式AI应用的快速采用&#xff0c;新闻头条充斥着有关AI如何彻底改变我们的政策制定、就业和经济走向的预测。您知道AI也是我们应对各种可持续发展挑战的先锋吗&#xff1f;AI通过分析大量数据&#xff0c;并提供有用的见解和工具&#…

Python | Leetcode Python题解之第44题通配符匹配

题目&#xff1a; 题解&#xff1a; class Solution:def isMatch(self, s: str, p: str) -> bool:def allStars(st: str, left: int, right: int) -> bool:return all(st[i] * for i in range(left, right))def charMatch(u: str, v: str) -> bool:return u v or v…

半波整流220V转正5V负-5V100mA恒压WT5101A

半波整流220V转正5V负-5V100mA恒压WT5101A WT5101A 是一款专为 Buck 和 Buck-Boost 拓扑而设计的高效、具有成本优势的离线恒压稳压器&#xff0c;内嵌有500V MOSFET。在降低系统成本的同时&#xff0c;这款稳压器只需少量的外部元件就能输出默认的5V电压。在轻负载条件下&…

30kw 直流回馈老化测试负载箱的优点

直流回馈老化测试负载箱是一种专门用于对电源设备进行老化测试的设备&#xff0c;其主要优点如下&#xff1a; 直流回馈老化测试负载箱采用了先进的直流回馈技术&#xff0c;能够将测试过程中产生的电能回馈到电网中&#xff0c;大大提高了能源的利用效率。这种技术不仅能够节…

水电气能耗管理云平台

安科瑞薛瑶瑶18701709087/17343930412 能耗管理云平台采用泛在物联、云计算、大数据、移动通讯、智能传感器等技术手段可为用户提供能源数据采集、统计分析、能效分析、用能预警、设备管理等服务&#xff0c;平台可以广泛应用于多种领域。

微信小程序按钮点击时的样式hover-class=“hover“

小程序的button组件很好用&#xff0c;按钮点击的时候会显示点击状态&#xff0c;默认的就是颜色加深 但是我们改变了button的背景色之后&#xff0c;就看不出点击效果了&#xff0c;解决起来也很简单 关键代码就是小程序的 hover-class 属性&#xff0c;需要注意的是&#xff…

【java】27:java绘图

坐标体系 - 介绍&#xff1a; 下图说明了Java坐标系。坐标原点位于左上角&#xff0c;以像素为单位。在Java坐标系中&#xff0c;第一个是x坐标&#xff0c;表示当前位置为水平方向&#xff0c;距离坐标原点个像素&#xff1b;第二个是y坐标&#xff0c;表示当前位置为垂直方向…

APP自动化测试-Android SDK SDK Manager.exe或者uiautomatorviewer.bat打不开,点击就一闪而已的原因

原因是找不到Java.exe的路径&#xff0c; 如果是uiautomatorviewer.bat打不开&#xff0c;则使用文本编辑器打开它&#xff0c;然后添加java安装路径 set java_exeC:\Program Files\Java\jdk1.8.0_321\bin\java.exe 同理&#xff1a; 如果是SDK Manager.exe和AVD Manager.ex…

2024全新Java学习路线图一条龙(视频+课件+源码资料)

前言 互联网浩瀚无际,你能来到这里,是机遇也是缘分,机遇,就像我的标题一样,你找到了一份Java 360度无死角的 Java 学习路线,而缘分让我们相遇,注定给你的学习之路搭上一把手,送你一程。 整条线路除了拥有后端整个技术体系外,还涵盖了前端、大数据、云计算、运维等各…

【telnet 命令安装】centos8 linux下安装telnet命令

在CentOS 8上安装Telnet服务&#xff0c;您需要分别安装Telnet客户端和服务器端。以下是安装步骤的概述&#xff1a; 检查是否已安装Telnet&#xff1a; 您可以使用rpm命令来检查系统是否已经安装了Telnet客户端或服务器端。例如&#xff1a; rpm -qa | grep telnet-client rpm…

OWASP发布十大开源软件安全风险及应对指南

​ 最近爆发的XZ后门事件&#xff0c;尽管未酿成Log4j那样的灾难性后果&#xff0c;但它再次敲响了警钟&#xff1a;软件供应链严重依赖开源软件&#xff0c;导致现代数字生态系统极其脆弱。面对层出不穷的安全漏洞&#xff0c;我们需要关注开源软件 (OSS)风险 &#xff0c;改进…