请教如何把其它系统的 deb 包软件转为能在 openSUSE 系统安装的 rpm 软件包?

请教大家 :memo:如何把其它 Deepin、UOS 等系统的 deb 包转为能在 openSUSE 系统安装使用的 rpm 软件包? :heart_eyes:我试用过 alien,但风滚版除了很难安装 alien 之外,从官网下载的 qqmusic 1.5 最新版 deb 包转化为 rpm 后,安装提示缺少 N 多依赖,也是无法安装。还有其它可靠的方法吗?? :beers:

flatpak install flathub com.qq.QQmusic
flatpak run com.qq.QQmusic

要获取软件,建议优先考虑官方仓库,然后是通用仓库,最后再去找野包,具体如下:

flatpak install flathub com.qq.QQmusic

官方仓库安装的是旧版本 1.4 的,QQmusic 官方已经发布了新 1.5 版本。所以想用新版本。
另外,有时候难免要找一些野包呀,因为官方和通用仓库都没有这些特别软件嘛。 :yum:

不打包,解压出来直接用,也是可以的。

deb 包直接解压出来就可以在 openSUSE 风滚版里运行使用?? :thinking:不行吧,请赐教,愿闻其详。

我是 Leap 15.4
解出来,放在你自己的目录下,比如 qqmusic
放在~/bin/QQmusic/下边
目录 是这样的。
├── opt
├── qqmusic.sh
└── usr
就可以直接运行了啊,不过我知道的 baidunetdisk 是不能直接运行的。

qqmusic.sh 是从 arch 的 deb 包里边拿来的

#!/bin/sh

exec /home/pluto_odin/bin/QQmusic/opt/qqmusic/qqmusic --disable-gpu-sandbox “$@”

像什么 alien 把 deb 转 rpm 的,我一直都觉得不靠谱。
就算能处理好转换后的 rpm 依赖 “关系”,也无法改变 ELF 文件的 “实际” 依赖(即,依赖的是某个特定发行版的特定版本的库)。
尝试一下 deb 解压、LD_LIBRARY_PATH运行,若不行,alien 也不会行;若行,也不需要 alien 了

要跨发行版打包,除了上面的回复说到的 flatpak,我觉得 AppImage 不错,
先到对应的 deb 系统上,把软件打包成 AppImage,再拿 appimage 到 SUSE 上用。
刚好我最近也在学打包 appimage,写了一个笔记

1赞

打包 appimage 教程看了,但还是不太懂。有没有直接一键打包的 GUI 工具??? :innocent:

呃。。。如果你想要「一键」的东西,那么打包这种工作肯定不属于。你就只有用别人打包好的

你可以上 appimage hub、flathub、snapcraft 等地方找,这些是跨发行版的打包发布平台(基于不同打包技术)。
那让我顺便对你打个广告吧,我有一个搜索工具,方便你找这些: 搜索引擎大一统项目——欢迎 SUSE 的朋友们发表意见吐槽及讨论,也欢迎浏览器 (扩展) 开发者发烧友切磋 在「电脑程序 → Linux」分类下有

不过,QQ 音乐的话,6 楼好像已经有解决方案了,简单地解压加一条命令就行

为什么要转换呢?用 dpkg 直接安装 deb

不太可能,因为其他系统的 deb 包里面的二进制文件不一定能直接用于 openSUSE,详细见:百度网盘 Linux 版 AppImage 更新 - #9 by fusionfuture

重新用源码编译可以解决这个问题,但是 qqmusic 一类的软件是没有源码的。