Who maintains RPM? (2011 edition)
By Jonathan Corbet
May 3, 2011
翻译:李凯
早在2006年,LWN 就讲述过关于 RPM 这个软件维护过程的复杂故事。考虑到该软件对于所有基于 RPM 的发行版的重要性,RPM 缺乏一个如何进行维护的清晰描述确实很令人沮丧。当年晚些时候,Fedora工程宣布成立一个新的,社区驱动的 rpm 项目。从那以后,这件事情就悄悄的进行着,但是最近的一些事件表明,rpm的故事还没有走到尽头。
上述提到的rpm工程运转在rpm.org上。4.9版本已经在三月初发布了。该代码也在积极的维护中,同时可以看到新增加的一些小小的特征。但是这个项目对是否有一个大的发展计划并没有发出任何实质的信号。只有少数的几个提交者为代码仓库工作;他们中的绝大多数人是为RedHat工作的。从所有迹象来看,rpm至少一半是维护模式。
但是rpm.org不是唯一的 RPM 站点,还有一个fork项目rpm5.org。这个版本主要由Jeff Johnson来维护,他之前是Red Hat的雇员,在公司之外发起了这个项目,希望创建一个更好的 RPM。这个版本增加了更广泛的可移植性,还有一些特性比如新的压缩格式和许多其他的一些东西(rpm5 并没有一个完整的特性列表,俺也懒得在ChangeLog上搜寻显要的变化)。一个重要的特征是包的事务管理(也叫做“RPM ACID”),其思想是确保任何rpm操作,要么成功要么完全失败,无论中间过程发生了什么。依照Jeff所说,rpm4操作中如果被杀掉,可使整个系统被损坏;但rpm5消除了这种可能性。
RPM5 fork可以说已经有了更多的发展以及增加了一些有趣的新功能。尽管如此,它仍然是一个相对模糊地项目;它已经被诸如 Alt Linux,ArkLinux 和 Unity Linux 所选择,但还没有得到较大的 distributor 的重点考虑。然而最近几个月这些情况已经有了变化:在 Mandriva 2011 plans中就包括了切换至rpm5。这已经为这个fork带来了更多的关注并产生了一些有趣的结果。
并不是在Mandriva阵营里的每个人都认为这个切换是一个好主意。早在去年11月份,Evgeni Dadonov就开始对这种变化背后的原因展开讨论:
(据我所知,Fedora/RedHat/CentOS and SUSE/OpenSUSE 等主要的供应商都支持RPM4,Alt Linux and Unity Linux使用RPM5. RPM4主要的特征是稳定,以及众所周知的那些长期悬而未解决的问题以及它的行为表现。RPM5正在不断的发展中,它有很多特点,但没有太多的安装的基础。)
不论是拥护还是反对,许多人就这个问题进行相当激烈的讨论,有时还会产生一些不愉快。转向 RPM5 的决定似乎是基于若干考虑的。某些新的功能对Mandriva很有吸引力。开发RPM5的团体看起来似乎比RPM4的团体更加的活跃、开放;rpm4主要由RedHat主导,相对比较封闭。Mandriva 有一堆没有被 RPM4 接受的补丁,现在可以 upstream 到 RPM5。与其他大型基于RPM的发行版保持 RPM 包的兼容性只是一个虚幻的概念,每个发行版都根据自己的需求对rpm4进行大量的修补,所有发行版几乎都无法安装非本发行版的其它 RPM 包装(译者:所以 RPM5 不兼容也不是大不了的事情)。重要的是Mandriva的包维护者Per Øyvind Karlsen希望采用其它的模式:
(我已经说的很清楚了,我已经计划去维护rpm5,我是一个维护者,有最好的知识。如果你更新到我的测试版本里的话,会体会这种改变不会对你产生消极影响。我是包的维护者,它不应该对别人造成不便。我觉得我应该做出个关于是否应该继续维护已经被彻底打乱了的rpm.org版本的决定,它陷入补丁中,并痛苦的重新生成每一个版本。)
Per Øyvind断言,“这种改变不会对你产生消极影响”。这个断言没有变成现实,从此以后,Mandriva的 cooker 邮件列表就一直被关于rpm5相关问题的讨论占据。其他小的系统变化,例如 systemd 的改变,被湮灭在滔滔的 RPM5 讨论中。这种类型的切换一直都不容易,与Mandriva的更高级别的包管理工具的整合使得整个大工程愈发的复杂化。去适应 Mandriva 这样一个巨大复杂的发行版是 RPM5 不可避免的成长之痛。
必须指出的是,很明显 Jeff 花了大量时间支持 Mandriva 的这个计划。人们很容易得到这么个印象,他被公司聘用作为这个项目的一部分。问题一个个被提出,Jeff 一个个努力解决。很少有开发项目拥有这样努力去支持它的用户,即使是高知名度的牛人也难以如此投入;Jeff已经真正的为Mandriva服务。
这种支持在四月底的时候有些动摇,Jeff突然宣布,rpm5的邮件列表(以及许多其他的网站内容)归档已经被撤下。在被质疑为什么会发生这样的情况时,他的反应非常过火。事后他自己承认,他想尽快停止这种讨论。这个网站已经重新上线,包括一个重定向到rpm5.org的rpm6.org。
这是怎么回事远没有明朗,但从Jeff指责一名Mandriva的前开发者“应该对破坏rpm5品牌负责”的邮件里可得到一些暗示。他真的对于处理报道的问题以及抱怨有关rpm5的事情感到疲惫,而其中许多确实与rpm5的问题无关。大部分问题貌似是由于 Mageia(a fork of Mandriva)没有随着Mandriva迁移RPM5所至。Mageia的立场,正如AnneNicola描述的那样,似乎是合理的:Mageia的开发者为了保证紧跟 Mandriva 发行节奏就已经忙不过来了。鉴于所有需要所做的事,把精力投入到一个低级别的包管理器系统的变化看起来似乎不是最好的主意。
这样看来,依然有些坏的血液在Mandriva和Mageia阵营中。有些迹象表明,相比较公共的列表而言,私下的讨论不那么友好,Jeff和rpm5很可能在那里被议论。至少,可以从类似的评论中可能得的一条结论:
(你已经花了数月时间推销rpm5但并不成功。RPM5被评为惨败...被很多你绝不喜欢的词语诅咒。What you don't like has nothing whatsoever to do with this "tourist with camera" wandering the dungeons hacking on RPM. 我可以告诉你,从我的第一手经验而言,fork 是对时间和精力的巨大浪费。我还可以说,Mandriva 和 Mageia 的相似之处比相异处更多。我强烈建议你该干嘛干嘛去)
自从那以后,最糟糕的事情已经过去了,Jeff已经回来讨论有关使rpm5工作的更好的话题了。这个事件已经让某些在Mandriva社区中的同志警醒,开始担忧2011版本建设基础。
观看这里讲发生什么是一件有趣的事情。现在Mandriva看起来似乎很好的承受了rpm5的过渡,一切貌似已经稳定下来了。如果RPM5在2011版中表现的比较好,其它发行版的用户将会问,为什么会我们还坚持用"旧的版本";反之,其它发行版也可能看到Mandriva经历的痛苦,以及一个不那么如意的结果,他们就继续快乐的使用相对无聊的RPM4好了。
无论哪种方式,好戏还没有完全结束呢。
最新评论