Linux社区面面观:Fedora社区的那些事儿
Fedora与Ubuntu一样,是针对个人桌面用户的Linux发行版,由红帽公司赞助。Fedora的目标是创建一套新颖、多功能并且自由(开放源代码)的操作系统。而不同于Ubuntu致力于尽可能做到用户友好,Fedora以比大多数Linux发行更具实验性著称。
作为Red Hat的社区版,Fedora是它商业大哥的测试床。诸如新文件系统、新虚拟化技术以及其它许多的技术都在被完善与并入Red Hat之前在Fedora上测试过。但是Fedora不仅仅只是Red Hat的一个实验床而已。它也是本身一个独立的操作系统,而且是一个高品质的操作系统。
Fedora 社区和红帽企业Linux间有什么关系?
Fedora和红帽企业Linux都是开源技术。 Fedora社区(fedoraproject.org) 构建、支持Fedora项目,服务于社区的利益。
Fedora社区早期的目标是为Red Hat制作并发布第三方的软件包,然而当Red Hat Linux停止发行后,Fedora社区便集成到Red Hat赞助的Fedora Project,目标变成了开发出由社区支持的操作系统(事实上,Fedora Project除了由志愿者组织外,也有许多Red Hat的员工参与开发)。
红帽企业Linux和Fedora社区具有互惠互利的关系,从而确保快速创新。 Fedora社区获益于红帽的赞助和反馈。 反过来,红帽可以将领先的创新带给更广泛的社区以便协作,使该技术可以迅速成熟。 Fedora社区的规模和专业知识使 Fedora成为理想的孵化器,为红帽企业Linux最终采用的功能奠定基础。 为了满足使红帽企业 Linux 成为关键业务应用程序首选的质量和可靠性要求,红帽会对红帽企业 Linux 进行自己的一套测试和质量保证 (QA) 流程,这些测试和流程与 Fedora 截然不同。
Fedora社区有数千名用户、投稿者和支持者,他们通过各种在线论坛、电子邮件列表和 Wiki 互动,相互支持。 Fedora 通过快速开发和发布周期提供当前硬件平台上的最新技术。开发人员和 Linux爱好者可以从Fedora社区了解最新功能,同时也有机会直接参与红帽工程部的合作。
Fedora社区的测试日
如何成为Fedora社区具有贡献能力的社区成员?
其实Fedora具体有很多不同方向的社区,比如开发,测试,输入法,中文社区等等。对于不同社区会有不同的admin和负责人进行维护。那么我们该如何成为Fedora社区的一员呢?
由于Fedora是基于RPM进行发行的。每一个Fedora的发行版本都是由无数的RPM包组成。这些包里面包含了Linux系统所需的各种软件。因此,所谓参与Fedora社区的实际工作,最实际的一个参与方式就是为Fedora提供最新的软件的RPM包。有关如何生成RPM包,详见: Maximum RPM。
当你已经学会了RPM打包,那么恭喜你!你已经掌握了最重要的一块内容,剩下的只是Fedora社区的一些工具的使用和相关资源的学习。接下来,你需要用一个有效的Email地址申请一个Bugzilla账号。Bugzilla账号是开放注册,从BUG管理到版本发行都离不开它。
有了Bugzilla账号,我们便可以把自己的RPM包交付Review。Bugzilla里面提供了一个 Review模版 ,供我们把自己的RPM包进行审核。
需要注意的是,提交的RPM包是不允许放在Bugzilla的附件里的,如果提交在附件里会被审核人员删除。需要放在网络上,一个可以公开下载的点,并且必须是Direct Link(点Link直接下载,而不是转到下载页面)。
现在我们初步学会了如何在Bugzilla提交RPM Review,但还不可以提交!因为,Fedora社区有个要求,你的RPM包必须在Fedora环境中编译成功,才可以提交Review。并且还不可以在自己的Fedora系统上编译,因为那样没有可审计的数据,编译环境也不够标准化。因此,你必须学会如何在koji环境中进行编译。
什么是Koji?Koji是Fedora的编译系统。在这里,我们可以看到社区成员正在编译以及已经编译成功/失败的包。而我们的包要编译成哪个Fedora特定的版本,都是通过调用koji的命令来完成的。