obs 小技巧:为不同发行版使用不同的 spec 文件

简单来说,如果我们同时需要为多个发行版打包软件,比如

  1. openSUSE_15.2
  2. openSUSE_Tumbleweed
  3. Fedora_33

那么我可以编写多个 spec 文件:

  1. hello.spec //给 Leap15.2 打包
  2. hello-openSUSE_Tumbleweed.spec //给风滚草打包
  3. hello-Fedora_33.spec //给 Fedora 33 打包

spec 文件中就无需反复地写判断条件,避免成为缝合怪。

更多细节参考 这里

ps: 对于同一发行版的不同版本也可以这样用

2赞

现在的主要矛盾不是小细节,而是

  1. 这里会使用 rpm 打包的人 (10-),并不知道有什么软件可以往 openSUSE 里面添加(因为自身需求已经满足?)
  2. 没有人会去学习 rpm 的打包
  3. rpm 文档缺乏,导致"太难",尤其难以起步/

为解决 1, 我们可以模仿 Archlinux-CN 的做法,弄一个 [打包请求],不过现在 GitHub 访问可能有问题


Issues · archlinuxcn/repo · GitHub

1赞

我并不认为问题 1 真正存在,openSUSE 已有的软件包已经够多了,我们很少会缺某个包。

即使缺少,大多也是一些国内的商业软件问题,这与 RPM 打包关系不大。

archlinux-cn 的打包请求并没有学习的必要,如果有人需要某个包,可以直接在论坛发帖、或者在 telegram 群组求助。

1赞

RPM 的文档问题确实比较大,要解决需要大量的时间精力投入。

Archlinux-CN 在 5 年内接受到了接近 400 条请求,也就是差不多每星期一个的频率


项目数量统计:

@slbtty

其中明确被标记为请求失败的约占比 30%。没有统计重复的请求、被关闭但是没有被打标记的请求。

更简单的问题是,如果有 openSUSE 中文社区用户需要某个软件包,为什么我们没有听到他们的声音?他们缺少发声渠道吗?

Yes!

就像任意平民都可以发出自己的声音,但是没有专门的政府渠道,解决问题依旧会很麻烦。

而且零散的地方没有不能像 issue 一样用来追踪进度。

首先要有需求,才有可能吸引可能存在的 geek 来加入开发的事情。

@slbtty

或许吧。

如果你感兴趣,可以直接做,创建一个 openSUSE-zh 之类的组织,反正论坛和 tg 里差不多就包括大部分中国用户了。

GitHub & obs 已经有了,

Show home:opensuse_zh - openSUSE Build Service