opensuse leap 15.0 的一些 rpm,以及 OBS 编译服务的 rpm

https://pan.baidu.com/s/1iYp_TTvt9MeqhBM2OEZBgw
 
自备内核!RPM 包的内核不能用!自备内核!RPM 包的内核不能用!自备内核!RPM 包的内核不能用!
/ etc / zypp / zypper.conf 需要手动修改 arch 为 mips64el 。不然 zypper 不能识别 mips64el (这地方忘了修)。
 
不含整个 opensuse,只包含 opensuse 的 leap 15.0 版的 bootstrap 的包。但是可以启动,可以支撑 OBS,可以进图形界面。(就是很卡……)
里面的内核 rpm 是 opensuse 自己用的内核源代码直接改了改 spec 占坑用的。
 
区别于 15.0 的 bootstrap 包内容,有两个包进行了升级。
rustc : 因为有 bug 会导致 librsvg 出错。
MozillaFirefox : 因为无法通过 configure 阶段,似乎是没有正确识别 mips64el 。
 
没出现的包,基本都是不支持(以及偷懒)。
openjdk 没有用龙芯的优化版。
 
哪位如果有空间,欢迎提供一个在线直接用的 repo 目录。这样大家就不用下 7z 的压缩包回去解压缩了。
 
共享中的
leap-15.0-gnome-20190303.tar.xz
是 rootfs ,用 zypper 安装 patterns-gnome-gnome 后的内容。请自备能用的内核。
因为是 tar 包,需要自己设置 fstab 和 root 密码,以及放上能用的内核。
我简单测试是可以用 root 进入 gnome,但是运行很慢。gnome-terminal 启动不起来。
repo-20190301
是 OBS 生成的 repo 目录整个打包,包括源代码、repo 数据和对应的编译后 rpm 包。
7zip 分卷压缩。
0、1、2 开头的东西,对应 opensuse 的 rings 的几个子项目。
OBS2.9 是 OBS ,OBS2.9dep 是在 2-* 之前编译的供 OBS 依赖的东西,有些被 2-* 包含了。
kernel-4.19.26-20190301
是单独编译的内核,供启动使用(反正我的机器可以启动)。

4 个评论

你好,请教下,我搭建了obs用来构建mips软件包,结果出现大量的循环编译,你之前是怎么解决这种问题的?通过项目配置么?
OBS 就是这样。默认他会检测依赖的软件包,如果依赖的软件包被重新编译,那么就会二次重新编译后续的软件包。
所以 OBS 需要一个前端编译环境,足够小让他能自己循环编译完成。之后再用这个小环境逐步扩大。
如果你在 bootstrap 阶段,可以设置项目的 meta 加上 rebuild="local" ,让他不传递编译。整个项目构建完成。再删了,让他自己重新滚动编译一遍。
滚动编译是为了防止接口依赖版本不统一问题的,如果你是发行版的作者,不建议放弃循环编译。
如果你是软件编译者,那就单独开一个项目,软件放到这个项目里面,之后引用完成的发行版数据去编译。这样软件自己的滚动编译就没了。
我是打算用OBS来托管整个发行版(Debian 10的mips64el版本)。因为https://build.opensuse.org/里面的Debian 10看不到软件包组织结构,所以我参考了openSUSE的包组织方式(openSUSE:Factory项目和一堆的devel项目),我看到openSUSE:Factory的meta文件中就是加了rebuild="local"。所以没有看出来openSUSE是怎么循环编译的,您清楚这块儿么?
opensuse 的那个 debian 10 只是一个 DoD 的项目,用来让软件可以调用 Debian 系统软件包来编译的东西。并不是真正编译 Debian 的东西,Debian 有自己的编译农场。
至于如何停止循环的,obs 在编译完成后,会比对新软件包和上次软件包的区别。发现有不同就会引发下游依赖软件包的重编译。
至于 rebuild= 这东西我建议你翻翻 opensuse 的 wiki 和 obs 的文档。文章资料非常散不好找。

要回复文章请先登录注册