[FZH] 致微菜:SPEC 仓库

杜宏羽 dongfengweixiao at gmail.com
Tue Jul 19 15:30:22 UTC 2011


这个列表我必须关注。
顺便说下,似乎有的东西不是很可行。等9月开学具体论证。
我的QQ:275471710
我的推特:dongfengweixiao
我的E_mail:dongfengweixiao at gmail.com



在 2011年7月19日 下午10:59,Liang Suilong <liangsuilong at gmail.com>写道:

> 在 2011-7-19 下午9:11,"microcai" <microcai at fedoraproject.org>写道:
> >
> > 在 2011年7月19日 下午7:58,Liang Suilong <liangsuilong at gmail.com> 写道:
> > > 本来这个帖子我应该昨天就写的,但是找不到电脑,在手机上写太长了不方便,所以黑兄就迫不及待地写了出来。有这个想法的原因是怕微菜同学把
> Fedora
> > > ”和平演变“成 Gentoo,当然以上仅仅是一个玩笑。细想一下真的有这个需求。
> >
> > Genoo 多好啊 ...
> >
> >
>
> 你失准了,打错字。
>
> > >
> > > 第一点,得说一说 Fedora 和 RPM Fusion 的政策,他们都不太允许有争议和分发困难的软件进入源。这会导致 Fedora
> > > 安装闭源软件会有不方便的地方。比如安装 Flash Player 和 Sun JDK 就比较麻烦了。
> > >
> > > 第二点,即使一个新软件符合政策,也需要等待至少两周的时间进行从 Review 到推送到 updates
> > > 的流程,而更新一个已经入源的软件包也需要一周的时间。这种效率在当前我觉得会有点儿慢,再加上 Packager
> 的个人因素,用户等待更新的时间随时会增加。
> >
> > 所以 Fedora 不好。
>
> 新软件入源的流程都是超慢的啦,每个发行版都要走一大段流程确保软件的靠谱度,这没啥好说的。问题就在于 Fedora
> 就只有那么一个靠谱的获取软件的方案。所以我们才需要这么一个 yum-build 的想法。
>
> >
> >
> > >
> > > 第三点,Fedora 没有 Ubuntu 的 PPA 服务,即使有,习惯了 Koji 即时开始编译打包我也没有耐性在 Launchpad
> > > 上排队。Fedora People Repo 只是一个临时措施。况且如果 Fedora 搞 PPA,同样会受制于 Fedora 的政策。
> > >
> > > 所以我跟黑日白月兄萌发出一个在 Fedora 实现类似 apt-build 和 yaourt 的 yum-build 想法,构建一个类似
> AUR
> > > 的东西。详细的内容黑日白月兄已经在邮件中说了,我在补充一些吧。
> > >
> > > 1. 关于 SPEC 仓库,我觉得可以按照 Fedora 官方的 Git 仓库
> > > http://pkgs.fedoraproject.org/gitweb/ 管理 SPEC
> > > 和补丁。把生成元信息的工作放回用户本地。这样子我觉得更加方便开发者,Git 应该很多人都会用吧。而且不用担心 Fedora
> > > 官方不支持不给我们服务器资源。大不了我们就放到 github (假如 Google Code 突然大发慈悲支持 Git
> > > 也可以,最近这个传言很多。)或者自己弄个 VPS 搞个 Git 服务器也行。用 Git 同步仓库的内容也很快。而且用 Git 应该跟
> pkgdb
> > > 结合也很方便。
> > >
> > > 2. 在 rpmbuild 编译打包好一个 rpm 包以后,把 RPM 包和 SRPM 包放到一个指定的目录,借助
> yum-plugin-local
> > > 生成一个本地 RPM 源,为的是比对 Git 仓库的元信息,如果版本号一致就不再重新编译打包,可以直接用回之前的软件包。
> > >
> > > 3. 配合 ccache,为的是节省编译的时间,节能减排的任务还是很繁重滴...
> > >
> > > 先说这么多,细节的东西以后在项目启动的时候慢慢再讨论。如果有兴趣的朋友也可以加入到这个主题中。
> > >
> > > 顺手把这份邮件 cc 给 yum-axelget 的后续改进者 Ray Chen 大哥的邮箱。
> >
> > 倒是可以让 yum 使用  emerge 作为后端。
>
> 你这不是更折腾吗。。
>
> 需要 yum-build 的原因是可以更方便的重复使用编译的软件包,不脱离 rpm 和 yum 的体系。而且在开发的时候可以借用 yum
> 的代码,减少重做轮子的风险。
>
> 要不这个议题留在周五的 IRC 会议上讨论吧,我只能手机上 IRC 了 链接会不靠谱。
>
> >
> > >
> > >
> > > Fedora && Debian User, former Ubuntu User
> > > My Page: http://www.liangsuilong.info
> > > Fedora Project Contributor -- Packager && Ambassador
> > > https://fedoraproject.org/wiki/User:Liangsuilong
> > >
> > >
> > > 2011/7/19 Tommy He <lovenemesis at fedoraproject.org>
> > >
> > >> 致微菜
> > >>
> > >> 看到你在 emerge-rpm 方面的进展值得鼓舞,下面这个 SPEC Repo 的权当另一个挑战。
> > >>
> > >> 一开始,可以尝试下以下命令组合:
> > >>
> > >> yum-builddep a.spec && spectool -g a.spec && rpmbuild -ba a.spec
> > >>
> > >> a.spec 为任意 spec 文件。
> > >>
> > >> 如果 SPEC 文件描述无误,那么以上命令组合将完成从下载源代码包,检查并安装编译依赖条件,最后生成 rpm 和 srpm 的过程。
> > >>
> > >> 经过和 liangsuilong 的讨论,这种方式和 gentoo 基于 portage 的源代码分发方式十分类似,并且:
> > >> 1. 不破坏现有的 RPM 体系结构
> > >> 2. 只要修改 SPEC 文件,可以轻松实现远程或本地定制化补丁的整合。
> > >> 3. 无需走 Fedora 仓库的审核过程,及时响应新软件及鸡血补丁
> > >>
> > >> 那么怎样让它更像 Portage 呢?liangsuilong 和我的想法的是实现一个 SPEC 仓库,该仓库应该具有如下功能:
> > >> 服务器端:
> > >> 1. 存储 SPEC 文件
> > >> 2. 元信息抓取工具,可以从 SPEC 中抓取基本的信息,包括应用了哪些补丁等,放置到单独一文件中以备查询
> > >> 客户端:
> > >> 1. 可以从服务器端获取、缓存并更新 SPEC 文件
> > >> 2. 可以读取服务器端的元数据,可以显示并依据规则查询基本信息
> > >> 3. 将 yum-builddep a.spec && spectool -g a.spec && rpmbuild -ba a.spec
> > >> 封装到一起,可以实现类 apt-build 或 portage 的语法。
> > >>
> > >> 就这些了,不知道微菜承受的起不?
> > >>
> > >> --
> > >> Take a Deep Breath out of Windows
> > >>
> > >> https://fedoraproject.org/wiki/User:Lovenemesis
> > >> _______________________________________________
> > >> Chinese mailing list
> > >> Chinese at lists.fedoraproject.org
> > >> https://admin.fedoraproject.org/mailman/listinfo/chinese
> > >>
> > > _______________________________________________
> > > Chinese mailing list
> > > Chinese at lists.fedoraproject.org
> > > https://admin.fedoraproject.org/mailman/listinfo/chinese
> > >
> > _______________________________________________
> > Chinese mailing list
> > Chinese at lists.fedoraproject.org
> > https://admin.fedoraproject.org/mailman/listinfo/chinese
> _______________________________________________
> Chinese mailing list
> Chinese at lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/chinese
>


More information about the Chinese mailing list