/[ddp]/manuals/trunk/maint-guide/po4a/maint-guide.zh-tw.po
ViewVC logotype

Contents of /manuals/trunk/maint-guide/po4a/maint-guide.zh-tw.po

Parent Directory Parent Directory | Revision Log Revision Log


Revision 8681 - (show annotations) (download)
Sat Apr 16 07:31:48 2011 UTC (2 years, 1 month ago) by osamu
File size: 458386 byte(s)
Touch up 17 years of ...
1 # Chinese translations for maint-guide package
2 # maint-guide 套件的繁體中文翻譯
3 # Copyright (C) 2010 Free Software Foundation, Inc.
4 # This file is distributed under the same license as the maint-guide package.
5 # Aron <happyaron.xu@gmail.com>, 2010.
6 # zh-tw by Osamu Aoki <osamu@debian.org with help by 陳侃如 <koster@debian.org>
7 #
8 msgid ""
9 msgstr ""
10 "Project-Id-Version: maint-guide HEAD\n"
11 "POT-Creation-Date: 2011-04-16 16:11+0900\n"
12 "PO-Revision-Date: 2010-12-19 20:51+0900\n"
13 "Last-Translator: Aron Xu <happyaron.xu@gmail.com>\n"
14 "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
15 "Language: zh_CN\n"
16 "MIME-Version: 1.0\n"
17 "Content-Type: text/plain; charset=UTF-8\n"
18 "Content-Transfer-Encoding: 8bit\n"
19
20 #. type: Attribute 'lang' of: <book>
21 msgid "en"
22 msgstr "zh-tw"
23
24 #. type: Content of: <book><title>
25 msgid "Debian New Maintainers' Guide"
26 msgstr "Debian 新維護人員手冊"
27
28 #. type: Content of: <book><bookinfo><authorgroup><author><personname>
29 msgid "Josip Rodin"
30 msgstr ""
31
32 #. type: Content of: <book><bookinfo><authorgroup><author><email>
33 msgid "joy-mg@debian.org"
34 msgstr "joy-mg@debian.org"
35
36 #. type: Content of: <book><bookinfo><authorgroup><author><contrib>
37 msgid "original contents"
38 msgstr ""
39
40 #. type: Content of: <book><bookinfo><authorgroup><author><personname>
41 msgid "Osamu Aoki"
42 msgstr ""
43
44 #. type: Content of: <book><bookinfo><authorgroup><author><email>
45 msgid "osamu@debian.org"
46 msgstr "osamu@debian.org"
47
48 #. type: Content of: <book><bookinfo><authorgroup><author><contrib>
49 msgid "updated contents"
50 msgstr ""
51
52 #. type: Content of: <book><bookinfo><releaseinfo>
53 msgid "version &docversion;"
54 msgstr "版本 &docversion;"
55
56 #. type: Content of: <book><bookinfo>
57 msgid ""
58 "<pubdate>&docisodate;</pubdate> <copyright><year>1998-2002</year> "
59 "<holder>Josip Rodin</holder></copyright> <copyright><year>2005-2011</year> "
60 "<holder>Osamu Aoki</holder></copyright> <copyright><year>2010</year> "
61 "<holder>Craig Small</holder></copyright> <copyright><year>2010</year> "
62 "<holder>Raphaël Hertzog</holder></copyright>"
63 msgstr ""
64 "<pubdate>&docisodate;</pubdate> <copyright><year>1998-2002</year> "
65 "<holder>Josip Rodin</holder></copyright> <copyright><year>2005-2011</year> "
66 "<holder>Osamu Aoki</holder></copyright> <copyright><year>2010</year> "
67 "<holder>Craig Small</holder></copyright> <copyright><year>2010</year> "
68 "<holder>Raphaël Hertzog</holder></copyright>"
69
70 #. type: Content of: <book><bookinfo><legalnotice><para>
71 msgid ""
72 "This document may be used under the terms the GNU General Public License "
73 "version 2 or higher."
74 msgstr "本文件可在 GNU 通用公共許可證第二版或更高版本的條款規定下使用。"
75
76 #. type: Content of: <book><bookinfo><legalnotice><para>
77 msgid "This document was made using with these two documents as examples:"
78 msgstr "本文件在撰寫過程中參考了以下兩篇文件:"
79
80 #. type: Content of: <book><bookinfo><legalnotice><itemizedlist><listitem><para>
81 msgid ""
82 "Making a Debian Package (AKA the Debmake Manual), copyright © 1997 Jaldhar "
83 "Vyas."
84 msgstr ""
85
86 #. type: Content of: <book><bookinfo><legalnotice><itemizedlist><listitem><para>
87 msgid ""
88 "The New-Maintainer's Debian Packaging Howto, copyright © 1997 Will Lowe."
89 msgstr ""
90
91 #. type: Content of: <book><chapter><title>
92 msgid "Getting started The Right Way"
93 msgstr "從一條正確的路開始"
94
95 #. type: Content of: <book><chapter><para>
96 msgid ""
97 "This document tries to describe building of a Debian package to the common "
98 "Debian user, and the prospectus developer. It uses pretty common language, "
99 "and it's well covered with working examples. There is an old Roman saying, "
100 "<emphasis>Longum iter est per preaecepta, breve et efficax per exempla!</"
101 "emphasis> (It's a long way by the rules, but short and efficient with "
102 "examples!)."
103 msgstr ""
104 "本文件試圖爲普通 Debian 用戶,和希望對 Debian 套件有所瞭解的開發人員講述如何"
105 "製作 Debian 套件。它使用了通俗的語言,並輔以大量可用於實踐的範例。有一句古羅"
106 "馬諺語說得好:<emphasis>一例勝千言!</emphasis>"
107
108 #. type: Content of: <book><chapter><para><footnote><para>
109 #, fuzzy
110 #| msgid ""
111 #| "The document assumes you are using the <literal>squeeze</literal> "
112 #| "system. If you need to follow this text in the <literal>lenny</literal> "
113 #| "system, you must install backported <systemitem role=\"package\">dpkg</"
114 #| "systemitem> and <systemitem role=\"package\">debhelper</systemitem> "
115 #| "packages, at least."
116 msgid ""
117 "The document assumes you are using the <literal>&base-release;</literal> "
118 "system or newer. If you need to follow this text in an older system "
119 "(including an older Ubuntu system etc.), you must install backported "
120 "<systemitem role=\"package\">dpkg</systemitem> and <systemitem role=\"package"
121 "\">debhelper</systemitem> packages, at least."
122 msgstr ""
123 "本文件默認您使用 <literal>squeeze</literal> 爲作業系統。如果你需要在 "
124 "<literal>lenny</literal> 系統上使用本文件記述的方法,則至少必須安裝 "
125 "backports 的 <systemitem role=\"package\">dpkg</systemitem> 和 <systemitem "
126 "role=\"package\">debhelper</systemitem> 套件。"
127
128 #. type: Content of: <book><chapter><para>
129 #, fuzzy
130 #| msgid ""
131 #| "This document has been updated for the Debian <literal>squeeze</literal> "
132 #| "release. <placeholder type=\"footnote\" id=\"0\"/>"
133 msgid ""
134 "This document has been updated for the Debian <literal>&base-release;</"
135 "literal> release. <placeholder type=\"footnote\" id=\"0\"/>"
136 msgstr ""
137 "本文件已經爲 Debian <literal>squeeze</literal> 進行了更新。 <placeholder "
138 "type=\"footnote\" id=\"0\"/>"
139
140 #. type: Content of: <book><chapter><para><footnote><para>
141 msgid ""
142 "You can learn basic operations of the Debian system from <ulink url="
143 "\"&debref;\">Debian Reference</ulink>. It contains some pointers to learn "
144 "about Unix programming, too."
145 msgstr ""
146
147 #. type: Content of: <book><chapter><para>
148 #, fuzzy
149 #| msgid ""
150 #| "One of the things that makes Debian such a top-notch distribution is its "
151 #| "package system. While there is a vast quantity of software already in "
152 #| "the Debian format, sometimes you need to install software that isn't. "
153 #| "You may be wondering how you can make your own packages and perhaps you "
154 #| "think it is a very difficult task. Well, if you are a real novice on "
155 #| "Linux, it is hard, but if you were rookie, you wouldn't be reading this "
156 #| "doc now. :-) You do need to know a little about Unix programming but you "
157 #| "certainly don't need to be a wizard."
158 msgid ""
159 "One of the things that makes Debian such a top-notch distribution is its "
160 "package system. While there is a vast quantity of software already in the "
161 "Debian format, sometimes you need to install software that isn't. You may "
162 "be wondering how you can make your own packages and perhaps you think it is "
163 "a very difficult task. Well, if you are a real novice on Linux, it is hard, "
164 "but if you were rookie, you wouldn't be reading this doc now. :-) You do "
165 "need to know a little about Unix programming but you certainly don't need to "
166 "be a wizard. <placeholder type=\"footnote\" id=\"0\"/>"
167 msgstr ""
168 "Debian 能夠成爲一個頂級的發行版的原因之一就是它的套件系統。儘管相當數量的軟體"
169 "已經被以 Debian 格式打包,有時還是需要安裝一些不是這一格式的軟體。可能你會爲"
170 "如何製作自己的套件而迷惑,並可能認爲這是很困難的任務。是的,如果你是一個 "
171 "Linux 初學者,那麼這的確很難;不過如果你真的只是一個新手,現在也不會來讀這篇"
172 "文件了。:-) 你的確需要對 Unix 編程有所瞭解,但顯然不需要是這方面的天才。"
173
174 #. type: Content of: <book><chapter><para>
175 msgid ""
176 "One thing is certain, though: to properly create and maintain Debian "
177 "packages you need many hours. Make no mistake, for our system to work the "
178 "maintainers need to be both technically competent and diligent."
179 msgstr ""
180 "有一件事是非常明確的:創建並維護一個 Debian 套件需要花費很多時間。爲了能夠不"
181 "犯錯誤,維護者需要良好的技術基礎並十分勤奮。"
182
183 #. type: Content of: <book><chapter><para>
184 msgid ""
185 "This document will explain every little (at first maybe irrelevant) step, "
186 "and help you create that first package, and to gain some experience in "
187 "building next releases of that and maybe other packages later on."
188 msgstr ""
189 "本文件會講述每一個細節(在開始時或許給人感覺毫不相關),並幫助你創建出自己的第"
190 "一個 Debian 套件,從而使你學習到如何打包該軟體的下一個版本或其他軟體的經驗。"
191
192 #. type: Content of: <book><chapter><para>
193 msgid ""
194 "If you need some help on packaging, please read <xref linkend=\"helpme\"/>."
195 msgstr "如果需要幫助,請閱讀 <xref linkend=\"helpme\"/>。"
196
197 #. type: Content of: <book><chapter><para>
198 msgid ""
199 "Newer versions of this document should always be available online at <ulink "
200 "url=\"&maint-guide;\"/> and in the <systemitem role=\"package\">maint-guide</"
201 "systemitem> package. The translations may be available in packages such as "
202 "<systemitem role=\"package\">maint-guide-es</systemitem>. Please note that "
203 "this documentation may be slightly outdated."
204 msgstr ""
205
206 #. type: Content of: <book><chapter><section><title>
207 msgid "Social dynamism of Debian"
208 msgstr ""
209
210 #. type: Content of: <book><chapter><section><para>
211 msgid ""
212 "Here are my observations of the social dynamism of Debian. I hope this will "
213 "prepare you for the interaction with Debian."
214 msgstr ""
215
216 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
217 msgid "We all are volunteers."
218 msgstr ""
219
220 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
221 msgid "You can not impose others what to do."
222 msgstr ""
223
224 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
225 msgid "You should be motivated to do things by yourself."
226 msgstr ""
227
228 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
229 msgid "Friendly cooperation is the driving force."
230 msgstr ""
231
232 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
233 msgid "Your contribution should not overstrain others."
234 msgstr ""
235
236 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
237 msgid "Your contribution is valuable only when others appreciate it."
238 msgstr ""
239
240 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
241 msgid ""
242 "Debian is not your school where you get automatic attention of teachers."
243 msgstr ""
244
245 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
246 msgid "You should be able to learn many things by yourself."
247 msgstr ""
248
249 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
250 msgid "Attention of other volunteers is the very scarce resource."
251 msgstr ""
252
253 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
254 msgid "Debian is constantly improving."
255 msgstr ""
256
257 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
258 msgid "You are expected to make high quality packages."
259 msgstr ""
260
261 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
262 msgid "You should adapt yourself to the change."
263 msgstr ""
264
265 #. type: Content of: <book><chapter><section><para>
266 msgid ""
267 "Since we focus only on technical aspects of packaging in this document, "
268 "please refer to the following to learn how Debian functions and how you can "
269 "get involved."
270 msgstr ""
271
272 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
273 msgid ""
274 "<ulink url=\"&logiciellibre;\">Debian: 17 years of Free Software, \"do-ocracy"
275 "\", and democracy</ulink> (Introductory slides)"
276 msgstr ""
277
278 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
279 #, fuzzy
280 #| msgid "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>"
281 msgid ""
282 "<ulink url=\"&debianorghelp;\">How can you help Debian?</ulink> (official)"
283 msgstr "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>"
284
285 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
286 #, fuzzy
287 #| msgid "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>"
288 msgid ""
289 "<ulink url=\"&debianfaqhelp;\">The Debian GNU/Linux FAQ, Chapter 13 - "
290 "'Contributing to the Debian Project'</ulink> (semi-official)"
291 msgstr "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>"
292
293 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
294 msgid ""
295 "<ulink url=\"&debianwikihelp;\">Debian Wiki, HelpDebian</ulink> "
296 "(supplemental)"
297 msgstr ""
298
299 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
300 #, fuzzy
301 #| msgid "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>"
302 msgid "<ulink url=\"&nm-do;\">Debian New Maintainer site</ulink> (official)"
303 msgstr "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>"
304
305 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
306 msgid ""
307 "<ulink url=\"&debianmentorfaq;\">Debian Mentors FAQ</ulink> (supplemental)"
308 msgstr ""
309
310 #. type: Content of: <book><chapter><section><title>
311 msgid "Official Debian Developer"
312 msgstr "正式的 Debian Developer"
313
314 #. type: Content of: <book><chapter><section><para>
315 #, fuzzy
316 #| msgid ""
317 #| "You can not become an official <emphasis role=\"strong\">Debian "
318 #| "Developer</emphasis> (DD) over night because it takes more than technical "
319 #| "skill. Please do not be discouraged by this. If it is useful to others, "
320 #| "you can still upload your package either as a <emphasis role=\"strong"
321 #| "\">maintainer</emphasis> through a <emphasis role=\"strong\">sponsor</"
322 #| "emphasis> or as a <emphasis role=\"strong\">Debian Maintainer</"
323 #| "emphasis>. See <ulink url=\"&nm-join;\">Debian New Maintainers</ulink> "
324 #| "for more."
325 msgid ""
326 "You can not become an official <emphasis role=\"strong\">Debian Developer</"
327 "emphasis> (DD) over night because it takes more than technical skill. "
328 "Please do not be discouraged by this. If it is useful to others, you can "
329 "still upload your package either as a <emphasis role=\"strong\">maintainer</"
330 "emphasis> through a <emphasis role=\"strong\">sponsor</emphasis> or as a "
331 "<emphasis role=\"strong\">Debian Maintainer</emphasis>."
332 msgstr ""
333 "你不可能在一夜之間成爲 <emphasis role=\"strong\">Debian Developer</emphasis> "
334 "(DD),因爲一個 DD 所需要的遠不只是技術能力,請不要因此感覺到挫敗或沮喪。如果"
335 "你的軟體對其他人有用,你可以作爲一個 <emphasis role=\"strong\">維護者"
336 "(maintainer)</emphasis> 通過 一位 <emphasis role=\"strong\">保證人(sponsor)</"
337 "emphasis> 來上傳軟體,或者申請成爲一位 <emphasis role=\"strong\">Debian "
338 "Maintainer</emphasis>。詳見 <ulink url=\"&nm-join;\">Debian New Maintainers</"
339 "ulink>。"
340
341 #. type: Content of: <book><chapter><section><para>
342 msgid ""
343 "Please note that you do not need to create any new package to become an "
344 "official Debian Developer. Contributing to the existing packages can "
345 "provide a path to become an official Debian Developer too. There are many "
346 "packages waiting for good maintainers (see <xref linkend=\"choose\"/>)."
347 msgstr ""
348 "請注意,要成爲一位正式的 Debian Developer 並不一定要創建新套件。對已有軟體做"
349 "出貢獻也是成爲正式的 Debian Developer 的路徑。眼下正有很多套件正在等待一個好"
350 "的維護者對其做出貢獻。(參考 <xref linkend=\"choose\"/>)"
351
352 #. type: Content of: <book><chapter><section><title>
353 msgid "Programs you need for development"
354 msgstr "開發時需要的軟體"
355
356 #. type: Content of: <book><chapter><section><para>
357 msgid ""
358 "Before you start anything, you should make sure that you have properly "
359 "installed some additional packages needed for development. Note that the "
360 "list doesn't contain any packages marked <literal>essential</literal> or "
361 "<literal>required</literal> - we expect that you have those installed "
362 "already."
363 msgstr ""
364 "在開始之前,你需要確認你是否已經正確安裝了開發所需要的附加套件。注意這些套件"
365 "不包含任何已經被標記爲 <literal>essential</literal> 或 <literal>required</"
366 "literal> —— 我們假設你已經安裝了它們。"
367
368 #. type: Content of: <book><chapter><section><para>
369 #, fuzzy
370 #| msgid ""
371 #| "The following packages come with the standard Debian installation, so you "
372 #| "probably have them already (along with any additional packages they "
373 #| "depend on). Still, you should check it with <literal>aptitude show "
374 #| "<replaceable>package</replaceable></literal>."
375 msgid ""
376 "The following packages come with the standard Debian installation, so you "
377 "probably have them already (along with any additional packages they depend "
378 "on). Still, you should check it with <literal>aptitude show "
379 "<replaceable>package</replaceable></literal> or with <literal>dpkg -s "
380 "<replaceable>package</replaceable></literal>."
381 msgstr ""
382 "以下這些套件已經隨標準的 Debian 安裝而在系統中,所以你可能不需要再動手安裝它"
383 "們(以及任何附加的依賴套件)。然而,你還是應該用 <literal>aptitude show "
384 "<replaceable>package</replaceable></literal> 來檢査一下。"
385
386 #. type: Content of: <book><chapter><section><para>
387 msgid ""
388 "The most important package to install on your development system is the "
389 "<systemitem role=\"package\">build-essential</systemitem> package. Once you "
390 "try to install it, it will <emphasis>pull in</emphasis> other packages "
391 "required to have a basic build environment."
392 msgstr ""
393
394 #. type: Content of: <book><chapter><section><para>
395 msgid ""
396 "For some types of packages, that is all you will require, however there is "
397 "another set of packages that while not essential for all package builds are "
398 "useful to have install or may be required by your package:"
399 msgstr ""
400 "對於某些類型的軟體,以上的就是所需要的全部。然而還有一組套件雖不是對於所有套"
401 "件都必須,卻可能對你有用或被你的套件所需要:"
402
403 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
404 msgid ""
405 "<systemitem role=\"package\">file</systemitem> - this handy program can "
406 "determine what type a file is. (see <citerefentry> <refentrytitle>file</"
407 "refentrytitle> <manvolnum>1</manvolnum> </citerefentry>)"
408 msgstr ""
409 "<systemitem role=\"package\">file</systemitem> - 這個小程式可以檢測檔案的類"
410 "型。(參考 <citerefentry> <refentrytitle>file</refentrytitle> <manvolnum>1</"
411 "manvolnum> </citerefentry>)"
412
413 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
414 msgid ""
415 "<systemitem role=\"package\">patch</systemitem> - this very useful utility "
416 "will take a file containing a difference listing (produced by the "
417 "<command>diff</command> program) and apply it to the original file, "
418 "producing a patched version. (see <citerefentry> <refentrytitle>patch</"
419 "refentrytitle> <manvolnum>1</manvolnum> </citerefentry>)"
420 msgstr ""
421 "<systemitem role=\"package\">patch</systemitem> - 這是一個非常有用的工具,它"
422 "可以把 <command>diff</command> 程式生成的差異清單檔案應用到原先的檔案上,從而"
423 "生成一個補丁版本。(參考 <citerefentry> <refentrytitle>patch</refentrytitle> "
424 "<manvolnum>1</manvolnum> </citerefentry>)"
425
426 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
427 msgid ""
428 "<systemitem role=\"package\">perl</systemitem> - Perl is one of the most "
429 "used interpreted scripting languages on today's Unix-like systems, often "
430 "referred to as Unix's Swiss Army Chainsaw. (see <citerefentry> "
431 "<refentrytitle>perl</refentrytitle> <manvolnum>1</manvolnum> </citerefentry>)"
432 msgstr ""
433
434 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
435 msgid ""
436 "<systemitem role=\"package\">python</systemitem> - Python is another of the "
437 "most used interpreted scripting languages on the Debian system that combines "
438 "remarkable power with very clear syntax. (see <citerefentry> "
439 "<refentrytitle>python</refentrytitle> <manvolnum>1</manvolnum> </"
440 "citerefentry>)"
441 msgstr ""
442 "<systemitem role=\"package\">python</systemitem> - Python 是 Debian 系統中另"
443 "一個最常用的解譯型腳本語言,它擁有着可圈可點的強大功能和十分清晰的語法。(參"
444 "考 <citerefentry> <refentrytitle>python</refentrytitle> <manvolnum>1</"
445 "manvolnum> </citerefentry>)"
446
447 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
448 msgid ""
449 "<systemitem role=\"package\">autoconf</systemitem>, <systemitem role="
450 "\"package\">automake</systemitem> and <systemitem role=\"package\">autotools-"
451 "dev</systemitem> - many newer programs use configure scripts and "
452 "<filename>Makefile</filename> files preprocessed with help of programs like "
453 "these. (see <literal>info autoconf</literal>, <literal>info automake</"
454 "literal>). The <systemitem role=\"package\">autotools-dev</systemitem> "
455 "keeps up-to-date versions of certain auto files and has documentation about "
456 "the best way to use those files."
457 msgstr ""
458 "<systemitem role=\"package\">autoconf</systemitem>、<systemitem role="
459 "\"package\">automake</systemitem> 和 <systemitem role=\"package\">autotools-"
460 "dev</systemitem> - 很多新程式使用 configure 腳本和 <filename>Makefile</"
461 "filename> 檔案來幫助預處理程式。(參考 <literal>info autoconf</literal>、"
462 "<literal>info automake</literal>)。 <systemitem role=\"package\">autotools-"
463 "dev</systemitem> 則用於保持指定的自動設定檔案爲最新,並帶有關於使用那些檔案的"
464 "最佳方法的文件。"
465
466 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para><footnote><para>
467 msgid ""
468 "There are few similar but specialized packages such as <systemitem role="
469 "\"package\">dh-make-perl</systemitem>, <systemitem role=\"package\">dh-make-"
470 "php</systemitem>, etc."
471 msgstr ""
472 "還有幾個類似但更針對某一類軟體的套件,如 <systemitem role=\"package\">dh-"
473 "make-perl</systemitem>、<systemitem role=\"package\">dh-make-php</"
474 "systemitem> 等。"
475
476 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
477 #, fuzzy
478 #| msgid ""
479 #| "<systemitem role=\"package\">dh-make</systemitem> and <systemitem role="
480 #| "\"package\">debhelper</systemitem> - <systemitem role=\"package\">dh-"
481 #| "make</systemitem> is necessary to create the skeleton of our example "
482 #| "package, and it will use some of the <systemitem role=\"package"
483 #| "\">debhelper</systemitem> tools for creating packages. They are not "
484 #| "essential for creation of packages, but are <emphasis>highly</emphasis> "
485 #| "recommended for new maintainers. It makes the whole process very much "
486 #| "easier to start, and control afterwards. (see <citerefentry> "
487 #| "<refentrytitle>dh_make</refentrytitle> <manvolnum>1</manvolnum> </"
488 #| "citerefentry>, <citerefentry> <refentrytitle>debhelper</refentrytitle> "
489 #| "<manvolnum>1</manvolnum> </citerefentry>, <filename>/usr/share/doc/"
490 #| "debhelper/README</filename>) <placeholder type=\"footnote\" id=\"0\"/>"
491 msgid ""
492 "<systemitem role=\"package\">dh-make</systemitem> and <systemitem role="
493 "\"package\">debhelper</systemitem> - <systemitem role=\"package\">dh-make</"
494 "systemitem> is necessary to create the skeleton of our example package, and "
495 "it will use some of the <systemitem role=\"package\">debhelper</systemitem> "
496 "tools for creating packages. They are not essential for creation of "
497 "packages, but are <emphasis>highly</emphasis> recommended for new "
498 "maintainers. It makes the whole process very much easier to start, and "
499 "control afterwards. (see <citerefentry> <refentrytitle>dh_make</"
500 "refentrytitle> <manvolnum>1</manvolnum> </citerefentry>, <citerefentry> "
501 "<refentrytitle>debhelper</refentrytitle> <manvolnum>1</manvolnum> </"
502 "citerefentry>) <placeholder type=\"footnote\" id=\"0\"/>"
503 msgstr ""
504 "<systemitem role=\"package\">dh-make</systemitem> 和 <systemitem role="
505 "\"package\">debhelper</systemitem> - <systemitem role=\"package\">dh-make</"
506 "systemitem> 是用於創建我們範例套件骨架所必須的,它會使用 <systemitem role="
507 "\"package\">debhelper</systemitem> 中的一些工具來創建套件。他們不是創建套件所"
508 "必須的,但對新維護人員而言,我們 <emphasis>強烈推薦</emphasis> 使用。它使得整"
509 "個過程極爲簡化,並易於在將來維護。(參考 <citerefentry> "
510 "<refentrytitle>dh_make</refentrytitle> <manvolnum>1</manvolnum> </"
511 "citerefentry>、<citerefentry> <refentrytitle>debhelper</refentrytitle> "
512 "<manvolnum>1</manvolnum> </citerefentry>、<filename>/usr/share/doc/debhelper/"
513 "README</filename>) <placeholder type=\"footnote\" id=\"0\"/>"
514
515 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
516 #, fuzzy
517 #| msgid ""
518 #| "<systemitem role=\"package\">devscripts</systemitem> - this package "
519 #| "contains some nice and useful scripts that can be helpful to the "
520 #| "maintainers, but they are also not necessary for building packages. "
521 #| "Packages recommended and suggested by this package are worth looking "
522 #| "into. (see <filename>/usr/share/doc/devscripts/README.gz</filename>)"
523 msgid ""
524 "<systemitem role=\"package\">devscripts</systemitem> - this package contains "
525 "some nice and useful scripts that can be helpful to the maintainers, but "
526 "they are also not necessary for building packages. Packages recommended and "
527 "suggested by this package are worth looking into. (see <ulink url="
528 "\"&devscripts-readme;\"/>.)"
529 msgstr ""
530 "<systemitem role=\"package\">devscripts</systemitem> - 此套件提供了一些非常好"
531 "非常有用的腳本幫助維護者,但他們並非構建套件所必須。此套件所推薦或建議的套件"
532 "都值得一看。(參考 <filename>/usr/share/doc/devscripts/README.gz</filename>)"
533
534 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
535 msgid ""
536 "<systemitem role=\"package\">fakeroot</systemitem> - this utility lets you "
537 "emulate being root which is necessary for some parts of the build process. "
538 "(see <citerefentry> <refentrytitle>fakeroot</refentrytitle> <manvolnum>1</"
539 "manvolnum> </citerefentry>)"
540 msgstr ""
541 "<systemitem role=\"package\">fakeroot</systemitem> - 這個工具集使你可以在編譯"
542 "過程中必要的時候用普通用戶模擬 root 用戶環境。(參考 <citerefentry> "
543 "<refentrytitle>fakeroot</refentrytitle> <manvolnum>1</manvolnum> </"
544 "citerefentry>)"
545
546 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
547 msgid ""
548 "<systemitem role=\"package\">gnupg</systemitem> - a tool that enables you to "
549 "digitally <emphasis>sign</emphasis> packages. This is especially important "
550 "if you want to distribute it to other people, and you will certainly be "
551 "doing that when your work gets included in the Debian distribution. (see "
552 "<citerefentry> <refentrytitle>gpg</refentrytitle> <manvolnum>1</manvolnum> </"
553 "citerefentry>)"
554 msgstr ""
555 "<systemitem role=\"package\">gnupg</systemitem> - 使你可以使用 <emphasis>數位"
556 "簽章</emphasis> 簽署你的套件。這在當你想把它散佈給其他人時特別重要。如果你要"
557 "把你的工作加入到 Debian 發行版中,這是必須的步驟。(參考 <citerefentry> "
558 "<refentrytitle>gpg</refentrytitle> <manvolnum>1</manvolnum> </citerefentry>)"
559
560 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
561 msgid ""
562 "<systemitem role=\"package\">gfortran</systemitem> - the GNU Fortran 95 "
563 "compiler, necessary if your program is written in Fortran. (see "
564 "<citerefentry> <refentrytitle>gfortran</refentrytitle> <manvolnum>1</"
565 "manvolnum> </citerefentry>)"
566 msgstr ""
567 "<systemitem role=\"package\">gfortran</systemitem> - GNU Fortran 95 編譯器,"
568 "如果你的程式是用 Fortran 編寫的則必須此套件完成編譯。(參考 <citerefentry> "
569 "<refentrytitle>gfortran</refentrytitle> <manvolnum>1</manvolnum> </"
570 "citerefentry>)"
571
572 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
573 msgid ""
574 "<systemitem role=\"package\">gpc</systemitem> - the GNU Pascal compiler, "
575 "necessary if your program is written in Pascal. Worthy of note here is "
576 "<systemitem role=\"package\">fp-compiler</systemitem>, the Free Pascal "
577 "Compiler, which is also good at this task. (see <citerefentry> "
578 "<refentrytitle>gpc</refentrytitle> <manvolnum>1</manvolnum> </citerefentry>, "
579 "<citerefentry> <refentrytitle>ppc386</refentrytitle> <manvolnum>1</"
580 "manvolnum> </citerefentry>)"
581 msgstr ""
582 "<systemitem role=\"package\">gpc</systemitem> - GNU Pascal 編譯器。如果你的程"
583 "式是用 Pascal 寫的則需要此套件。值得一提的是 <systemitem role=\"package\">fp-"
584 "compiler</systemitem>,Free Pascal 編譯器(FPC),也能夠很好地勝任。(參考 "
585 "<citerefentry> <refentrytitle>gpc</refentrytitle> <manvolnum>1</manvolnum> </"
586 "citerefentry>、<citerefentry> <refentrytitle>ppc386</refentrytitle> "
587 "<manvolnum>1</manvolnum> </citerefentry>)"
588
589 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
590 msgid ""
591 "<systemitem role=\"package\">xutils-dev</systemitem> - some programs, "
592 "usually those made for X11, also use these programs to generate "
593 "<filename>Makefile</filename> files from sets of macro functions. (see "
594 "<citerefentry> <refentrytitle>imake</refentrytitle> <manvolnum>1</manvolnum> "
595 "</citerefentry>, <citerefentry> <refentrytitle>xmkmf</refentrytitle> "
596 "<manvolnum>1</manvolnum> </citerefentry>)"
597 msgstr ""
598 "<systemitem role=\"package\">xutils-dev</systemitem> - 一些通常用於 X11 的程"
599 "式,用於使用其巨集功能生成 <filename>Makefile</filename> 檔案。(參考 "
600 "<citerefentry> <refentrytitle>imake</refentrytitle> <manvolnum>1</manvolnum> "
601 "</citerefentry>、<citerefentry> <refentrytitle>xmkmf</refentrytitle> "
602 "<manvolnum>1</manvolnum> </citerefentry>)"
603
604 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
605 #, fuzzy
606 #| msgid ""
607 #| "<systemitem role=\"package\">lintian</systemitem> - this is the Debian "
608 #| "package checker that can let you know of any common mistakes after you "
609 #| "build the package, and explains the errors found. (see <citerefentry> "
610 #| "<refentrytitle>lintian</refentrytitle> <manvolnum>1</manvolnum> </"
611 #| "citerefentry>, <filename>/usr/share/doc/lintian/lintian.html/index.html</"
612 #| "filename>)"
613 msgid ""
614 "<systemitem role=\"package\">lintian</systemitem> - this is the Debian "
615 "package checker that can let you know of any common mistakes after you build "
616 "the package, and explains the errors found. (see <citerefentry> "
617 "<refentrytitle>lintian</refentrytitle> <manvolnum>1</manvolnum> </"
618 "citerefentry>, <ulink url=\"&lintian-doc;\">Lintian User's Manual</ulink>)"
619 msgstr ""
620 "<systemitem role=\"package\">lintian</systemitem> - Debian 套件檢査工具,使你"
621 "可以在編譯套件後知道它是否有常見的錯誤,並對找到的錯誤進行解釋。(參考 "
622 "<citerefentry> <refentrytitle>lintian</refentrytitle> <manvolnum>1</"
623 "manvolnum> </citerefentry>、<filename>/usr/share/doc/lintian/lintian.html/"
624 "index.html</filename>)"
625
626 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
627 msgid ""
628 "<systemitem role=\"package\">pbuilder</systemitem> - this package contains "
629 "programs which are used for creating and maintaining <command>chroot</"
630 "command> environment. Building Debian package in this <command>chroot</"
631 "command> environment verifies the proper build dependency and avoid FTBFS "
632 "(Fails To Build From Source) bugs. (see <citerefentry> "
633 "<refentrytitle>pbuilder</refentrytitle> <manvolnum>8</manvolnum> </"
634 "citerefentry> and <citerefentry> <refentrytitle>pdebuild</refentrytitle> "
635 "<manvolnum>1</manvolnum> </citerefentry>)"
636 msgstr ""
637 "<systemitem role=\"package\">pbuilder</systemitem> - 這個套件提供了創建和維"
638 "護 <command>chroot</command> 環境。在此 <command>chroot</command> 環境中編譯 "
639 "Debian 套件可以檢査編譯依賴是否合適並避免 FTBFS (Fails To Build From Source,"
640 "從原始碼編譯失敗)的 Bug。(參考 <citerefentry> <refentrytitle>pbuilder</"
641 "refentrytitle> <manvolnum>8</manvolnum> </citerefentry> 和 <citerefentry> "
642 "<refentrytitle>pdebuild</refentrytitle> <manvolnum>1</manvolnum> </"
643 "citerefentry>)"
644
645 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
646 msgid ""
647 "<systemitem role=\"package\">patchutils</systemitem> - this package contains "
648 "some utilities to work with patches such as the <command>lsdiff</command>, "
649 "<command>interdiff</command> and <command>filterdiff</command> commands."
650 msgstr ""
651 "<systemitem role=\"package\">patchutils</systemitem> - 此套件提供了一些可以幫"
652 "助處理補丁的工具,如 <command>lsdiff</command>、<command>interdiff</command> "
653 "和 <command>filterdiff</command> 命令。"
654
655 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
656 #, fuzzy
657 #| msgid ""
658 #| "<systemitem role=\"package\">quilt</systemitem> - this package helps you "
659 #| "to manage a series of patches by keeping track of the changes each of "
660 #| "them makes. They are logically organized as a stack, and you can apply "
661 #| "(=push), un-apply (=pop), refresh them easily by traveling into the "
662 #| "stack. (see <citerefentry> <refentrytitle>quilt</refentrytitle> "
663 #| "<manvolnum>1</manvolnum> </citerefentry>, <filename>/usr/share/doc/quilt/"
664 #| "README.Debian</filename>)"
665 msgid ""
666 "<systemitem role=\"package\">quilt</systemitem> - this package helps you to "
667 "manage a series of patches by keeping track of the changes each of them "
668 "makes. They are logically organized as a stack, and you can apply (=push), "
669 "un-apply (=pop), refresh them easily by traveling into the stack. (see "
670 "<citerefentry> <refentrytitle>quilt</refentrytitle> <manvolnum>1</manvolnum> "
671 "</citerefentry>, <ulink url=\"&quilt-pdf;\">quilt.pdf</ulink>)"
672 msgstr ""
673 "<systemitem role=\"package\">quilt</systemitem> - 此套件幫助你管理一系列的補"
674 "丁。它們被以邏輯堆疊的方式組織在一起。你可以 apply (=push)、un-apply (=pop) "
675 "或簡單地更新它們然後再放入堆疊內。(參考 <citerefentry> <refentrytitle>quilt</"
676 "refentrytitle> <manvolnum>1</manvolnum> </citerefentry>、<filename>/usr/"
677 "share/doc/quilt/README.Debian</filename>)"
678
679 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
680 #, fuzzy
681 #| msgid ""
682 #| "<systemitem role=\"package\">git</systemitem> - this package provides "
683 #| "popular version control system designed to handle very large projects "
684 #| "with speed and efficiency; it is used for many high profile open source "
685 #| "projects, most notably the Linux kernel. (see <citerefentry> "
686 #| "<refentrytitle>git</refentrytitle> <manvolnum>1</manvolnum> </"
687 #| "citerefentry>, <filename>/usr/share/doc/git-doc/index.html</filename>)"
688 msgid ""
689 "<systemitem role=\"package\">git</systemitem> - this package provides "
690 "popular version control system designed to handle very large projects with "
691 "speed and efficiency; it is used for many high profile open source projects, "
692 "most notably the Linux kernel. (see <citerefentry> <refentrytitle>git</"
693 "refentrytitle> <manvolnum>1</manvolnum> </citerefentry>, <ulink url=\"&git-"
694 "doc;\">git Manual</ulink>)"
695 msgstr ""
696 "<systemitem role=\"package\">git</systemitem> - 此套件提供了用於快捷處理大型"
697 "項目的著名版本控制系統 - git。它被廣泛用於各種開源項目,最著名的是 Linux 核心"
698 "項目。(參考 <citerefentry> <refentrytitle>git</refentrytitle> <manvolnum>1</"
699 "manvolnum> </citerefentry>、<filename>/usr/share/doc/git-doc/index.html</"
700 "filename>)"
701
702 #. type: Content of: <book><chapter><section><para>
703 msgid ""
704 "The short descriptions that are given above only serve to introduce you to "
705 "what each package does. Before continuing please thoroughly read the "
706 "documentation of each program, at least, for the standard usage. It may "
707 "seem like heavy going now, but later on you'll be <emphasis>very</emphasis> "
708 "glad you read it."
709 msgstr ""
710 "以上給出的簡短描述僅僅是爲了使你對這些套件有一個基本的印象。在繼續前請詳細閱"
711 "讀每個程式的文件,至少了解其一般的用途和用法。現在看來這是一項耗時巨大的任"
712 "務,但在接下來的工作中你將爲你閱讀了它們而感覺到 <emphasis>非常</emphasis> 愉"
713 "快。"
714
715 #. type: Content of: <book><chapter><section><para>
716 msgid ""
717 "If you have specific questions later, I suggest you to read the documents "
718 "mentioned above again. Since this is a tutorial, I intentionally skipped "
719 "details and provided only pointers to keep it simple."
720 msgstr ""
721
722 #. type: Content of: <book><chapter><section><title>
723 #, fuzzy
724 #| msgid "Programs you need for development"
725 msgid "Documentations you need for development"
726 msgstr "開發時需要的軟體"
727
728 #. type: Content of: <book><chapter><section><para>
729 msgid ""
730 "The following is the <emphasis>very important</emphasis> documentation which "
731 "you should read along with this document:"
732 msgstr ""
733 "以下是 <emphasis>非常重要</emphasis> 的文件,你應該在讀本文件時同時參考它們:"
734
735 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
736 #, fuzzy
737 #| msgid ""
738 #| "<systemitem role=\"package\">debian-policy</systemitem> - the <ulink url="
739 #| "\"&debian-policy;\">Debian Policy Manual</ulink> includes explanations of "
740 #| "the structure and contents of the Debian archive, several OS design "
741 #| "issues, the Filesystem Hierarchy Standard (which says where each file and "
742 #| "directory should be) etc. For you, the most important thing is that it "
743 #| "describes requirements that each package must satisfy to be included in "
744 #| "the distribution (see <filename>/usr/share/doc/debian-policy/policy.html/"
745 #| "index.html</filename>)."
746 msgid ""
747 "<systemitem role=\"package\">debian-policy</systemitem> - the <ulink url="
748 "\"&debian-policy;\">Debian Policy Manual</ulink> includes explanations of "
749 "the structure and contents of the Debian archive, several OS design issues, "
750 "the <ulink url=\"&fhs;\">Filesystem Hierarchy Standard</ulink> (FHS, which "
751 "says where each file and directory should be) etc. For you, the most "
752 "important thing is that it describes requirements that each package must "
753 "satisfy to be included in the distribution (see the local copies of <ulink "
754 "url=\"&policy-pdf;\">policy.pdf</ulink> and <ulink url=\"&fhs-pdf;\">fhs-2.3."
755 "pdf</ulink>)."
756 msgstr ""
757 "<systemitem role=\"package\">debian-policy</systemitem> - <ulink url="
758 "\"&debian-policy;\">Debian Policy Manual</ulink> 包含了對 Debian 軟體倉庫、作"
759 "業系統設計事宜、檔案系統層級標準(FHS,Filesystem Hierarchy Standard)(講述每個"
760 "檔案和目錄應該放在哪裏)等的描述。對於你而言,最重要的是它描述了套件要進入官方"
761 "倉庫前必須滿足的條件。(參考 <filename>/usr/share/doc/debian-policy/policy."
762 "html/index.html</filename>)"
763
764 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
765 #, fuzzy
766 #| msgid ""
767 #| "<systemitem role=\"package\">developers-reference</systemitem> - the "
768 #| "<ulink url=\"&developers-reference;\">Debian Developer's Reference</"
769 #| "ulink> describes all matters not specifically about the technical details "
770 #| "of packaging, like the structure of the archive, how to rename, orphan, "
771 #| "pick up packages, how to do NMUs, how to manage bugs, best packaging "
772 #| "practices, when and where to upload etc. (see <filename>/usr/share/doc/"
773 #| "developers-reference/</filename>)."
774 msgid ""
775 "<systemitem role=\"package\">developers-reference</systemitem> - the <ulink "
776 "url=\"&developers-reference;\">Debian Developer's Reference</ulink> "
777 "describes all matters not specifically about the technical details of "
778 "packaging, like the structure of the archive, how to rename, orphan, pick up "
779 "packages, how to do NMUs, how to manage bugs, best packaging practices, when "
780 "and where to upload etc. (see the local copy of <ulink url=\"&developers-"
781 "refpdf;\">developers-reference.pdf</ulink>)."
782 msgstr ""
783 "<systemitem role=\"package\">developers-reference</systemitem> - <ulink url="
784 "\"&developers-reference;\">Debian Developer's Reference</ulink> 描述了打包所"
785 "需的包含技術細節在內的全部詳細訊息,如倉庫結構、如何重命名/丟棄/接手套件、如"
786 "何進行 NMU(非維護者上傳)、如何管理 Bug 以及打包最佳經驗、何時向何處上傳等。"
787 "(參考 <filename>/usr/share/doc/developers-reference/</filename>)"
788
789 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
790 msgid ""
791 "<ulink url=\"&autotools-tutorial;\">Autotools Tutorial</ulink> provides very "
792 "good tutorial for <ulink url=\"&gnu-build-system;\">the GNU Build System "
793 "known as the GNU Autotools</ulink> whose most important components are "
794 "Autoconf, Automake, Libtool, and gettext."
795 msgstr ""
796 "<ulink url=\"&autotools-tutorial;\">Autotools Tutorial</ulink> 爲 <ulink url="
797 "\"&gnu-build-system;\">the GNU Build System known as the GNU Autotools</"
798 "ulink> 中最重要的工具 —— Autoconf、Automake、Libtool 和 gettext 提供了很好的"
799 "文件。"
800
801 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
802 #, fuzzy
803 #| msgid ""
804 #| "<systemitem role=\"package\">gnu-standards</systemitem> - this package "
805 #| "contains two pieces of documentation from the GNU project: <ulink url="
806 #| "\"&gnu-standard;\">GNU Coding Standards</ulink>, and <ulink url=\"&gnu-"
807 #| "maintainer;\">Information for Maintainers of GNU Software</ulink>. "
808 #| "Although Debian does not require these to be followed, these are still "
809 #| "helpful as guidelines and common sense. (see <filename>/usr/share/doc/"
810 #| "gnu-standards/standards.html</filename> and <filename>/usr/share/doc/gnu-"
811 #| "standards/maintain.html</filename>)."
812 msgid ""
813 "<systemitem role=\"package\">gnu-standards</systemitem> - this package "
814 "contains two pieces of documentation from the GNU project: <ulink url=\"&gnu-"
815 "standard;\">GNU Coding Standards</ulink>, and <ulink url=\"&gnu-maintainer;"
816 "\">Information for Maintainers of GNU Software</ulink>. Although Debian "
817 "does not require these to be followed, these are still helpful as guidelines "
818 "and common sense. (see the local copies of <ulink url=\"&gnu-standard-pdf;"
819 "\">standards.pdf</ulink> and <ulink url=\"&gnu-maintainer-pdf;\">maintain."
820 "pdf</ulink>)."
821 msgstr ""
822 "<systemitem role=\"package\">gnu-standards</systemitem> - 此套件包含了 GNU 項"
823 "目中的兩篇文件: <ulink url=\"&gnu-standard;\">GNU Coding Standards</ulink> "
824 "和 <ulink url=\"&gnu-maintainer;\">Information for Maintainers of GNU "
825 "Software</ulink>。儘管 Debian 不要求遵守這些規範,它們仍然很有幫助。(參考 "
826 "<filename>/usr/share/doc/gnu-standards/standards.html</filename> 和 "
827 "<filename>/usr/share/doc/gnu-standards/maintain.html</filename>)"
828
829 #. type: Content of: <book><chapter><section><para>
830 #, fuzzy
831 #| msgid ""
832 #| "If this document contradicts with what the Debian Policy Manual and "
833 #| "Debian Developer's Reference describes, they are correct. Please file a "
834 #| "bug report on the <systemitem role=\"package\">maint-guide</systemitem> "
835 #| "package."
836 msgid ""
837 "If this document contradicts with any of the documents mentioned above, they "
838 "are correct. Please file a bug report on the <systemitem role=\"package"
839 "\">maint-guide</systemitem> package using <command>reportbug</command>."
840 msgstr ""
841 "若本文件所敘述的內容與 Debian Policy Manual 或 Debian Developer's Reference "
842 "有不符,則按照後兩者的要求進行,並向 <systemitem role=\"package\">maint-"
843 "guide</systemitem> 套件提交 Bug 報告。"
844
845 #. type: Content of: <book><chapter><section><title>
846 msgid "Basic terminology"
847 msgstr "基本術語"
848
849 #. type: Content of: <book><chapter><section><para>
850 msgid "There are two types of packages."
851 msgstr "一共有兩種類型的套件。"
852
853 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
854 msgid ""
855 "<emphasis role=\"strong\">source package</emphasis>: A source package is a "
856 "set of files which contain code and data which you can compile and process "
857 "into execution programs and formatted documents. It usually comes as a "
858 "combination of <filename>*.orig.tar.gz</filename>, <filename>*.debian.tar."
859 "gz</filename> (or <filename>*.diff.gz</filename>), and <filename>*.dsc</"
860 "filename>. Some other archive and compression methods may be used, too."
861 msgstr ""
862 "<emphasis role=\"strong\">原始碼套件</emphasis>:原始碼套件包含了程式碼和數"
863 "據,可以編譯成爲可執行的程式和格式化的文件。它通常是以 <filename>*.orig.tar."
864 "gz</filename>、<filename>*.debian.tar.gz</filename> (或 <filename>*.diff.gz</"
865 "filename>) 和 <filename>*.dsc</filename> 的組合形式出現的。也可能使用一些其他"
866 "的格式和壓縮方法。"
867
868 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
869 msgid ""
870 "<emphasis role=\"strong\">binary package</emphasis>: A binary package "
871 "contains execution programs and formatted documents. It usually comes as "
872 "<filename>*.deb</filename> for the normal Debian system and as <filename>*."
873 "udeb</filename> for the Debian Installer."
874 msgstr ""
875 "<emphasis role=\"strong\">二進位套件</emphasis>:二進位套件包含了可執行的程式"
876 "和格式化的文件。它通常是以 <filename>*.deb</filename> 檔案的形式提供給普通 "
877 "Debian 系統,以及 <filename>*.udeb</filename> 檔案形式提供給 Debian 安裝程"
878 "式。"
879
880 #. type: Content of: <book><chapter><section><para>
881 msgid ""
882 "Don't mix terms like source of the program and the source package of the "
883 "program!"
884 msgstr "不要混淆程式原始碼和程式的原始碼套件這樣相似但有區別的概念!"
885
886 #. type: Content of: <book><chapter><section><para>
887 msgid "There are several role names used around Debian."
888 msgstr "在 Debian 社群中有幾個常見的角色。"
889
890 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
891 msgid ""
892 "<emphasis role=\"strong\">upstream author</emphasis>: The person who made "
893 "the original program."
894 msgstr ""
895 "<emphasis role=\"strong\">上游作者(upstream author)</emphasis>:程式的最原始"
896 "作者。"
897
898 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
899 msgid ""
900 "<emphasis role=\"strong\">upstream maintainer</emphasis>: The person who "
901 "currently maintains the program."
902 msgstr ""
903 "<emphasis role=\"strong\">上游維護者(upstream maintainer)</emphasis>:目前在"
904 "上游維護程式程式碼的人。"
905
906 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
907 msgid ""
908 "<emphasis role=\"strong\">maintainer</emphasis>: The person who makes Debian "
909 "package of the program."
910 msgstr ""
911 "<emphasis role=\"strong\">維護者(maintainer)</emphasis>:製作該程式的 Debian "
912 "套件的人。"
913
914 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
915 msgid ""
916 "<emphasis role=\"strong\">sponsor</emphasis>: The person who helps "
917 "maintainers to upload packages to the official Debian Package Archive after "
918 "checking their contents."
919 msgstr ""
920 "<emphasis role=\"strong\">保證人(sponsor)</emphasis>:檢査內容後幫助維護者上"
921 "傳套件到 Debian 官方倉庫的人。"
922
923 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
924 msgid ""
925 "<emphasis role=\"strong\">mentor</emphasis>: The person who helps novice "
926 "maintainers on packaging etc."
927 msgstr ""
928 "<emphasis role=\"strong\">指導者(mentor)</emphasis>:幫助維護者熟悉和深入打包"
929 "的人。"
930
931 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
932 msgid ""
933 "<emphasis role=\"strong\">Debian Developer</emphasis> (DD): The person who "
934 "is a member of Debian. He has full upload right to the official Debian "
935 "Package Archive."
936 msgstr ""
937 "<emphasis role=\"strong\">Debian Developer</emphasis> (DD):Debian 社群的官方"
938 "成員。DD 擁有向 Debian 官方倉庫上傳的全部權限。"
939
940 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
941 msgid ""
942 "<emphasis role=\"strong\">Debian Maintainer</emphasis> (DM): The person who "
943 "has limited upload right to the official Debian Package Archive."
944 msgstr ""
945 "<emphasis role=\"strong\">Debian Maintainer</emphasis> (DM):擁有對 Debian 官"
946 "方倉庫部分上傳權限的人。"
947
948 #. type: Content of: <book><chapter><section><para><footnote><para>
949 msgid ""
950 "See <ulink url=\"&policy-control;#s-f-Version\">Debian Policy Manual: 5.6.12 "
951 "Version</ulink>."
952 msgstr ""
953
954 #. type: Content of: <book><chapter><section><para>
955 #, fuzzy
956 #| msgid "There are several version names used around Debian."
957 msgid ""
958 "There are several version names<placeholder type=\"footnote\" id=\"0\"/> "
959 "used around Debian."
960 msgstr "Debian 中使用了幾種不同的版本號。"
961
962 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
963 msgid ""
964 "<emphasis role=\"strong\">upstream source version</emphasis>: The upstream "
965 "source version is referred as <literal><replaceable>version</replaceable></"
966 "literal>."
967 msgstr ""
968 "<emphasis role=\"strong\">上游原始碼版本</emphasis>:上游原始碼版本被指代爲 "
969 "<literal><replaceable>version</replaceable></literal>。"
970
971 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
972 msgid ""
973 "<emphasis role=\"strong\">Debian revision</emphasis>: The revision by Debian "
974 "on package is referred as <literal><replaceable>revision</replaceable></"
975 "literal>."
976 msgstr ""
977 "<emphasis role=\"strong\">Debian 版本</emphasis>:Debian 套件的版本被指代爲 "
978 "<literal><replaceable>revision</replaceable></literal>。"
979
980 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
981 msgid ""
982 "<emphasis role=\"strong\">Debian package version</emphasis>: The Debian "
983 "package version is referred as the following."
984 msgstr ""
985 "<emphasis role=\"strong\">Debian 套件版本</emphasis>:Debian 套件版本被按以下"
986 "規則指代。"
987
988 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
989 msgid ""
990 "<literal><replaceable>version</replaceable></literal> for the native Debian "
991 "binary package and for the Debian source package."
992 msgstr ""
993 "對於 Debian 創建的軟體,其原始碼套件的版本即爲上文所述的 "
994 "<literal><replaceable>version</replaceable></literal>。"
995
996 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
997 msgid ""
998 "<literal><replaceable>version</replaceable>-<replaceable>revision</"
999 "replaceable></literal> for the non-native Debian binary package."
1000 msgstr ""
1001 "對於不是 Debian 創建的軟體,其原始碼套件的版本爲 "
1002 "<literal><replaceable>version</replaceable>-<replaceable>revision</"
1003 "replaceable></literal>。"
1004
1005 #. type: Content of: <book><chapter><section><para><footnote><para>
1006 msgid ""
1007 "See lists in <xref linkend=\"socialdynamism\"/> and <xref linkend=\"needdocs"
1008 "\"/>."
1009 msgstr ""
1010
1011 #. type: Content of: <book><chapter><section><para>
1012 #, fuzzy
1013 #| msgid ""
1014 #| "Please read the other manuals if you need more details on terminology."
1015 msgid ""
1016 "Please read the other manuals if you need more details on terminology. "
1017 "<placeholder type=\"footnote\" id=\"0\"/>"
1018 msgstr "如果你需要更詳細地瞭解術語,請閱讀其他手冊。"
1019
1020 #. type: Content of: <book><chapter><section><title>
1021 msgid "Where to ask for help"
1022 msgstr "到何處尋求幫助"
1023
1024 #. type: Content of: <book><chapter><section><para>
1025 msgid ""
1026 "Before you decide to ask your question in some public place, please read the "
1027 "fine documentation."
1028 msgstr ""
1029
1030 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1031 #, fuzzy
1032 #| msgid "<filename>changelog</filename> file"
1033 msgid "files in <filename>/usr/share/doc/dpkg</filename>"
1034 msgstr "<filename>changelog</filename> 檔案"
1035
1036 #. /usr/share/doc/debian is used be doc-debian and debian-faq
1037 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1038 #, fuzzy
1039 #| msgid "Other files under the <filename>debian</filename> directory"
1040 msgid "files in <filename>/usr/share/doc/debian</filename>"
1041 msgstr "<filename>debian</filename> 目錄下的其他檔案"
1042
1043 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1044 #, fuzzy
1045 #| msgid "<filename>source/local-options</filename> file"
1046 msgid "files in <filename>/usr/share/doc/autotools-dev</filename>"
1047 msgstr "<filename>source/local-options</filename> 檔案"
1048
1049 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1050 #, fuzzy
1051 #| msgid "<filename><replaceable>package</replaceable>.info</filename> file"
1052 msgid ""
1053 "files in <filename>/usr/share/doc/<replaceable>package</replaceable></"
1054 "filename> for all pertinent packages"
1055 msgstr "<filename><replaceable>package</replaceable>.info</filename> 檔案"
1056
1057 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1058 msgid ""
1059 "contents of <literal><command>man</command> <replaceable>command</"
1060 "replaceable></literal> for all pertinent commands"
1061 msgstr ""
1062
1063 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1064 msgid ""
1065 "contents of <literal><command>info</command> <replaceable>command</"
1066 "replaceable></literal> for all pertinent commands"
1067 msgstr ""
1068
1069 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1070 #, fuzzy
1071 #| msgid ""
1072 #| "See <ulink url=\"&debian-mentors-ldo;\">&debian-mentors-ldo;</ulink> for "
1073 #| "more information about this mailing list."
1074 msgid ""
1075 "contents of <ulink url=\"&debian-mentors-ldo;\">debian-mentors@lists.debian."
1076 "org mailing list archive</ulink>"
1077 msgstr ""
1078 "關於此郵件列表,參考 <ulink url=\"&debian-mentors-ldo;\">&debian-mentors-ldo;"
1079 "</ulink>"
1080
1081 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1082 msgid ""
1083 "contents of <ulink url=\"&debian-devel-ldo;\">debian-devel@lists.debian.org "
1084 "mailing list archive</ulink>"
1085 msgstr ""
1086
1087 #. type: Content of: <book><chapter><section><para>
1088 msgid ""
1089 "Please consider to use web search engine effectively by including search "
1090 "string such as <literal>site:lists.debian.org</literal> to limit the domain."
1091 msgstr ""
1092
1093 #. type: Content of: <book><chapter><section><para>
1094 msgid ""
1095 "Making a small test package is good way to learn details of packaging. "
1096 "Inspecting existing well maintained packages is the best way to learn how "
1097 "other people make packages."
1098 msgstr ""
1099 "製作小的測試套件是學習打包的好方法,仔細査看維護較好的套件則是瞭解他人如何製"
1100 "作套件的最佳辦法。"
1101
1102 #. type: Content of: <book><chapter><section><para>
1103 msgid ""
1104 "If you still have questions about packaging that you couldn't find answers "
1105 "to in the available documentation and web resources, you can ask them "
1106 "interactively."
1107 msgstr ""
1108
1109 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1110 #, fuzzy
1111 #| msgid ""
1112 #| "See <ulink url=\"&debian-mentors-ldo;\">&debian-mentors-ldo;</ulink> for "
1113 #| "more information about this mailing list."
1114 msgid ""
1115 "<ulink url=\"&debian-mentors-ldo;\">debian-mentors@lists.debian.org mailing "
1116 "list</ulink>. (This mailing list is for the novice.)"
1117 msgstr ""
1118 "關於此郵件列表,參考 <ulink url=\"&debian-mentors-ldo;\">&debian-mentors-ldo;"
1119 "</ulink>"
1120
1121 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1122 msgid ""
1123 "<ulink url=\"&debian-devel-ldo;\">debian-devel@lists.debian.org mailing "
1124 "list</ulink>. (This mailing list is for the expert.)"
1125 msgstr ""
1126
1127 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1128 msgid ""
1129 "<ulink url=\"&irc-debian;\">IRC</ulink> such as <literal>#debian-mentors</"
1130 "literal>."
1131 msgstr ""
1132
1133 #. type: Content of: <book><chapter><section><para>
1134 msgid ""
1135 "The more experienced Debian developers will gladly help you, if you ask "
1136 "properly after making your required efforts."
1137 msgstr ""
1138
1139 #. type: Content of: <book><chapter><section><para>
1140 #, fuzzy
1141 #| msgid ""
1142 #| "When you receive a bug report (yes, actual bug reports!), you will know "
1143 #| "that it is time for you to dig into the <ulink url=\"&bts;\">Debian Bug "
1144 #| "Tracking System</ulink> and read the documentation there, to be able to "
1145 #| "deal with the reports efficiently. I highly recommend reading the <ulink "
1146 #| "url=\"&devref-bug-handling;\">Developer's Reference, 5.8. 'Handling "
1147 #| "bugs'</ulink>."
1148 msgid ""
1149 "When you receive a bug report (yes, actual bug reports!), you will know that "
1150 "it is time for you to dig into the <ulink url=\"&bts;\">Debian Bug Tracking "
1151 "System</ulink> and read the documentation there, to be able to deal with the "
1152 "reports efficiently. I highly recommend reading the <ulink url=\"&devref-"
1153 "bug-handling;\">Debian Developer's Reference, 5.8. 'Handling bugs'</ulink>."
1154 msgstr ""
1155 "當你收到一個 Bug 報告後(沒錯,真正的 Bug 報告!),你需要研究 <ulink url="
1156 "\"&bts;\">Debian Bug Tracking System</ulink> (Debian Bug 跟蹤系統,BTS)並閱讀"
1157 "相關的文件以便高效處理這些報告。我推薦閱讀 <ulink url=\"&devref-bug-handling;"
1158 "\">Developer's Reference, 5.8. 'Handling bugs'</ulink>"
1159
1160 #. type: Content of: <book><chapter><section><para>
1161 msgid ""
1162 "Even if it all worked well, it's time to start praying. Why? Because in "
1163 "just a few hours (or days) users from all around the world will start to use "
1164 "your package, and if you made some critical error you'll get mailbombed by "
1165 "numerous angry Debian users... Just kidding. :-)"
1166 msgstr ""
1167 "即使以上的問題都解決了,也不能高興得太早。爲什麼?因爲幾個小時或幾天內就會有"
1168 "人開始使用你的套件,如果你犯了某些嚴重的錯誤,將被無數生氣的 Debian 用戶的郵"
1169 "件所轟炸…… 只是開個玩笑。:-)"
1170
1171 #. type: Content of: <book><chapter><section><para>
1172 msgid ""
1173 "Relax and be ready for bug reports, because there is a lot more work to be "
1174 "done before your package will be fully in line with Debian policies and its "
1175 "best practice guidelines (once again, read the <emphasis>real documentation</"
1176 "emphasis> for details). Good luck!"
1177 msgstr ""
1178 "放鬆一點並準備好處理 Bug 報告,在你的套件完全符合 Debian 的各項規範前還需要付"
1179 "出很多努力,處理 Bug 也是對你很好的鍛煉(再一次提醒,閱讀那些 <emphasis>必須的"
1180 "文件</emphasis> 來了解詳情)。祝你好運!"
1181
1182 #. type: Content of: <book><chapter><title>
1183 msgid "First steps"
1184 msgstr "第一步"
1185
1186 #. type: Content of: <book><chapter><para>
1187 msgid ""
1188 "Let's try to make your own package (or, better even, adopt an existing one)."
1189 msgstr "讓我們嘗試創建一個自己的套件(“收養”一個已存在的套件則更好)。"
1190
1191 #. type: Content of: <book><chapter><section><title>
1192 msgid "Choose your program"
1193 msgstr "選擇你的程式"
1194
1195 #. type: Content of: <book><chapter><section><para>
1196 #, fuzzy
1197 #| msgid ""
1198 #| "You have probably chosen the package you want to create. The first thing "
1199 #| "you need to do is check if the package is in the distribution archive "
1200 #| "already by using <command>aptitude</command>."
1201 msgid ""
1202 "You have probably chosen the package you want to create. The first thing "
1203 "you need to do is check if the package is in the distribution archive "
1204 "already by using the following."
1205 msgstr ""
1206 "可能你已經選好了要製作的套件。第一件要做的事是使用 <command>aptitude</"
1207 "command> 檢査它是否已經存在於發行版倉庫中了。"
1208
1209 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1210 #, fuzzy
1211 #| msgid "<command>debc</command> command"
1212 msgid "the <command>aptitude</command> command"
1213 msgstr "<command>debc</command> 命令"
1214
1215 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1216 #, fuzzy
1217 #| msgid "<ulink url=\"&debian-packages-git;\">debian packages in git</ulink>"
1218 msgid "<ulink url=\"&packages-do;\">Debian packages</ulink> web page"
1219 msgstr "<ulink url=\"&debian-packages-git;\">debian packages in git</ulink>"
1220
1221 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1222 #, fuzzy
1223 #| msgid "<ulink url=\"&debian-packages-git;\">debian packages in git</ulink>"
1224 msgid ""
1225 "<ulink url=\"&packages-qa-do;\">Debian Package Tracking System</ulink> web "
1226 "page"
1227 msgstr "<ulink url=\"&debian-packages-git;\">debian packages in git</ulink>"
1228
1229 #. type: Content of: <book><chapter><section><para><footnote><para>
1230 #, fuzzy
1231 #| msgid ""
1232 #| "For more help about these, check in <ulink url=\"&developers-reference;"
1233 #| "\">Debian Developer's Reference</ulink>."
1234 msgid ""
1235 "See <ulink url=\"&devref-adopt;\">Debian Developer's Reference 5.9.5. "
1236 "'Adopting a package'</ulink>."
1237 msgstr ""
1238 "關於這些問題的更多幫助,査看 <ulink url=\"&developers-reference;\">Debian "
1239 "Developer's Reference</ulink>。"
1240
1241 #. type: Content of: <book><chapter><section><para>
1242 #, fuzzy
1243 #| msgid ""
1244 #| "If the package already exists, well, install it! :-) If it happens to be "
1245 #| "<emphasis role=\"strong\">orphaned</emphasis> -- if its maintainer is set "
1246 #| "to <ulink url=\"&qa-do;\">Debian QA Group</ulink>, you may be able to "
1247 #| "pick it up if it's still available (check the ownership status at <ulink "
1248 #| "url=\"&wnpp-bts;\">Debian Bug report logs: Bugs in package wnpp in "
1249 #| "unstable</ulink>). You may also adopt a package for which the "
1250 #| "corresponding maintainer has filed a Request for Adoption (<emphasis role="
1251 #| "\"strong\">RFA</emphasis>)."
1252 msgid ""
1253 "If the package already exists, well, install it! :-) If it happens to be "
1254 "<emphasis role=\"strong\">orphaned</emphasis> -- if its maintainer is set to "
1255 "<ulink url=\"&qa-do;\">Debian QA Group</ulink>, you may be able to pick it "
1256 "up if it's still available. You may also adopt a package for which the "
1257 "corresponding maintainer has filed a Request for Adoption (<emphasis role="
1258 "\"strong\">RFA</emphasis>).<placeholder type=\"footnote\" id=\"0\"/>"
1259 msgstr ""
1260 "如果套件已經存在,直接安裝就好了!:-) 如果它是被 <emphasis role=\"strong\">拋"
1261 "棄(orphaned)</emphasis> 的——也就是說它的維護者被設置爲 <ulink url=\"&qa-do;"
1262 "\">Debian QA Group</ulink>,那麼你可以嘗試接手維護它(在 <ulink url=\"&wnpp-"
1263 "bts;\">Debian Bug report logs: Bugs in package wnpp in unstable</ulink> 檢査"
1264 "它的維護者訊息)。你也可以“收養”維護者發出“Request for Adoption”(<emphasis "
1265 "role=\"strong\">RFA</emphasis>)請求的套件。"
1266
1267 #. type: Content of: <book><chapter><section><para>
1268 #, fuzzy
1269 #| msgid "There are several role names used around Debian."
1270 msgid "There are several package ownership status resources."
1271 msgstr "在 Debian 社群中有幾個常見的角色。"
1272
1273 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1274 msgid "<ulink url=\"&wnpp-do;\">Work-Needing and Prospective Packages</ulink>"
1275 msgstr "<ulink url=\"&wnpp-do;\">Work-Needing and Prospective Packages</ulink>"
1276
1277 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1278 #, fuzzy
1279 #| msgid ""
1280 #| "<ulink url=\"&wnpp-debtags;\">Browse WNPP bugs based on debtags</ulink>"
1281 msgid ""
1282 "<ulink url=\"&wnpp-bts;\">Debian Bug report logs: Bugs in pseudo-package "
1283 "<systemitem role=\"package\">wnpp</systemitem> in <literal>unstable</"
1284 "literal></ulink>"
1285 msgstr ""
1286 "<ulink url=\"&wnpp-debtags;\">Browse WNPP bugs based on debtags</ulink>"
1287
1288 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1289 msgid "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>"
1290 msgstr "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>"
1291
1292 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1293 msgid ""
1294 "<ulink url=\"&wnpp-debtags;\">Browse <systemitem role=\"package\">wnpp</"
1295 "systemitem> bugs based on debtags</ulink>"
1296 msgstr ""
1297 "<ulink url=\"&wnpp-debtags;\">Browse <systemitem role=\"package\">wnpp</"
1298 "systemitem> bugs based on debtags</ulink>"
1299
1300 #. type: Content of: <book><chapter><section><para><footnote><para>
1301 msgid ""
1302 "Having said that, there will of course always be new programs that are "
1303 "worthwhile packaging."
1304 msgstr "當然,也一定總是有值得打包的新軟體。"
1305
1306 #. type: Content of: <book><chapter><section><para>
1307 msgid ""
1308 "As a side note, it's important to point out that Debian already has packages "
1309 "for most kinds of programs, and the number of packages already in the Debian "
1310 "archive is much larger than that of contributors with upload rights. Thus, "
1311 "contributions to packages already in the archive are far more appreciated "
1312 "(and more likely to receive sponsorship) by other developers <placeholder "
1313 "type=\"footnote\" id=\"0\"/>. You can do that in various ways."
1314 msgstr ""
1315 "僅作爲一筆旁註,Debian 已經擁有了絕大多數類型軟體的套件,倉庫中套件的數量也遠"
1316 "遠超過了有上傳權限的貢獻者的數量。因此,爲已經在倉庫中的套件貢獻力量是非常受"
1317 "其他開發者歡迎的(且更容易獲得 sponsorship)<placeholder type=\"footnote\" id="
1318 "\"0\"/>。你可以通過非常多的方式來實現這一目的。"
1319
1320 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1321 msgid "taking over orphaned, yet actively used, packages"
1322 msgstr "接手被拋棄而仍然被很多人使用的套件。"
1323
1324 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1325 msgid "joining <ulink url=\"&teams;\">packaging teams</ulink>"
1326 msgstr "加入 <ulink url=\"&teams;\">打包小組</ulink>。"
1327
1328 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1329 msgid "triaging bugs of very popular packages"
1330 msgstr "爲某些常用的套件分類 Bug。"
1331
1332 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1333 msgid "preparing <ulink url=\"&devref-nmu;\">QA or NMU uploads</ulink>"
1334 msgstr "在需要時準備 <ulink url=\"&devref-nmu;\">QA 或 NMU 上傳</ulink>。"
1335
1336 #. type: Content of: <book><chapter><section><para>
1337 msgid ""
1338 "If you are able to adopt the package, get the sources (with something like "
1339 "<literal>apt-get source <replaceable>packagename</replaceable></literal>) "
1340 "and examine them. This document unfortunately doesn't include comprehensive "
1341 "information about adopting packages. Thankfully you shouldn't have a hard "
1342 "time figuring out how the package works since someone has already done the "
1343 "initial set up for you. Keep reading, though, a lot of the advice below "
1344 "will still be applicable for your case."
1345 msgstr ""
1346 "如果你有能力“收養”那個套件,下載(使用 <literal>apt-get source "
1347 "<replaceable>packagename</replaceable></literal> 或其他類似的工具)並分析它的"
1348 "程式碼。這篇文件沒有包含如何接手套件的詳細訊息,但幸運的是因爲接手套件時起始"
1349 "的工作已經有人完成,接手的工作應比從頭開始輕鬆得多。儘管如此,請繼續閱讀,下"
1350 "面給出的建議會對你很有幫助。"
1351
1352 #. type: Content of: <book><chapter><section><para>
1353 msgid ""
1354 "If the package is new, and you decide you'd like to see it in Debian, "
1355 "proceed as follows:"
1356 msgstr ""
1357 "如果你要製作的套件是全新的,並且希望它出現在 Debian 中,請按照以下的步驟進"
1358 "行:"
1359
1360 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1361 msgid ""
1362 "First, you must know that program works, and have tried it for some time to "
1363 "confirm its usefulness."
1364 msgstr "首先,你必須知道這個軟體能夠工作,並且需要試用一段時間。"
1365
1366 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1367 #, fuzzy
1368 #| msgid ""
1369 #| "You must check if no one else is working on the package already at <ulink "
1370 #| "url=\"&wnpp-packaged;\">the list of packages being worked on</ulink>. If "
1371 #| "no one else is working on it, file an ITP (Intent To Package) bug report "
1372 #| "to the <systemitem role=\"package\">wnpp</systemitem> pseudo-package "
1373 #| "using <command>reportbug</command>. If someone's already on it, contact "
1374 #| "them if you feel you need to. If not - find another interesting program "
1375 #| "that nobody maintains."
1376 msgid ""
1377 "You must check if no one else is working on the package already at the "
1378 "<ulink url=\"&wnpp-do;\">Work-Needing and Prospective Packages</ulink> "
1379 "site. If no one else is working on it, file an ITP (Intent To Package) bug "
1380 "report to the <systemitem role=\"package\">wnpp</systemitem> pseudo-package "
1381 "using <command>reportbug</command>. If someone's already on it, contact "
1382 "them if you feel you need to. If not - find another interesting program "
1383 "that nobody maintains."
1384 msgstr ""
1385 "你必須在 <ulink url=\"&wnpp-do;being_packaged\">正在被處理的套件列表</ulink> "
1386 "上査看以確定沒有其他人已經開始了工作。如果沒有,則提交一份 ITP (Intent To "
1387 "Package) Bug 報告到 <systemitem role=\"package\">wnpp</systemitem> pseudo 套"
1388 "件(可以使用 <command>reportbug</command>)。如果已經有人在處理,則在需要的情況"
1389 "下聯繫他或他們。如果不需要你的幫助,就尋找其他你感興趣且沒有人維護的套件。"
1390
1391 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1392 msgid "That program <emphasis role=\"strong\">must have a license</emphasis>."
1393 msgstr "軟體 <emphasis role=\"strong\">必須有一個許可證</emphasis>。"
1394
1395 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
1396 msgid ""
1397 "For the <literal>main</literal> section, it <emphasis role=\"strong\">must "
1398 "be compliant to all the Debian Free Software Guidelines</emphasis> (<ulink "
1399 "url=\"&dfsg;\">DFSG</ulink>) and <emphasis role=\"strong\">that program "
1400 "must not require a package outside of <literal>main</literal></emphasis> for "
1401 "compilation or execution as required by the Debian Policy. This is desired "
1402 "case."
1403 msgstr ""
1404
1405 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
1406 msgid ""
1407 "For the <literal>contrib</literal> section, it must be compliant to all the "
1408 "DFSG but it may require a package outside of <literal>main</literal> for "
1409 "compilation or execution."
1410 msgstr ""
1411 "對於 <literal>contrib</literal> 類的軟體,其許可證必須滿足 DFSG 的全部條件,"
1412 "但可以依賴於 <literal>main</literal> 之外的套件以完成編譯或運行。"
1413
1414 #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para>
1415 msgid ""
1416 "For the <literal>non-free</literal> section, it may not be compliant to some "
1417 "of the DFSG but it <emphasis role=\"strong\">must be distributable</"
1418 "emphasis>."
1419 msgstr ""
1420 "對於 <literal>non-free</literal> 類的軟體,其許可證可以不滿足 DFSG 中的一些條"
1421 "件,但至少需要是 <emphasis role=\"strong\">可以散佈的</emphasis>。"
1422
1423 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1424 msgid ""
1425 "If you are unsure about where it should go, post the license text on <ulink "
1426 "url=\"&debian-legal-ldo;\">debian-legal@lists.debian.org</ulink> and ask for "
1427 "advice."
1428 msgstr ""
1429 "如果你不清楚你的軟體應該分入哪一類,則把許可證文本發送到 <ulink url="
1430 "\"&debian-legal-ldo;\">debian-legal@lists.debian.org</ulink> 請他人提出意見。"
1431
1432 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1433 msgid ""
1434 "That program certainly should <emphasis role=\"strong\">not</emphasis> run "
1435 "setuid root, or even better - it shouldn't need to be setuid or setgid to "
1436 "anything."
1437 msgstr ""
1438 "程式 <emphasis role=\"strong\">不應該</emphasis> setuid 到 root,甚至可以更好"
1439 "——不 setuid 或 setgid 到任何用戶或組。"
1440
1441 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1442 msgid ""
1443 "That program should not be a daemon, or something that goes in <filename>*/"
1444 "sbin</filename> directories, or open a port as root."
1445 msgstr ""
1446 "這個程式不應該是守護進程,也不應該安裝檔案到 <filename>*/sbin</filename> 目錄"
1447 "或者以 root 打開任何端口。"
1448
1449 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1450 msgid ""
1451 "That program should result in binary executable form, libraries are harder "
1452 "to handle."
1453 msgstr "程式應當最終以二進位可執行程式的形式呈現,函式庫則較難處理。"
1454
1455 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1456 msgid ""
1457 "That program should be well documented and its code needs to be "
1458 "understandable (i.e. not obfuscated)."
1459 msgstr "程式應當有很好的文件,最好原始碼也容易理解(比如不混亂)。"
1460
1461 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
1462 msgid ""
1463 "You should contact program's author(s) to check if they agree with packaging "
1464 "it and amicable to Debian. It is important to be able to consult with author"
1465 "(s) about the program in case of any program specific problems, so don't "
1466 "try to package unmaintained pieces of software."
1467 msgstr ""
1468 "你應該與程式的作者取得聯繫問一下他是否認爲程式應當被打包,以及他是否對 "
1469 "Debian 友好。能夠詢問作者關於程式的任何問題是非常重要的,不要嘗試打包一個無人"
1470 "維護的軟體。"
1471
1472 #. type: Content of: <book><chapter><section><para>
1473 #, fuzzy
1474 #| msgid ""
1475 #| "Of course, these things are just safety measures, and intended to save "
1476 #| "you from raging users if you do something wrong in some setuid daemon... "
1477 #| "When you gain some more experience in packaging, you'll be able to do "
1478 #| "such packages, but even the experienced developers consult the <ulink url="
1479 #| "\"&debian-mentors-ldo;\">debian-mentors@lists.debian.org</ulink> mailing "
1480 #| "list when they are in doubt. And people there will gladly help."
1481 msgid ""
1482 "Of course, these things are just safety measures, and intended to save you "
1483 "from raging users if you do something wrong in some setuid daemon... When "
1484 "you gain some more experience in packaging, you'll be able to package such "
1485 "packages."
1486 msgstr ""
1487 "當然,這些問題都只是爲了安全,並試圖讓你不至於在比如 setuid 守護進程等問題上"
1488 "犯錯誤而激怒了用戶... 當你在打包方面有了更多經驗時,就可以處理這些套件了。但"
1489 "即便是富有經驗的開發人員在遇到疑惑時也會發郵件到 <ulink url=\"&debian-"
1490 "mentors-ldo;\">debian-mentors@lists.debian.org</ulink> 郵件列表諮詢,那裏的人"
1491 "會很樂意提供幫助。"
1492
1493 #. type: Content of: <book><chapter><section><title>
1494 msgid "Get the program, and try it out"
1495 msgstr "獲得程式,並且試用它"
1496
1497 #. type: Content of: <book><chapter><section><para>
1498 msgid ""
1499 "So the first thing to do is to find and download the original source code. "
1500 "I presume that you already have the source file that you picked up at the "
1501 "author's homepage. Sources for free Unix programs usually come in "
1502 "<command>tar</command>+<command>gzip</command> format with extension "
1503 "<filename>.tar.gz</filename>, or <command>tar</command>+<command>bzip2</"
1504 "command> format with extension <filename>.tar.bz2</filename>. These usually "
1505 "contain the subdirectory called <filename><replaceable>programname</"
1506 "replaceable>-<replaceable>version</replaceable></filename> in them and all "
1507 "the sources under it."
1508 msgstr ""
1509 "第一件要做的事就是找到並下載原始的原始碼。我假定你已經從作者的首頁上找到了它"
1510 "的原始碼。Unix 下的自由軟體原始碼通常是以 <command>tar</command>"
1511 "+<command>gzip</command> 格式(副檔名爲 <filename>.tar.gz</filename>)或 "
1512 "<command>tar</command>+<command>bzip2</command> 格式(副檔名爲 <filename>.tar."
1513 "bz2</filename>)的形式提供的。通常壓縮檔中包含了一個名爲 "
1514 "<filename><replaceable>programname</replaceable>-<replaceable>version</"
1515 "replaceable></filename> 的子目錄,裏面包含了全部的原始碼。"
1516
1517 #. type: Content of: <book><chapter><section><para>
1518 msgid ""
1519 "If the latest version of such sources are available through VCS such as Git, "
1520 "Subversion, or CVS repository, you need to get it with <literal>git clone</"
1521 "literal>, <literal>svn co</literal>, or <literal>cvs co</literal> and repack "
1522 "it into <command>tar</command>+<command>gzip</command> format by yourself "
1523 "using the <literal>--exclude-vcs</literal> option."
1524 msgstr ""
1525
1526 #. type: Content of: <book><chapter><section><para><footnote><para>
1527 msgid ""
1528 "You can identify the archive format using the <command>file</command> "
1529 "command when the file extension is not enough."
1530 msgstr ""
1531 "當檔案副檔名不足以判斷檔案類型時,可以使用 <command>file</command> 命令來判"
1532 "斷。"
1533
1534 #. type: Content of: <book><chapter><section><para>
1535 msgid ""
1536 "If your program's source comes as some other sort of archive (for instance, "
1537 "the filename ends in <filename>.Z</filename> or <filename>.zip</"
1538 "filename><placeholder type=\"footnote\" id=\"0\"/>), unpack it with "
1539 "appropriate tools and repack it, too."
1540 msgstr ""
1541 "如果你的程式原始碼是以其他形式提供的(比如檔案名以 <filename>.Z</filename> 或 "
1542 "<filename>.zip</filename> 結尾<placeholder type=\"footnote\" id=\"0\"/>),則"
1543 "使用合適的工具將其解壓縮,再重新打包。"
1544
1545 #. type: Content of: <book><chapter><section><para><footnote><para>
1546 #, fuzzy
1547 #| msgid ""
1548 #| "This program is already packaged. Current version 0.15.3 has changed "
1549 #| "substantially from the version 0.9.12 in the following examples."
1550 msgid ""
1551 "This program is already packaged. Its <ulink url=\"&gentoo-package;"
1552 "\">current version</ulink> uses Autotools as its build structure and is "
1553 "substantially different from the following examples based on the version "
1554 "0.9.12."
1555 msgstr ""
1556 "需要注意的是,這個程式已經被打包好了,並且從寫這篇文件之初到現在它已經發生了"
1557 "很大的變化。"
1558
1559 #. type: Content of: <book><chapter><section><para>
1560 #, fuzzy
1561 #| msgid ""
1562 #| "As an example, I'll use a program called <command>gentoo</command>, an X "
1563 #| "GTK+ file manager.<placeholder type=\"footnote\" id=\"0\"/>"
1564 msgid ""
1565 "As an example, I'll use a program called <command>gentoo</command>, an X GTK"
1566 "+ file manager. <placeholder type=\"footnote\" id=\"0\"/>"
1567 msgstr ""
1568 "作爲範例,我將使用一個名爲 <command>gentoo</command> 的程式,它是一個 X GTK+ "
1569 "檔案管理器。<placeholder type=\"footnote\" id=\"0\"/>"
1570
1571 #. type: Content of: <book><chapter><section><para>
1572 msgid ""
1573 "Create a subdirectory under your home directory named <filename>debian</"
1574 "filename> or <filename>deb</filename> or anything you find appropriate (e."
1575 "g. just <filename>~/gentoo</filename> would do fine in this case). Place "
1576 "the downloaded archive in it, and extract it (with <literal>tar xzf "
1577 "gentoo-0.9.12.tar.gz</literal>). Make sure there are no errors, even some "
1578 "<emphasis>irrelevant</emphasis> ones, because there will most probably be "
1579 "problems unpacking on other people's systems, whose unpacking tools may or "
1580 "may not ignore those anomalies. On your console screen, you should see the "
1581 "following."
1582 msgstr ""
1583 "在你的用戶主目錄下創建一個子目錄,命名爲 <filename>debian</filename> 或 "
1584 "<filename>deb</filename> 或任意你覺得合適的其他名字(本例中使用 <filename>~/"
1585 "gentoo</filename>)。把下載好的壓縮檔放在其中並解壓縮(使用 <literal>tar xzf "
1586 "gentoo-0.9.12.tar.gz</literal> 命令)。要確定解壓縮過程中沒有發生錯誤,即便是"
1587 "有一點 <emphasis>不恰當</emphasis> 也不行,因爲在別人的系統上解壓縮這些檔案"
1588 "時,如果他們的工具並不忽略這些反常的現象就會出現問題。在你的終端螢幕上,應該"
1589 "看到如下的情形。"
1590
1591 #. type: Content of: <book><chapter><section><screen>
1592 #, no-wrap
1593 msgid ""
1594 "$ mkdir ~/gentoo ; cd ~/gentoo\n"
1595 "$ wget http://<replaceable>www.example.org</replaceable>/gentoo-0.9.12.tar.gz\n"
1596 "$ tar xvzf gentoo-0.9.12.tar.gz\n"
1597 "$ ls -F\n"
1598 "gentoo-0.9.12/\n"
1599 "gentoo-0.9.12.tar.gz\n"
1600 msgstr ""
1601 "$ mkdir ~/gentoo ; cd ~/gentoo\n"
1602 "$ wget http://<replaceable>www.example.org</replaceable>/gentoo-0.9.12.tar.gz\n"
1603 "$ tar xvzf gentoo-0.9.12.tar.gz\n"
1604 "$ ls -F\n"
1605 "gentoo-0.9.12/\n"
1606 "gentoo-0.9.12.tar.gz\n"
1607
1608 #. type: Content of: <book><chapter><section><para>
1609 msgid ""
1610 "Now you have another subdirectory, called <filename>gentoo-0.9.12</"
1611 "filename>. Change to that directory and <emphasis>thoroughly</emphasis> "
1612 "read the provided documentation. Usually there are files named "
1613 "<filename>README*</filename>, <filename>INSTALL*</filename>, <filename>*."
1614 "lsm</filename> or <filename>*.html</filename>. You must find instructions "
1615 "on how to correctly compile and install the program (most probably they'll "
1616 "assume you want to install to <filename>/usr/local/bin</filename> directory; "
1617 "you won't be doing that, but more on that later in <xref linkend=\"destdir\"/"
1618 ">)."
1619 msgstr ""
1620 "現在又有了一個新的子目錄,名爲 <filename>gentoo-0.9.12</filename>。進入該目錄"
1621 "並 <emphasis>徹底</emphasis> 讀完其中的文件。通常情況下這些文件被命名爲 "
1622 "<filename>README*</filename>、<filename>INSTALL*</filename>、<filename>*."
1623 "lsm</filename> 或 <filename>*.html</filename>。你必須找到關於如何正確編譯和安"
1624 "裝程式的指導(最可能的是他們會默認你希望把程式安裝到 <filename>/usr/local/"
1625 "bin</filename> 目錄,但事實上你不能那樣做,詳細的內容稍後將在 <xref linkend="
1626 "\"destdir\"/> 中說明)。"
1627
1628 #. type: Content of: <book><chapter><section><para><footnote><para>
1629 msgid ""
1630 "Many modern programs come with a script <filename>configure</filename> which "
1631 "creates a <filename>Makefile</filename> file customized for your system upon "
1632 "its execution."
1633 msgstr ""
1634
1635 #. type: Content of: <book><chapter><section><para>
1636 #, fuzzy
1637 #| msgid ""
1638 #| "Simple programs come with a <filename>Makefile</filename> file in them "
1639 #| "and can be compiled simply with <literal>make</literal>. Some of them "
1640 #| "support <literal>make check</literal>, which runs included self-checks. "
1641 #| "Installation to the destination directories is usually done with "
1642 #| "<literal>make install</literal>."
1643 msgid ""
1644 "Simple programs come with a <filename>Makefile</filename> file in them and "
1645 "can be compiled simply with <literal>make</literal>.<placeholder type="
1646 "\"footnote\" id=\"0\"/> Some of them support <literal>make check</literal>, "
1647 "which runs included self-checks. Installation to the destination "
1648 "directories is usually done with <literal>make install</literal>."
1649 msgstr ""
1650 "帶有 <filename>Makefile</filename> 檔案的簡單程式可以很容易地使用 "
1651 "<literal>make</literal> 來編譯。其中的一些還支持 <literal>make check</"
1652 "literal>,可以完成一系列自身測試。編譯好後可以使用 <literal>make install</"
1653 "literal> 來將程式安裝到目標目錄。"
1654
1655 #. type: Content of: <book><chapter><section><para>
1656 msgid ""
1657 "Now try to compile and run your program, to make sure it works properly and "
1658 "doesn't break something else while it's installing or running."
1659 msgstr ""
1660 "現在嘗試編譯和運行你的程式,確保它工作正常,且在安裝和運行時不會導致其他問"
1661 "題。"
1662
1663 #. type: Content of: <book><chapter><section><para>
1664 msgid ""
1665 "Also, you can usually run <literal>make clean</literal> (or better "
1666 "<literal>make distclean</literal>) to clean up the build directory. "
1667 "Sometimes there's even a <literal>make uninstall</literal> which can be used "
1668 "to remove all the installed files."
1669 msgstr ""
1670 "你還可以運行 <literal>make clean</literal> (或更好的 <literal>make "
1671 "distclean</literal>)來清理編譯目錄。有時還會帶有 <literal>make uninstall</"
1672 "literal> 用以反安裝已經安裝了的檔案。"
1673
1674 #. type: Content of: <book><chapter><section><title>
1675 msgid "Free portable programs"
1676 msgstr "自由的可移植程式"
1677
1678 #. type: Content of: <book><chapter><section><para>
1679 #, fuzzy
1680 #| msgid ""
1681 #| "A lot of Free programs are written in the <ulink url=\"&cxx;_"
1682 #| "(programming_language)\">C</ulink> and <ulink url=\"&cxx;++\">C++</ulink> "
1683 #| "languages. Many of these use Autotools or CMake to make them portable "
1684 #| "across different platforms. These tools are used to generate "
1685 #| "<filename>Makefile</filename> and other required source files. Then, "
1686 #| "such programs are built with usual <literal>make; make install</literal>."
1687 msgid ""
1688 "A lot of Free programs are written in the <ulink url=\"&c-program;\">C</"
1689 "ulink> and <ulink url=\"&cxx;\">C++</ulink> languages. Many of these use "
1690 "Autotools or CMake to make them portable across different platforms. These "
1691 "tools are used to generate <filename>Makefile</filename> and other required "
1692 "source files. Then, such programs are built with usual <literal>make; make "
1693 "install</literal>."
1694 msgstr ""
1695 "非常多的自由軟體是使用 <ulink url=\"&cxx;_(programming_language)\">C</ulink> "
1696 "和 <ulink url=\"&cxx;++\">C++</ulink> 語言編寫的。其中的有很多使用 Autotools "
1697 "或 CMake 來使其可以在不同平臺上移植。這些工具被用於生成 <filename>Makefile</"
1698 "filename> 和其他必須的源檔案,然後這些程式可以使用正常的 <literal>make; make "
1699 "install</literal> 來編譯和安裝。"
1700
1701 #. type: Content of: <book><chapter><section><para><footnote><para>
1702 #, fuzzy
1703 #| msgid ""
1704 #| "See <ulink url=\"&autotools-tutorial;\">Autotools Tutorial</ulink> and "
1705 #| "<filename>/usr/share/doc/autotools-dev/README.Debian.gz</filename>."
1706 msgid ""
1707 "See <ulink url=\"&autotools-tutorial;\">Autotools Tutorial</ulink> and "
1708 "<ulink url=\"&autotools-readme;\"/>."
1709 msgstr ""
1710 "參考 <ulink url=\"&autotools-tutorial;\">Autotools Tutorial</ulink> 和 "
1711 "<filename>/usr/share/doc/autotools-dev/README.Debian.gz</filename>。"
1712
1713 #. type: Content of: <book><chapter><section><para>
1714 msgid ""
1715 "<ulink url=\"&gnu-build-system;\">Autotools</ulink> are the GNU build system "
1716 "comprising <ulink url=\"&autoconf;\">Autoconf</ulink>, <ulink url="
1717 "\"&automake;\">Automake</ulink>, <ulink url=\"&libtool;\">Libtool</ulink>, "
1718 "and <ulink url=\"&gettext;\">gettext</ulink>. You can notice such sources "
1719 "by the <filename>configure.ac</filename>, <filename>Makefile.am</filename>, "
1720 "and <filename>Makefile.in</filename> files. <placeholder type=\"footnote\" "
1721 "id=\"0\"/>"
1722 msgstr ""
1723 "<ulink url=\"&gnu-build-system;\">Autotools</ulink> 是 GNU 編譯系統工具,包"
1724 "括 <ulink url=\"&autoconf;\">Autoconf</ulink>、<ulink url=\"&automake;"
1725 "\">Automake</ulink>、<ulink url=\"&libtool;\">Libtool</ulink> 和 <ulink url="
1726 "\"&gettext;\">gettext</ulink>。你可以通過 <filename>configure.ac</filename>、"
1727 "<filename>Makefile.am</filename> 和 <filename>Makefile.in</filename> 等檔案來"
1728 "識別這種類型的原始碼。<placeholder type=\"footnote\" id=\"0\"/>"
1729
1730 #. type: Content of: <book><chapter><section><para>
1731 msgid ""
1732 "The first step of Autotools work flow is usually that the upstream runs "
1733 "<literal>autoreconf -i -f</literal> in the source and distributes this "
1734 "source with generated files."
1735 msgstr ""
1736 "使用 Autotools 的第一步是上游作者在程式碼中運行 <literal>autoreconf -i -f</"
1737 "literal> 並把生成的檔案同原始碼一起散佈。"
1738
1739 #. type: Content of: <book><chapter><section><screen>
1740 #, no-wrap
1741 msgid ""
1742 "configure.ac-----+-&gt; autoreconf -+-&gt; configure\n"
1743 "Makefile.am -----+ | +-&gt; Makefile.in\n"
1744 "src/Makefile.am -+ | +-&gt; src/Makefile.in\n"
1745 " | +-&gt; config.h.in\n"
1746 " automake\n"
1747 " aclocal\n"
1748 " aclocal.m4\n"
1749 " autoheader\n"
1750 msgstr ""
1751 "configure.ac-----+-&gt; autoreconf -+-&gt; configure\n"
1752 "Makefile.am -----+ | +-&gt; Makefile.in\n"
1753 "src/Makefile.am -+ | +-&gt; src/Makefile.in\n"
1754 " | +-&gt; config.h.in\n"
1755 " automake\n"
1756 " aclocal\n"
1757 " aclocal.m4\n"
1758 " autoheader\n"
1759
1760 #. type: Content of: <book><chapter><section><para>
1761 msgid ""
1762 "Editing <filename>configure.ac</filename> and <filename>Makefile.am</"
1763 "filename> files requires some knowledge of <command>autoconf</command> and "
1764 "<command>automake</command>. See <literal>info autoconf</literal> and "
1765 "<literal>info automake</literal>."
1766 msgstr ""
1767 "編輯 <filename>configure.ac</filename> 和 <filename>Makefile.am</filename> 等"
1768 "檔案需要一些關於 <command>autoconf</command> 和 <command>automake</command> "
1769 "的知識。參考 <literal>info autoconf</literal> 和 <literal>info automake</"
1770 "literal>。"
1771
1772 #. type: Content of: <book><chapter><section><para>
1773 msgid ""
1774 "The second step of Autotools work flow is usually that the user obtains this "
1775 "distributed source and runs <literal>./configure &amp;&amp; make</literal> "
1776 "in the source to compile program into a <command><replaceable>binary</"
1777 "replaceable></command>."
1778 msgstr ""
1779 "使用 Autotools 的流程第二部是用戶獲得散佈的原始碼後在原始碼中運行 <literal>./"
1780 "configure &amp;&amp; make</literal> 並將其編譯成爲 "
1781 "<command><replaceable>binary</replaceable></command> (二進位程式)。"
1782
1783 #. type: Content of: <book><chapter><section><screen>
1784 #, no-wrap
1785 msgid ""
1786 "Makefile.in -----+ +-&gt; Makefile -----+-&gt; make -&gt; <replaceable>binary</replaceable>\n"
1787 "src/Makefile.in -+-&gt; ./configure -+-&gt; src/Makefile -+\n"
1788 "config.h.in -----+ +-&gt; config.h -----+\n"
1789 " |\n"
1790 " config.status -+\n"
1791 " config.guess --+\n"
1792 msgstr ""
1793 "Makefile.in -----+ +-&gt; Makefile -----+-&gt; make -&gt; <replaceable>binary</replaceable>\n"
1794 "src/Makefile.in -+-&gt; ./configure -+-&gt; src/Makefile -+\n"
1795 "config.h.in -----+ +-&gt; config.h -----+\n"
1796 " |\n"
1797 " config.status -+\n"
1798 " config.guess --+\n"
1799
1800 #. type: Content of: <book><chapter><section><para>
1801 msgid ""
1802 "You can change many things in the <filename>Makefile</filename> file such as "
1803 "the default file install location using the command option, e.g. <command>./"
1804 "configure --prefix=/usr</command>."
1805 msgstr ""
1806 "你可以通過命令選項來改變 <filename>Makefile</filename> 檔案中的很多設置,比如"
1807 "默認的檔案安裝位置(使用 <command>./configure --prefix=/usr</command>)。"
1808
1809 #. type: Content of: <book><chapter><section><para><footnote><para>
1810 #, fuzzy
1811 #| msgid ""
1812 #| "Install the <systemitem role=\"package\">dh-autoreconf</systemitem> "
1813 #| "package in <literal>Build-Depends</literal>."
1814 msgid ""
1815 "You can automate this by using <systemitem role=\"package\">dh-autoreconf</"
1816 "systemitem> package. See <xref linkend=\"customrules\"/>."
1817 msgstr ""
1818 "在 <literal>Build-Depends</literal> 中添加 <systemitem role=\"package\">dh-"
1819 "autoreconf</systemitem> 套件。"
1820
1821 #. type: Content of: <book><chapter><section><para>
1822 #, fuzzy
1823 #| msgid ""
1824 #| "Although it is not required, updating the <filename>configure</filename> "
1825 #| "and other files with <literal>autoreconf -i -f</literal> as the user may "
1826 #| "improve the compatibility of the source."
1827 msgid ""
1828 "Although it is not required, updating the <filename>configure</filename> and "
1829 "other files with <literal>autoreconf -i -f</literal> as the user may improve "
1830 "the compatibility of the source. <placeholder type=\"footnote\" id=\"0\"/>"
1831 msgstr ""
1832 "儘管不是必須的,還可以使用 <literal>autoreconf -i -f</literal> 更新 "
1833 "<filename>configure</filename> 和其他相關檔案,這樣做可能提高原始碼的兼容性。"
1834
1835 #. type: Content of: <book><chapter><section><para>
1836 #, fuzzy
1837 #| msgid ""
1838 #| "<ulink url=\"&cxx;Make\">CMake</ulink> is an alternative build system. "
1839 #| "You can notice such sources by the <filename>CMakeLists.txt</filename> "
1840 #| "file."
1841 msgid ""
1842 "<ulink url=\"&cmake;\">CMake</ulink> is an alternative build system. You "
1843 "can notice such sources by the <filename>CMakeLists.txt</filename> file."
1844 msgstr ""
1845 "<ulink url=\"&cxx;Make\">CMake</ulink> 是另一個可選的編譯系統,可以通過 "
1846 "<filename>CMakeLists.txt</filename> 檔案來識別它。"
1847
1848 #. type: Content of: <book><chapter><section><title>
1849 msgid "Package name and version"
1850 msgstr "套件名稱和版本"
1851
1852 #. type: Content of: <book><chapter><section><para>
1853 msgid ""
1854 "You should start packaging with a completely clean (pristine) source "
1855 "directory, or simply with freshly unpacked sources."
1856 msgstr ""
1857 "開始打包時原始碼目錄應當是絕對乾淨(原始)的,或者直接使用剛剛解壓縮得到的原始"
1858 "碼。"
1859
1860 #. type: Content of: <book><chapter><section><para>
1861 msgid ""
1862 "For the package to be built correctly, you must make the program's original "
1863 "name lowercase (if it isn't already), and you should move the source "
1864 "directory to <filename><replaceable>packagename</replaceable>-"
1865 "<replaceable>version</replaceable></filename>."
1866 msgstr ""
1867 "爲了讓套件可以正確地編譯和構建,如果程式原有的名字不是完全小寫的則必須將其改"
1868 "成小寫,並且應當把原始碼以 <filename><replaceable>packagename</replaceable>-"
1869 "<replaceable>version</replaceable></filename> 的形式命名。"
1870
1871 #. type: Content of: <book><chapter><section><para>
1872 msgid ""
1873 "If the program name consists of more than one word, contract them to one "
1874 "word, or make an abbreviation. For example, program John's little editor "
1875 "for X package would be named <systemitem role=\"package\">johnledx</"
1876 "systemitem>, or <systemitem role=\"package\">jle4x</systemitem>, or whatever "
1877 "you decide, as long as it's under some reasonable limit, e.g. 20 characters."
1878 msgstr ""
1879 "如果程式的名稱超過一個單詞,把它改成一個單詞或縮寫成合適的形式。例如,程"
1880 "式“John's little editor for X”可以命名爲 <systemitem role=\"package"
1881 "\">johnledx</systemitem> 或 <systemitem role=\"package\">jle4x</systemitem>,"
1882 "或者隨便你認爲合適的其他名字。它需要符合一定的限制,比如長度不要超過 20 和字"
1883 "符。"
1884
1885 #. type: Content of: <book><chapter><section><para><footnote><para>
1886 msgid ""
1887 "Version string can be compared by <literal>dpkg --compare-versions "
1888 "<replaceable>ver1</replaceable> <replaceable>op</replaceable> "
1889 "<replaceable>ver2</replaceable></literal>. See <citerefentry> "
1890 "<refentrytitle>dpkg</refentrytitle> <manvolnum>1</manvolnum> </citerefentry> "
1891 "manpage."
1892 msgstr ""
1893 "Version 字符串可以用 <literal>dpkg --compare-versions <replaceable>ver1</"
1894 "replaceable> <replaceable>op</replaceable> <replaceable>ver2</replaceable></"
1895 "literal> 命令比較。參考 <citerefentry> <refentrytitle>dpkg</refentrytitle> "
1896 "<manvolnum>1</manvolnum> </citerefentry> man 手冊頁。"
1897
1898 #. type: Content of: <book><chapter><section><para>
1899 msgid ""
1900 "Also check for the exact version of the program (to be included in the "
1901 "package version). If that piece of software is not numbered with versions "
1902 "like <literal>X.Y.Z</literal>, but with some kind of date, feel free to use "
1903 "that date as the version number, as long as newer version numbers will look "
1904 "larger. While it is best to use the same version number as what upstream "
1905 "uses, if it is in the format of <literal>09Oct23</literal> you may need to "
1906 "convert it to <literal>YYYYMMDD</literal> format, which would be "
1907 "<literal>20091023</literal>, to ensure proper order for upgrade with the "
1908 "<command>dpkg</command> program.<placeholder type=\"footnote\" id=\"0\"/>"
1909 msgstr ""
1910 "還要檢査程式的版本號,它將被包含到套件版本內。如果手中的軟體版本號不是 "
1911 "<literal>X.Y.Z</literal> 的形式,而是使用日期等形式。那麼可以繼續使用日期來作"
1912 "爲版本號,只要新版本程式的版本號能變得比老闆本大即可。最好能與上游使用相同的"
1913 "版本號,如果上游使用了諸如 <literal>09Oct23</literal> 的格式,那麼最好將其轉"
1914 "換爲 <literal>YYYYMMDD</literal> 的格式,此例中爲 <literal>20091023</"
1915 "literal>,以便保證 <command>dpkg</command> 程式在更新軟體時能正確處理新舊版"
1916 "本。<placeholder type=\"footnote\" id=\"0\"/>"
1917
1918 #. type: Content of: <book><chapter><section><para>
1919 msgid ""
1920 "Some programs won't be numbered at all, in which case you should contact the "
1921 "upstream maintainer to see if they've got some other revision-tracking "
1922 "method."
1923 msgstr ""
1924 "還有一些程式根本就沒有版本號,這是你應該聯繫上游維護者,看他們是否使用了其他"
1925 "的版本跟蹤方法。"
1926
1927 #. type: Content of: <book><chapter><section><title>
1928 msgid "Initial Debian package"
1929 msgstr "初始化 Debian 套件"
1930
1931 #. type: Content of: <book><chapter><section><para><footnote><para>
1932 msgid ""
1933 "The following text assumes you are using Bash as your login shell. If you "
1934 "use other login shells such as Z shell, use their pertinent configuration "
1935 "files instead of <filename>~/.bashrc</filename>."
1936 msgstr ""
1937 "以下默認以 Bash 作爲登陸 shell。如果你使用其他的 shell,例如 Z shell,使用它"
1938 "們的設定檔案代替這裏提到的 <filename>~/.bashrc</filename>。"
1939
1940 #. type: Content of: <book><chapter><section><para>
1941 msgid ""
1942 "Let's set up the shell environment variable <literal>$DEBEMAIL</literal> and "
1943 "<literal>$DEBFULLNAME</literal> so many Debian maintenance tools recognize "
1944 "your name and email address to use for packages as follows.<placeholder type="
1945 "\"footnote\" id=\"0\"/>."
1946 msgstr ""
1947 "首先我們設置兩個 環境變量,<literal>$DEBEMAIL</literal> 和 <literal>"
1948 "$DEBFULLNAME</literal>,使多數 Debian 維護工具能夠正確識別你用於維護套件的姓"
1949 "名和電子郵件地址。<placeholder type=\"footnote\" id=\"0\"/>"
1950
1951 #. type: Content of: <book><chapter><section><screen>
1952 #, no-wrap
1953 msgid ""
1954 "$ cat &gt;&gt;~/.bashrc &lt;&lt;EOF\n"
1955 "DEBEMAIL=your.email.address@example.org\n"
1956 "DEBFULLNAME=Firstname Lastname\n"
1957 "export DEBEMAIL DEBFULLNAME\n"
1958 "EOF\n"
1959 msgstr ""
1960 "$ cat &gt;&gt;~/.bashrc &lt;&lt;EOF\n"
1961 "DEBEMAIL=your.email.address@example.org\n"
1962 "DEBFULLNAME=Firstname Lastname\n"
1963 "export DEBEMAIL DEBFULLNAME\n"
1964 "EOF\n"
1965
1966 #. type: Content of: <book><chapter><section><para>
1967 msgid ""
1968 "Let's make an initial Debian package by issuing the <command>dh_make</"
1969 "command> command as follows."
1970 msgstr ""
1971 "讓我們按照以下方法使用 <command>dh_make</command> 來初始化 Debian 套件。"
1972
1973 #. type: Content of: <book><chapter><section><screen>
1974 #, no-wrap
1975 msgid ""
1976 "$ . ~/.bashrc\n"
1977 "$ cd ~/gentoo/gentoo-0.9.12\n"
1978 "$ dh_make -f ../gentoo-0.9.12.tar.gz\n"
1979 msgstr ""
1980 "$ . ~/.bashrc\n"
1981 "$ cd ~/gentoo/gentoo-0.9.12\n"
1982 "$ dh_make -f ../gentoo-0.9.12.tar.gz\n"
1983
1984 #. type: Content of: <book><chapter><section><para><footnote><para>
1985 msgid ""
1986 "If the upstream source provides the <filename>debian</filename> directory "
1987 "and its contents, run the <command>dh_make</command> command with the "
1988 "<literal>--addmissing</literal> option, instead. The new source "
1989 "<literal>3.0 (quilt)</literal> format is quite robust not to break even for "
1990 "these packages. You may need to update contents provided by the upstream "
1991 "for your Debian package."
1992 msgstr ""
1993
1994 #. type: Content of: <book><chapter><section><para>
1995 msgid ""
1996 "Of course, replace the filename with the name of your original source "
1997 "archive. <placeholder type=\"footnote\" id=\"0\"/> See <citerefentry> "
1998 "<refentrytitle>dh_make</refentrytitle> <manvolnum>1</manvolnum> </"
1999 "citerefentry> for details."
2000 msgstr ""
2001
2002 #. type: Content of: <book><chapter><section><para><footnote><para>
2003 msgid ""
2004 "There are few choices here: <literal>s</literal> for Single binary, "
2005 "<literal>i</literal> for Arch-Independent, <literal>m</literal> for Multiple "
2006 "binary, <literal>l</literal> for Library, <literal>k</literal> for Kernel "
2007 "module, <literal>n</literal> for Kernel patch and <literal>b</literal> for "
2008 "<systemitem role=\"package\">cdbs</systemitem>. This document focuses on "
2009 "the use of the <systemitem role=\"package\">debhelper</systemitem> package "
2010 "with the <command>dh</command> command. This document focuses on the use of "
2011 "the new <command>dh</command> command for Single binary and touches on it "
2012 "for Arch-Independent and Multiple binary. The <systemitem role=\"package"
2013 "\">cdbs</systemitem> package offers alternative package script "
2014 "infrastructure to the <command>dh</command> command and outside of the scope "
2015 "of this document."
2016 msgstr ""
2017
2018 #. type: Content of: <book><chapter><section><para>
2019 msgid ""
2020 "Some information will come up. It will ask you what sort of package you "
2021 "want to create. Gentoo is a single binary package - it creates only one "
2022 "binary, and thus one <filename>.deb</filename> file - so we will select the "
2023 "first option, with the <literal>s</literal> key, check the information on "
2024 "the screen and confirm by pressing <literal><replaceable>ENTER</"
2025 "replaceable></literal>. <placeholder type=\"footnote\" id=\"0\"/>"
2026 msgstr ""
2027
2028 #. type: Content of: <book><chapter><section><para>
2029 msgid ""
2030 "After this execution of <command>dh_make</command>, a copy of the upstream "
2031 "tarball is created as <filename>gentoo_0.9.12.orig.tar.gz</filename> in the "
2032 "parent directory to accommodate the creation of the non-native Debian source "
2033 "package with the <filename>debian.tar.gz</filename> later."
2034 msgstr ""
2035 "執行 <command>dh_make</command> 後,上一級目錄中自動創建了一份上游 tarball 的"
2036 "副本,名爲 <filename>gentoo_0.9.12.orig.tar.gz</filename>,這個檔案和稍後介紹"
2037 "的 <filename>debian.tar.gz</filename> 在一起滿足了 Debian 非本地原始碼套件的"
2038 "要求。"
2039
2040 #. type: Content of: <book><chapter><section><screen>
2041 #, no-wrap
2042 msgid ""
2043 "$ cd ~/gentoo ; ls -F\n"
2044 "gentoo-0.9.12/\n"
2045 "gentoo-0.9.12.tar.gz\n"
2046 "gentoo_0.9.12.orig.tar.gz\n"
2047 msgstr ""
2048 "$ cd ~/gentoo ; ls -F\n"
2049 "gentoo-0.9.12/\n"
2050 "gentoo-0.9.12.tar.gz\n"
2051 "gentoo_0.9.12.orig.tar.gz\n"
2052
2053 #. type: Content of: <book><chapter><section><para>
2054 msgid ""
2055 "Please note 2 key features in this <filename>gentoo_0.9.12.orig.tar.gz</"
2056 "filename> file name:"
2057 msgstr ""
2058 "請注意 <filename>gentoo_0.9.12.orig.tar.gz</filename> 這個檔案名的兩個關鍵特"
2059 "點:"
2060
2061 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
2062 msgid ""
2063 "Package name and version are separated by the <literal>_</literal> "
2064 "(underscore)."
2065 msgstr "套件名稱和版本是以底線 <literal>_</literal> 分隔的。"
2066
2067 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
2068 msgid ""
2069 "There is the <filename>.orig</filename> before the <filename>.tar.gz</"
2070 "filename>."
2071 msgstr "<filename>.tar.gz</filename> 副檔名前有 <filename>.orig</filename>。"
2072
2073 #. type: Content of: <book><chapter><section><para>
2074 msgid ""
2075 "You should also notice that many template files are created in the source "
2076 "under the <filename>debian</filename> directory. These will be explained in "
2077 "<xref linkend=\"dreq\"/> and <xref linkend=\"dother\"/>. You should also "
2078 "understand that the packaging is not automatic process. You need to modify "
2079 "the upstream source for Debian as <xref linkend=\"modify\"/>. After all "
2080 "these, you need to build Debian packages under the proper method as <xref "
2081 "linkend=\"build\"/>, check them as <xref linkend=\"checkit\"/>, and upload "
2082 "them as <xref linkend=\"upload\"/>. I will explain all these steps."
2083 msgstr ""
2084 "你應該可以注意到 <filename>debian</filename> 目錄下有了許多模板檔案。這些檔案"
2085 "將在 <xref linkend=\"dreq\"/> 和 <xref linkend=\"dother\"/> 一一解釋。你還應"
2086 "該明白,打包不是一個自動的過程,你還需要按照 <xref linkend=\"modify\"/> 中的"
2087 "方法來修改套件。此後,你還要按照 <xref linkend=\"build\"/> 中敘述的合適的方法"
2088 "來編譯 Debian 套件、按照 <xref linkend=\"checkit\"/> 中的方法檢査其中錯誤,最"
2089 "終依照 <xref linkend=\"upload\"/> 的介紹將其上傳。我將對所有的這些步驟進行解"
2090 "釋。"
2091
2092 #. type: Content of: <book><chapter><section><para>
2093 msgid ""
2094 "Once again, as a new maintainer you are discouraged from creating "
2095 "complicated packages, e.g.,"
2096 msgstr "再次強調,作爲一個新維護人員,不推薦創建複雜的套件,例如:"
2097
2098 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
2099 msgid "multiple binary packages,"
2100 msgstr "多個二進位套件的套件;"
2101
2102 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
2103 msgid "library packages,"
2104 msgstr "函式庫套件;"
2105
2106 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
2107 msgid "kernel module packages,"
2108 msgstr "核心模組套件;"
2109
2110 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
2111 msgid "kernel patch packages,"
2112 msgstr "核心補丁套件;"
2113
2114 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
2115 msgid ""
2116 "the source file format being neither in <filename>tar.gz</filename> nor "
2117 "<filename>tar.bz2</filename>, or"
2118 msgstr ""
2119 "原始碼不是 <filename>tar.gz</filename> 也不是 <filename>tar.bz2</filename> 格"
2120 "式,或"
2121
2122 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
2123 msgid "the source tarball containing undistributable contents."
2124 msgstr "原始碼 tarball 中包含不可散佈的內容。"
2125
2126 #. type: Content of: <book><chapter><section><para>
2127 msgid ""
2128 "It's not too hard, but it does require a bit more knowledge, so we won't "
2129 "describe all of it here."
2130 msgstr ""
2131 "它們並非特別難於掌握,但確實需要更多的知識,所以我們不在這裏對所有情況進行描"
2132 "述。"
2133
2134 #. type: Content of: <book><chapter><section><para>
2135 msgid ""
2136 "If you accidentally erased some template files while working on them, you "
2137 "can recover them by running <command>dh_make</command> with the <literal>--"
2138 "addmissing</literal> option again in a Debian package source tree."
2139 msgstr ""
2140 "如果你在修改過程中不小心刪除或弄壞了某些模板檔案,你可以使用 "
2141 "<command>dh_make</command> 加上 <literal>--addmissing</literal> 參數來將其還"
2142 "原。"
2143
2144 #. type: Content of: <book><chapter><section><para>
2145 msgid ""
2146 "Updating an existing package may get complicated since it may be using older "
2147 "techniques. Please stick with fresh packaging cases for now to learn "
2148 "basics. I will come back to explain it later in <xref linkend=\"update\"/>."
2149 msgstr ""
2150 "更新一個已存在的套件可能比較複雜,因爲它可能使用舊的技術。請繼續在這裏學習最"
2151 "新的打包技術以便掌握必要的基本功。我們會在稍後的 <xref linkend=\"update\"/> "
2152 "中回頭講解如何處理這種情況。"
2153
2154 #. type: Content of: <book><chapter><title>
2155 msgid "Modifying the source"
2156 msgstr "修改原始碼"
2157
2158 #. type: Content of: <book><chapter><para>
2159 msgid ""
2160 "Please note that there isn't space here to go into <emphasis>all</emphasis> "
2161 "the details of fixing upstream sources, but here are some basic steps and "
2162 "problems people often run across."
2163 msgstr ""
2164 "請注意這裏沒有足夠的篇幅來描述修改上游原始碼的 <emphasis>全部</emphasis> 細"
2165 "節,但是這裏介紹了基本的步驟和常見的問題。"
2166
2167 #. type: Content of: <book><chapter><section><title>
2168 msgid "Set up <command>quilt</command>"
2169 msgstr "設置 <command>quilt</command>"
2170
2171 #. type: Content of: <book><chapter><section><para>
2172 #, fuzzy
2173 #| msgid ""
2174 #| "The <command>quilt</command> program offers the basic method to record "
2175 #| "modification to the source for the Debian packaging. Since slightly "
2176 #| "different default is desirable for Debian packaging, let's set up "
2177 #| "<filename>~/.quiltrc</filename> as follows. <placeholder type=\"footnote"
2178 #| "\" id=\"0\"/>"
2179 msgid ""
2180 "The <command>quilt</command> program offers the basic method to record "
2181 "modification to the source for the Debian packaging. Since slightly "
2182 "different default is desirable, let's create an alias <command>dquilt</"
2183 "command> for Debian packaging by adding the following line to <filename>~/."
2184 "bashrc</filename>."
2185 msgstr ""
2186 "<command>quilt</command> 程式爲 Debian 工作提供了對源碼修改的基本記錄方法。由"
2187 "於我們的需求與默認設定相當的不同,我們把 <filename>~/.quiltrc</filename> 設置"
2188 "成如下的樣子。<placeholder type=\"footnote\" id=\"0\"/>"
2189
2190 #. type: Content of: <book><chapter><section><screen>
2191 #, no-wrap
2192 msgid "alias dquilt=quilt --quiltrc=~/.quiltrc-dpkg\n"
2193 msgstr ""
2194
2195 #. type: Content of: <book><chapter><section><para>
2196 #, fuzzy
2197 #| msgid "You change the <filename>Makefile</filename> file as follows."
2198 msgid "Then let's create <filename>~/.quiltrc-dpkg</filename> as follows."
2199 msgstr "現在將 <filename>Makefile</filename> 修改爲如下的樣子。"
2200
2201 #. type: Content of: <book><chapter><section><screen>
2202 #, fuzzy, no-wrap
2203 #| msgid ""
2204 #| "d=. ; while [ ! -d $d/debian -a `readlink -e $d` != / ]; do d=$d/..; done\n"
2205 #| "if [ -d $d/debian ] &amp;&amp; [ -z $QUILT_PATCHES ]; then\n"
2206 #| " # Debian packaging case and unset $QUILT_PATCHES\n"
2207 #| " QUILT_PATCHES=debian/patches\n"
2208 #| " QUILT_PATCH_OPTS=--unified-reject-files\n"
2209 #| " QUILT_DIFF_ARGS=-p ab --no-timestamps --no-index --color=auto\n"
2210 #| " QUILT_REFRESH_ARGS=-p ab --no-timestamps --no-index\n"
2211 #| " QUILT_COLORS=diff_hdr=1;32:diff_add=1;34:diff_rem=1;31:diff_hunk=1;33:diff_ctx=35:diff_cctx=33\n"
2212 #| " if ! [ -d $d/debian/patches ]; then mkdir $d/debian/patches; fi\n"
2213 #| "fi\n"
2214 msgid ""
2215 "d=. ; while [ ! -d $d/debian -a `readlink -e $d` != / ]; do d=$d/..; done\n"
2216 "if [ -d $d/debian ] &amp;&amp; [ -z $QUILT_PATCHES ]; then\n"
2217 " # Debian packaging case and unset $QUILT_PATCHES\n"
2218 " QUILT_PATCHES=\"debian/patches\"\n"
2219 " QUILT_PATCH_OPTS=\"--reject-format=unified\"\n"
2220 " QUILT_DIFF_ARGS=\"-p ab --no-timestamps --no-index --color=auto\"\n"
2221 " QUILT_REFRESH_ARGS=\"-p ab --no-timestamps --no-index\"\n"
2222 " QUILT_COLORS=\"diff_hdr=1;32:diff_add=1;34:diff_rem=1;31:diff_hunk=1;33:diff_ctx=35:diff_cctx=33\"\n"
2223 " if ! [ -d $d/debian/patches ]; then mkdir $d/debian/patches; fi\n"
2224 "fi\n"
2225 msgstr ""
2226 "d=. ; while [ ! -d $d/debian -a `readlink -e $d` != / ]; do d=$d/..; done\n"
2227 "if [ -d $d/debian ] &amp;&amp; [ -z $QUILT_PATCHES ]; then\n"
2228 " # Debian packaging case and unset $QUILT_PATCHES\n"
2229 " QUILT_PATCHES=debian/patches\n"
2230 " QUILT_PATCH_OPTS=--unified-reject-files\n"
2231 " QUILT_DIFF_ARGS=-p ab --no-timestamps --no-index --color=auto\n"
2232 " QUILT_REFRESH_ARGS=-p ab --no-timestamps --no-index\n"
2233 " QUILT_COLORS=diff_hdr=1;32:diff_add=1;34:diff_rem=1;31:diff_hunk=1;33:diff_ctx=35:diff_cctx=33\n"
2234 " if ! [ -d $d/debian/patches ]; then mkdir $d/debian/patches; fi\n"
2235 "fi\n"
2236
2237 #. type: Content of: <book><chapter><section><para>
2238 #, fuzzy
2239 #| msgid ""
2240 #| "See <citerefentry> <refentrytitle>quilt</refentrytitle> <manvolnum>1</"
2241 #| "manvolnum> </citerefentry> and <filename>/usr/share/doc/quilt/quilt.html</"
2242 #| "filename> for how to use <command>quilt</command>."
2243 msgid ""
2244 "See <citerefentry> <refentrytitle>quilt</refentrytitle> <manvolnum>1</"
2245 "manvolnum> </citerefentry> and <ulink url=\"&quilt-pdf;\">quilt.pdf</ulink> "
2246 "for how to use <command>quilt</command>."
2247 msgstr ""
2248 "參考 <citerefentry> <refentrytitle>quilt</refentrytitle> <manvolnum>1</"
2249 "manvolnum> </citerefentry> 和 <filename>/usr/share/doc/quilt/quilt.html</"
2250 "filename> 來了解如何使用 <command>quilt</command>。"
2251
2252 #. type: Content of: <book><chapter><section><title>
2253 msgid "Fixing upstream bug"
2254 msgstr "修復上游 Bug"
2255
2256 #. type: Content of: <book><chapter><section><para>
2257 msgid ""
2258 "Let's assume you find an error in the upstream <filename>Makefile</filename> "
2259 "file as follows where <literal>install: gentoo</literal> should have been "
2260 "<literal>install: gentoo-target</literal>."
2261 msgstr ""
2262 "讓我們假設你在上游的 <filename>Makefile</filename> 檔案中找到了一個錯誤,其中"
2263 "的 <literal>install: gentoo</literal> 應該是 <literal>install: gentoo-"
2264 "target</literal> 才正確。"
2265
2266 #. type: Content of: <book><chapter><section><screen>
2267 #, no-wrap
2268 msgid ""
2269 "install: gentoo\n"
2270 " install ./gentoo $(BIN)\n"
2271 " install icons/* $(ICONS)\n"
2272 " install gentoorc-example $(HOME)/.gentoorc\n"
2273 msgstr ""
2274 "install: gentoo\n"
2275 " install ./gentoo $(BIN)\n"
2276 " install icons/* $(ICONS)\n"
2277 " install gentoorc-example $(HOME)/.gentoorc\n"
2278
2279 #. type: Content of: <book><chapter><section><para><footnote><para>
2280 msgid ""
2281 "The <filename>debian/patches</filename> directory should exist now if you "
2282 "run <command>dh_make</command> as described before. This example operation "
2283 "creates it just in case you are updating the existing package."
2284 msgstr ""
2285 "<filename>debian/patches</filename> 應當在你按照前面所述的步驟運行 "
2286 "<command>dh_make</command> 時生成的。這個例子中我們新創建它,因爲假設的是在更"
2287 "新一個已存在的套件。"
2288
2289 #. type: Content of: <book><chapter><section><para>
2290 #, fuzzy
2291 #| msgid ""
2292 #| "Let's fix this and record this with the <command>quilt</command> command "
2293 #| "as <filename>fix-gentoo-target.patch</filename>. <placeholder type="
2294 #| "\"footnote\" id=\"0\"/>"
2295 msgid ""
2296 "Let's fix this and record this with the <command>dquilt</command> command as "
2297 "<filename>fix-gentoo-target.patch</filename>. <placeholder type=\"footnote"
2298 "\" id=\"0\"/>"
2299 msgstr ""
2300 "讓我們使用 <command>quilt</command> 修復它,並把它命名爲 <filename>fix-"
2301 "gentoo-target.patch</filename>。<placeholder type=\"footnote\" id=\"0\"/>"
2302
2303 #. type: Content of: <book><chapter><section><screen>
2304 #, fuzzy, no-wrap
2305 #| msgid ""
2306 #| "$ mkdir debian/patches\n"
2307 #| "$ quilt new fix-gentoo-target.patch\n"
2308 #| "$ quilt add Makefile\n"
2309 msgid ""
2310 "$ mkdir debian/patches\n"
2311 "$ dquilt new fix-gentoo-target.patch\n"
2312 "$ dquilt add Makefile\n"
2313 msgstr ""
2314 "$ mkdir debian/patches\n"
2315 "$ quilt new fix-gentoo-target.patch\n"
2316 "$ quilt add Makefile\n"
2317
2318 #. type: Content of: <book><chapter><section><para>
2319 msgid "You change the <filename>Makefile</filename> file as follows."
2320 msgstr "現在將 <filename>Makefile</filename> 修改爲如下的樣子。"
2321
2322 #. type: Content of: <book><chapter><section><screen>
2323 #, no-wrap
2324 msgid ""
2325 "install: gentoo-target\n"
2326 " install ./gentoo $(BIN)\n"
2327 " install icons/* $(ICONS)\n"
2328 " install gentoorc-example $(HOME)/.gentoorc\n"
2329 msgstr ""
2330 "install: gentoo-target\n"
2331 " install ./gentoo $(BIN)\n"
2332 " install icons/* $(ICONS)\n"
2333 " install gentoorc-example $(HOME)/.gentoorc\n"
2334
2335 #. type: Content of: <book><chapter><section><para>
2336 #, fuzzy
2337 #| msgid ""
2338 #| "Ask <command>quilt</command> to refresh the patch to create "
2339 #| "<filename>debian/patches/fix-gentoo-target.patch</filename> and add its "
2340 #| "description."
2341 msgid ""
2342 "Ask <command>dquilt</command> to refresh the patch to create "
2343 "<filename>debian/patches/fix-gentoo-target.patch</filename> and add its "
2344 "description following <ulink url=\"&dep3;\">DEP-3: Patch Tagging Guidelines</"
2345 "ulink>."
2346 msgstr ""
2347 "使用 <command>quilt</command> 更新補丁以創建 <filename>debian/patches/fix-"
2348 "gentoo-targe.patch</filename> 並添加描述。"
2349
2350 #. type: Content of: <book><chapter><section><screen>
2351 #, fuzzy, no-wrap
2352 #| msgid ""
2353 #| "$ quilt refresh\n"
2354 #| "$ quilt header -e\n"
2355 #| "... describe patch\n"
2356 msgid ""
2357 "$ dquilt refresh\n"
2358 "$ dquilt header -e\n"
2359 "... describe patch\n"
2360 msgstr ""
2361 "$ quilt refresh\n"
2362 "$ quilt header -e\n"
2363 "... 描述補丁\n"
2364
2365 #. type: Content of: <book><chapter><section><title>
2366 msgid "Installation of files to the destination"
2367 msgstr "把檔案安裝到目的位置"
2368
2369 #. type: Content of: <book><chapter><section><para>
2370 #, fuzzy
2371 #| msgid ""
2372 #| "Normally, programs install themselves in the <filename>/usr/local</"
2373 #| "filename> subdirectory. Since it is reserved for system administrator's "
2374 #| "(or user's) private use, Debian packages must not use that directory but "
2375 #| "should use system directories such as the <filename>/usr/bin</filename> "
2376 #| "subdirectory following the Filesystem Hierarchy Standard (<ulink url="
2377 #| "\"&fhs;\">FHS</ulink>, <filename>/usr/share/doc/debian-policy/fhs/fhs-2.3."
2378 #| "html</filename>)."
2379 msgid ""
2380 "Normally, programs install themselves in the <filename>/usr/local</filename> "
2381 "subdirectory. Since it is reserved for system administrator's (or user's) "
2382 "private use, Debian packages must not use that directory but should use "
2383 "system directories such as the <filename>/usr/bin</filename> subdirectory "
2384 "following the <ulink url=\"&fhs;\">Filesystem Hierarchy Standard</ulink> "
2385 "(FHS)."
2386 msgstr ""
2387 "正常情況下,程式將其本身安裝在 <filename>/usr/local</filename>。因爲它是保留"
2388 "給系統管理員(或用戶)的私有位置,Debian 套件不可以使用該目錄,而是按照檔案系統"
2389 "層級標準(<ulink url=\"&fhs;\">FHS</ulink>,<filename>/usr/share/doc/debian-"
2390 "policy/fhs/fhs-2.3.html</filename>)使用如 <filename>/usr/bin</filename> 等目"
2391 "錄。"
2392
2393 #. type: Content of: <book><chapter><section><para>
2394 msgid ""
2395 "Normally, <citerefentry> <refentrytitle>make</refentrytitle> <manvolnum>1</"
2396 "manvolnum> </citerefentry> is used to automate building the program and the "
2397 "execution of <literal>make install</literal> installs programs directly to "
2398 "the desired destination by the <literal>install</literal> target of the "
2399 "<filename>Makefile</filename> file. In order for Debian to provide binary "
2400 "packages, the build system installs programs to the file tree image created "
2401 "under a temporary directory instead to the actual destination."
2402 msgstr ""
2403 "通常在自動編譯程式時使用 <citerefentry> <refentrytitle>make</refentrytitle> "
2404 "<manvolnum>1</manvolnum> </citerefentry> 程式,執行 <literal>make install</"
2405 "literal> 就把程式直接按照 <filename>Makefile</filename> 檔案中的 "
2406 "<literal>install</literal> target 安裝到指定的位置。爲了使 Debian 能夠提供二"
2407 "進位套件,編譯系統將檔案安裝到一個臨時目錄中創建的檔案系統樹的鏡像中,而非直"
2408 "接安裝到實際的目標位置。"
2409
2410 #. type: Content of: <book><chapter><section><para>
2411 msgid ""
2412 "These 2 differences between (1) the normal program installation and (2) the "
2413 "Debian packaging can be transparently addressed by the <systemitem role="
2414 "\"package\">debhelper</systemitem> package through the "
2415 "<command>dh_auto_configure</command> and <command>dh_auto_install</command> "
2416 "commands if the following conditions are met."
2417 msgstr ""
2418 "普通程式安裝過程和 Debian 打包安裝過程的區別可以由 <systemitem role=\"package"
2419 "\">debhelper</systemitem> 套件中的 <command>dh_auto_configure</command> 和 "
2420 "<command>dh_auto_install</command> 透明地處理。但程式必須滿足以下條件:"
2421
2422 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para><footnote><para>
2423 msgid ""
2424 "See <ulink url=\"&gnu-destdir;\">GNU Coding Standards: 7.2.4 DESTDIR: "
2425 "Support for Staged Installs</ulink>."
2426 msgstr ""
2427
2428 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
2429 #, fuzzy
2430 #| msgid ""
2431 #| "The <filename>Makefile</filename> file follows the GNU conventions to "
2432 #| "support <literal>$(DESTDIR)</literal> variable (<filename>/usr/share/doc/"
2433 #| "gnu-standards/standards.html#Makefile-Conventions</filename>)."
2434 msgid ""
2435 "The <filename>Makefile</filename> file follows the GNU conventions to "
2436 "support <literal>$(DESTDIR)</literal> variable. <placeholder type=\"footnote"
2437 "\" id=\"0\"/>"
2438 msgstr ""
2439 "<filename>Makefile</filename> 檔案遵循 GNU 的規定支持 <literal>$(DESTDIR)</"
2440 "literal> 變量(<filename>/usr/share/doc/gnu-standards/standards.html#Makefile-"
2441 "Conventions</filename>)。"
2442
2443 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
2444 msgid "The source follows the Filesystem Hierarchy Standard (FHS)."
2445 msgstr "原始碼遵循檔案系統層級標準(FHS)。"
2446
2447 #. type: Content of: <book><chapter><section><para>
2448 msgid ""
2449 "Programs that use GNU <command>autoconf</command> <emphasis>automatically</"
2450 "emphasis> follow the GNU conventions and their packaging is almost "
2451 "<emphasis>automatic</emphasis>. With this and other heuristics, the "
2452 "<systemitem role=\"package\">debhelper</systemitem> package estimates that "
2453 "it works for about 90% of packages without making any intrusive changes to "
2454 "their build system. So the packaging is not as complicated as it may seem."
2455 msgstr ""
2456 "使用 GNU <command>autoconf</command> 的程式 <emphasis>自動</emphasis> 遵守了 "
2457 "GNU 的規定,這些程式的打包也就 <emphasis>幾乎是自動的</emphasis>。通過這項特"
2458 "點和其他啓發式處理,<systemitem role=\"package\">debhelper</systemitem> 套件"
2459 "可以直接打包約 90% 的套件而不需對編譯系統做出大的改變。所以打包也不是它看起來"
2460 "那樣複雜。"
2461
2462 #. type: Content of: <book><chapter><section><para>
2463 msgid ""
2464 "If you need to make changes in the <filename>Makefile</filename> file, you "
2465 "should make sure to support these <literal>$(DESTDIR)</literal> variable. "
2466 "The <literal>$(DESTDIR)</literal> variable is unset in it and is prepended "
2467 "to each file path used for the program installation. The packaging script "
2468 "will set <literal>$(DESTDIR)</literal> to the temporary directory."
2469 msgstr ""
2470 "如果你需要修改 <filename>Makefile</filename> 檔案,要確保其支持 <literal>"
2471 "$(DESTDIR)</literal> 變量。默認情況下 <literal>$(DESTDIR)</literal> 變量沒有"
2472 "設置並且默認使用程式選擇的安裝位置。打包腳本會將 <literal>$(DESTDIR)</"
2473 "literal> 設置爲臨時目錄。"
2474
2475 #. type: Content of: <book><chapter><section><para><footnote><para>
2476 msgid ""
2477 "For multiple binary packages, the <command>dh_auto_install</command> command "
2478 "uses <filename>debian/tmp</filename> as the temporary directory while the "
2479 "<command>dh_install</command> command with the help of <filename>debian/"
2480 "<replaceable>package-1</replaceable>.install</filename> and <filename>debian/"
2481 "<replaceable>package-2</replaceable>.install</filename> files will split "
2482 "contents of <filename>debian/tmp</filename> into <filename>debian/"
2483 "<replaceable>package-1</replaceable></filename> and <filename>debian/"
2484 "<replaceable>package-2</replaceable></filename> temporary directories to "
2485 "create multiple binary <filename>*.deb</filename> packages."
2486 msgstr ""
2487 "對於多個二進位套件,<command>dh_auto_install</command> 將臨時目錄設置爲"
2488 "<filename>debian/tmp</filename>,而 <command>dh_install</command> 命令則將檔"
2489 "案按照 <filename>debian/<replaceable>package-1</replaceable>.install</"
2490 "filename> 和 <filename>debian/<replaceable>package-2</replaceable>.install</"
2491 "filename> 等檔案的描述將 <filename>debian/tmp</filename> 中的檔案分別裝入 "
2492 "<filename>debian/<replaceable>package-1</replaceable></filename> 和 "
2493 "<filename>debian/<replaceable>package-2</replaceable></filename> 等臨時目錄以"
2494 "創建 <filename>*.deb</filename> 套件。"
2495
2496 #. type: Content of: <book><chapter><section><para>
2497 msgid ""
2498 "The temporary directory used by the <command>dh_auto_install</command> "
2499 "command is chosen as <filename>debian/<replaceable>package</replaceable></"
2500 "filename> for single binary packages. <placeholder type=\"footnote\" id="
2501 "\"0\"/> Everything that is contained in the temporary directory will be "
2502 "installed on a user's system when they install your package, the only "
2503 "difference is that <command>dpkg</command> will be installing the files in "
2504 "the root directory."
2505 msgstr ""
2506 "對於單個二進位套件 <command>dh_auto_install</command> 將臨時目錄設置爲 "
2507 "<filename>debian/<replaceable>package</replaceable></filename>。<placeholder "
2508 "type=\"footnote\" id=\"0\"/> 臨時目錄中的全部檔案都將在用戶安裝套件時被安裝到"
2509 "用戶系統,唯一的區別是 <command>dpkg</command> 會把檔案安裝到真實的根目錄樹"
2510 "中。"
2511
2512 #. type: Content of: <book><chapter><section><para>
2513 msgid ""
2514 "Bear in mind that even though your program installs in <filename>debian/"
2515 "<replaceable>package</replaceable></filename>, it still needs to behave "
2516 "correctly when placed in the root directory, i.e. when installed from the "
2517 "<filename>.deb</filename> package. So you must not allow the build system "
2518 "to hardcode strings like <literal>/home/me/deb/<replaceable>package</"
2519 "replaceable>-<replaceable>version</replaceable>/usr/share/"
2520 "<replaceable>package</replaceable></literal> into the package file."
2521 msgstr ""
2522 "請記住,即使你的程式正確安裝到了<filename>debian/<replaceable>package</"
2523 "replaceable></filename>,仍然要考慮它可以在在實際的根目錄中安裝的情形,即從"
2524 "<filename>.deb</filename> 套件檔案安裝的情形。所以絕對不允許將諸如 <literal>/"
2525 "home/me/deb/<replaceable>package</replaceable>-<replaceable>version</"
2526 "replaceable>/usr/share/<replaceable>package</replaceable></literal> 的內容硬"
2527 "編碼到編譯系統中並裝入套件檔案。"
2528
2529 #. type: Content of: <book><chapter><section><para><footnote><para>
2530 msgid ""
2531 "This is just an example to show how the <filename>Makefile</filename> file "
2532 "should look like. If the <filename>Makefile</filename> file is created by "
2533 "the <command>./configure</command> command, the correct way to fix this kind "
2534 "of <filename>Makefile</filename> is to executed the <command>./configure</"
2535 "command> command from the <command>dh_auto_configure</command> command with "
2536 "default options including <literal>--prefix=/usr</literal>."
2537 msgstr ""
2538 "這只是一個 <filename>Makefile</filename> 的例子。如果 <filename>Makefile</"
2539 "filename> 是通過 <command>./configure</command> 命令生成的,修復該類的 "
2540 "<filename>Makefile</filename> 的方法是通過 <command>dh_auto_configure</"
2541 "command> 執行 <command>./configure</command>,並帶上如 <literal>--prefix=/"
2542 "usr</literal> 的默認選項。"
2543
2544 #. type: Content of: <book><chapter><section><para>
2545 msgid ""
2546 "Here's the relevant part of <systemitem role=\"package\">gentoo</"
2547 "systemitem>'s <filename>Makefile</filename> file <placeholder type=\"footnote"
2548 "\" id=\"0\"/>:"
2549 msgstr ""
2550 "以下是 <systemitem role=\"package\">gentoo</systemitem> 的 "
2551 "<filename>Makefile</filename> 檔案中的相關部分<placeholder type=\"footnote\" "
2552 "id=\"0\"/>:"
2553
2554 #. type: Content of: <book><chapter><section><screen>
2555 #, no-wrap
2556 msgid ""
2557 "# Where to put binary on 'make install'?\n"
2558 "BIN = /usr/local/bin\n"
2559 "# Where to put icons on 'make install'?\n"
2560 "ICONS = /usr/local/share/gentoo\n"
2561 msgstr ""
2562 "# Where to put binary on 'make install'?\n"
2563 "BIN = /usr/local/bin\n"
2564 "# Where to put icons on 'make install'?\n"
2565 "ICONS = /usr/local/share/gentoo\n"
2566
2567 #. type: Content of: <book><chapter><section><para>
2568 msgid ""
2569 "We see that the files are set to install under <filename>/usr/local</"
2570 "filename>. Change those paths to:"
2571 msgstr ""
2572 "可以看到檔案被放到了 <filename>/usr/local</filename> 下。把他們改變爲:"
2573
2574 #. type: Content of: <book><chapter><section><screen>
2575 #, no-wrap
2576 msgid ""
2577 "# Where to put binary on 'make install'?\n"
2578 "BIN = $(DESTDIR)/usr/bin\n"
2579 "# Where to put icons on 'make install'?\n"
2580 "ICONS = $(DESTDIR)/usr/share/gentoo\n"
2581 msgstr ""
2582 "# Where to put binary on 'make install'?\n"
2583 "BIN = $(DESTDIR)/usr/bin\n"
2584 "# Where to put icons on 'make install'?\n"
2585 "ICONS = $(DESTDIR)/usr/share/gentoo\n"
2586
2587 #. type: Content of: <book><chapter><section><para>
2588 msgid ""
2589 "But why in that directory, and not some other? Because Debian packages never "
2590 "install files beneath <filename>/usr/local</filename> -- that tree is "
2591 "reserved for the system administrator's use. Such files on Debian systems "
2592 "go under <filename>/usr</filename> instead."
2593 msgstr ""
2594 "爲什麼要放在那個目錄,而非其他的呢?因爲 Debian 套件從不在 <filename>/usr/"
2595 "local</filename> 下安裝檔案——那是保留給系統管理員使用的。在 Debian 中這些檔案"
2596 "被直接放入 <filename>/usr</filename>。"
2597
2598 #. type: Content of: <book><chapter><section><para>
2599 #, fuzzy
2600 #| msgid ""
2601 #| "The more exact locations for binaries, icons, documentation etc. are "
2602 #| "specified in the Filesystem Hierarchy Standard (see <filename>/usr/share/"
2603 #| "doc/debian-policy/fhs/</filename>). I recommend you browse it and read "
2604 #| "the sections that might concern your package."
2605 msgid ""
2606 "The more exact locations for binaries, icons, documentation etc. are "
2607 "specified in the Filesystem Hierarchy Standard (FHS). I recommend you "
2608 "browse it and read the sections that might concern your package."
2609 msgstr ""
2610 "二進位檔案、圖示和文件等的更詳細位置均在檔案層級標準(FHS,參考 <filename>/"
2611 "usr/share/doc/debian-policy/fhs/</filename>)中作出了詳盡描述。我建議閱讀相關"
2612 "章節以瞭解可能影響你套件的內容。"
2613
2614 #. type: Content of: <book><chapter><section><para>
2615 msgid ""
2616 "So, we should install the binary in <filename>/usr/bin</filename> instead of "
2617 "<filename>/usr/local/bin</filename>, the manual page in <filename>/usr/share/"
2618 "man/man1</filename> instead of <filename>/usr/local/man/man1</filename> "
2619 "etc. Notice how there's no manual page mentioned in <systemitem role="
2620 "\"package\">gentoo</systemitem>'s <filename>Makefile</filename>, but since "
2621 "the Debian Policy requires that every program has one, we'll make one later "
2622 "and install it in <filename>/usr/share/man/man1</filename>."
2623 msgstr ""
2624 "因此,我們應當把二進位檔案安裝到 <filename>/usr/bin</filename> 而非 "
2625 "<filename>/usr/local/bin</filename>,man 手冊頁則應放在 <filename>/usr/share/"
2626 "man/man1</filename> 而非 <filename>/usr/local/man/man1</filename> 等。注意到 "
2627 "<systemitem role=\"package\">gentoo</systemitem>的 <filename>Makefile</"
2628 "filename> 裏沒有提及手冊頁,而按照 Debian Policy 的要求,每個程式都應當有一個"
2629 "手冊頁,我們將在稍後製作一個並安裝到 <filename>/usr/share/man/man1</filename>"
2630
2631 #. type: Content of: <book><chapter><section><para>
2632 msgid ""
2633 "Some programs don't use <filename>Makefile</filename> variables to define "
2634 "paths such as these. This means you might have to edit some real C sources "
2635 "in order to fix them to use the right locations. But where to search, and "
2636 "exactly what for? You can find this out by issuing:"
2637 msgstr ""
2638 "有些程式不使用 <filename>Makefile</filename> 變量定義路徑,這意味着你可能需要"
2639 "去編輯 C 程式原始碼來使他們使用正確的路徑。但是到哪裏去搜索,哪些才是呢?你可"
2640 "以通過以下的方法找到它們:"
2641
2642 #. type: Content of: <book><chapter><section><screen>
2643 #, no-wrap
2644 msgid "$ grep -nr -e 'usr/local/lib' --include='*.[c|h]' .\n"
2645 msgstr "$ grep -nr -e 'usr/local/lib' --include='*.[c|h]' .\n"
2646
2647 #. type: Content of: <book><chapter><section><para>
2648 msgid ""
2649 "<command>grep</command> will run recursively through the source tree and "
2650 "tell you the filename and the line number for all matches."
2651 msgstr ""
2652 "<command>grep</command> 會遞歸搜索整個原始碼樹並告訴你所有匹配項的檔案名和行"
2653 "號。"
2654
2655 #. type: Content of: <book><chapter><section><para>
2656 #, fuzzy
2657 #| msgid ""
2658 #| "Edit those files and in those lines replace <literal>usr/local/lib</"
2659 #| "literal> with <literal>usr/lib</literal>."
2660 msgid ""
2661 "Edit those files and in those lines replace <literal>usr/local/lib</literal> "
2662 "with <literal>usr/lib</literal>. This can be done automatically as follows:"
2663 msgstr ""
2664 "編輯那些檔案,用 <literal>usr/lib</literal> 替換 <literal>usr/local/lib</"
2665 "literal>。"
2666
2667 #. type: Content of: <book><chapter><section><screen>
2668 #, no-wrap
2669 msgid ""
2670 "$ vim '+argdo %s/usr\\/local\\/lib/usr\\/lib/gce|update' +q \\\n"
2671 " $(find . -type f -name '*.[c|h]')\n"
2672 msgstr ""
2673 "$ vim '+argdo %s/usr\\/local\\/lib/usr\\/lib/gce|update' +q \\\n"
2674 " $(find . -type f -name '*.[c|h]')\n"
2675
2676 #. type: Content of: <book><chapter><section><para>
2677 msgid "Be careful that you don't mess up the rest of the code! :-)"
2678 msgstr "小心不要弄亂其他部分的程式碼! :-)"
2679
2680 #. type: Content of: <book><chapter><section><para>
2681 msgid ""
2682 "After that you should find the install target (search for line that starts "
2683 "with <literal>install:</literal>, that will usually work) and rename all "
2684 "references to directories other than ones defined at the top of the "
2685 "<filename>Makefile</filename>."
2686 msgstr ""
2687 "此後你應該找到 install target (通常搜索以 <literal>install:</literal> 開頭的"
2688 "行即可),並把所有的相關目錄以及在 <filename>Makefile</filename> 頂部定義變量"
2689 "均做修改。"
2690
2691 #. type: Content of: <book><chapter><section><para>
2692 #, fuzzy
2693 #| msgid ""
2694 #| "After your upstream bug fix, <systemitem role=\"package\">gentoo</"
2695 #| "systemitem>'s install target said:"
2696 msgid ""
2697 "Before your upstream bug fix, <systemitem role=\"package\">gentoo</"
2698 "systemitem>'s install target said:"
2699 msgstr ""
2700 "在你修復了上游的 Bug 後,<systemitem role=\"package\">gentoo</systemitem> 的 "
2701 "install target 應是這樣:"
2702
2703 #. type: Content of: <book><chapter><section><para>
2704 #, fuzzy
2705 #| msgid ""
2706 #| "Let's fix this and record this with the <command>quilt</command> command "
2707 #| "as <filename>debian/patches/install.patch</filename>."
2708 msgid ""
2709 "Let's fix this and record this with the <command>dquilt</command> command as "
2710 "<filename>debian/patches/install.patch</filename>."
2711 msgstr ""
2712 "讓我們把這些修改使用 <command>quilt</command> 記錄到<filename>debian/patches/"
2713 "install.patch</filename>。"
2714
2715 #. type: Content of: <book><chapter><section><screen>
2716 #, fuzzy, no-wrap
2717 #| msgid ""
2718 #| "$ quilt new install.patch\n"
2719 #| "$ quilt add Makefile\n"
2720 msgid ""
2721 "$ dquilt new install.patch\n"
2722 "$ dquilt add Makefile\n"
2723 msgstr ""
2724 "$ quilt new install.patch\n"
2725 "$ quilt add Makefile\n"
2726
2727 #. type: Content of: <book><chapter><section><para>
2728 msgid "Let's change this for Debian package as following using the editor:"
2729 msgstr "我們使用編輯器按照以下內容爲 Debian 套件做修改:"
2730
2731 #. type: Content of: <book><chapter><section><screen>
2732 #, no-wrap
2733 msgid ""
2734 "install: gentoo-target\n"
2735 " install -d $(BIN) $(ICONS) $(DESTDIR)/etc\n"
2736 " install ./gentoo $(BIN)\n"
2737 " install -m644 icons/* $(ICONS)\n"
2738 " install -m644 gentoorc-example $(DESTDIR)/etc/gentoorc\n"
2739 msgstr ""
2740 "install: gentoo-target\n"
2741 " install -d $(BIN) $(ICONS) $(DESTDIR)/etc\n"
2742 " install ./gentoo $(BIN)\n"
2743 " install -m644 icons/* $(ICONS)\n"
2744 " install -m644 gentoorc-example $(DESTDIR)/etc/gentoorc\n"
2745
2746 #. type: Content of: <book><chapter><section><para>
2747 msgid ""
2748 "You've surely noticed that there's now a <literal>install -d</literal> "
2749 "command before the other commands in the rule. The original "
2750 "<filename>Makefile</filename> didn't have it because usually the <literal>/"
2751 "usr/local/bin</literal> and other directories already exist on the system "
2752 "where one runs <literal>make install</literal>. However, since we will "
2753 "install into our own empty (or even nonexistent) directory, we will have to "
2754 "create each and every one of those directories."
2755 msgstr ""
2756 "你一定會注意到在其他命令前有了一個 <literal>install -d</literal> 命令。原始"
2757 "的 <filename>Makefile</filename> 檔案中沒有它,因爲通常情況下 <literal>/usr/"
2758 "local/bin</literal> 和用到的其他目錄早已存在於系統,使用 <literal>make "
2759 "install</literal> 時不用對此處理。然而因爲我們要向空目錄或尚不存在的目錄中安"
2760 "裝,我們必須創建每一個目錄。"
2761
2762 #. type: Content of: <book><chapter><section><para>
2763 msgid ""
2764 "We can also add in other things at the end of the rule, like the "
2765 "installation of additional documentation that the upstream authors sometimes "
2766 "omit:"
2767 msgstr "我們還可以在末尾添加上其他的內容,比如上游作者有時會省略的附加文件:"
2768
2769 #. type: Content of: <book><chapter><section><screen>
2770 #, no-wrap
2771 msgid ""
2772 " install -d $(DESTDIR)/usr/share/doc/gentoo/html\n"
2773 " cp -a docs/* $(DESTDIR)/usr/share/doc/gentoo/html\n"
2774 msgstr ""
2775 " install -d $(DESTDIR)/usr/share/doc/gentoo/html\n"
2776 " cp -a docs/* $(DESTDIR)/usr/share/doc/gentoo/html\n"
2777
2778 #. type: Content of: <book><chapter><section><para>
2779 #, fuzzy
2780 #| msgid ""
2781 #| "After careful check, if everything is fine, ask <command>quilt</command> "
2782 #| "to refresh the patch to create <filename>debian/patches/install.patch</"
2783 #| "filename> and add its description."
2784 msgid ""
2785 "After careful check, if everything is fine, ask <command>dquilt</command> to "
2786 "refresh the patch to create <filename>debian/patches/install.patch</"
2787 "filename> and add its description."
2788 msgstr ""
2789 "仔細檢査後如果沒有問題,使用 <command>quilt</command> 更新補丁以創建 "
2790 "<filename>debian/patches/install.patch</filename> 檔案並添加對它的描述。"
2791
2792 #. type: Content of: <book><chapter><section><para>
2793 msgid "Now you have a series of patches."
2794 msgstr "現在你有了一格系列的補丁。"
2795
2796 #. type: Content of: <book><chapter><section><orderedlist><listitem><para>
2797 msgid ""
2798 "Upstream bug fix: <filename>debian/patches/fix-gentoo-target.patch</filename>"
2799 msgstr ""
2800 "修復上游 Bug:<filename>debian/patches/fix-gentoo-target.patch</filename>"
2801
2802 #. type: Content of: <book><chapter><section><orderedlist><listitem><para>
2803 msgid ""
2804 "Debian specific packaging modification: <filename>debian/patches/install."
2805 "patch</filename>"
2806 msgstr ""
2807 "Debian 特有的打包修改:<filename>debian/patches/install.patch</filename>"
2808
2809 #. type: Content of: <book><chapter><section><para>
2810 msgid ""
2811 "Whenever you make changes that are not specifically related to Debian "
2812 "package such as <filename>debian/patches/fix-gentoo-target.patch</filename>, "
2813 "be sure to send them to the upstream maintainer so they can be included in "
2814 "the next program revision and be useful to everyone else. Also remember to "
2815 "make your fixes not specific to Debian or Linux (or even Unix!) prior to "
2816 "sending them -- make them portable. This will make your fixes much easier "
2817 "to apply."
2818 msgstr ""
2819 "進行任何不是 Debian 特有的修改時,比如 <filename>debian/patches/fix-gentoo-"
2820 "target.patch</filename>,一定要向上遊作者進行反饋,以便上游作者方便在下一版本"
2821 "中以使更多人受益。同時請記住在做不特別針對 Debian 或 Linux (甚至是 Unix!)的"
2822 "修改時要使其可以移植,這會使你的修改更容易被接受。"
2823
2824 #. type: Content of: <book><chapter><section><para>
2825 msgid ""
2826 "Note that you don't have to send the <filename>debian/*</filename> files "
2827 "upstream."
2828 msgstr "注意你不一定要把 <filename>debian/*</filename> 都提交到上游。"
2829
2830 #. type: Content of: <book><chapter><section><title>
2831 msgid "Differing libraries"
2832 msgstr "不一樣的函式庫名稱"
2833
2834 #. type: Content of: <book><chapter><section><para>
2835 msgid ""
2836 "There is one other common problem: libraries are often different from "
2837 "platform to platform. For example, a <filename>Makefile</filename> can "
2838 "contain a reference to a library which doesn't exist on Debian systems. In "
2839 "that case, we need to change it to a library which does exist in Debian, and "
2840 "serves the same purpose."
2841 msgstr ""
2842 "還有另外一個常見的問題:不同平臺之間的函式庫常常是不同的。例如一個 "
2843 "<filename>Makefile</filename> 中可能引了用一個不在 Debian 上存在的函式庫。這"
2844 "種情況下我們需要將其修改爲 Debian 中存在的、提供完全相同功能的函式庫。"
2845
2846 #. type: Content of: <book><chapter><section><para><footnote><para>
2847 msgid ""
2848 "The author realizes that this is not the best example considering our "
2849 "<systemitem role=\"package\">libncurses</systemitem> package now ships with "
2850 "a <filename>libcurses.so</filename> symlink, but he couldn't think of a "
2851 "better one. Suggestions very welcome :-)"
2852 msgstr ""
2853 "作者已經意識到這不是一個最好的例子,因爲我們的 <systemitem role=\"package"
2854 "\">libncurses</systemitem> 套件現在提供了一個 <filename>libcurses.so</"
2855 "filename> 的符號鏈接,但作者還沒有想出更好的例子。非常歡迎提出建議 :-)"
2856
2857 #. type: Content of: <book><chapter><section><para>
2858 msgid ""
2859 "So, if there is a line in your program's <filename>Makefile</filename> (or "
2860 "<filename>Makefile.in</filename>) that says something like this (and your "
2861 "program doesn't compile) <placeholder type=\"footnote\" id=\"0\"/>:"
2862 msgstr ""
2863 "如果你手中程式的 <filename>Makefile</filename>(或 <filename>Makefile.in</"
2864 "filename>)中有如下的行(且程式無法通過編譯)<placeholder type=\"footnote\" id="
2865 "\"0\"/>:"
2866
2867 #. type: Content of: <book><chapter><section><screen>
2868 #, no-wrap
2869 msgid "LIBS = -lcurses -lsomething -lsomethingelse\n"
2870 msgstr "LIBS = -lcurses -lsomething -lsomethingelse\n"
2871
2872 #. type: Content of: <book><chapter><section><para>
2873 msgid ""
2874 "Let's fix this as <filename>debian/patches/ncurse.patch</filename> by "
2875 "changing <literal>curses</literal> into <literal>ncurses</literal>."
2876 msgstr ""
2877 "我們將這個補丁命名爲 <filename>debian/patches/ncurse.patch</filename>,內容是"
2878 "把 <literal>curses</literal> 改爲 <literal>ncurses</literal>。"
2879
2880 #. type: Content of: <book><chapter><section><screen>
2881 #, fuzzy, no-wrap
2882 #| msgid ""
2883 #| "$ quilt new ncurse.patch\n"
2884 #| "$ quilt add Makefile\n"
2885 #| "$ sed -i -e s/-lcurses/-lncurses/g Makefile\n"
2886 #| "$ quilt refresh\n"
2887 #| "$ quilt header -e\n"
2888 #| "... describe patch\n"
2889 msgid ""
2890 "$ dquilt new ncurse.patch\n"
2891 "$ dquilt add Makefile\n"
2892 "$ sed -i -e s/-lcurses/-lncurses/g Makefile\n"
2893 "$ dquilt refresh\n"
2894 "$ dquilt header -e\n"
2895 "... describe patch\n"
2896 msgstr ""
2897 "$ quilt new ncurse.patch\n"
2898 "$ quilt add Makefile\n"
2899 "$ sed -i -e s/-lcurses/-lncurses/g Makefile\n"
2900 "$ quilt refresh\n"
2901 "$ quilt header -e\n"
2902 "... 描述補丁\n"
2903
2904 #. type: Content of: <book><chapter><title>
2905 msgid "Required files under the <filename>debian</filename> directory"
2906 msgstr "<filename>debian</filename> 目錄中的必須內容"
2907
2908 #. type: Content of: <book><chapter><para><footnote><para>
2909 msgid ""
2910 "In this chapter, files in the <filename>debian</filename> directory are "
2911 "referred without preceding <filename>debian/</filename> for simplicity "
2912 "whenever they are obvious."
2913 msgstr ""
2914
2915 #. type: Content of: <book><chapter><para>
2916 msgid ""
2917 "There is a new subdirectory under the program's source directory, it's "
2918 "called <filename>debian</filename>. There are a number of files in this "
2919 "directory that we should edit in order to customize the behavior of the "
2920 "package. The most important of them are <filename>control</filename>, "
2921 "<filename>changelog</filename>, <filename>copyright</filename> and "
2922 "<filename>rules</filename>, which are required for all packages. "
2923 "<placeholder type=\"footnote\" id=\"0\"/>"
2924 msgstr ""
2925
2926 #. type: Content of: <book><chapter><section><title>
2927 msgid "<filename>control</filename> file"
2928 msgstr "<filename>control</filename> 檔案"
2929
2930 #. type: Content of: <book><chapter><section><para>
2931 msgid ""
2932 "This file contains various values which <command>dpkg</command>, "
2933 "<command>dselect</command>, <command>apt-get</command>, <command>apt-cache</"
2934 "command>, <command>aptitude</command>, and other package management tools "
2935 "will use to manage the package. It is defined by the <ulink url=\"&policy-"
2936 "control;\">Debian Policy Manual, 5 'Control files and their fields'</ulink>."
2937 msgstr ""
2938 "這個檔案包含了很多供 <command>dpkg</command>、<command>dselect</command>、"
2939 "<command>apt-get</command>、<command>apt-cache</command>、<command>aptitude</"
2940 "command> 等套件管理工具提取訊息以進行管理時所使用的變量。這些變量均在 <ulink "
2941 "url=\"&policy-control;\">Debian Policy Manual, 5 'Control files and their "
2942 "fields'</ulink> 中定義。"
2943
2944 #. type: Content of: <book><chapter><section><para>
2945 msgid ""
2946 "Here is the <filename>control</filename> file <command>dh_make</command> "
2947 "created for us:"
2948 msgstr ""
2949
2950 #. type: Content of: <book><chapter><section><screen>
2951 #, no-wrap
2952 msgid ""
2953 " 1 Source: gentoo\n"
2954 " 2 Section: unknown\n"
2955 " 3 Priority: extra\n"
2956 " 4 Maintainer: Josip Rodin &lt;joy-mg@debian.org&gt;\n"
2957 " 5 Build-Depends: debhelper (&gt;= 7.0.50~)\n"
2958 " 6 Standards-Version: 3.8.4\n"
2959 " 7 Homepage: &lt;insert the upstream URL, if relevant&gt;\n"
2960 " 8\n"
2961 " 9 Package: gentoo\n"
2962 "10 Architecture: any\n"
2963 "11 Depends: ${shlibs:Depends}, ${misc:Depends}\n"
2964 "12 Description: &lt;insert up to 60 chars description&gt;\n"
2965 "13 &lt;insert long description, indented with spaces&gt;\n"
2966 msgstr ""
2967 " 1 Source: gentoo\n"
2968 " 2 Section: unknown\n"
2969 " 3 Priority: extra\n"
2970 " 4 Maintainer: Josip Rodin &lt;joy-mg@debian.org&gt;\n"
2971 " 5 Build-Depends: debhelper (&gt;= 7.0.50~)\n"
2972 " 6 Standards-Version: 3.8.4\n"
2973 " 7 Homepage: &lt;insert the upstream URL, if relevant&gt;\n"
2974 " 8\n"
2975 " 9 Package: gentoo\n"
2976 "10 Architecture: any\n"
2977 "11 Depends: ${shlibs:Depends}, ${misc:Depends}\n"
2978 "12 Description: &lt;insert up to 60 chars description&gt;\n"
2979 "13 &lt;insert long description, indented with spaces&gt;\n"
2980
2981 #. type: Content of: <book><chapter><section><para>
2982 msgid "(I've added the line numbers.)"
2983 msgstr "(注:我爲它添加了行號。)"
2984
2985 #. type: Content of: <book><chapter><section><para>
2986 #, fuzzy
2987 #| msgid "Lines 1-6 are the control information for the source package."
2988 msgid ""
2989 "Lines 1-7 are the control information for the source package. Lines 9-13 "
2990 "are the control information for the binary package."
2991 msgstr "第 1-6 行是原始碼套件的控制訊息。"
2992
2993 #. type: Content of: <book><chapter><section><para>
2994 msgid "Line 1 is the name of the source package."
2995 msgstr "第 1 行是原始碼套件的名稱。"
2996
2997 #. type: Content of: <book><chapter><section><para>
2998 msgid "Line 2 is the section of the distribution the source package goes into."
2999 msgstr "第 2 行是該源碼包要進入發行版中的分類。"
3000
3001 #. type: Content of: <book><chapter><section><para><footnote><para>
3002 msgid ""
3003 "See <ulink url=\"&policy-subsections;\">Debian Policy Manual, 2.4 "
3004 "'Sections'</ulink> and <ulink url=\"&sections-unstable;\">List of sections "
3005 "in <literal>sid</literal></ulink>."
3006 msgstr ""
3007
3008 #. type: Content of: <book><chapter><section><para>
3009 #, fuzzy
3010 #| msgid ""
3011 #| "As you may have noticed, Debian archive is divided in sections: "
3012 #| "<literal>main</literal> (the free software), <literal>non-free</literal> "
3013 #| "(the not really free software) and <literal>contrib</literal> (free "
3014 #| "software that depends on non-free software). Under those, there are "
3015 #| "logical subsections that describe in short what packages are in. So we "
3016 #| "have <literal>admin</literal> for administrator-only programs, "
3017 #| "<literal>base</literal> for the basic tools, <literal>devel</literal> for "
3018 #| "programmer tools, <literal>doc</literal> for documentation, "
3019 #| "<literal>libs</literal> for libraries, <literal>mail</literal> for e-mail "
3020 #| "readers and daemons, <literal>net</literal> for network apps and daemons, "
3021 #| "<literal>x11</literal> for X11 programs that don't fit anywhere else, and "
3022 #| "many more. See the <ulink url=\"&policy-subsections;\">Debian Policy "
3023 #| "Manual, 2.4 'Sections'</ulink> and <ulink url=\"&sections-unstable;"
3024 #| "\">List of sections in 'sid'</ulink> for the guidance."
3025 msgid ""
3026 "As you may have noticed, Debian archive is divided in sections: "
3027 "<literal>main</literal> (the free software), <literal>non-free</literal> "
3028 "(the not really free software) and <literal>contrib</literal> (free software "
3029 "that depends on non-free software). Under those, there are logical "
3030 "subsections that describe in short what packages are in. So we have "
3031 "<literal>admin</literal> for administrator-only programs, <literal>base</"
3032 "literal> for the basic tools, <literal>devel</literal> for programmer tools, "
3033 "<literal>doc</literal> for documentation, <literal>libs</literal> for "
3034 "libraries, <literal>mail</literal> for e-mail readers and daemons, "
3035 "<literal>net</literal> for network apps and daemons, <literal>x11</literal> "
3036 "for X11 programs that don't fit anywhere else, and many more. <placeholder "
3037 "type=\"footnote\" id=\"0\"/>"
3038 msgstr ""
3039 "你可能已經注意到,Debian 倉庫被分爲幾個類別:<literal>main</literal> (自由軟"
3040 "體)、<literal>non-free</literal> (非自由軟體)以及 <literal>contrib</literal> "
3041 "(依賴於非自由軟體的自由軟體)。在這些大的分類之下還有多個邏輯上的子分類,用以"
3042 "簡短描述套件的用途類別。<literal>admin</literal> 爲僅供系統管理員使用的程式,"
3043 "<literal>base</literal> 爲基本工具,<literal>devel</literal> 爲開發工具,"
3044 "<literal>doc</literal> 爲文件,<literal>libs</literal> 爲函式庫,"
3045 "<literal>mail</literal> 爲電子郵件閱讀器或郵件系統守護程式,<literal>net</"
3046 "literal> 爲網絡應用程式或網絡服務守護進程,<literal>x11</literal> 爲不屬於其"
3047 "他分類的爲 X11 程式。更多的子分類見 <ulink url=\"&policy-subsections;"
3048 "\">Debian Policy Manual, 2.4 'Sections'</ulink> 和 <ulink url=\"&sections-"
3049 "unstable;\">List of sections in 'sid'</ulink>"
3050
3051 #. type: Content of: <book><chapter><section><para>
3052 msgid ""
3053 "Let's change it then to x11. (A <literal>main/</literal> prefix is implied "
3054 "so we can omit it.)"
3055 msgstr ""
3056 "我們將本例設置爲 x11。( <literal>main/</literal> 前綴是默認值,可以省略。)"
3057
3058 #. type: Content of: <book><chapter><section><para><footnote><para>
3059 #, fuzzy
3060 #| msgid ""
3061 #| "Line 3 describes how important it is that the user installs this "
3062 #| "package. See the <ulink url=\"&policy-priorities;\">Debian Policy "
3063 #| "Manual, 2.5 'Priorities'</ulink> for the guidance."
3064 msgid ""
3065 "See <ulink url=\"&policy-priorities;\">Debian Policy Manual, 2.5 "
3066 "'Priorities'</ulink>."
3067 msgstr ""
3068 "第 3 行描述了用戶安裝此套件的優先級。具體說明參考 <ulink url=\"&policy-"
3069 "priorities;\">Debian Policy Manual, 2.5 'Priorities'</ulink>"
3070
3071 #. type: Content of: <book><chapter><section><para>
3072 #, fuzzy
3073 #| msgid ""
3074 #| "Line 3 describes how important it is that the user installs this "
3075 #| "package. See the <ulink url=\"&policy-priorities;\">Debian Policy "
3076 #| "Manual, 2.5 'Priorities'</ulink> for the guidance."
3077 msgid ""
3078 "Line 3 describes how important it is that the user installs this package. "
3079 "<placeholder type=\"footnote\" id=\"0\"/>"
3080 msgstr ""
3081 "第 3 行描述了用戶安裝此套件的優先級。具體說明參考 <ulink url=\"&policy-"
3082 "priorities;\">Debian Policy Manual, 2.5 'Priorities'</ulink>"
3083
3084 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3085 msgid ""
3086 "The <literal>optional</literal> priority will usually work for new packages "
3087 "that do not conflict with others with <literal>required</literal>, "
3088 "<literal>important</literal> or <literal>standard</literal> priorities."
3089 msgstr ""
3090 "<literal>optional</literal> 優先級適用於不與優先級爲 <literal>required</"
3091 "literal>、<literal>important</literal> 或 <literal>standard</literal> 的套件"
3092 "衝突的新套件。"
3093
3094 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3095 msgid ""
3096 "The <literal>extra</literal> priority will usually work for new packages "
3097 "that conflict with others with non-<literal>extra</literal> priorities."
3098 msgstr ""
3099 "<literal>extra</literal> 優先級適用於與其他非 <literal>extra</literal> 優先級"
3100 "套件衝突的新套件。"
3101
3102 #. type: Content of: <book><chapter><section><para>
3103 msgid ""
3104 "Section and priority are used by the frontends like <command>aptitude</"
3105 "command> when they sort packages and select defaults. Once you upload the "
3106 "package to Debian, the value of these two fields can be overridden by the "
3107 "archive maintainers, in which case you will be notified by email."
3108 msgstr ""
3109 "Section 和 Priority 常被如 <command>aptitude</command> 的前端所使用,以分類套"
3110 "件並計算默認值。一旦你把套件上傳到 Debian,這兩項的值可以被倉庫維護人員修改,"
3111 "在被修改時你將收到郵件。"
3112
3113 #. type: Content of: <book><chapter><section><para>
3114 msgid ""
3115 "As this is a normal priority package and doesn't conflict with anything "
3116 "else, we will change the priority to <literal>optional</literal>."
3117 msgstr ""
3118 "由於這是一個常規優先級的軟體,並不與其他套件衝突,我們將優先級改爲 "
3119 "<literal>optional</literal>。"
3120
3121 #. type: Content of: <book><chapter><section><para>
3122 msgid ""
3123 "Line 4 is the name and email address of the maintainer. Make sure that this "
3124 "field includes a valid <literal>To</literal> header for an email, because "
3125 "after you upload it, the bug tracking system will use it to deliver bug "
3126 "emails to you. Avoid using commas, ampersands and parenthesis."
3127 msgstr ""
3128 "第 4 行是維護者的姓名和電子郵件地址。請確保此處的值可以直接用於電子郵件頭的 "
3129 "<literal>To</literal> 項。因爲一旦你將套件上傳至倉庫,Bug 跟蹤系統將使用其向"
3130 "你發送可能的 Bug 報告郵件。避免使用逗號、“&amp;”符號或括號。"
3131
3132 #. type: Content of: <book><chapter><section><para><footnote><para>
3133 msgid ""
3134 "See <ulink url=\"&policy-relationships;#s-sourcebinarydeps\">Debian Policy "
3135 "Manual, 7.7 'Relationships between source and binary packages - Build-"
3136 "Depends, Build-Depends-Indep, Build-Conflicts, Build-Conflicts-Indep'</"
3137 "ulink>."
3138 msgstr ""
3139
3140 #. type: Content of: <book><chapter><section><para>
3141 #, fuzzy
3142 #| msgid ""
3143 #| "The 5th line includes the list of packages required to build your package "
3144 #| "as the <literal>Build-Depends</literal> field. You can also have the "
3145 #| "<literal>Build-Depends-Indep</literal> field as an additional line, "
3146 #| "here. (see the <ulink url=\"&policy-relationships;#s-sourcebinarydeps"
3147 #| "\">Debian Policy Manual, 7.7 'Relationships between source and binary "
3148 #| "packages - Build-Depends, Build-Depends-Indep, Build-Conflicts, Build-"
3149 #| "Conflicts-Indep'</ulink>). Some packages like <systemitem role=\"package"
3150 #| "\">gcc</systemitem> and <systemitem role=\"package\">make</systemitem> "
3151 #| "which are required by the <systemitem role=\"package\">build-essential</"
3152 #| "systemitem> package are implied. If you need to have other tools to "
3153 #| "build your package, you should add them to these fields. Multiple "
3154 #| "entries are separated with commas; read on for the explanation of binary "
3155 #| "dependencies to find out more about the syntax of these lines."
3156 msgid ""
3157 "The 5th line includes the list of packages required to build your package as "
3158 "the <literal>Build-Depends</literal> field. You can also have the "
3159 "<literal>Build-Depends-Indep</literal> field as an additional line, here. "
3160 "<placeholder type=\"footnote\" id=\"0\"/> Some packages like <systemitem "
3161 "role=\"package\">gcc</systemitem> and <systemitem role=\"package\">make</"
3162 "systemitem> which are required by the <systemitem role=\"package\">build-"
3163 "essential</systemitem> package are implied. If you need to have other tools "
3164 "to build your package, you should add them to these fields. Multiple "
3165 "entries are separated with commas; read on for the explanation of binary "
3166 "dependencies to find out more about the syntax of these lines."
3167 msgstr ""
3168 "第 5 行中的 <literal>Build-Depends</literal> 項列出了編譯此套件需要的套件。一"
3169 "些情況下你還需要這裏添加一行 <literal>Build-Depends-Indep</literal> (參考 "
3170 "<ulink url=\"&policy-relationships;#s-sourcebinarydeps\">Debian Policy "
3171 "Manual, 7.7 'Relationships between source and binary packages - Build-"
3172 "Depends, Build-Depends-Indep, Build-Conflicts, Build-Conflicts-Indep'</"
3173 "ulink>)。<systemitem role=\"package\">build-essential</systemitem> 依賴的套"
3174 "件,如 <systemitem role=\"package\">gcc</systemitem> 和 <systemitem role="
3175 "\"package\">make</systemitem> 等,已經默認安裝而不需再寫到此處。如果你需要其"
3176 "他工具來編譯這個套件,請將它們加到這裏。多個套件應使用半形逗號分隔,繼續閱讀"
3177 "二進位套件依賴關係以增進對這些行的語法的理解。"
3178
3179 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3180 msgid ""
3181 "For all packages packaged with the <command>dh</command> command in the "
3182 "<filename>debian/rules</filename> file, you must have <literal>debhelper "
3183 "(&gt;=7.0.50~)</literal> in the <literal>Build-Depends</literal> field to "
3184 "satisfy the Debian Policy requirement for the <literal>clean</literal> "
3185 "target."
3186 msgstr ""
3187 "對於所有在 <filename>debian/rules</filename> 檔案中使用 <command>dh</"
3188 "command> 命令的套件,必須在 <literal>Build-Depends</literal> 中包含 "
3189 "<literal>debhelper (&gt;=7.0.50~)</literal> 以滿足 Debian Policy 中對 "
3190 "<literal>clean</literal> target 的要求。"
3191
3192 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3193 msgid ""
3194 "For source packages which have some binary packages with "
3195 "<literal>Architecture: any</literal>, they are rebuild by the autobuilder. "
3196 "Since this autobuilder procedure runs <literal>debian/rules build</literal> "
3197 "in it while installing only packages listed in the <literal>Build-Depends</"
3198 "literal> field (see <xref linkend=\"autobuilder\"/>), the <literal>Build-"
3199 "Depends</literal> field needs to list practically all the required packages "
3200 "and the <literal>Build-Depends-indep</literal> is rarely used."
3201 msgstr ""
3202 "對於生成一些標有 <literal>Architecture: any</literal> 的套件,它們將被 "
3203 "autobuilder 編譯。因爲 autobuilder 僅安裝 <literal>Build-Depends</literal> 後"
3204 "便執行 <literal>debian/rules build</literal> 中的內容(參考 <xref linkend="
3205 "\"autobuilder\"/>),<literal>Build-Depends</literal> 需要列出所有必須的編譯依"
3206 "賴,而 <literal>Build-Depends-indep</literal> 則很少使用。"
3207
3208 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3209 msgid ""
3210 "For source packages which have binary packages only with "
3211 "<literal>Architecture: all</literal>, the <literal>Build-Depends-Indep</"
3212 "literal> field may list all the required packages unless they are already "
3213 "listed in the <literal>Build-Depends</literal> field to satisfy the Debian "
3214 "Policy requirement for the <literal>clean</literal> target."
3215 msgstr ""
3216 "對於僅有 <literal>Architecture: all</literal> 的套件,<literal>Build-Depends-"
3217 "Indep</literal> 中應列出 <literal>Build-Depends</literal> 中未列出的所有需要"
3218 "的套件,以便滿足 Debian Policy 中對 <literal>clean</literal> target 的要求。"
3219
3220 #. type: Content of: <book><chapter><section><para><footnote><para>
3221 msgid ""
3222 "This somewhat strange situation is a feature well documented in the <ulink "
3223 "url=\"&policy-build-depends-indep;\">Debian Policy Manual, Footnotes 48</"
3224 "ulink>. This is not due to the use of the <command>dh</command> command in "
3225 "the <filename>debian/rules</filename> file but due to how the <command>dpkg-"
3226 "buildpackage</command> works. The same situation applies to the <ulink url="
3227 "\"https://bugs.launchpad.net/launchpad-buildd/+bug/238141\">auto build "
3228 "system for Ubuntu</ulink>."
3229 msgstr ""
3230 "這種奇怪的情況是 <ulink url=\"&policy-build-depends-indep;\">Debian Policy "
3231 "Manual, Footnotes 48</ulink> 中詳細描述的一種特性。這不是由於在 "
3232 "<filename>debian/rules</filename> 中使用 <command>dh</command> 命令所致的,真"
3233 "正的原因是 <command>dpkg-buildpackage</command> 如何運行。相同的情形也適用於 "
3234 "<ulink url=\"https://bugs.launchpad.net/launchpad-buildd/"
3235 "+bug/238141\">Ubuntu 的自動編譯系統</ulink>。"
3236
3237 #. type: Content of: <book><chapter><section><para>
3238 msgid ""
3239 "If you are not sure which one should be used, use the <literal>Build-"
3240 "Depends</literal> field to be on the safe side. <placeholder type=\"footnote"
3241 "\" id=\"0\"/>"
3242 msgstr ""
3243 "如果你不知道應該使用哪一個,則使用 <literal>Build-Depends</literal> 以保證安"
3244 "全。<placeholder type=\"footnote\" id=\"0\"/>"
3245
3246 #. type: Content of: <book><chapter><section><para>
3247 msgid ""
3248 "To find out what packages your package needs to be built run the command:"
3249 msgstr "要找出編譯你的軟體所需的套件可以使用這個命令:"
3250
3251 #. type: Content of: <book><chapter><section><screen>
3252 #, no-wrap
3253 msgid "$ dpkg-depcheck -d ./configure\n"
3254 msgstr "$ dpkg-depcheck -d ./configure\n"
3255
3256 #. type: Content of: <book><chapter><section><para>
3257 msgid ""
3258 "To manually find exact build dependency for <command><replaceable>/usr/bin/"
3259 "foo</replaceable></command>, you execute"
3260 msgstr ""
3261 "要手工地找到 <command><replaceable>/usr/bin/foo</replaceable></command> 的編"
3262 "譯依賴,可以執行:"
3263
3264 #. type: Content of: <book><chapter><section><screen>
3265 #, no-wrap
3266 msgid "$ objdump -p <replaceable>/usr/bin/foo</replaceable> | grep NEEDED\n"
3267 msgstr "$ objdump -p <replaceable>/usr/bin/foo</replaceable> | grep NEEDED\n"
3268
3269 #. type: Content of: <book><chapter><section><para>
3270 msgid ""
3271 "and for each library listed, e.g., <command>libfoo.so.6</command>, execute"
3272 msgstr "對於列出的每個函式庫,例如 <command>libfoo.so.6</command>,運行:"
3273
3274 #. type: Content of: <book><chapter><section><screen>
3275 #, no-wrap
3276 msgid "$ dpkg -S libfoo.so.6\n"
3277 msgstr "$ dpkg -S libfoo.so.6\n"
3278
3279 #. type: Content of: <book><chapter><section><para>
3280 msgid ""
3281 "Then you just take <literal>-dev</literal> version of every package as "
3282 "<literal>Build-Depends</literal> entry. If you use <command>ldd</command> "
3283 "for this purpose, it will report indirect lib dependencies as well, "
3284 "resulting in the problem of excessive build dependencies."
3285 msgstr ""
3286 "接下來直接將相應的 <literal>-dev</literal> 套件的名稱放到 <literal>Build-"
3287 "Depends</literal> 項內。如果你使用 <command>ldd</command>,它也會報告出間接的"
3288 "函式庫依賴關係,這可能造成填寫了某些不必要的依賴。"
3289
3290 #. type: Content of: <book><chapter><section><para>
3291 msgid ""
3292 "<systemitem role=\"package\">gentoo</systemitem> also happens to require "
3293 "<systemitem role=\"package\">xlibs-dev</systemitem>, <systemitem role="
3294 "\"package\">libgtk1.2-dev</systemitem> and <systemitem role=\"package"
3295 "\">libglib1.2-dev</systemitem> to build, so we'll add them here next to "
3296 "<systemitem role=\"package\">debhelper</systemitem>."
3297 msgstr ""
3298 "<systemitem role=\"package\">gentoo</systemitem> 需要 <systemitem role="
3299 "\"package\">xlibs-dev</systemitem>、<systemitem role=\"package\">libgtk1.2-"
3300 "dev</systemitem> 和 <systemitem role=\"package\">libglib1.2-dev</systemitem> "
3301 "才能編譯,所以我們將這些套件加在 <systemitem role=\"package\">debhelper</"
3302 "systemitem> 之後。"
3303
3304 #. type: Content of: <book><chapter><section><para>
3305 msgid ""
3306 "Line 6 is the version of the <ulink url=\"&debian-policy;\">Debian Policy "
3307 "Manual</ulink> standards this package follows, the one you read while making "
3308 "your package."
3309 msgstr ""
3310 "第 6 行是此套件所依據的 <ulink url=\"&debian-policy;\">Debian Policy Manual</"
3311 "ulink> 標準版本號。"
3312
3313 #. type: Content of: <book><chapter><section><para>
3314 msgid "On line 7 you can put the URL of the homepage for the upstream program."
3315 msgstr "在第 7 行你可以放置上游項目的首頁地址。"
3316
3317 #. type: Content of: <book><chapter><section><para>
3318 msgid ""
3319 "Line 9 is the name of the binary package. This is usually the same as the "
3320 "name of the source package, but it doesn't necessarily have to be that way."
3321 msgstr "第 9 行是二進位套件的名稱。通常情況下與原始碼套件相同,但不是必須的。"
3322
3323 #. type: Content of: <book><chapter><section><para>
3324 msgid ""
3325 "Line 10 describes the CPU architecture the binary package can be compiled "
3326 "for. We'll leave this as <literal>any</literal> because <citerefentry> "
3327 "<refentrytitle>dpkg-gencontrol</refentrytitle> <manvolnum>1</manvolnum> </"
3328 "citerefentry> will fill in the appropriate value for any machine this "
3329 "package gets compiled on."
3330 msgstr ""
3331 "第 10 行描述了這個套件可以在哪些 CPU 構架上編譯。我們將保持它爲 "
3332 "<literal>any</literal>,因爲 <citerefentry> <refentrytitle>dpkg-gencontrol</"
3333 "refentrytitle> <manvolnum>1</manvolnum> </citerefentry> 將在這個套件可以編譯"
3334 "的平臺上爲此處填寫合適的訊息。"
3335
3336 #. type: Content of: <book><chapter><section><para>
3337 msgid ""
3338 "If your package is architecture independent (for example, a shell or Perl "
3339 "script, or a document), change this to <literal>all</literal>, and read "
3340 "later in <xref linkend=\"rules\"/> about using the <literal>binary-indep</"
3341 "literal> rule instead of <literal>binary-arch</literal> for building the "
3342 "package."
3343 msgstr ""
3344 "如果你的套件是平臺獨立的(例如一個 shell 或 Perl 腳本,或一些文件),將這項改變"
3345 "爲 <literal>all</literal>,然後繼續閱讀 <xref linkend=\"rules\"/> 中關於使用 "
3346 "<literal>binary-indep</literal> 指令替代 <literal>binary-arch</literal> 來編"
3347 "譯套件的內容。"
3348
3349 #. type: Content of: <book><chapter><section><para>
3350 msgid ""
3351 "Line 11 shows one of the most powerful features of the Debian packaging "
3352 "system. Packages can relate to each other in various ways. Apart from "
3353 "<literal>Depends</literal>, other relationship fields are "
3354 "<literal>Recommends</literal>, <literal>Suggests</literal>, <literal>Pre-"
3355 "Depends</literal>, <literal>Breaks</literal>, <literal>Conflicts</literal>, "
3356 "<literal>Provides</literal>, and <literal>Replaces</literal>."
3357 msgstr ""
3358 "第 11 行顯示了 Debian 套件系統中最強大的特性之一。每個套件都可以和其他套件有"
3359 "各種不同的關係。除 <literal>Depends</literal> 外,還有 <literal>Recommends</"
3360 "literal>、<literal>Suggests</literal>、<literal>Pre-Depends</literal>、"
3361 "<literal>Breaks</literal>、<literal>Conflicts</literal>、<literal>Provides</"
3362 "literal> 和 <literal>Replaces</literal>。"
3363
3364 #. type: Content of: <book><chapter><section><para>
3365 msgid ""
3366 "The package management tools usually behave the same way when dealing with "
3367 "these relations; if not, it will be explained. (see <citerefentry> "
3368 "<refentrytitle>dpkg</refentrytitle> <manvolnum>8</manvolnum> </"
3369 "citerefentry>, <citerefentry> <refentrytitle>dselect</refentrytitle> "
3370 "<manvolnum>8</manvolnum> </citerefentry>, <citerefentry> <refentrytitle>apt</"
3371 "refentrytitle> <manvolnum>8</manvolnum> </citerefentry>, <citerefentry> "
3372 "<refentrytitle>aptitude</refentrytitle> <manvolnum>1</manvolnum> </"
3373 "citerefentry> etc.)"
3374 msgstr ""
3375 "套件管理工具通常對這些關係採取相同的操作,如果不是,我將會詳細解釋。(參考 "
3376 "<citerefentry> <refentrytitle>dpkg</refentrytitle> <manvolnum>8</manvolnum> "
3377 "</citerefentry>、<citerefentry> <refentrytitle>dselect</refentrytitle> "
3378 "<manvolnum>8</manvolnum> </citerefentry>、<citerefentry> <refentrytitle>apt</"
3379 "refentrytitle> <manvolnum>8</manvolnum> </citerefentry>、<citerefentry> "
3380 "<refentrytitle>aptitude</refentrytitle> <manvolnum>1</manvolnum> </"
3381 "citerefentry> 等。)"
3382
3383 #. type: Content of: <book><chapter><section><para><footnote><para>
3384 msgid ""
3385 "See <ulink url=\"&policy-relationships;\">Debian Policy Manual, 7 'Declaring "
3386 "relationships between packages'</ulink>."
3387 msgstr ""
3388
3389 #. type: Content of: <book><chapter><section><para>
3390 #, fuzzy
3391 #| msgid ""
3392 #| "The <literal>dh $@</literal> command can be customized as follows. "
3393 #| "<placeholder type=\"footnote\" id=\"0\"/>"
3394 msgid ""
3395 "Here is a simplified description of package relationships. <placeholder "
3396 "type=\"footnote\" id=\"0\"/>"
3397 msgstr ""
3398 "<literal>dh $@</literal> 命令可以按以下方式定製。<placeholder type=\"footnote"
3399 "\" id=\"0\"/>"
3400
3401 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3402 msgid "<literal>Depends</literal>"
3403 msgstr "<literal>Depends</literal>"
3404
3405 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3406 msgid ""
3407 "The package will not be installed unless the packages it depends on are "
3408 "installed. Use this if your program absolutely will not run (or will cause "
3409 "severe breakage) unless a particular package is present."
3410 msgstr ""
3411 "此套件僅當它依賴的套件均已安裝後纔可以安裝。此處寫明你的程式所必須的套件。"
3412
3413 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3414 msgid "<literal>Recommends</literal>"
3415 msgstr "<literal>Recommends</literal>"
3416
3417 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3418 msgid ""
3419 "Use this for packages that are not strictly necessary but are typically used "
3420 "with your program. When a user installs your program, all frontends will "
3421 "likely prompt them to install the recommended packages. <command>aptitude</"
3422 "command> and <command>apt-get</command> install recommended packages along "
3423 "with your package (but the user can disable this default behaviour). "
3424 "<command>dpkg</command> will ignore this field."
3425 msgstr ""
3426 "這項中的套件不是嚴格意義上必須安裝纔可以保證程式運行。當用戶安裝套件時,所有"
3427 "前端工具都會詢問是否要安裝這些推薦的套件。<command>aptitude</command> 和 "
3428 "<command>apt-get</command> 會在安裝你的套件的時候自動安裝推薦的套件(用戶可以"
3429 "禁用這個默認行爲)。<command>dpkg</command> 則會忽略此項。"
3430
3431 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3432 msgid "<literal>Suggests</literal>"
3433 msgstr "<literal>Suggests</literal>"
3434
3435 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3436 msgid ""
3437 "Use this for packages which will work nicely with your program but are not "
3438 "at all necessary. When a user installs your program, all frontends will "
3439 "likely prompt them to install the suggested packages. <command>aptitude</"
3440 "command> can be configured to install suggested packages along with your "
3441 "package but this is not its default. <command>dpkg</command> and "
3442 "<command>apt-get</command> will ignore this field."
3443 msgstr ""
3444 "此項中的套件可以使你的程式更好地工作,但不是一定需要的。當用戶安裝程式時,所"
3445 "有的前端程式將詢問是否安裝建議的套件。<command>aptitude</command> 可以被設定"
3446 "爲安裝軟體時自動安裝建議的套件。<command>dpkg</command> 和 <command>apt-get</"
3447 "command> 將忽略此項。"
3448
3449 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3450 msgid "<literal>Pre-Depends</literal>"
3451 msgstr "<literal>Pre-Depends</literal>"
3452
3453 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3454 msgid ""
3455 "This is stronger than <literal>Depends</literal>. The package will not be "
3456 "installed unless the packages it pre-depends on are installed and "
3457 "<emphasis>correctly configured</emphasis>. Use this <emphasis>very</"
3458 "emphasis> sparingly and only after discussing it on the <ulink url=\"&debian-"
3459 "devel-ldo;\">debian-devel@lists.debian.org</ulink> mailing list. Read: "
3460 "don't use it at all. :-)"
3461 msgstr ""
3462 "此項中的依賴強於 <literal>Depends</literal> 項。套件僅在預依賴的套件已經安裝"
3463 "後纔可以正常安裝並且 <emphasis>正確設定</emphasis> 後纔可以正常安裝。在使用此"
3464 "項時應 <emphasis>非常慎重</emphasis>,僅當在 <ulink url=\"&debian-devel-ldo;"
3465 "\">debian-devel@lists.debian.org</ulink> 郵件列表討論後才能使用。記住:根本就"
3466 "不要用這項。 :-)"
3467
3468 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3469 msgid "<literal>Conflicts</literal>"
3470 msgstr "<literal>Conflicts</literal>"
3471
3472 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3473 msgid ""
3474 "The package will not be installed until all the packages it conflicts with "
3475 "have been removed. Use this if your program absolutely will not run or will "
3476 "cause severe problems if a particular package is present."
3477 msgstr ""
3478 "僅當所有衝突的套件都已經刪除後此套件纔可以安裝。當程式在某些特定套件存在時根"
3479 "本無法運行或存在嚴重問題時使用此項。"
3480
3481 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3482 msgid "<literal>Breaks</literal>"
3483 msgstr "<literal>Breaks</literal>"
3484
3485 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3486 msgid ""
3487 "The package will be installed while all the listed packages will be broken. "
3488 "Normally a <literal>Breaks</literal> entry has an earlier than version "
3489 "clause. The resolution is generally to upgrade the listed packages by the "
3490 "higher-level package management tools."
3491 msgstr ""
3492 "此套件安裝後列出的套件將會受到損壞。通常 <literal>Breaks</literal> 要附帶一"
3493 "個“版本號小於多少”的說明。這樣,套件管理工具將會選擇升級被損壞的特定版本的套"
3494 "件。"
3495
3496 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3497 msgid "<literal>Provides</literal>"
3498 msgstr "<literal>Provides</literal>"
3499
3500 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3501 #, fuzzy
3502 #| msgid ""
3503 #| "For some types of packages where there are multiple alternatives virtual "
3504 #| "names have been defined. You can get the full list in the <filename>/usr/"
3505 #| "share/doc/debian-policy/virtual-package-names-list.txt.gz</filename> "
3506 #| "file. Use this if your program provides a function of an existing "
3507 #| "virtual package."
3508 msgid ""
3509 "For some types of packages where there are multiple alternatives virtual "
3510 "names have been defined. You can get the full list in the <ulink url="
3511 "\"&virtual-package;\">virtual-package-names-list.txt.gz</ulink> file. Use "
3512 "this if your program provides a function of an existing virtual package."
3513 msgstr ""
3514 "某些類型的套件會定義有多個可選的虛擬名稱。你可以在 <filename>/usr/share/doc/"
3515 "debian-policy/virtual-package-names-list.txt.gz</filename> 檔案中找到完整的列"
3516 "表。如果你的程式提供了某個已存在的虛擬套件的功能則使用此項。"
3517
3518 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3519 msgid "<literal>Replaces</literal>"
3520 msgstr "<literal>Replaces</literal>"
3521
3522 #. type: Content of: <book><chapter><section><itemizedlist><listitem><para>
3523 msgid ""
3524 "Use this when your program replaces files from another package, or "
3525 "completely replaces another package (used in conjunction with "
3526 "<literal>Conflicts</literal>). Files from the named packages will be "
3527 "overwritten with the files from your package."
3528 msgstr ""
3529 "當你的程式要替換其他套件的某些檔案,或是完整地替換另一個套件(與 "
3530 "<literal>Conflicts</literal> 一起使用)。列出的套件中的某些檔案會被你的套件所"
3531 "覆蓋。"
3532
3533 #. type: Content of: <book><chapter><section><para>
3534 msgid ""
3535 "All these fields have uniform syntax. They are a list of package names "
3536 "separated by commas. These package names may also be lists of alternative "
3537 "package names, separated by vertical bar symbols <literal>|</literal> (pipe "
3538 "symbols)."
3539 msgstr ""
3540 "所有的這些項都使用相同的語法。它們是一個套件列表,套件名稱間使用半形逗號分"
3541 "隔。也可以寫出有多個可選的套件名稱,這些套件使用 <literal>|</literal> 符號分"
3542 "隔。"
3543
3544 #. type: Content of: <book><chapter><section><para>
3545 msgid ""
3546 "The fields may restrict their applicability to particular versions of each "
3547 "named package. These versions are listed in parentheses after each "
3548 "individual package name, and they should contain a relation from the list "
3549 "below followed by the version number. The relations allowed are: "
3550 "<literal>&lt;&lt;</literal>, <literal>&lt;=</literal>, <literal>=</literal>, "
3551 "<literal>&gt;=</literal> and <literal>&gt;&gt;</literal> for strictly lower, "
3552 "lower or equal, exactly equal, greater or equal and strictly greater, "
3553 "respectively. For example,"
3554 msgstr ""
3555 "這些項內還可以指定某些套件的版本號之間的關係。版本號在括號內,緊隨套件名稱之"
3556 "後,並在以下邏輯符號後寫清具體版本:<literal>&lt;&lt;</literal>、"
3557 "<literal>&lt;=</literal>、<literal>=</literal>、<literal>&gt;=</literal> 和 "
3558 "<literal>&gt;&gt;</literal>,分別代表嚴格小於、小於或等於、嚴格等於、大於或等"
3559 "於以及嚴格大於。例如:"
3560
3561 #. type: Content of: <book><chapter><section><screen>
3562 #, no-wrap
3563 msgid ""
3564 "Depends: foo (&gt;= 1.2), libbar1 (= 1.3.4)\n"
3565 "Conflicts: baz\n"
3566 "Recommends: libbaz4 (&gt;&gt; 4.0.7)\n"
3567 "Suggests: quux\n"
3568 "Replaces: quux (&lt;&lt; 5), quux-foo (&lt;= 7.6)\n"
3569 msgstr ""
3570 "Depends: foo (&gt;= 1.2), libbar1 (= 1.3.4)\n"
3571 "Conflicts: baz\n"
3572 "Recommends: libbaz4 (&gt;&gt; 4.0.7)\n"
3573 "Suggests: quux\n"
3574 "Replaces: quux (&lt;&lt; 5), quux-foo (&lt;= 7.6)\n"
3575
3576 #. type: Content of: <book><chapter><section><para>
3577 msgid ""
3578 "The last feature you need to know about is <literal>${shlibs:Depends}</"
3579 "literal>, <literal>${perl:Depends}</literal>, <literal>${misc:Depends}</"
3580 "literal>, etc."
3581 msgstr ""
3582
3583 #. type: Content of: <book><chapter><section><para>
3584 #, fuzzy
3585 #| msgid ""
3586 #| "<citerefentry> <refentrytitle>dh_shlibdeps</refentrytitle> <manvolnum>1</"
3587 #| "manvolnum> </citerefentry> will scan it for binaries and libraries "
3588 #| "determine their shared library dependencies and detect which packages "
3589 #| "they are in, such as <systemitem role=\"package\">libc6</systemitem> or "
3590 #| "<systemitem role=\"package\">xlib6g</systemitem>, after your package has "
3591 #| "been built and installed into the temporary directory. This list of "
3592 #| "shared library dependencies is used for <literal>${shlibs:Depends}</"
3593 #| "literal>."
3594 msgid ""
3595 "<citerefentry> <refentrytitle>dh_shlibdeps</refentrytitle> <manvolnum>1</"
3596 "manvolnum> </citerefentry> calculates shared library dependencies for binary "
3597 "packages. It generates a list of ELF executables and shared libraries it "
3598 "has found for each binary package. Such list is used for substituting "
3599 "<literal>${shlibs:Depends}</literal>."
3600 msgstr ""
3601 "<citerefentry> <refentrytitle>dh_shlibdeps</refentrytitle> <manvolnum>1</"
3602 "manvolnum> </citerefentry> 會在程式編譯完成並被放入臨時檔案夾後掃描二進位檔案"
3603 "和函式庫檔案來確定動態函式庫的依賴關係,並檢測包含它們的套件名稱。例如 "
3604 "<systemitem role=\"package\">libc6</systemitem> 或 <systemitem role=\"package"
3605 "\">xlib6g</systemitem>。 這些套件將被列在 <literal>${shlibs:Depends}</"
3606 "literal> 的位置。"
3607
3608 #. type: Content of: <book><chapter><section><para>
3609 #, fuzzy
3610 #| msgid ""
3611 #| "The package list generated by the <citerefentry> <refentrytitle>dh_perl</"
3612 #| "refentrytitle> <manvolnum>1</manvolnum> </citerefentry> is used for "
3613 #| "<literal>${perl:Depends}</literal>."
3614 msgid ""
3615 "<citerefentry> <refentrytitle>dh_perl</refentrytitle> <manvolnum>1</"
3616 "manvolnum> </citerefentry> calculates Perl dependencies. It generates a "
3617 "list of a dependency on <literal>perl</literal> or <literal>perlapi</"
3618 "literal> for each binary package. Such list is used for substituting "
3619 "<literal>${perl:Depends}</literal>."
3620 msgstr ""
3621 "<citerefentry> <refentrytitle>dh_perl</refentrytitle> <manvolnum>1</"
3622 "manvolnum> </citerefentry> 所生成的套件列表將用於 <literal>${perl:Depends}</"
3623 "literal> 的位置。"
3624
3625 #. type: Content of: <book><chapter><section><para>
3626 #, fuzzy
3627 #| msgid ""
3628 #| "Some <systemitem role=\"package\">debhelper</systemitem> commands may "
3629 #| "make the generated package need to depend on some other packages. This "
3630 #| "list of required packages is used for <literal>${misc:Depends}</literal>."
3631 msgid ""
3632 "Some <systemitem role=\"package\">debhelper</systemitem> commands may make "
3633 "the generated package need to depend on some other packages. All such "
3634 "commands generate a list of required packages for each binary package. Such "
3635 "list is used for substituting <literal>${misc:Depends}</literal>."
3636 msgstr ""
3637 "一些 <systemitem role=\"package\">debhelper</systemitem> 命令可能會使生成的套"
3638 "件需要依賴於某些其他套件,這些套件將被列於 <literal>${misc:Depends}</"
3639 "literal> 的位置。"
3640
3641 #. type: Content of: <book><chapter><section><para>
3642 #, fuzzy
3643 #| msgid ""
3644 #| "The package list generated by the <citerefentry> <refentrytitle>dh_perl</"
3645 #| "refentrytitle> <manvolnum>1</manvolnum> </citerefentry> is used for "
3646 #| "<literal>${perl:Depends}</literal>."
3647 msgid ""
3648 "<citerefentry> <refentrytitle>dh_gencontrol</refentrytitle> <manvolnum>1</"
3649 "manvolnum> </citerefentry> generates <filename>DEBIAN/control</filename> for "
3650 "each binary package while substituting <literal>${shlibs:Depends}</literal>, "
3651 "<literal>${perl:Depends}</literal>, <literal>${misc:Depends}</literal>, etc."
3652 msgstr ""
3653 "<citerefentry> <refentrytitle>dh_perl</refentrytitle> <manvolnum>1</"
3654 "manvolnum> </citerefentry> 所生成的套件列表將用於 <literal>${perl:Depends}</"
3655 "literal> 的位置。"
3656
3657 #. type: Content of: <book><chapter><section><para>
3658 msgid ""
3659 "Having said all that, we can leave the <literal>Depends</literal> field "
3660 "exactly as it is now, and insert another line after it saying "
3661 "<literal>Suggests: file</literal>, because <systemitem role=\"package"
3662 "\">gentoo</systemitem> can use some features provided by that <systemitem "
3663 "role=\"package\">file</systemitem> package."
3664 msgstr ""
3665 "說過這些以後,我們可以把 <literal>Depends</literal> 項保持現狀不動,並在其下"
3666 "插入一行 <literal>Suggests: file</literal>,因爲 <systemitem role=\"package"
3667 "\">gentoo</systemitem> 可以使用 <systemitem role=\"package\">file</"
3668 "systemitem> 套件提供的某些特性。"
3669
3670 #. type: Content of: <book><chapter><section><para>
3671 msgid ""
3672 "Line 9 is the Homepage URL. Let's assume this to be at <ulink url=\"&gentoo;"
3673 "\"/>."
3674 msgstr ""
3675
3676 #. type: Content of: <book><chapter><section><para>
3677 msgid ""
3678 "Line 12 is the short description. Most people screens are 80 columns wide "
3679 "so this shouldn't be longer than about 60 characters. I'll change it to "
3680 "<literal>fully GUI-configurable, two-pane X file manager</literal>."
3681 msgstr ""
3682 "第 12 行是短描述。絕大多數人的螢幕是 80 列寬,所以描述不應超過 60 個字符。在"
3683 "這個例子裏我把它寫爲 <literal>fully GUI-configurable, two-pane X file "
3684 "manager</literal>。"
3685
3686 #. type: Content of: <book><chapter><section><para><footnote><para>
3687 msgid ""
3688 "These descriptions are in English. Translations of these descriptions are "
3689 "provided by <ulink url=\"&ddtp;\">The Debian Description Translation Project "
3690 "- DDTP</ulink>."
3691 msgstr ""
3692
3693 #. type: Content of: <book><chapter><section><para>
3694 #, fuzzy
3695 #| msgid ""
3696 #| "Line 13 is where the long description goes. This should be a paragraph "
3697 #| "which gives more details about the package. Column 1 of each line should "
3698 #| "be empty. There must be no blank lines, but you can put a single "
3699 #| "<literal>.</literal> (dot) in a column to simulate that. Also, there "
3700 #| "must be no more than one blank line after the long description."
3701 msgid ""
3702 "Line 13 is where the long description goes. This should be a paragraph "
3703 "which gives more details about the package. Column 1 of each line should be "
3704 "empty. There must be no blank lines, but you can put a single <literal>.</"
3705 "literal> (dot) in a column to simulate that. Also, there must be no more "
3706 "than one blank line after the long description. <placeholder type=\"footnote"
3707 "\" id=\"0\"/>"
3708 msgstr ""
3709 "第 13 行是長描述開始的地方。這應當是一段更詳細地描述套件的話。每行的第一個格"
3710 "應當留空。描述中不應存在空行,如果必須使用空行,則在行中僅放置一個 <literal>."
3711 "</literal> (半形句點)。同時,長描述後也不應有超過一行的空白。"
3712
3713 #. type: Content of: <book><chapter><section><para><footnote><para>
3714 #, fuzzy
3715 #| msgid ""
3716 #| "For more help about these, check in <ulink url=\"&developers-reference;"
3717 #| "\">Debian Developer's Reference</ulink>."
3718 msgid ""
3719 "See <ulink url=\"&devref-bpp-vcs;\">Developer's Reference, 6.2.5. 'Version "
3720 "Control System location'</ulink>."
3721 msgstr ""
3722 "關於這些問題的更多幫助,査看 <ulink url=\"&developers-reference;\">Debian "
3723 "Developer's Reference</ulink>。"
3724
3725 #. type: Content of: <book><chapter><section><para>
3726 #, fuzzy
3727 #| msgid ""
3728 #| "Let's insert <literal>Vcs-*</literal> fields documented in <ulink url="
3729 #| "\"&devref-bpp-vcs;\">Developer's Reference, 6.2.5. 'Version Control "
3730 #| "System location'</ulink> between line 6 and 7. Let's assume that the "
3731 #| "<systemitem role=\"package\">gentoo</systemitem> package is located in "
3732 #| "Debian Alioth Git Service at <literal>git://git.debian.org/git/collab-"
3733 #| "maint/gentoo.git</literal>."
3734 msgid ""
3735 "Let's insert <literal>Vcs-*</literal> fields to document the Version Control "
3736 "System (VCS) location between line 6 and 7. <placeholder type=\"footnote\" "
3737 "id=\"0\"/> Let's assume that the <systemitem role=\"package\">gentoo</"
3738 "systemitem> package has its VCS located in Debian Alioth Git Service at "
3739 "<literal>git://git.debian.org/git/collab-maint/gentoo.git</literal>."
3740 msgstr ""
3741 "接下來我們按照 <ulink url=\"&devref-bpp-vcs;\">Developer's Reference, "
3742 "6.2.5. 'Version Control System location'</ulink> 中記敘的內容在第 6 和第 7 "
3743 "行之間添加 <literal>Vcs-*</literal> 項。這裏我們假設 <systemitem role="
3744 "\"package\">gentoo</systemitem> 套件處於 Debian Alioth Git 服務的 "
3745 "<literal>git://git.debian.org/git/collab-maint/gentoo.git</literal>"
3746
3747 #. type: Content of: <book><chapter><section><para>
3748 msgid "Finally, here is the updated <filename>control</filename> file:"
3749 msgstr "到此爲止,我們做好了 <filename>control</filename> 檔案:"
3750
3751 #. type: Content of: <book><chapter><section><screen>
3752 #, no-wrap
3753 msgid ""
3754 " 1 Source: gentoo\n"
3755 " 2 Section: x11\n"
3756 " 3 Priority: optional\n"
3757 " 4 Maintainer: Josip Rodin &lt;joy-mg@debian.org&gt;\n"
3758 " 5 Build-Depends: debhelper (&gt;= 7.0.5), xlibs-dev, libgtk1.2-dev, libglib1.2-dev\n"
3759 " 6 Standards-Version: 3.8.4\n"
3760 " 7 Vcs-Git: git://git.debian.org/git/collab-maint/gentoo.git\n"
3761 " 8 Vcs-browser: http://git.debian.org/?p=collab-maint/gentoo.git\n"
3762 " 9 Homepage: &gentoo;\n"
3763 "10\n"
3764 "11 Package: gentoo\n"
3765 "12 Architecture: any\n"
3766 "13 Depends: ${shlibs:Depends}, ${misc:Depends}\n"
3767 "14 Suggests: file\n"
3768 "15 Description: fully GUI-configurable, two-pane X file manager\n"
3769 "16 gentoo is a two-pane file manager for the X Window System. gentoo lets the\n"
3770 "17 user do (almost) all of the configuration and customizing from within the\n"
3771 "18 program itself. If you still prefer to hand-edit configuration files,\n"
3772 "19 they're fairly easy to work with since they are written in an XML format.\n"
3773 "20 .\n"
3774 "21 gentoo features a fairly complex and powerful file identification system,\n"
3775 "22 coupled to a object-oriented style system, which together give you a lot\n"
3776 "23 of control over how files of different types are displayed and acted upon.\n"
3777 "24 Additionally, over a hundred pixmap images are available for use in file\n"
3778 "25 type descriptions.\n"
3779 "26 .\n"
3780 "29 gentoo was written from scratch in ANSI C, and it utilises the GTK+ toolkit\n"
3781 "30 for its interface.\n"
3782 msgstr ""
3783 " 1 Source: gentoo\n"
3784 " 2 Section: x11\n"
3785 " 3 Priority: optional\n"
3786 " 4 Maintainer: Josip Rodin &lt;joy-mg@debian.org&gt;\n"
3787 " 5 Build-Depends: debhelper (&gt;= 7.0.5), xlibs-dev, libgtk1.2-dev, libglib1.2-dev\n"
3788 " 6 Standards-Version: 3.8.4\n"
3789 " 7 Vcs-Git: git://git.debian.org/git/collab-maint/gentoo.git\n"
3790 " 8 Vcs-browser: http://git.debian.org/?p=collab-maint/gentoo.git\n"
3791 " 9 Homepage: &gentoo;\n"
3792 "10\n"
3793 "11 Package: gentoo\n"
3794 "12 Architecture: any\n"
3795 "13 Depends: ${shlibs:Depends}, ${misc:Depends}\n"
3796 "14 Suggests: file\n"
3797 "15 Description: fully GUI-configurable, two-pane X file manager\n"
3798 "16 gentoo is a two-pane file manager for the X Window System. gentoo lets the\n"
3799 "17 user do (almost) all of the configuration and customizing from within the\n"
3800 "18 program itself. If you still prefer to hand-edit configuration files,\n"
3801 "19 they're fairly easy to work with since they are written in an XML format.\n"
3802 "20 .\n"
3803 "21 gentoo features a fairly complex and powerful file identification system,\n"
3804 "22 coupled to a object-oriented style system, which together give you a lot\n"
3805 "23 of control over how files of different types are displayed and acted upon.\n"
3806 "24 Additionally, over a hundred pixmap images are available for use in file\n"
3807 "25 type descriptions.\n"
3808 "26 .\n"
3809 "29 gentoo was written from scratch in ANSI C, and it utilises the GTK+ toolkit\n"
3810 "30 for its interface.\n"
3811
3812 #. type: Content of: <book><chapter><section><title>
3813 msgid "<filename>copyright</filename> file"
3814 msgstr "<filename>copyright</filename> 檔案"
3815
3816 #. type: Content of: <book><chapter><section><para>
3817 #, fuzzy
3818 #| msgid ""
3819 #| "This file contains the information about package upstream resources, "
3820 #| "copyright and license information. Its format is not dictated by the "
3821 #| "Debian Policy Manual, but the content is (<ulink url=\"&policy-copyright;"
3822 #| "\">Debian Policy Manual, 12.5 'Copyright information'</ulink>). You may "
3823 #| "also consult <ulink url=\"&dep5;\">DEP-5: Machine-parseable debian/"
3824 #| "copyright</ulink>."
3825 msgid ""
3826 "This file contains the information about package upstream resources, "
3827 "copyright and license information. <ulink url=\"&policy-copyright;\">Debian "
3828 "Policy Manual, 12.5 'Copyright information'</ulink> dictates its content and "
3829 "<ulink url=\"&dep5;\">DEP-5: Machine-parseable <filename>debian/copyright</"
3830 "filename></ulink> provides guidelines for its format."
3831 msgstr ""
3832 "這個檔案包含了上游軟體的資源、版權以及許可證訊息。它的形式沒有在 Debian "
3833 "Policy 中詳述,但其內容爲 (<ulink url=\"&policy-copyright;\">Debian Policy "
3834 "Manual, 12.5 'Copyright information'</ulink>)。你還可以査看 <ulink url="
3835 "\"&dep5;\">DEP-5: Machine-parseable debian/copyright</ulink>。"
3836
3837 #. type: Content of: <book><chapter><section><para>
3838 msgid ""
3839 "<command>dh_make</command> can give you a template <filename>copyright</"
3840 "filename> file. Let's use the <literal>--copyright gpl2</literal> option "
3841 "here to get a template file for the <systemitem role=\"package\">gentoo</"
3842 "systemitem> package released under GPL-2."
3843 msgstr ""
3844 "<command>dh_make</command> 可以給出一個 <filename>copyright</filename> 檔案的"
3845 "模板。在這裏我們使用 <literal>--copyright gpl2</literal> 參數來獲得一個模板寫"
3846 "明 <systemitem role=\"package\">gentoo</systemitem> 套件是發佈於 GPL-2 許可證"
3847 "下。"
3848
3849 #. type: Content of: <book><chapter><section><para>
3850 msgid ""
3851 "You must fill in missing information such as the place you got the package "
3852 "from, the actual copyright notice and their license to complete this file. "
3853 "For the common free software licenses such as GNU GPL-1, GNU GPL-2, GNU "
3854 "GPL-3, LGPL-2, LGPL-2.1, LGPL-3, GNU FDL-1.2, GNU FDL-1.3, Apache-2.0 or the "
3855 "Artistic license, you can just refer to the appropriate file in <filename>/"
3856 "usr/share/common-licenses/</filename> directory that exists on every Debian "
3857 "system. Otherwise, you must include the complete license."
3858 msgstr ""
3859 "你必須填寫上其餘的訊息,如你從何處獲得此軟體,實際的版權聲明和它們的許可證。"
3860 "對於常見的自由軟體許可證,如 GNU GPL-1、GNU GPL-2、GNU GPL-3、LGPL-2、"
3861 "LGPL-2.1、LGPL-3、GNU FDL-1.2、GNU FDL-1.3、Apache-2.0 或 Artistic 許可證,你"
3862 "可以直接將其指向存在於所有 Debian 系統的 <filename>/usr/share/common-"
3863 "licenses/</filename> 目錄下的相關檔案。其他的許可證則必須包含完整的許可證文"
3864 "本。"
3865
3866 #. type: Content of: <book><chapter><section><para>
3867 msgid ""
3868 "In short, here's how <systemitem role=\"package\">gentoo</systemitem>'s "
3869 "<filename>copyright</filename> file should look like:"
3870 msgstr ""
3871 "簡言之,<systemitem role=\"package\">gentoo</systemitem> 的 "
3872 "<filename>copyright</filename> 檔案如下所示:"
3873
3874 #. type: Content of: <book><chapter><section><screen>
3875 #, no-wrap
3876 msgid ""
3877 " 1 Format-Specification: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&amp;rev=135\n"
3878 " 2 Name: gentoo\n"
3879 " 3 Maintainer: Josip Rodin &lt;joy-mg@debian.org&gt;\n"
3880 " 4 Source: http://sourceforge.net/projects/gentoo/files/\n"
3881 " 5\n"
3882 " 6 Copyright: 1998-2010 Emil Brink &lt;emil@obsession.se&gt;\n"
3883 " 7 License: GPL-2+\n"
3884 " 8\n"
3885 " 9 Files: icons/*\n"
3886 "10 Copyright: 1998 Johan Hanson &lt;johan@tiq.com&gt;\n"
3887 "11 License: GPL-2+\n"
3888 "12\n"
3889 "13 Files: debian/*\n"
3890 "14 Copyright: 1998-2010 Josip Rodin &lt;joy-mg@debian.org&gt;\n"
3891 "15 License: GPL-2+\n"
3892 "16\n"
3893 "17 License: GPL-2+\n"
3894 "18 This program is free software; you can redistribute it and/or modify\n"
3895 "19 it under the terms of the GNU General Public License as published by\n"
3896 "20 the Free Software Foundation; either version 2 of the License, or\n"
3897 "21 (at your option) any later version. \n"
3898 "22 .\n"
3899 "23 This program is distributed in the hope that it will be useful,\n"
3900 "24 but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
3901 "25 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
3902 "26 GNU General Public License for more details.\n"
3903 "27 .\n"
3904 "28 You should have received a copy of the GNU General Public License along\n"
3905 "29 with this program; if not, write to the Free Software Foundation, Inc.,\n"
3906 "30 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\n"
3907 "31 .\n"
3908 "32 On Debian systems, the full text of the GNU General Public\n"
3909 "33 License version 2 can be found in the file\n"
3910 "34 `/usr/share/common-licenses/GPL-2'.\n"
3911 msgstr ""
3912 " 1 Format-Specification: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&amp;rev=135\n"
3913 " 2 Name: gentoo\n"
3914 " 3 Maintainer: Josip Rodin &lt;joy-mg@debian.org&gt;\n"
3915 " 4 Source: http://sourceforge.net/projects/gentoo/files/\n"
3916 " 5\n"
3917 " 6 Copyright: 1998-2010 Emil Brink &lt;emil@obsession.se&gt;\n"
3918 " 7 License: GPL-2+\n"
3919 " 8\n"
3920 " 9 Files: icons/*\n"
3921 "10 Copyright: 1998 Johan Hanson &lt;johan@tiq.com&gt;\n"
3922 "11 License: GPL-2+\n"
3923 "12\n"
3924 "13 Files: debian/*\n"
3925 "14 Copyright: 1998-2010 Josip Rodin &lt;joy-mg@debian.org&gt;\n"
3926 "15 License: GPL-2+\n"
3927 "16\n"
3928 "17 License: GPL-2+\n"
3929 "18 This program is free software; you can redistribute it and/or modify\n"
3930 "19 it under the terms of the GNU General Public License as published by\n"
3931 "20 the Free Software Foundation; either version 2 of the License, or\n"
3932 "21 (at your option) any later version. \n"
3933 "22 .\n"
3934 "23 This program is distributed in the hope that it will be useful,\n"
3935 "24 but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
3936 "25 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
3937 "26 GNU General Public License for more details.\n"
3938 "27 .\n"
3939 "28 You should have received a copy of the GNU General Public License along\n"
3940 "29 with this program; if not, write to the Free Software Foundation, Inc.,\n"
3941 "30 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\n"
3942 "31 .\n"
3943 "32 On Debian systems, the full text of the GNU General Public\n"
3944 "33 License version 2 can be found in the file\n"
3945 "34 `/usr/share/common-licenses/GPL-2'.\n"
3946
3947 #. type: Content of: <book><chapter><section><para>
3948 #, fuzzy
3949 #| msgid ""
3950 #| "Please follow the HOWTO provided by ftpmasters and sent to debian-devel-"
3951 #| "announce: <ulink url=\"&debian-devel-announce-ldo;2006/03/msg00023.html"
3952 #| "\">&debian-devel-announce-ldo;2006/03/msg00023.html</ulink>."
3953 msgid ""
3954 "Please follow the HOWTO provided by ftpmasters and sent to debian-devel-"
3955 "announce: <ulink url=\"&howto-copyright;\"/>."
3956 msgstr ""
3957 "另外還可以參考 ftpmasters 發送到 debian-devel-announce 的 HOWTO: <ulink url="
3958 "\"&debian-devel-announce-ldo;2006/03/msg00023.html\">&debian-devel-announce-"
3959 "ldo;2006/03/msg00023.html</ulink>"
3960
3961 #. type: Content of: <book><chapter><section><title>
3962 msgid "<filename>changelog</filename> file"
3963 msgstr "<filename>changelog</filename> 檔案"
3964
3965 #. type: Content of: <book><chapter><section><para>
3966 msgid ""
3967 "This is a required file, which has a special format described in the <ulink "
3968 "url=\"&policy-dpkgchangelog;\">Debian Policy Manual, 4.4 'debian/changelog'</"
3969 "ulink>. This format is used by <command>dpkg</command> and other programs "
3970 "to obtain the version number, revision, distribution and urgency of your "
3971 "package."
3972 msgstr ""
3973 "這是一個必須的檔案,它的格式在 <ulink url=\"&policy-dpkgchangelog;\">Debian "
3974 "Policy Manual, 4.4 'debian/changelog'</ulink> 中有詳細的描述。這種格式被 "
3975 "<command>dpkg</command> 和其他程式用以獲得版本號訊息、適應的發行版和緊急程"
3976 "度。"
3977
3978 #. type: Content of: <book><chapter><section><para>
3979 msgid ""
3980 "For you, it is also important, since it is good to have documented all "
3981 "changes you have done. It will help people downloading your package to see "
3982 "whether there are issues with the package that they should know about. It "
3983 "will be saved as <filename>/usr/share/doc/gentoo/changelog.Debian.gz</"
3984 "filename> in the binary package."
3985 msgstr ""
3986 "對於你而言,詳細描述你所做出的更改也是很好且很重要的。它將幫助下載你的套件的"
3987 "人瞭解這個套件中是否有他們需要知道的事情。它會被作爲 <filename>/usr/share/"
3988 "doc/gentoo/changelog.Debian.gz</filename> 保存在二進位套件中。"
3989
3990 #. type: Content of: <book><chapter><section><para>
3991 msgid ""
3992 "<command>dh_make</command> created a default one, and this is how it looks "
3993 "like:"
3994 msgstr "<command>dh_make</command> 創建了一個默認的檔案,這是它的樣子:"
3995
3996 #. type: Content of: <book><chapter><section><screen>
3997 #, no-wrap
3998 msgid ""
3999 "1 gentoo (0.9.12-1) unstable; urgency=low\n"
4000 "2\n"
4001 "3 * Initial release (Closes: #<replaceable>nnnn</replaceable>) &lt;<replaceable>nnnn</replaceable> is the bug number of your ITP&gt;\n"
4002 "4\n"
4003 "5 -- Josip Rodin &lt;joy-mg@debian.org&gt; Mon, 22 Mar 2010 00:37:31 +0100\n"
4004 "6\n"
4005 msgstr ""
4006 "1 gentoo (0.9.12-1) unstable; urgency=low\n"
4007 "2\n"
4008 "3 * Initial release (Closes: #<replaceable>nnnn</replaceable>) &lt;<replaceable>nnnn</replaceable> is the bug number of your ITP&gt;\n"
4009 "4\n"
4010 "5 -- Josip Rodin &lt;joy-mg@debian.org&gt; Mon, 22 Mar 2010 00:37:31 +0100\n"
4011 "6\n"
4012
4013 #. type: Content of: <book><chapter><section><para><footnote><para>
4014 msgid ""
4015 "Some people use invalid distribution values such as <literal>UNRELEASED</"
4016 "literal> to prevent a package to be accidentally uploaded when updating a "
4017 "package in a shared VCS."
4018 msgstr ""
4019 "有些人使用無效的發行版名稱,如 <literal>UNRELEASED</literal> 以防止某些套件在"
4020 "共享的 VCS 中修改時被意外上傳。"
4021
4022 #. type: Content of: <book><chapter><section><para>
4023 msgid ""
4024 "Line 1 is the package name, version, distribution, and urgency. The name "
4025 "must match the source package name, distribution should be either "
4026 "<literal>unstable</literal> (or even <literal>experimental</literal>) "
4027 "<placeholder type=\"footnote\" id=\"0\"/>, and urgency shouldn't be changed "
4028 "to anything higher than <literal>low</literal>. :-)"
4029 msgstr ""
4030 "第 1 行是套件名、版本號、發行