[ 上一页 ] [ 目录 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 下一页 ]


Debian 新维护人员手册
第 1 章 - 从一条正确的路开始


本文档试图为普通 Debian 用户,和希望对 Debian 软件包有所了解的开发人员讲述如何制作 Debian 软件包。它使用了通俗的语言,并辅以大量可用于实践的示例。有一句古罗马谚语说得好:一例胜千言!

本文档已经为 Debian squeeze 进行了更新。 [1]

Debian 能够成为一个顶级的发行版的原因之一就是它的软件包系统。尽管相当数量的软件已经被以 Debian 格式打包,有时还是需要安装一些不是这一格式的软件。可能你会为如何制作自己的软件包而迷惑,并可能认为这是很困难的任务。是的,如果你是一个 Linux 初学者,那么这的确很难;不过如果你真的只是一个新手,现在也不会来读这篇文档了。:-) 你的确需要对 Unix 编程有所了解,但显然不需要是这方面的天才。

有一件事是非常明确的:创建并维护一个 Debian 软件包需要花费很多时间。为了能够不犯错误,维护者需要良好的技术基础并十分勤奋。

本文档会讲述每一个细节(在开始时或许给人感觉毫不相关),并帮助你创建出自己的第一个 Debian 软件包,从而使你学习到如何打包该软件的下一个版本或其他软件的经验。

如果需要帮助,请阅读 到何处寻求帮助, 第 1.4 节

本文档的最新版始终可在 http://www.debian.org/doc/maint-guide/maint-guide 软件包中找到,其简体中文版也可在 maint-guide-zh-cn 软件包中获得。


1.1 开发时需要的软件

在开始之前,你需要确认你是否已经正确安装了开发所需要的附加软件包。注意这些软件包不包含任何已经被标记为 essentialrequired —— 我们假设你已经安装了它们。

以下这些软件包已经随标准的 Debian 安装而在系统中,所以你可能不需要再动手安装它们(以及任何附加的依赖软件包)。然而,你还是应该用 aptitude show package 来检查一下。

在开发系统中要安装的最重要的软件包是 build-essential。当你安装它的时候,将会自动把基本编译环境里所需的其他软件包一并安装。

对于某些类型的软件,以上的就是所需要的全部。然而还有一组软件包虽不是对于所有软件包都必须,却可能对你有用或被你的软件包所需要:

以下是 非常重要 的文档,你应该在读本文档时同时参看它们:

若本文档所叙述的内容与 Debian Policy Manual 或 Debian Developer's Reference 有不符,则按照后两者的要求进行,并向 maint-guide 软件包提交 Bug 报告。

以上给出的简短描述仅仅是为了使你对这些软件包有一个基本的印象。在继续前请详细阅读每个程序的文档,至少了解其一般的用途和用法。现在看来这是一项耗时巨大的任务,但在接下来的工作中你将为你阅读了它们而感觉到 非常 愉快。


1.2 基本术语

一共有两种类型的软件包。

不要混淆程序源代码和程序的源代码包这样相似但有区别的概念!

在 Debian 社区中有几个常见的角色。

Debian 中使用了几种不同的版本号。

如果你需要更详细地了解术语,请阅读其他手册。


1.3 正式的 Debian Developer

你不可能在一夜之间成为 Debian Developer (DD),因为一个 DD 所需要的远不只是技术能力,请不要因此感觉到挫败或沮丧。如果你的软件对其他人有用,你可以作为一个 维护者(maintainer) 通过 一位 保证人(sponsor) 来上传软件,或者申请成为一位 Debian Maintainer。详见 Debian New Maintainers

请注意,要成为一位正式的 Debian Developer 并不一定要创建新软件包。对已有软件做出贡献也是成为正式的 Debian Developer 的路径。眼下正有很多软件包正在等待一个好的维护者对其做出贡献。(参看 选择你的程序, 第 2.1 节)


1.4 到何处寻求帮助

在公共场所提出问题前请先阅读各种文档(RTFM,Read The Fucking Manual)。包括但不限于 /usr/share/doc/dpkg/usr/share/doc/debian/usr/share/doc/autotools-dev/README.Debian.gz/usr/share/doc/package/* 文件和本文档中提及的软件的 man/info 页面。更多内容参看 http://nm.debian.org/

制作小的测试软件包是学习打包的好方法,仔细查看维护较好的软件包则是了解他人如何制作软件包的最佳办法。

如果在所有可用的文档和在线资源中都无法找到答案,你可以在 Debian Mentors 邮件列表询问(debian-mentors@lists.debian.org)。在那里会有经验更加丰富的 Debian 开发人员帮助你,但在发问前请确定要阅读已有的文档!

关于此邮件列表,参看 http://lists.debian.org/debian-mentors/

当你收到一个 Bug 报告后(没错,真正的 Bug 报告!),你需要研究 Debian Bug Tracking System (Debian Bug 跟踪系统,BTS)并阅读相关的文档以便高效处理这些报告。我推荐阅读 Developer's Reference, 5.8. 'Handling bugs'

如果仍然不能解决所有的问题,则到 Debian Developers 邮件列表询问(debian-devel@lists.debian.org)。关于此邮件列表,参看 http://lists.debian.org/debian-devel/

即使以上的问题都解决了,也不能高兴得太早。为什么?因为几个小时或几天内就会有人开始使用你的软件包,如果你犯了某些严重的错误,将被无数生气的 Debian 用户的邮件所轰炸…… 只是开个玩笑。:-)

放松一点并准备好处理 Bug 报告,在你的软件包完全符合 Debian 的各项规范前还需要付出很多努力,处理 Bug 也是对你很好的锻炼(再一次提醒,阅读那些 必须的文档 来了解详情)。祝你好运!


[ 上一页 ] [ 目录 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 下一页 ]


Debian 新维护人员手册

版本 1.2.25, 2010-12-21 14:06:56 UTC

Josip Rodin joy-mg@debian.org

翻译:Aron Xu happyaron.xu@gmail.com
翻译:李凌 lilingv@gmail.com
翻译:郑原真 ycheng@slat.org