Lovenemesis (talk | contribs) |
Lovenemesis (talk | contribs) |
||
Line 141: | Line 141: | ||
在成功编译 RPM 之后,使用 Eclipse Fedora Packager 来推送该软件包的更新。要实现此目的,右键点击 spec => "Fedora Packager" => "Bodhi Update"。使用 Eclipse Fedora Packager 创建一个 Bodhi 更新的需要的信息和使用 Bodhi 网页界面的一致。一旦正确的建立的更新,将可以在 Bodhi 更新页面上察看到更新记录。同时也可以追踪更新状态。 | 在成功编译 RPM 之后,使用 Eclipse Fedora Packager 来推送该软件包的更新。要实现此目的,右键点击 spec => "Fedora Packager" => "Bodhi Update"。使用 Eclipse Fedora Packager 创建一个 Bodhi 更新的需要的信息和使用 Bodhi 网页界面的一致。一旦正确的建立的更新,将可以在 Bodhi 更新页面上察看到更新记录。同时也可以追踪更新状态。 | ||
= | = 反馈/错误汇报 = | ||
如果发现了一个 Eclipse Fedora Packager 的 Bug, 请汇报至 https://fedorahosted.org/eclipse-fedorapackager/report/1 (需要 FAS 用户名)。或者,尝试在 RedHat Bugzilla 上的[https://bugzilla.redhat.com/buglist.cgi?query_format=advanced&bug_status=NEW&bug_status=ASSIGNED&bug_status=MODIFIED&component=eclipse-fedorapackager&product=Fedora&classification=Fedora 这个搜索]来获得所有已知 Bug 的信息。谢谢! | |||
翻译:--[[User:Lovenemesis|Lovenemesis]] 16:16, 27 October 2010 (UTC) | |||
[[Category:zh]] | [[Category:zh]] | ||
[[Category:翻译]] | [[Category:翻译]] |
Revision as of 16:16, 27 October 2010
什么是 Eclipse Fedora Packager?
Eclipse Fedora Packager 是一个 Eclipse 插件。它帮助习惯于使用 IDE (比如 Eclipse IDE)的 Fedora 打包者们在 Eclipse 中完成 Fedora 打包 RPM 的工作,而无须纠结于命令行中(大多数情况 :-))。
Eclipse Fedora Packager 包含的部分功能为:
- 方便的 Git 克隆和分支切换
- 包含语法高亮、自动补全、更新日志完善的 RPM Spec 文件编辑器(快捷键 <Ctrl>+<Alt>+C)
- 下载代码包以及上传新代码包
- 准备本地编译(仅执行 spec 文件中的 %prep 部分)
- 按照当前 Spec 文件生成 SRPM 包
- 执行本地编译
- 推送至 Koji(Fedora 编译系统)
- Mock 编译
- 推送 Bodhi 更新
- Eclipse Git 支持(通过 EGit, 请参考 EGit 文档)
Eclipse Fedora Packager 自 F14 对于所有 Fedora 用户可用。想要尝试?使用如下命令来安装:
$ pkcon install eclipse-fedorapackager
使用 Eclipse Fedorapackager
从 Fedora 14 开始, Fedora 使用 Git 版本控制系统来跟踪需要打包的文件。参阅 dist-git 文档 来深入了解 dist-git 的信息。幸运的是,dist-git 如何工作对于使用 Eclipse Fedora Packager plug-in 并不重要。和以往的 CVS 相比,Git 只是采取了略有不同的途径去完成打包工作。
初始设定
这一步对于使用未设定 FAS 证书的新打包者只需要完成一次。如果确认已经完成过此设置并且正常的话,可以跳过此步骤。下面的步骤解释如何为FAS account 设定这些证书。
首先,安装 fedora-packager
RPM 包:
$ pkcon install fedora-packager
然后运行以下命令,然胡根据提示操作:
$ fedora-packager-setup
这些完成后就可以使用 Eclipse Fedorapackager 了。启动 Eclipse,赶紧开始吧~
导入一个 Fedora Git 项目
开始很简单的,使用 "File" => "Import" => "Git" => "Projects from Fedora Git"。这将克隆所指定的 Git 仓库并且创建需要的本地分支。方便期间,"Git Repositories" 视图将会在克隆进程结束后开启。
该图显示 Fedora Git 导入对话框的样子。下一步,指定准备打包的包名称。
下图显示的是新项目创建完成的样子。注意在 Git 仓库视图中的分支和项目右侧的 "[eclipse-fedorapackager master]" 标示。在这里,eclipse-fedorapackager 代表 Git 仓库名,master 代表当前导出的分支。
Fedora 打包工作
在 Fedora Git 项目创建完成后,为目标发行版打包所需的所有文件都可以直接在刚刚创建的 Eclipse 项目中找到。例如,为 Fedora 13 打包所需的文件都放置在分支 f13/master 中。分支 master 对应当前的 Fedora 开发版本 Fedora rawhide。下面将简要描述下打包软件所需要注意的一系列事宜。如果不按照这个顺序去做也是可以的,但是记住一定要在尝试 Koji 编译前推送本地修改到公共仓库。
上传需要打包的的源代码文件
要在 Eclipse Fedora Packager 中上传新的源代码,首先下载上有的源代码并将下载好的的源代码和 Eclipse 项目放在同一个文件夹下。 如果这个步骤是在 Eclipse 之外完成的,别忘记刷新项目(F5)让文件被识别出来。另一个下载源代码的方式是直接使用 RPM 编辑器。查阅他的文档获取更这方面的多信息。 一旦新的源代码文件在项目中就绪,就可以上传到临时缓冲区中:右键点击文件 => "Fedora Packager" => Upload This File => Replace/Add File。这样既可以添加新文件到编译软件包,亦可以替换 sources
中的当前内容,并包含一个当前选中文件的 MD5 校验和。
上传到临时缓冲区需要一个有效的证书。若是过期了,可以通过在终端执行以下命令生成一个新的:
$ fedora-cert -n
下载打包所需的源代码文件
要为已有的软件包下载编译所需要的源代码,右键点击 spec 文件 => "Fedora Packager" => Download Sources。这将下载所有列举在 sources
部分的源代码。
使用 Spec 文件编辑器
Eclipse Fedora Packager 使用来自 Eclipse Linux Tools 项目 的 RPM Editor 和 ChangeLog 插件。举例来说,一条新的更新日志可以通过快捷键 <CTRL>+<ALT>+C 轻松的插入到 spec 文件中(当然首先应该定下合理的“更新日志”要求)。使用 <CTRL>+<SPACE> 自动补全本地安装的软件包。同时,可以使用右键点击 spec文件 => “Run Rpmlint”的方式运行 rpmline。更多的内容请察看 spec 文件编辑器视频录像:http://www.eclipse.org/downloads/download.php?file=/technology/linuxtools/videos/specfile-demo.ogg 或者 "Specfile Editor User Guide": Help => Help Contents => Specfile Editor User Guide.
提交更改到本地 Git 仓库
在添加/更改 spec 文件、补丁之后,需要将这些变化提交到仓库去。这样操作:
- 选择需要提交的文件(或者选择 Fedora Git Project 然后在提交对话框出现时选择需要提交的 unstaged 文件)。
- 右键,选择 "Team" => "Commit..."
切换分支(Git 导出)
双击需要的本地分支就可以切换分支。当前导出的分支在右侧项目名称上有标示。在切换分支前确定已经提交、还原或者隐藏了更改。参考 Git 和 EGit 文档来了解更多这方面内容。
为本地编译准备源代码
通过右键点击 spec 文件 => “Fedora Packager” => “Prepare Sources for Build”,Eclipse Fedora Packager 将会为本地编译下载并准备源代码。
为本地架构编译 RPM
这是测试 spec 文件是否能成功编译的好方法。一旦本地编译成功 RPM,推荐使用 {{{mock}}} 在 chroot 环境中测试编译。这两种方式 Eclipse Fedora Packager 都支持。
要进行本地编译 RPM 操作,右键点击 spec 文件 => “Fedora Packager” => “Build for Local Architecture”。RPM 编译的结果将在 Eclipse 控制台显示。
使用 mock-builds 是一个测试 spec 文件 “Requires/BuildRequires” 部分的好方法。右键点击 spec 文件 => “Fedora Packager” => “Local Build Using Mock”. 注意这将需要更长的时间(一般超过20分钟)并且需要安装 mock 软件包。方便期间,可以使用 Eclipse 的 “Run in Background” 功能。
公开本地提交的更改(Git 推送)
如果对于本地提交的变化满意的话,就可以准备将这些变化公开(发布)。 Remember, Git allows history to be rewritten before changes are made public. 参考 Git 和 EGit 文档获得更多信息。要让本地仓库和 origin 同步:
- 选择 Fedora Git project
- 右击, "Team" => "Push..."
- 选择要推送的 Git 仓库(通常这将保持不变)
- 选择要推送的 Git 引用
- 执行推送操作
Git 推送对话框。
选择要推送的 Git 引用。在本例中,将推送分支 master 和 f14/master。 记住对于 Eclipse Fedora Packager 来说来源地和目的地的 Git 引用是一样的。点击“Add all branches spec” 按钮将会把所有本地分支的修改全部推送。
推送编译到 Koji
如果对于 spec 文件感到满意,那么可以上传打包所需软代码、提交更改到本地仓库、推送本地更改到远程仓库。当这些都完成了之后,可以将其推送到 Koji 编译系统进行编译:右键点击 spec 文件 => “Fedora Packager” => “Push to Koji”.
Eclipse 将弹出一个包含 Koji URL 窗口以便跟踪编译状态。这是一个该消息外观的例子:
这里面应该已经包含了足够跟踪编译状态的信息。
推送 Bohi 更新
在成功编译 RPM 之后,使用 Eclipse Fedora Packager 来推送该软件包的更新。要实现此目的,右键点击 spec => "Fedora Packager" => "Bodhi Update"。使用 Eclipse Fedora Packager 创建一个 Bodhi 更新的需要的信息和使用 Bodhi 网页界面的一致。一旦正确的建立的更新,将可以在 Bodhi 更新页面上察看到更新记录。同时也可以追踪更新状态。
反馈/错误汇报
如果发现了一个 Eclipse Fedora Packager 的 Bug, 请汇报至 https://fedorahosted.org/eclipse-fedorapackager/report/1 (需要 FAS 用户名)。或者,尝试在 RedHat Bugzilla 上的这个搜索来获得所有已知 Bug 的信息。谢谢!
翻译:--Lovenemesis 16:16, 27 October 2010 (UTC)