前言
最近有使用UOS桌面办公环境的客户在问,目前MogDB提供的开发工具Mogeaver只有tar包,而UOS使用软件比较严格,未签名的软件无法直接使用,所以希望能有一个能在UOS上使用的deb包。
我和同事在网上搜了一下如何编写deb包,然后根据步骤在ubuntu下生成了一个deb包,但实测无法在UOS上使用,不过好在最后找到了办法,因为过程略微曲折,于是写下本文记录操作过程。
注册UOS账号
注册地址 https://account.uniontech.com/register
下载安装UOS
系统镜像下载 https://www.chinauos.com/resource/download-professional
安装略(我用的虚拟机,硬盘强制要求至少64GB,否则不给装)
进入开发者模式
进入操作系统后,打开控制中心-通用-进入开发者模式(需要登录UOS账号)
打开会要求重启系统,启动后再进来控制中心,可看到已进入开发者模式,且不可退出开发者模式(所以需要有一台开发机来做这件事,不能用生产环境)
制作deb包
这里是坑最大的地方了,UOS的deb包和Ubuntu的deb包,内部结构不一样。
最开始我们参考了这篇文章写了个打包脚本
https://juejin.cn/post/7029284097939734535
打出来的deb包在Ubuntu上可以正常安装,但在UOS上安装报错。
-
方法一:
我搜到这篇文章
https://blog.csdn.net/qq_43657810/article/details/115027883
这篇文章的作者根据这个打包流程写了个开源的图形化打包工具,只需要填写一些信息即可
https://gitee.com/uos-package/upTool -
方法二:
另外,还可以使用这个工具,只是需要填写的信息更多
https://bbs.chinauos.com/en/post/10049
而且这个工具已经上架UOS商店
-
方法三:
当然,如果需要经常打包,这些工具肯定就不适用了,可以参考工具打出来的包的目录(deb文件可以直接解压),手动写个sh脚本,这样之后每次软件有更新,就能一键出包了。以下目录结构可供参考(本文暂不提供脚本)
mogeaver_22.2.1_amd64_x86_64/
├── DEBIAN
│ ├── control
│ ├── postinst
│ ├── preinst
│ └── prerm
├── opt
│ └── apps
│ └── mogeaver
│ ├── entries
│ │ ├── applications
│ │ │ └── mogeaver.desktop
│ │ └── icons
│ │ └── dbeaver.png
│ ├── files
│ │ └── ...(tar包解压后的文件都在这里面)
│ └── info
└── usr
└── share
└── applications
└── mogeaver.desktop
签名
签名参考UOS官方文档
https://doc.chinauos.com/content/LrnDinQB_uwzIp6HxF7k
-
打开统信应用商店,搜索“证书工具”,单击安装证书工具
-
生成证书文件
cert-tool -username="UOS帐号" -password="UOS密码"
- 签名
deepin-elf-sign-deb mogeaver-ce-22.2.1-linux.gtk.x86_64.deb
最后输出Signed successfully为成功
- 找到生成签名后的文件
在当前目录的signed_deb下
安装
将签名后的deb包复制到需要使用的UOS操作系统上,在文件管理里双击deb包即可安装
然后开始菜单里就有mogeaver的图标了,
不过此时打开可能会有下面两个报错之一
因为这个环境的mogeaver依赖jdk11的运行环境,因此需要再安装一下
sudo apt-get install openjdk-11-jdk
但是,你会发现,没进入开发者模式就不能用sudo。。。但我在网上搜的,UOS里默认的jdk版本就是11,估计是我本地环境有问题,暂时不管这个问题了。
最后附上在UOS里成功使用Mogeaver连接MogDB的图
一点感想
目前国产操作系统发展迅速,但软件生态依旧是个大问题。当时安卓的app数量能迅速超越苹果,我估计其中一个原因就是它不限制在商店外安装app,而且早期并不需要签名,所以有大量开发者涌入,开发了无数经典的app。
我很理解UOS现在基于安全需要,所有软件必须要签名,但是目前这种签名方式,只要注册个账号就能签,签完就能装,软件的安全性完全没有保障。而且根据签名也不一定能找到开发者,何必多此一举?
- 本文作者: DarkAthena
- 本文链接: https://www.darkathena.top/archives/uos-mogeaver-signed-deb
- 版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 3.0 许可协议。转载请注明出处!