关于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 Shell
CentOS7下快速升级OpenSSH至8.9p1安全版本
CentOS7下快速升级OpenSSH至8.9p1安全版本
3905 0
CentOS7下快速升级OpenSSH至8.9p1安全版本
|
缓存 Linux 开发工具
CentOS 7- 配置阿里镜像源
阿里镜像官方地址http://mirrors.aliyun.com/ 1、点击官方提供的相应系统的帮助 :2、查看不同版本的系统操作: 下载源1、安装wget yum install -y wget2、下载CentOS 7的repo文件wget -O /etc/yum.
251110 0
|
Linux 虚拟化 数据安全/隐私保护
银河麒麟V10 VMWare安装保姆级教程
银河麒麟V10 VMWare安装保姆级教程
12825 5
银河麒麟V10 VMWare安装保姆级教程
|
11月前
|
前端开发 Unix Linux
揭秘 Electron 的 Linux 打包过程:你知道背后发生了什么吗?
本文详细介绍了 `electron-builder` 在 Linux 平台上如何打包 Electron 应用程序,涵盖了 AppImage、Flatpak、Snap 等多种格式的打包原理和具体实现。文章从初始化 `LinuxPackager` 到创建各种目标格式的包,详细解析了每个步骤的代码逻辑和关键方法,帮助开发者更好地理解和使用 `electron-builder` 进行 Linux 应用的打包。
652 2
揭秘 Electron 的 Linux 打包过程:你知道背后发生了什么吗?
|
Docker 容器
docker设置国内镜像源
docker设置国内镜像源
32525 5
|
缓存 安全 网络协议
|
JavaScript Java API
基于代理和单例模式的 electron 多窗口管理方案
基于代理和单例模式的 electron 多窗口管理方案
905 0
vue2 插槽(默认插槽 slot 、具名插槽 v-slot 、作用域插槽 slot-scope -- 插槽传值 )
vue2 插槽(默认插槽 slot 、具名插槽 v-slot 、作用域插槽 slot-scope -- 插槽传值 )
2398 1
|
Ubuntu Linux Windows
Electron如何在UOS操作系统(统信)下打包成桌面应用?
Electron如何在UOS操作系统(统信)下打包成桌面应用?
Electron如何在UOS操作系统(统信)下打包成桌面应用?