关于UOS系统下打包安装使用的问题总结

简介: 关于UOS系统下打包安装使用的问题总结

1.场景


Electron+react的项目打包成liunx下的appimage文件后,在linux下运行正常。但目的是将之放到基于linux内核下的UOS(统信)系统下,并保证软件安装运行正常。

2.遇到的问题


2.1 开发者模式下如何打包(appimage转符合UOS规范的deb包)


步骤:

第一步

桌面新建空白文件夹,起名随意,我就起名叫test便于理解,然后将你要打包的appimage文件放进去

第二步

解压appimage文件,在test文件夹下打开终端命令行,运行命令:

命令1:chmod +x 文件名
举例 chmod +x com.xx-1.0.2.Appimage 
命令2:./文件名 --appimage-extract
举例:./com.xx-1.0.2.Appimage --appimage-extract

会生成一个新的文件夹叫squashfs-root

第三步

Gitee上搜索一款名叫uos-package-upTool的工具,下载到UOS系统下,点击安装。

第四步

打开第二步下载的工具,按照Gitee的说明填写。这一步最需要注意的是

工作目录:就是test

主程序:选择squashfs-root目录下的Apprun

目录:选择squashfs-root

然后就是打包静等片刻后,test文件夹会出现一个新的文件夹,打开后里面的deb文件就是打包后的安装包。

到此,appimage打包成deb安装包成功。但是后面

或许还有坑~

2.2 开发者模式下-打包完成运行时提示4755错误


具体报错为:chrome-sandbox is owned by root and has mode 4755

3a9dff3071a94831b694799e06fc9cdc.png

解决方法就是我之前的博客总结过的。思路就是解包-加权限-打包。这个可以解决提示4755问题。

UOS系统下安装软件打不开的解决方法_接着奏乐接着舞。的博客-CSDN博客_uos命令行打开软件

2.3 开发者模式下运行正常,但是非开发者模式下,点击没反应,命令行执行显示权限不够


解决思路还是解包-加755权限-打包。

第一步

test目录下找到amd64文件夹下找到file文件夹(嵌套可能好几层),打开命令行加权限

chmod 755 -R locales/ resources/ swiftshader/ usr/

然后在打包即可

dpkg-deb -b amd64/ .

接着,退出开发者模式,测试非开发者模式能否正常运行

退出开发者模式命令--输入完需要重启才能生效:
sudo chattr -i /var/lib/deepin/developer-mode/enabled
sudo rm /var/lib/deepin/developer-mode/enabled

然后再自签名,自签名的方法下面会列出来,我之前单独写过博客怎么自签名。

然后最终的效果:

用户在非开发者模式下,安装签名的软件后,能正常安装正常运行。

2.4 软件包在非开发者模式下的签名问题


看我写的这篇博客即可,这个是自签名,如果测试通过了,可以向UOS官方申请永久签名。

UOS系统如何给软件签名_接着奏乐接着舞。的博客-CSDN博客

总结:


本来思路很清晰的,写着写着发现这篇文章不是那么通俗易懂,因为之前我遇到UOS的很多坑也是看的乱七八糟的,这里我就做一下最后的总结:

遇到的问题基本上都是权限的问题,而面对这样的问题我们的思路是,解包然后加权限最后打包。

如果你有疑问不妨评论区交流~

相关文章
|
开发者
UOS系统如何给软件签名
UOS系统如何给软件签名
UOS系统如何给软件签名
|
5月前
|
监控 测试技术 持续交付
大模型测试怎么做?从模型评估、幻觉检测到 RAG 系统测试全指南
本指南系统讲解大模型测试全流程:涵盖多维度评估(私有评测集构建、指标选择)、幻觉检测(事实核查、一致性与对抗测试)、RAG分层验证(检索/生成/端到端),以及持续集成实践与避坑指南,助力团队落地可靠评估体系。
|
3月前
|
机器人 API 数据安全/隐私保护
OpenClaw 接入钉钉企业内部机器人完整教程
本文详解OpenClaw接入钉钉企业内部机器人的全流程:通过钉钉开放平台Channels能力,以Stream模式(免公网域名)对接,步骤清晰、配图实操。涵盖应用创建、机器人开通、信息配置、版本发布及凭证获取,助力开发人员快速落地敏捷协作。(239字)
|
Ubuntu Windows
Ubuntu Remmina 远程桌面提示 “无法连接到RDP服务器”
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.
4929 2
|
9月前
|
开发框架 安全 .NET
Microsoft .NET Framework 3.5、4.5.2、4.8.1,适用于 Windows 版本的 .NET,Microsoft C Runtime等下载
.NET Framework是Windows平台的开发框架,包含CLR和FCL,支持多种语言开发桌面、Web应用。常用版本有3.5、4.5.2、4.8.1,系统可同时安装多个版本,确保软件兼容运行。
2033 0
Microsoft .NET Framework 3.5、4.5.2、4.8.1,适用于 Windows 版本的 .NET,Microsoft C Runtime等下载
|
Ubuntu 安全 开发工具
如何在 Ubuntu 20.04 上将用户添加到 sudoers?
如何在 Ubuntu 20.04 上将用户添加到 sudoers?
1540 1
如何在 Ubuntu 20.04 上将用户添加到 sudoers?
|
Ubuntu 安全 Unix
使用LPD协议来共享打印机
【10月更文挑战第9天】LPD(Line Printer Daemon)协议用于在网络环境中共享打印机,广泛应用于Unix和类Unix系统。打印服务器监听特定端口(如515),接收并处理客户端的打印请求,维护打印队列。客户端需安装相应软件,通过特定格式请求提交打印任务。设置包括安装驱动、配置服务、启动服务及客户端连接配置。LPD协议跨平台性强、配置简单,但安全性较弱,功能有限。
3898 67
|
存储 资源调度 JavaScript
npm、cnpm 和 pnpm 是三种常用的 Node.js 包管理工具
npm、cnpm 和 pnpm 是三种常用的 Node.js 包管理工具。npm 是官方默认的包管理器,提供依赖管理、安装和更新等功能;cnpm 是由阿里巴巴开发的 npm 镜像,专为中国大陆用户优化,解决下载速度慢的问题;pnpm 通过硬链接技术提高安装速度并节省磁盘空间,特别适合磁盘资源紧张的环境。三者命令类似,但各有特色,开发者可根据需求选择合适的工具。
2586 5

热门文章

最新文章