关于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系统如何给软件签名
|
Linux 虚拟化 数据安全/隐私保护
银河麒麟V10 VMWare安装保姆级教程
银河麒麟V10 VMWare安装保姆级教程
15701 5
银河麒麟V10 VMWare安装保姆级教程
|
前端开发 Unix Linux
揭秘 Electron 的 Linux 打包过程:你知道背后发生了什么吗?
本文详细介绍了 `electron-builder` 在 Linux 平台上如何打包 Electron 应用程序,涵盖了 AppImage、Flatpak、Snap 等多种格式的打包原理和具体实现。文章从初始化 `LinuxPackager` 到创建各种目标格式的包,详细解析了每个步骤的代码逻辑和关键方法,帮助开发者更好地理解和使用 `electron-builder` 进行 Linux 应用的打包。
764 2
揭秘 Electron 的 Linux 打包过程:你知道背后发生了什么吗?
|
Java 程序员
Java 面试高频考点:static 和 final 深度剖析
本文介绍了 Java 中的 `static` 和 `final` 关键字。`static` 修饰的属性和方法属于类而非对象,所有实例共享;`final` 用于变量、方法和类,确保其不可修改或继承。两者结合可用于定义常量。文章通过具体示例详细解析了它们的用法和应用场景。
257 3
|
前端开发 JavaScript Serverless
Python+Dash快速web应用开发:回调交互篇(上)
Python+Dash快速web应用开发:回调交互篇(上)
328 3
|
Ubuntu Linux Windows
Electron如何在UOS操作系统(统信)下打包成桌面应用?
Electron如何在UOS操作系统(统信)下打包成桌面应用?
Electron如何在UOS操作系统(统信)下打包成桌面应用?
|
存储 传感器 编解码
【Camera基础(二)】摄像头驱动原理和开发&&V4L2子系统驱动架构
【Camera基础(二)】摄像头驱动原理和开发&&V4L2子系统驱动架构
|
JavaScript Shell
electron使用child_process打开外部应用
electron使用child_process打开外部应用
|
网络安全 Nacos 数据安全/隐私保护
nacos常见问题之配置内容不显示也修改不了如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
2879 0
|
Windows
(成功踩坑)electron-builder打包过程中报错
(成功踩坑)electron-builder打包过程中报错
3608 0