Parent Directory
|
Revision Log
Touch up for intro. maint-guide
| 1 | osamu | 8601 | # 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 | osamu | 8655 | "POT-Creation-Date: 2011-04-10 20:20+0900\n" |
| 12 | osamu | 8601 | "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 "<firstname>Josip</firstname> <surname>Rodin</surname>" | ||
| 30 | osamu | 8619 | msgstr "<firstname>Josip</firstname> <surname>Rodin</surname>" |
| 31 | osamu | 8601 | |
| 32 | #. type: Content of: <book><bookinfo><authorgroup><author><email> | ||
| 33 | msgid "joy-mg@debian.org" | ||
| 34 | osamu | 8619 | msgstr "joy-mg@debian.org" |
| 35 | osamu | 8601 | |
| 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 "<firstname>Osamu</firstname> <surname>Aoki</surname>" | ||
| 42 | osamu | 8619 | msgstr "<firstname>Osamu</firstname> <surname>Aoki</surname>" |
| 43 | osamu | 8601 | |
| 44 | #. type: Content of: <book><bookinfo><authorgroup><author><email> | ||
| 45 | msgid "osamu@debian.org" | ||
| 46 | osamu | 8619 | msgstr "osamu@debian.org" |
| 47 | osamu | 8601 | |
| 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 | osamu | 8619 | msgstr "版本 &docversion;" |
| 55 | osamu | 8601 | |
| 56 | #. type: Content of: <book><bookinfo> | ||
| 57 | osamu | 8653 | 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 | osamu | 8601 | |
| 70 | #. type: Content of: <book><bookinfo><legalnotice><para> | ||
| 71 | osamu | 8653 | msgid "" |
| 72 | "This document may be used under the terms the GNU General Public License " | ||
| 73 | "version 2 or higher." | ||
| 74 | osamu | 8601 | 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 | osamu | 8651 | #. type: Content of: <book><bookinfo><legalnotice><itemizedlist><listitem><para> |
| 81 | osamu | 8653 | msgid "" |
| 82 | "Making a Debian Package (AKA the Debmake Manual), copyright © 1997 Jaldhar " | ||
| 83 | "Vyas." | ||
| 84 | osamu | 8619 | msgstr "" |
| 85 | osamu | 8601 | |
| 86 | osamu | 8651 | #. type: Content of: <book><bookinfo><legalnotice><itemizedlist><listitem><para> |
| 87 | osamu | 8653 | msgid "" |
| 88 | "The New-Maintainer's Debian Packaging Howto, copyright © 1997 Will Lowe." | ||
| 89 | osamu | 8619 | msgstr "" |
| 90 | osamu | 8601 | |
| 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 | osamu | 8653 | 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 | osamu | 8601 | |
| 108 | #. type: Content of: <book><chapter><para><footnote><para> | ||
| 109 | osamu | 8646 | #, fuzzy |
| 110 | osamu | 8653 | #| 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 the older system " | ||
| 119 | "(including the 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 | osamu | 8601 | |
| 128 | #. type: Content of: <book><chapter><para> | ||
| 129 | osamu | 8646 | #, fuzzy |
| 130 | osamu | 8653 | #| 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 | osamu | 8601 | |
| 140 | osamu | 8646 | #. type: Content of: <book><chapter><para><footnote><para> |
| 141 | osamu | 8653 | 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 | osamu | 8646 | msgstr "" |
| 146 | |||
| 147 | osamu | 8601 | #. type: Content of: <book><chapter><para> |
| 148 | osamu | 8646 | #, fuzzy |
| 149 | osamu | 8653 | #| 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 | osamu | 8601 | |
| 174 | #. type: Content of: <book><chapter><para> | ||
| 175 | osamu | 8653 | 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 | osamu | 8601 | |
| 183 | #. type: Content of: <book><chapter><para> | ||
| 184 | osamu | 8653 | 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 | osamu | 8601 | |
| 192 | #. type: Content of: <book><chapter><para> | ||
| 193 | osamu | 8653 | msgid "" |
| 194 | "If you need some help on packaging, please read <xref linkend=\"helpme\"/> ." | ||
| 195 | osamu | 8601 | msgstr "如果需要幫助,請閱讀 <xref linkend=\"helpme\"/> 。" |
| 196 | |||
| 197 | #. type: Content of: <book><chapter><para> | ||
| 198 | osamu | 8653 | 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 | osamu | 8655 | "<systemitem role=\"package\">maint-guide-es</systemitem>. Please note that " |
| 203 | "this documentation may be slightly outdated." | ||
| 204 | osamu | 8619 | msgstr "" |
| 205 | osamu | 8601 | |
| 206 | #. type: Content of: <book><chapter><section><title> | ||
| 207 | osamu | 8654 | msgid "Social dynamism of Debian" |
| 208 | msgstr "" | ||
| 209 | osamu | 8601 | |
| 210 | #. type: Content of: <book><chapter><section><para> | ||
| 211 | osamu | 8655 | msgid "" |
| 212 | "Here are my observation of the social dynamism of Debian. I hope this will " | ||
| 213 | "prepare you for the interaction with Debian." | ||
| 214 | osamu | 8654 | msgstr "" |
| 215 | osamu | 8651 | |
| 216 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 217 | msgid "We all are volunteers." | ||
| 218 | osamu | 8619 | msgstr "" |
| 219 | osamu | 8601 | |
| 220 | osamu | 8651 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para> |
| 221 | msgid "You can not impose others what to do." | ||
| 222 | osamu | 8619 | msgstr "" |
| 223 | osamu | 8601 | |
| 224 | osamu | 8651 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para> |
| 225 | msgid "You should be motivated to do things by yourself." | ||
| 226 | osamu | 8619 | msgstr "" |
| 227 | osamu | 8601 | |
| 228 | osamu | 8651 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 229 | msgid "Friendly cooperation is the driving force." | ||
| 230 | osamu | 8619 | msgstr "" |
| 231 | osamu | 8601 | |
| 232 | osamu | 8651 | #. 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 | osamu | 8601 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 241 | osamu | 8653 | msgid "" |
| 242 | "Debian is not your school where you get automatic attention of teachers." | ||
| 243 | osamu | 8619 | msgstr "" |
| 244 | osamu | 8601 | |
| 245 | osamu | 8651 | #. 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 | osamu | 8601 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 254 | osamu | 8651 | msgid "Debian is constantly improving." |
| 255 | osamu | 8619 | msgstr "" |
| 256 | osamu | 8601 | |
| 257 | osamu | 8651 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para> |
| 258 | osamu | 8655 | msgid "You are expected to make high quality packages." |
| 259 | osamu | 8651 | msgstr "" |
| 260 | |||
| 261 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para> | ||
| 262 | osamu | 8655 | msgid "You should adapt yourself to the change." |
| 263 | osamu | 8651 | msgstr "" |
| 264 | |||
| 265 | #. type: Content of: <book><chapter><section><para> | ||
| 266 | osamu | 8653 | 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 | osamu | 8651 | msgstr "" |
| 271 | |||
| 272 | osamu | 8601 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 273 | osamu | 8653 | msgid "" |
| 274 | "<ulink url=\"&logiciellibre;\">Debian: 17 ans de logiciel libre, \"do-ocracy" | ||
| 275 | "\" et démocratie</ulink> (Introductory slides in English PDF)" | ||
| 276 | osamu | 8619 | msgstr "" |
| 277 | osamu | 8601 | |
| 278 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 279 | osamu | 8651 | #, fuzzy |
| 280 | #| msgid "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>" | ||
| 281 | msgid "<ulink url=\"&nm-do;\">Debian New Maintainer site</ulink> (official)" | ||
| 282 | msgstr "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>" | ||
| 283 | |||
| 284 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 285 | osamu | 8653 | msgid "" |
| 286 | "<ulink url=\"&debianmentorfaq;\">Debian Mentors FAQ</ulink> (supplemental)" | ||
| 287 | osamu | 8619 | msgstr "" |
| 288 | osamu | 8601 | |
| 289 | osamu | 8651 | #. type: Content of: <book><chapter><section><title> |
| 290 | msgid "Official Debian Developer" | ||
| 291 | msgstr "正式的 Debian Developer" | ||
| 292 | |||
| 293 | #. type: Content of: <book><chapter><section><para> | ||
| 294 | #, fuzzy | ||
| 295 | osamu | 8653 | #| msgid "" |
| 296 | #| "You can not become an official <emphasis role=\"strong\">Debian " | ||
| 297 | #| "Developer</emphasis> (DD) over night because it takes more than technical " | ||
| 298 | #| "skill. Please do not be discouraged by this. If it is useful to others, " | ||
| 299 | #| "you can still upload your package either as a <emphasis role=\"strong" | ||
| 300 | #| "\">maintainer</emphasis> through a <emphasis role=\"strong\">sponsor</" | ||
| 301 | #| "emphasis> or as a <emphasis role=\"strong\">Debian Maintainer</" | ||
| 302 | #| "emphasis>. See <ulink url=\"&nm-join;\">Debian New Maintainers</ulink> " | ||
| 303 | #| "for more." | ||
| 304 | msgid "" | ||
| 305 | "You can not become an official <emphasis role=\"strong\">Debian Developer</" | ||
| 306 | "emphasis> (DD) over night because it takes more than technical skill. " | ||
| 307 | "Please do not be discouraged by this. If it is useful to others, you can " | ||
| 308 | "still upload your package either as a <emphasis role=\"strong\">maintainer</" | ||
| 309 | "emphasis> through a <emphasis role=\"strong\">sponsor</emphasis> or as a " | ||
| 310 | "<emphasis role=\"strong\">Debian Maintainer</emphasis>." | ||
| 311 | msgstr "" | ||
| 312 | "你不可能在一夜之間成爲 <emphasis role=\"strong\">Debian Developer</emphasis> " | ||
| 313 | "(DD),因爲一個 DD 所需要的遠不只是技術能力,請不要因此感覺到挫敗或沮喪。如果" | ||
| 314 | "你的軟體對其他人有用,你可以作爲一個 <emphasis role=\"strong\">維護者" | ||
| 315 | "(maintainer)</emphasis> 通過 一位 <emphasis role=\"strong\">保證人(sponsor)</" | ||
| 316 | "emphasis> 來上傳軟體,或者申請成爲一位 <emphasis role=\"strong\">Debian " | ||
| 317 | "Maintainer</emphasis>。詳見 <ulink url=\"&nm-join;\">Debian New Maintainers</" | ||
| 318 | "ulink>。" | ||
| 319 | osamu | 8651 | |
| 320 | #. type: Content of: <book><chapter><section><para> | ||
| 321 | osamu | 8653 | msgid "" |
| 322 | "Please note that you do not need to create any new package to become an " | ||
| 323 | "official Debian Developer. Contributing to the existing packages can " | ||
| 324 | "provide a path to become an official Debian Developer too. There are many " | ||
| 325 | "packages waiting for good maintainers (see <xref linkend=\"choose\"/> )." | ||
| 326 | msgstr "" | ||
| 327 | "請注意,要成爲一位正式的 Debian Developer 並不一定要創建新套件。對已有軟體做" | ||
| 328 | "出貢獻也是成爲正式的 Debian Developer 的路徑。眼下正有很多套件正在等待一個好" | ||
| 329 | "的維護者對其做出貢獻。(參考 <xref linkend=\"choose\"/> )" | ||
| 330 | osamu | 8651 | |
| 331 | #. type: Content of: <book><chapter><section><title> | ||
| 332 | msgid "Programs you need for development" | ||
| 333 | msgstr "開發時需要的軟體" | ||
| 334 | |||
| 335 | #. type: Content of: <book><chapter><section><para> | ||
| 336 | osamu | 8653 | msgid "" |
| 337 | "Before you start anything, you should make sure that you have properly " | ||
| 338 | "installed some additional packages needed for development. Note that the " | ||
| 339 | "list doesn't contain any packages marked <literal>essential</literal> or " | ||
| 340 | "<literal>required</literal> - we expect that you have those installed " | ||
| 341 | "already." | ||
| 342 | msgstr "" | ||
| 343 | "在開始之前,你需要確認你是否已經正確安裝了開發所需要的附加套件。注意這些套件" | ||
| 344 | "不包含任何已經被標記爲 <literal>essential</literal> 或 <literal>required</" | ||
| 345 | "literal> —— 我們假設你已經安裝了它們。" | ||
| 346 | osamu | 8651 | |
| 347 | #. type: Content of: <book><chapter><section><para> | ||
| 348 | #, fuzzy | ||
| 349 | osamu | 8653 | #| msgid "" |
| 350 | #| "The following packages come with the standard Debian installation, so you " | ||
| 351 | #| "probably have them already (along with any additional packages they " | ||
| 352 | #| "depend on). Still, you should check it with <literal>aptitude show " | ||
| 353 | #| "<replaceable>package</replaceable></literal>." | ||
| 354 | msgid "" | ||
| 355 | "The following packages come with the standard Debian installation, so you " | ||
| 356 | "probably have them already (along with any additional packages they depend " | ||
| 357 | "on). Still, you should check it with <literal>aptitude show " | ||
| 358 | "<replaceable>package</replaceable></literal> or with <literal>dpkg -s " | ||
| 359 | "<replaceable>package</replaceable></literal>." | ||
| 360 | msgstr "" | ||
| 361 | "以下這些套件已經隨標準的 Debian 安裝而在系統中,所以你可能不需要再動手安裝它" | ||
| 362 | "們(以及任何附加的依賴套件)。然而,你還是應該用 <literal>aptitude show " | ||
| 363 | "<replaceable>package</replaceable></literal> 來檢査一下。" | ||
| 364 | osamu | 8651 | |
| 365 | #. type: Content of: <book><chapter><section><para> | ||
| 366 | osamu | 8653 | msgid "" |
| 367 | "The most important package to install on your development system is the " | ||
| 368 | "<systemitem role=\"package\">build-essential</systemitem> package. Once you " | ||
| 369 | "try to install it, it will <emphasis>pull in</emphasis> other packages " | ||
| 370 | "required to have a basic build environment." | ||
| 371 | osamu | 8651 | msgstr "" |
| 372 | |||
| 373 | #. type: Content of: <book><chapter><section><para> | ||
| 374 | osamu | 8653 | msgid "" |
| 375 | "For some types of packages, that is all you will require, however there is " | ||
| 376 | "another set of packages that while not essential for all package builds are " | ||
| 377 | "useful to have install or may be required by your package:" | ||
| 378 | msgstr "" | ||
| 379 | "對於某些類型的軟體,以上的就是所需要的全部。然而還有一組套件雖不是對於所有套" | ||
| 380 | "件都必須,卻可能對你有用或被你的套件所需要:" | ||
| 381 | osamu | 8651 | |
| 382 | osamu | 8601 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 383 | osamu | 8653 | msgid "" |
| 384 | "<systemitem role=\"package\">file</systemitem> - this handy program can " | ||
| 385 | "determine what type a file is. (see <citerefentry> <refentrytitle>file</" | ||
| 386 | "refentrytitle> <manvolnum>1</manvolnum> </citerefentry>)" | ||
| 387 | msgstr "" | ||
| 388 | "<systemitem role=\"package\">file</systemitem> - 這個小程式可以檢測檔案的類" | ||
| 389 | "型。(參考 <citerefentry> <refentrytitle>file</refentrytitle> <manvolnum>1</" | ||
| 390 | "manvolnum> </citerefentry>)" | ||
| 391 | osamu | 8651 | |
| 392 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 393 | osamu | 8653 | msgid "" |
| 394 | "<systemitem role=\"package\">patch</systemitem> - this very useful utility " | ||
| 395 | "will take a file containing a difference listing (produced by the " | ||
| 396 | "<command>diff</command> program) and apply it to the original file, " | ||
| 397 | "producing a patched version. (see <citerefentry> <refentrytitle>patch</" | ||
| 398 | "refentrytitle> <manvolnum>1</manvolnum> </citerefentry>)" | ||
| 399 | msgstr "" | ||
| 400 | "<systemitem role=\"package\">patch</systemitem> - 這是一個非常有用的工具,它" | ||
| 401 | "可以把 <command>diff</command> 程式生成的差異清單檔案應用到原先的檔案上,從而" | ||
| 402 | "生成一個補丁版本。(參考 <citerefentry> <refentrytitle>patch</refentrytitle> " | ||
| 403 | "<manvolnum>1</manvolnum> </citerefentry>)" | ||
| 404 | osamu | 8651 | |
| 405 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 406 | osamu | 8653 | msgid "" |
| 407 | "<systemitem role=\"package\">perl</systemitem> - Perl is one of the most " | ||
| 408 | "used interpreted scripting languages on today's Unix-like systems, often " | ||
| 409 | "referred to as Unix's Swiss Army Chainsaw. (see <citerefentry> " | ||
| 410 | "<refentrytitle>perl</refentrytitle> <manvolnum>1</manvolnum> </citerefentry>)" | ||
| 411 | osamu | 8619 | msgstr "" |
| 412 | osamu | 8601 | |
| 413 | osamu | 8651 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 414 | osamu | 8653 | msgid "" |
| 415 | "<systemitem role=\"package\">python</systemitem> - Python is another of the " | ||
| 416 | "most used interpreted scripting languages on the Debian system that combines " | ||
| 417 | "remarkable power with very clear syntax. (see <citerefentry> " | ||
| 418 | "<refentrytitle>python</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 419 | "citerefentry>)" | ||
| 420 | msgstr "" | ||
| 421 | "<systemitem role=\"package\">python</systemitem> - Python 是 Debian 系統中另" | ||
| 422 | "一個最常用的解譯型腳本語言,它擁有着可圈可點的強大功能和十分清晰的語法。(參" | ||
| 423 | "考 <citerefentry> <refentrytitle>python</refentrytitle> <manvolnum>1</" | ||
| 424 | "manvolnum> </citerefentry>)" | ||
| 425 | osamu | 8651 | |
| 426 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 427 | osamu | 8653 | msgid "" |
| 428 | "<systemitem role=\"package\">autoconf</systemitem>, <systemitem role=" | ||
| 429 | "\"package\">automake</systemitem> and <systemitem role=\"package\">autotools-" | ||
| 430 | "dev</systemitem> - many newer programs use configure scripts and " | ||
| 431 | "<filename>Makefile</filename> files preprocessed with help of programs like " | ||
| 432 | "these. (see <literal>info autoconf</literal>, <literal>info automake</" | ||
| 433 | "literal>). The <systemitem role=\"package\">autotools-dev</systemitem> " | ||
| 434 | "keeps up-to-date versions of certain auto files and has documentation about " | ||
| 435 | "the best way to use those files." | ||
| 436 | msgstr "" | ||
| 437 | "<systemitem role=\"package\">autoconf</systemitem>、<systemitem role=" | ||
| 438 | "\"package\">automake</systemitem> 和 <systemitem role=\"package\">autotools-" | ||
| 439 | "dev</systemitem> - 很多新程式使用 configure 腳本和 <filename>Makefile</" | ||
| 440 | "filename> 檔案來幫助預處理程式。(參考 <literal>info autoconf</literal>、" | ||
| 441 | "<literal>info automake</literal>)。 <systemitem role=\"package\">autotools-" | ||
| 442 | "dev</systemitem> 則用於保持指定的自動設定檔案爲最新,並帶有關於使用那些檔案的" | ||
| 443 | "最佳方法的文件。" | ||
| 444 | osamu | 8651 | |
| 445 | osamu | 8601 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para><footnote><para> |
| 446 | osamu | 8653 | msgid "" |
| 447 | "There are few similar but specialized packages such as <systemitem role=" | ||
| 448 | "\"package\">dh-make-perl</systemitem>, <systemitem role=\"package\">dh-make-" | ||
| 449 | "php</systemitem>, etc." | ||
| 450 | msgstr "" | ||
| 451 | "還有幾個類似但更針對某一類軟體的套件,如 <systemitem role=\"package\">dh-" | ||
| 452 | "make-perl</systemitem>、<systemitem role=\"package\">dh-make-php</" | ||
| 453 | "systemitem> 等。" | ||
| 454 | osamu | 8601 | |
| 455 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 456 | osamu | 8646 | #, fuzzy |
| 457 | osamu | 8653 | #| msgid "" |
| 458 | #| "<systemitem role=\"package\">dh-make</systemitem> and <systemitem role=" | ||
| 459 | #| "\"package\">debhelper</systemitem> - <systemitem role=\"package\">dh-" | ||
| 460 | #| "make</systemitem> is necessary to create the skeleton of our example " | ||
| 461 | #| "package, and it will use some of the <systemitem role=\"package" | ||
| 462 | #| "\">debhelper</systemitem> tools for creating packages. They are not " | ||
| 463 | #| "essential for creation of packages, but are <emphasis>highly</emphasis> " | ||
| 464 | #| "recommended for new maintainers. It makes the whole process very much " | ||
| 465 | #| "easier to start, and control afterwards. (see <citerefentry> " | ||
| 466 | #| "<refentrytitle>dh_make</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 467 | #| "citerefentry>, <citerefentry> <refentrytitle>debhelper</refentrytitle> " | ||
| 468 | #| "<manvolnum>1</manvolnum> </citerefentry>, <filename>/usr/share/doc/" | ||
| 469 | #| "debhelper/README</filename>) <placeholder type=\"footnote\" id=\"0\"/>" | ||
| 470 | msgid "" | ||
| 471 | "<systemitem role=\"package\">dh-make</systemitem> and <systemitem role=" | ||
| 472 | "\"package\">debhelper</systemitem> - <systemitem role=\"package\">dh-make</" | ||
| 473 | "systemitem> is necessary to create the skeleton of our example package, and " | ||
| 474 | "it will use some of the <systemitem role=\"package\">debhelper</systemitem> " | ||
| 475 | "tools for creating packages. They are not essential for creation of " | ||
| 476 | "packages, but are <emphasis>highly</emphasis> recommended for new " | ||
| 477 | "maintainers. It makes the whole process very much easier to start, and " | ||
| 478 | "control afterwards. (see <citerefentry> <refentrytitle>dh_make</" | ||
| 479 | "refentrytitle> <manvolnum>1</manvolnum> </citerefentry>, <citerefentry> " | ||
| 480 | "<refentrytitle>debhelper</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 481 | "citerefentry>) <placeholder type=\"footnote\" id=\"0\"/>" | ||
| 482 | msgstr "" | ||
| 483 | "<systemitem role=\"package\">dh-make</systemitem> 和 <systemitem role=" | ||
| 484 | "\"package\">debhelper</systemitem> - <systemitem role=\"package\">dh-make</" | ||
| 485 | "systemitem> 是用於創建我們範例套件骨架所必須的,它會使用 <systemitem role=" | ||
| 486 | "\"package\">debhelper</systemitem> 中的一些工具來創建套件。他們不是創建套件所" | ||
| 487 | "必須的,但對新維護人員而言,我們 <emphasis>強烈推薦</emphasis> 使用。它使得整" | ||
| 488 | "個過程極爲簡化,並易於在將來維護。(參考 <citerefentry> " | ||
| 489 | "<refentrytitle>dh_make</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 490 | "citerefentry>、<citerefentry> <refentrytitle>debhelper</refentrytitle> " | ||
| 491 | "<manvolnum>1</manvolnum> </citerefentry>、<filename>/usr/share/doc/debhelper/" | ||
| 492 | "README</filename>) <placeholder type=\"footnote\" id=\"0\"/>" | ||
| 493 | osamu | 8601 | |
| 494 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 495 | osamu | 8646 | #, fuzzy |
| 496 | osamu | 8653 | #| msgid "" |
| 497 | #| "<systemitem role=\"package\">devscripts</systemitem> - this package " | ||
| 498 | #| "contains some nice and useful scripts that can be helpful to the " | ||
| 499 | #| "maintainers, but they are also not necessary for building packages. " | ||
| 500 | #| "Packages recommended and suggested by this package are worth looking " | ||
| 501 | #| "into. (see <filename>/usr/share/doc/devscripts/README.gz</filename>)" | ||
| 502 | msgid "" | ||
| 503 | "<systemitem role=\"package\">devscripts</systemitem> - this package contains " | ||
| 504 | "some nice and useful scripts that can be helpful to the maintainers, but " | ||
| 505 | "they are also not necessary for building packages. Packages recommended and " | ||
| 506 | "suggested by this package are worth looking into. (see <ulink url=" | ||
| 507 | "\"&devscripts-readme;\"/>.)" | ||
| 508 | msgstr "" | ||
| 509 | "<systemitem role=\"package\">devscripts</systemitem> - 此套件提供了一些非常好" | ||
| 510 | "非常有用的腳本幫助維護者,但他們並非構建套件所必須。此套件所推薦或建議的套件" | ||
| 511 | "都值得一看。(參考 <filename>/usr/share/doc/devscripts/README.gz</filename>)" | ||
| 512 | osamu | 8601 | |
| 513 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 514 | osamu | 8653 | msgid "" |
| 515 | "<systemitem role=\"package\">fakeroot</systemitem> - this utility lets you " | ||
| 516 | "emulate being root which is necessary for some parts of the build process. " | ||
| 517 | "(see <citerefentry> <refentrytitle>fakeroot</refentrytitle> <manvolnum>1</" | ||
| 518 | "manvolnum> </citerefentry>)" | ||
| 519 | msgstr "" | ||
| 520 | "<systemitem role=\"package\">fakeroot</systemitem> - 這個工具集使你可以在編譯" | ||
| 521 | "過程中必要的時候用普通用戶模擬 root 用戶環境。(參考 <citerefentry> " | ||
| 522 | "<refentrytitle>fakeroot</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 523 | "citerefentry>)" | ||
| 524 | osamu | 8601 | |
| 525 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 526 | osamu | 8653 | msgid "" |
| 527 | "<systemitem role=\"package\">gnupg</systemitem> - a tool that enables you to " | ||
| 528 | "digitally <emphasis>sign</emphasis> packages. This is especially important " | ||
| 529 | "if you want to distribute it to other people, and you will certainly be " | ||
| 530 | "doing that when your work gets included in the Debian distribution. (see " | ||
| 531 | "<citerefentry> <refentrytitle>gpg</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 532 | "citerefentry>)" | ||
| 533 | msgstr "" | ||
| 534 | "<systemitem role=\"package\">gnupg</systemitem> - 使你可以使用 <emphasis>數位" | ||
| 535 | "簽章</emphasis> 簽署你的套件。這在當你想把它散佈給其他人時特別重要。如果你要" | ||
| 536 | "把你的工作加入到 Debian 發行版中,這是必須的步驟。(參考 <citerefentry> " | ||
| 537 | "<refentrytitle>gpg</refentrytitle> <manvolnum>1</manvolnum> </citerefentry>)" | ||
| 538 | osamu | 8601 | |
| 539 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 540 | osamu | 8653 | msgid "" |
| 541 | "<systemitem role=\"package\">gfortran</systemitem> - the GNU Fortran 95 " | ||
| 542 | "compiler, necessary if your program is written in Fortran. (see " | ||
| 543 | "<citerefentry> <refentrytitle>gfortran</refentrytitle> <manvolnum>1</" | ||
| 544 | "manvolnum> </citerefentry>)" | ||
| 545 | msgstr "" | ||
| 546 | "<systemitem role=\"package\">gfortran</systemitem> - GNU Fortran 95 編譯器," | ||
| 547 | "如果你的程式是用 Fortran 編寫的則必須此套件完成編譯。(參考 <citerefentry> " | ||
| 548 | "<refentrytitle>gfortran</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 549 | "citerefentry>)" | ||
| 550 | osamu | 8601 | |
| 551 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 552 | osamu | 8653 | msgid "" |
| 553 | "<systemitem role=\"package\">gpc</systemitem> - the GNU Pascal compiler, " | ||
| 554 | "necessary if your program is written in Pascal. Worthy of note here is " | ||
| 555 | "<systemitem role=\"package\">fp-compiler</systemitem>, the Free Pascal " | ||
| 556 | "Compiler, which is also good at this task. (see <citerefentry> " | ||
| 557 | "<refentrytitle>gpc</refentrytitle> <manvolnum>1</manvolnum> </citerefentry>, " | ||
| 558 | "<citerefentry> <refentrytitle>ppc386</refentrytitle> <manvolnum>1</" | ||
| 559 | "manvolnum> </citerefentry>)" | ||
| 560 | msgstr "" | ||
| 561 | "<systemitem role=\"package\">gpc</systemitem> - GNU Pascal 編譯器。如果你的程" | ||
| 562 | "式是用 Pascal 寫的則需要此套件。值得一提的是 <systemitem role=\"package\">fp-" | ||
| 563 | "compiler</systemitem>,Free Pascal 編譯器(FPC),也能夠很好地勝任。(參考 " | ||
| 564 | "<citerefentry> <refentrytitle>gpc</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 565 | "citerefentry>、<citerefentry> <refentrytitle>ppc386</refentrytitle> " | ||
| 566 | "<manvolnum>1</manvolnum> </citerefentry>)" | ||
| 567 | osamu | 8601 | |
| 568 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 569 | osamu | 8653 | msgid "" |
| 570 | "<systemitem role=\"package\">xutils-dev</systemitem> - some programs, " | ||
| 571 | "usually those made for X11, also use these programs to generate " | ||
| 572 | "<filename>Makefile</filename> files from sets of macro functions. (see " | ||
| 573 | "<citerefentry> <refentrytitle>imake</refentrytitle> <manvolnum>1</manvolnum> " | ||
| 574 | "</citerefentry>, <citerefentry> <refentrytitle>xmkmf</refentrytitle> " | ||
| 575 | "<manvolnum>1</manvolnum> </citerefentry>)" | ||
| 576 | msgstr "" | ||
| 577 | "<systemitem role=\"package\">xutils-dev</systemitem> - 一些通常用於 X11 的程" | ||
| 578 | "式,用於使用其巨集功能生成 <filename>Makefile</filename> 檔案。(參考 " | ||
| 579 | "<citerefentry> <refentrytitle>imake</refentrytitle> <manvolnum>1</manvolnum> " | ||
| 580 | "</citerefentry>、<citerefentry> <refentrytitle>xmkmf</refentrytitle> " | ||
| 581 | "<manvolnum>1</manvolnum> </citerefentry>)" | ||
| 582 | osamu | 8601 | |
| 583 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 584 | osamu | 8646 | #, fuzzy |
| 585 | osamu | 8653 | #| msgid "" |
| 586 | #| "<systemitem role=\"package\">lintian</systemitem> - this is the Debian " | ||
| 587 | #| "package checker that can let you know of any common mistakes after you " | ||
| 588 | #| "build the package, and explains the errors found. (see <citerefentry> " | ||
| 589 | #| "<refentrytitle>lintian</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 590 | #| "citerefentry>, <filename>/usr/share/doc/lintian/lintian.html/index.html</" | ||
| 591 | #| "filename>)" | ||
| 592 | msgid "" | ||
| 593 | "<systemitem role=\"package\">lintian</systemitem> - this is the Debian " | ||
| 594 | "package checker that can let you know of any common mistakes after you build " | ||
| 595 | "the package, and explains the errors found. (see <citerefentry> " | ||
| 596 | "<refentrytitle>lintian</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 597 | "citerefentry>, <ulink url=\"&lintian-doc;\">Lintian User's Manual</ulink>)" | ||
| 598 | msgstr "" | ||
| 599 | "<systemitem role=\"package\">lintian</systemitem> - Debian 套件檢査工具,使你" | ||
| 600 | "可以在編譯套件後知道它是否有常見的錯誤,並對找到的錯誤進行解釋。(參考 " | ||
| 601 | "<citerefentry> <refentrytitle>lintian</refentrytitle> <manvolnum>1</" | ||
| 602 | "manvolnum> </citerefentry>、<filename>/usr/share/doc/lintian/lintian.html/" | ||
| 603 | "index.html</filename>)" | ||
| 604 | osamu | 8601 | |
| 605 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 606 | osamu | 8653 | msgid "" |
| 607 | "<systemitem role=\"package\">pbuilder</systemitem> - this package contains " | ||
| 608 | "programs which are used for creating and maintaining <command>chroot</" | ||
| 609 | "command> environment. Building Debian package in this <command>chroot</" | ||
| 610 | "command> environment verifies the proper build dependency and avoid FTBFS " | ||
| 611 | "(Fails To Build From Source) bugs. (see <citerefentry> " | ||
| 612 | "<refentrytitle>pbuilder</refentrytitle> <manvolnum>8</manvolnum> </" | ||
| 613 | "citerefentry> and <citerefentry> <refentrytitle>pdebuild</refentrytitle> " | ||
| 614 | "<manvolnum>1</manvolnum> </citerefentry>)" | ||
| 615 | msgstr "" | ||
| 616 | "<systemitem role=\"package\">pbuilder</systemitem> - 這個套件提供了創建和維" | ||
| 617 | "護 <command>chroot</command> 環境。在此 <command>chroot</command> 環境中編譯 " | ||
| 618 | "Debian 套件可以檢査編譯依賴是否合適並避免 FTBFS (Fails To Build From Source," | ||
| 619 | "從原始碼編譯失敗)的 Bug。(參考 <citerefentry> <refentrytitle>pbuilder</" | ||
| 620 | "refentrytitle> <manvolnum>8</manvolnum> </citerefentry> 和 <citerefentry> " | ||
| 621 | "<refentrytitle>pdebuild</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 622 | "citerefentry>)" | ||
| 623 | osamu | 8601 | |
| 624 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 625 | osamu | 8653 | msgid "" |
| 626 | "<systemitem role=\"package\">patchutils</systemitem> - this package contains " | ||
| 627 | "some utilities to work with patches such as the <command>lsdiff</command>, " | ||
| 628 | "<command>interdiff</command> and <command>filterdiff</command> commands." | ||
| 629 | msgstr "" | ||
| 630 | "<systemitem role=\"package\">patchutils</systemitem> - 此套件提供了一些可以幫" | ||
| 631 | "助處理補丁的工具,如 <command>lsdiff</command>、<command>interdiff</command> " | ||
| 632 | "和 <command>filterdiff</command> 命令。" | ||
| 633 | osamu | 8601 | |
| 634 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 635 | osamu | 8646 | #, fuzzy |
| 636 | osamu | 8653 | #| msgid "" |
| 637 | #| "<systemitem role=\"package\">quilt</systemitem> - this package helps you " | ||
| 638 | #| "to manage a series of patches by keeping track of the changes each of " | ||
| 639 | #| "them makes. They are logically organized as a stack, and you can apply " | ||
| 640 | #| "(=push), un-apply (=pop), refresh them easily by traveling into the " | ||
| 641 | #| "stack. (see <citerefentry> <refentrytitle>quilt</refentrytitle> " | ||
| 642 | #| "<manvolnum>1</manvolnum> </citerefentry>, <filename>/usr/share/doc/quilt/" | ||
| 643 | #| "README.Debian</filename>)" | ||
| 644 | msgid "" | ||
| 645 | "<systemitem role=\"package\">quilt</systemitem> - this package helps you to " | ||
| 646 | "manage a series of patches by keeping track of the changes each of them " | ||
| 647 | "makes. They are logically organized as a stack, and you can apply (=push), " | ||
| 648 | "un-apply (=pop), refresh them easily by traveling into the stack. (see " | ||
| 649 | "<citerefentry> <refentrytitle>quilt</refentrytitle> <manvolnum>1</manvolnum> " | ||
| 650 | "</citerefentry>, <ulink url=\"&quilt-pdf;\">quilt.pdf</ulink>)" | ||
| 651 | msgstr "" | ||
| 652 | "<systemitem role=\"package\">quilt</systemitem> - 此套件幫助你管理一系列的補" | ||
| 653 | "丁。它們被以邏輯堆疊的方式組織在一起。你可以 apply (=push)、un-apply (=pop) " | ||
| 654 | "或簡單地更新它們然後再放入堆疊內。(參考 <citerefentry> <refentrytitle>quilt</" | ||
| 655 | "refentrytitle> <manvolnum>1</manvolnum> </citerefentry>、<filename>/usr/" | ||
| 656 | "share/doc/quilt/README.Debian</filename>)" | ||
| 657 | osamu | 8601 | |
| 658 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 659 | osamu | 8646 | #, fuzzy |
| 660 | osamu | 8653 | #| msgid "" |
| 661 | #| "<systemitem role=\"package\">git</systemitem> - this package provides " | ||
| 662 | #| "popular version control system designed to handle very large projects " | ||
| 663 | #| "with speed and efficiency; it is used for many high profile open source " | ||
| 664 | #| "projects, most notably the Linux kernel. (see <citerefentry> " | ||
| 665 | #| "<refentrytitle>git</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 666 | #| "citerefentry>, <filename>/usr/share/doc/git-doc/index.html</filename>)" | ||
| 667 | msgid "" | ||
| 668 | "<systemitem role=\"package\">git</systemitem> - this package provides " | ||
| 669 | "popular version control system designed to handle very large projects with " | ||
| 670 | "speed and efficiency; it is used for many high profile open source projects, " | ||
| 671 | "most notably the Linux kernel. (see <citerefentry> <refentrytitle>git</" | ||
| 672 | "refentrytitle> <manvolnum>1</manvolnum> </citerefentry>, <ulink url=\"&git-" | ||
| 673 | "doc;\">git Manual</ulink>)" | ||
| 674 | msgstr "" | ||
| 675 | "<systemitem role=\"package\">git</systemitem> - 此套件提供了用於快捷處理大型" | ||
| 676 | "項目的著名版本控制系統 - git。它被廣泛用於各種開源項目,最著名的是 Linux 核心" | ||
| 677 | "項目。(參考 <citerefentry> <refentrytitle>git</refentrytitle> <manvolnum>1</" | ||
| 678 | "manvolnum> </citerefentry>、<filename>/usr/share/doc/git-doc/index.html</" | ||
| 679 | "filename>)" | ||
| 680 | osamu | 8651 | |
| 681 | #. type: Content of: <book><chapter><section><para> | ||
| 682 | osamu | 8653 | msgid "" |
| 683 | "The short descriptions that are given above only serve to introduce you to " | ||
| 684 | "what each package does. Before continuing please thoroughly read the " | ||
| 685 | "documentation of each program, at least, for the standard usage. It may " | ||
| 686 | "seem like heavy going now, but later on you'll be <emphasis>very</emphasis> " | ||
| 687 | "glad you read it." | ||
| 688 | msgstr "" | ||
| 689 | "以上給出的簡短描述僅僅是爲了使你對這些套件有一個基本的印象。在繼續前請詳細閱" | ||
| 690 | "讀每個程式的文件,至少了解其一般的用途和用法。現在看來這是一項耗時巨大的任" | ||
| 691 | "務,但在接下來的工作中你將爲你閱讀了它們而感覺到 <emphasis>非常</emphasis> 愉" | ||
| 692 | "快。" | ||
| 693 | osamu | 8651 | |
| 694 | #. type: Content of: <book><chapter><section><para> | ||
| 695 | osamu | 8653 | msgid "" |
| 696 | "If you have specific questions later, I suggest you to read the documents " | ||
| 697 | "mentioned above again. Since this is a tutorial, I intentionally skipped " | ||
| 698 | "details and provided only pointers to keep it simple." | ||
| 699 | osamu | 8619 | msgstr "" |
| 700 | osamu | 8601 | |
| 701 | osamu | 8646 | #. type: Content of: <book><chapter><section><title> |
| 702 | #, fuzzy | ||
| 703 | #| msgid "Programs you need for development" | ||
| 704 | msgid "Documentations you need for development" | ||
| 705 | msgstr "開發時需要的軟體" | ||
| 706 | |||
| 707 | osamu | 8601 | #. type: Content of: <book><chapter><section><para> |
| 708 | osamu | 8653 | msgid "" |
| 709 | "The following is the <emphasis>very important</emphasis> documentation which " | ||
| 710 | "you should read along with this document:" | ||
| 711 | msgstr "" | ||
| 712 | "以下是 <emphasis>非常重要</emphasis> 的文件,你應該在讀本文件時同時參考它們:" | ||
| 713 | osamu | 8601 | |
| 714 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 715 | osamu | 8646 | #, fuzzy |
| 716 | osamu | 8653 | #| msgid "" |
| 717 | #| "<systemitem role=\"package\">debian-policy</systemitem> - the <ulink url=" | ||
| 718 | #| "\"&debian-policy;\">Debian Policy Manual</ulink> includes explanations of " | ||
| 719 | #| "the structure and contents of the Debian archive, several OS design " | ||
| 720 | #| "issues, the Filesystem Hierarchy Standard (which says where each file and " | ||
| 721 | #| "directory should be) etc. For you, the most important thing is that it " | ||
| 722 | #| "describes requirements that each package must satisfy to be included in " | ||
| 723 | #| "the distribution (see <filename>/usr/share/doc/debian-policy/policy.html/" | ||
| 724 | #| "index.html</filename>)." | ||
| 725 | msgid "" | ||
| 726 | "<systemitem role=\"package\">debian-policy</systemitem> - the <ulink url=" | ||
| 727 | "\"&debian-policy;\">Debian Policy Manual</ulink> includes explanations of " | ||
| 728 | "the structure and contents of the Debian archive, several OS design issues, " | ||
| 729 | "the <ulink url=\"&fhs;\">Filesystem Hierarchy Standard</ulink> (FHS, which " | ||
| 730 | "says where each file and directory should be) etc. For you, the most " | ||
| 731 | "important thing is that it describes requirements that each package must " | ||
| 732 | "satisfy to be included in the distribution (see the local copies of <ulink " | ||
| 733 | "url=\"&policy-pdf;\">policy.pdf</ulink> and <ulink url=\"&fhs-pdf;\">fhs-2.3." | ||
| 734 | "pdf</ulink>)." | ||
| 735 | msgstr "" | ||
| 736 | "<systemitem role=\"package\">debian-policy</systemitem> - <ulink url=" | ||
| 737 | "\"&debian-policy;\">Debian Policy Manual</ulink> 包含了對 Debian 軟體倉庫、作" | ||
| 738 | "業系統設計事宜、檔案系統層級標準(FHS,Filesystem Hierarchy Standard)(講述每個" | ||
| 739 | "檔案和目錄應該放在哪裏)等的描述。對於你而言,最重要的是它描述了套件要進入官方" | ||
| 740 | "倉庫前必須滿足的條件。(參考 <filename>/usr/share/doc/debian-policy/policy." | ||
| 741 | "html/index.html</filename>)" | ||
| 742 | osamu | 8601 | |
| 743 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 744 | osamu | 8646 | #, fuzzy |
| 745 | osamu | 8653 | #| msgid "" |
| 746 | #| "<systemitem role=\"package\">developers-reference</systemitem> - the " | ||
| 747 | #| "<ulink url=\"&developers-reference;\">Debian Developer's Reference</" | ||
| 748 | #| "ulink> describes all matters not specifically about the technical details " | ||
| 749 | #| "of packaging, like the structure of the archive, how to rename, orphan, " | ||
| 750 | #| "pick up packages, how to do NMUs, how to manage bugs, best packaging " | ||
| 751 | #| "practices, when and where to upload etc. (see <filename>/usr/share/doc/" | ||
| 752 | #| "developers-reference/</filename>)." | ||
| 753 | msgid "" | ||
| 754 | "<systemitem role=\"package\">developers-reference</systemitem> - the <ulink " | ||
| 755 | "url=\"&developers-reference;\">Debian Developer's Reference</ulink> " | ||
| 756 | "describes all matters not specifically about the technical details of " | ||
| 757 | "packaging, like the structure of the archive, how to rename, orphan, pick up " | ||
| 758 | "packages, how to do NMUs, how to manage bugs, best packaging practices, when " | ||
| 759 | "and where to upload etc. (see the local copy of <ulink url=\"&developers-" | ||
| 760 | "refpdf;\">developers-reference.pdf</ulink>)." | ||
| 761 | msgstr "" | ||
| 762 | "<systemitem role=\"package\">developers-reference</systemitem> - <ulink url=" | ||
| 763 | "\"&developers-reference;\">Debian Developer's Reference</ulink> 描述了打包所" | ||
| 764 | "需的包含技術細節在內的全部詳細訊息,如倉庫結構、如何重命名/丟棄/接手套件、如" | ||
| 765 | "何進行 NMU(非維護者上傳)、如何管理 Bug 以及打包最佳經驗、何時向何處上傳等。" | ||
| 766 | "(參考 <filename>/usr/share/doc/developers-reference/</filename>)" | ||
| 767 | osamu | 8601 | |
| 768 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 769 | osamu | 8653 | msgid "" |
| 770 | "<ulink url=\"&autotools-tutorial;\">Autotools Tutorial</ulink> provides very " | ||
| 771 | "good tutorial for <ulink url=\"&gnu-build-system;\">the GNU Build System " | ||
| 772 | "known as the GNU Autotools</ulink> whose most important components are " | ||
| 773 | "Autoconf, Automake, Libtool, and gettext." | ||
| 774 | msgstr "" | ||
| 775 | "<ulink url=\"&autotools-tutorial;\">Autotools Tutorial</ulink> 爲 <ulink url=" | ||
| 776 | "\"&gnu-build-system;\">the GNU Build System known as the GNU Autotools</" | ||
| 777 | "ulink> 中最重要的工具 —— Autoconf、Automake、Libtool 和 gettext 提供了很好的" | ||
| 778 | "文件。" | ||
| 779 | osamu | 8601 | |
| 780 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 781 | osamu | 8646 | #, fuzzy |
| 782 | osamu | 8653 | #| msgid "" |
| 783 | #| "<systemitem role=\"package\">gnu-standards</systemitem> - this package " | ||
| 784 | #| "contains two pieces of documentation from the GNU project: <ulink url=" | ||
| 785 | #| "\"&gnu-standard;\">GNU Coding Standards</ulink>, and <ulink url=\"&gnu-" | ||
| 786 | #| "maintainer;\">Information for Maintainers of GNU Software</ulink>. " | ||
| 787 | #| "Although Debian does not require these to be followed, these are still " | ||
| 788 | #| "helpful as guidelines and common sense. (see <filename>/usr/share/doc/" | ||
| 789 | #| "gnu-standards/standards.html</filename> and <filename>/usr/share/doc/gnu-" | ||
| 790 | #| "standards/maintain.html</filename>)." | ||
| 791 | msgid "" | ||
| 792 | "<systemitem role=\"package\">gnu-standards</systemitem> - this package " | ||
| 793 | "contains two pieces of documentation from the GNU project: <ulink url=\"&gnu-" | ||
| 794 | "standard;\">GNU Coding Standards</ulink>, and <ulink url=\"&gnu-maintainer;" | ||
| 795 | "\">Information for Maintainers of GNU Software</ulink>. Although Debian " | ||
| 796 | "does not require these to be followed, these are still helpful as guidelines " | ||
| 797 | "and common sense. (see the local copies of <ulink url=\"&gnu-standard-pdf;" | ||
| 798 | "\">standards.pdf</ulink> and <ulink url=\"&gnu-maintainer-pdf;\">maintain." | ||
| 799 | "pdf</ulink>)." | ||
| 800 | msgstr "" | ||
| 801 | "<systemitem role=\"package\">gnu-standards</systemitem> - 此套件包含了 GNU 項" | ||
| 802 | "目中的兩篇文件: <ulink url=\"&gnu-standard;\">GNU Coding Standards</ulink> " | ||
| 803 | "和 <ulink url=\"&gnu-maintainer;\">Information for Maintainers of GNU " | ||
| 804 | "Software</ulink>。儘管 Debian 不要求遵守這些規範,它們仍然很有幫助。(參考 " | ||
| 805 | "<filename>/usr/share/doc/gnu-standards/standards.html</filename> 和 " | ||
| 806 | "<filename>/usr/share/doc/gnu-standards/maintain.html</filename>)" | ||
| 807 | osamu | 8601 | |
| 808 | #. type: Content of: <book><chapter><section><para> | ||
| 809 | osamu | 8646 | #, fuzzy |
| 810 | osamu | 8653 | #| msgid "" |
| 811 | #| "If this document contradicts with what the Debian Policy Manual and " | ||
| 812 | #| "Debian Developer's Reference describes, they are correct. Please file a " | ||
| 813 | #| "bug report on the <systemitem role=\"package\">maint-guide</systemitem> " | ||
| 814 | #| "package." | ||
| 815 | msgid "" | ||
| 816 | "If this document contradicts with any of the documents mentioned above, they " | ||
| 817 | "are correct. Please file a bug report on the <systemitem role=\"package" | ||
| 818 | "\">maint-guide</systemitem> package using <command>reportbug</command>." | ||
| 819 | msgstr "" | ||
| 820 | "若本文件所敘述的內容與 Debian Policy Manual 或 Debian Developer's Reference " | ||
| 821 | "有不符,則按照後兩者的要求進行,並向 <systemitem role=\"package\">maint-" | ||
| 822 | "guide</systemitem> 套件提交 Bug 報告。" | ||
| 823 | osamu | 8646 | |
| 824 | osamu | 8601 | #. type: Content of: <book><chapter><section><title> |
| 825 | msgid "Basic terminology" | ||
| 826 | msgstr "基本術語" | ||
| 827 | |||
| 828 | #. type: Content of: <book><chapter><section><para> | ||
| 829 | msgid "There are two types of packages." | ||
| 830 | msgstr "一共有兩種類型的套件。" | ||
| 831 | |||
| 832 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 833 | osamu | 8653 | msgid "" |
| 834 | "<emphasis role=\"strong\">source package</emphasis>: A source package is a " | ||
| 835 | "set of files which contain code and data which you can compile and process " | ||
| 836 | "into execution programs and formatted documents. It usually comes as a " | ||
| 837 | "combination of <filename>*.orig.tar.gz</filename>, <filename>*.debian.tar." | ||
| 838 | "gz</filename> (or <filename>*.diff.gz</filename>), and <filename>*.dsc</" | ||
| 839 | "filename>. Some other archive and compression methods may be used, too." | ||
| 840 | msgstr "" | ||
| 841 | "<emphasis role=\"strong\">原始碼套件</emphasis>:原始碼套件包含了程式碼和數" | ||
| 842 | "據,可以編譯成爲可執行的程式和格式化的文件。它通常是以 <filename>*.orig.tar." | ||
| 843 | "gz</filename>、<filename>*.debian.tar.gz</filename> (或 <filename>*.diff.gz</" | ||
| 844 | "filename>) 和 <filename>*.dsc</filename> 的組合形式出現的。也可能使用一些其他" | ||
| 845 | "的格式和壓縮方法。" | ||
| 846 | osamu | 8601 | |
| 847 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 848 | osamu | 8653 | msgid "" |
| 849 | "<emphasis role=\"strong\">binary package</emphasis>: A binary package " | ||
| 850 | "contains execution programs and formatted documents. It usually comes as " | ||
| 851 | "<filename>*.deb</filename> for the normal Debian system and as <filename>*." | ||
| 852 | "udeb</filename> for the Debian Installer." | ||
| 853 | msgstr "" | ||
| 854 | "<emphasis role=\"strong\">二進位套件</emphasis>:二進位套件包含了可執行的程式" | ||
| 855 | "和格式化的文件。它通常是以 <filename>*.deb</filename> 檔案的形式提供給普通 " | ||
| 856 | "Debian 系統,以及 <filename>*.udeb</filename> 檔案形式提供給 Debian 安裝程" | ||
| 857 | "式。" | ||
| 858 | osamu | 8601 | |
| 859 | #. type: Content of: <book><chapter><section><para> | ||
| 860 | osamu | 8653 | msgid "" |
| 861 | "Don't mix terms like source of the program and the source package of the " | ||
| 862 | "program!" | ||
| 863 | osamu | 8601 | msgstr "不要混淆程式原始碼和程式的原始碼套件這樣相似但有區別的概念!" |
| 864 | |||
| 865 | #. type: Content of: <book><chapter><section><para> | ||
| 866 | msgid "There are several role names used around Debian." | ||
| 867 | msgstr "在 Debian 社群中有幾個常見的角色。" | ||
| 868 | |||
| 869 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 870 | osamu | 8653 | msgid "" |
| 871 | "<emphasis role=\"strong\">upstream author</emphasis>: The person who made " | ||
| 872 | "the original program." | ||
| 873 | msgstr "" | ||
| 874 | "<emphasis role=\"strong\">上游作者(upstream author)</emphasis>:程式的最原始" | ||
| 875 | "作者。" | ||
| 876 | osamu | 8601 | |
| 877 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 878 | osamu | 8653 | msgid "" |
| 879 | "<emphasis role=\"strong\">upstream maintainer</emphasis>: The person who " | ||
| 880 | "currently maintains the program." | ||
| 881 | msgstr "" | ||
| 882 | "<emphasis role=\"strong\">上游維護者(upstream maintainer)</emphasis>:目前在" | ||
| 883 | "上游維護程式程式碼的人。" | ||
| 884 | osamu | 8601 | |
| 885 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 886 | osamu | 8653 | msgid "" |
| 887 | "<emphasis role=\"strong\">maintainer</emphasis>: The person who makes Debian " | ||
| 888 | "package of the program." | ||
| 889 | msgstr "" | ||
| 890 | "<emphasis role=\"strong\">維護者(maintainer)</emphasis>:製作該程式的 Debian " | ||
| 891 | "套件的人。" | ||
| 892 | osamu | 8601 | |
| 893 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 894 | osamu | 8653 | msgid "" |
| 895 | "<emphasis role=\"strong\">sponsor</emphasis>: The person who helps " | ||
| 896 | "maintainers to upload packages to the official Debian Package Archive after " | ||
| 897 | "checking their contents." | ||
| 898 | msgstr "" | ||
| 899 | "<emphasis role=\"strong\">保證人(sponsor)</emphasis>:檢査內容後幫助維護者上" | ||
| 900 | "傳套件到 Debian 官方倉庫的人。" | ||
| 901 | osamu | 8601 | |
| 902 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 903 | osamu | 8653 | msgid "" |
| 904 | "<emphasis role=\"strong\">mentor</emphasis>: The person who helps novice " | ||
| 905 | "maintainers on packaging etc." | ||
| 906 | msgstr "" | ||
| 907 | "<emphasis role=\"strong\">指導者(mentor)</emphasis>:幫助維護者熟悉和深入打包" | ||
| 908 | "的人。" | ||
| 909 | osamu | 8601 | |
| 910 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 911 | osamu | 8653 | msgid "" |
| 912 | "<emphasis role=\"strong\">Debian Developer</emphasis> (DD): The person who " | ||
| 913 | "is a member of Debian. He has full upload right to the official Debian " | ||
| 914 | "Package Archive." | ||
| 915 | msgstr "" | ||
| 916 | "<emphasis role=\"strong\">Debian Developer</emphasis> (DD):Debian 社群的官方" | ||
| 917 | "成員。DD 擁有向 Debian 官方倉庫上傳的全部權限。" | ||
| 918 | osamu | 8601 | |
| 919 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 920 | osamu | 8653 | msgid "" |
| 921 | "<emphasis role=\"strong\">Debian Maintainer</emphasis> (DM): The person who " | ||
| 922 | "has limited upload right to the official Debian Package Archive." | ||
| 923 | msgstr "" | ||
| 924 | "<emphasis role=\"strong\">Debian Maintainer</emphasis> (DM):擁有對 Debian 官" | ||
| 925 | "方倉庫部分上傳權限的人。" | ||
| 926 | osamu | 8601 | |
| 927 | osamu | 8646 | #. type: Content of: <book><chapter><section><para><footnote><para> |
| 928 | osamu | 8653 | msgid "" |
| 929 | "See <ulink url=\"&policy-control;#s-f-Version\">Debian Policy Manual: 5.6.12 " | ||
| 930 | "Version</ulink>." | ||
| 931 | osamu | 8646 | msgstr "" |
| 932 | |||
| 933 | osamu | 8601 | #. type: Content of: <book><chapter><section><para> |
| 934 | osamu | 8646 | #, fuzzy |
| 935 | #| msgid "There are several version names used around Debian." | ||
| 936 | osamu | 8653 | msgid "" |
| 937 | "There are several version names<placeholder type=\"footnote\" id=\"0\"/> " | ||
| 938 | "used around Debian." | ||
| 939 | osamu | 8601 | msgstr "Debian 中使用了幾種不同的版本號。" |
| 940 | |||
| 941 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 942 | osamu | 8653 | msgid "" |
| 943 | "<emphasis role=\"strong\">upstream source version</emphasis>: The upstream " | ||
| 944 | "source version is referred as <literal><replaceable>version</replaceable></" | ||
| 945 | "literal>." | ||
| 946 | msgstr "" | ||
| 947 | "<emphasis role=\"strong\">上游原始碼版本</emphasis>:上游原始碼版本被指代爲 " | ||
| 948 | "<literal><replaceable>version</replaceable></literal>。" | ||
| 949 | osamu | 8601 | |
| 950 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 951 | osamu | 8653 | msgid "" |
| 952 | "<emphasis role=\"strong\">Debian revision</emphasis>: The revision by Debian " | ||
| 953 | "on package is referred as <literal><replaceable>revision</replaceable></" | ||
| 954 | "literal>." | ||
| 955 | msgstr "" | ||
| 956 | "<emphasis role=\"strong\">Debian 版本</emphasis>:Debian 套件的版本被指代爲 " | ||
| 957 | "<literal><replaceable>revision</replaceable></literal>。" | ||
| 958 | osamu | 8601 | |
| 959 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 960 | osamu | 8653 | msgid "" |
| 961 | "<emphasis role=\"strong\">Debian package version</emphasis>: The Debian " | ||
| 962 | "package version is referred as the following." | ||
| 963 | msgstr "" | ||
| 964 | "<emphasis role=\"strong\">Debian 套件版本</emphasis>:Debian 套件版本被按以下" | ||
| 965 | "規則指代。" | ||
| 966 | osamu | 8601 | |
| 967 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para> | ||
| 968 | osamu | 8653 | msgid "" |
| 969 | "<literal><replaceable>version</replaceable></literal> for the native Debian " | ||
| 970 | "binary package and for the Debian source package." | ||
| 971 | msgstr "" | ||
| 972 | "對於 Debian 創建的軟體,其原始碼套件的版本即爲上文所述的 " | ||
| 973 | "<literal><replaceable>version</replaceable></literal>。" | ||
| 974 | osamu | 8601 | |
| 975 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para> | ||
| 976 | osamu | 8653 | msgid "" |
| 977 | "<literal><replaceable>version</replaceable>-<replaceable>revision</" | ||
| 978 | "replaceable></literal> for the non-native Debian binary package." | ||
| 979 | msgstr "" | ||
| 980 | "對於不是 Debian 創建的軟體,其原始碼套件的版本爲 " | ||
| 981 | "<literal><replaceable>version</replaceable>-<replaceable>revision</" | ||
| 982 | "replaceable></literal>。" | ||
| 983 | osamu | 8601 | |
| 984 | osamu | 8646 | #. type: Content of: <book><chapter><section><para><footnote><para> |
| 985 | osamu | 8653 | msgid "" |
| 986 | osamu | 8654 | "See lists in <xref linkend=\"socialdynamism\"/> and <xref linkend=\"needdocs" |
| 987 | "\"/>." | ||
| 988 | osamu | 8646 | msgstr "" |
| 989 | |||
| 990 | osamu | 8601 | #. type: Content of: <book><chapter><section><para> |
| 991 | osamu | 8646 | #, fuzzy |
| 992 | osamu | 8653 | #| msgid "" |
| 993 | #| "Please read the other manuals if you need more details on terminology." | ||
| 994 | msgid "" | ||
| 995 | "Please read the other manuals if you need more details on terminology. " | ||
| 996 | "<placeholder type=\"footnote\" id=\"0\"/>" | ||
| 997 | osamu | 8601 | msgstr "如果你需要更詳細地瞭解術語,請閱讀其他手冊。" |
| 998 | |||
| 999 | #. type: Content of: <book><chapter><section><title> | ||
| 1000 | msgid "Where to ask for help" | ||
| 1001 | msgstr "到何處尋求幫助" | ||
| 1002 | |||
| 1003 | #. type: Content of: <book><chapter><section><para> | ||
| 1004 | osamu | 8653 | msgid "" |
| 1005 | "Before you decide to ask your question in some public place, please read the " | ||
| 1006 | "fine documentation." | ||
| 1007 | osamu | 8619 | msgstr "" |
| 1008 | osamu | 8601 | |
| 1009 | osamu | 8646 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 1010 | #, fuzzy | ||
| 1011 | #| msgid "<filename>changelog</filename> file" | ||
| 1012 | msgid "files in <filename>/usr/share/doc/dpkg</filename>" | ||
| 1013 | msgstr "<filename>changelog</filename> 檔案" | ||
| 1014 | |||
| 1015 | #. /usr/share/doc/debian is used be doc-debian and debian-faq | ||
| 1016 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1017 | #, fuzzy | ||
| 1018 | #| msgid "Other files under the <filename>debian</filename> directory" | ||
| 1019 | msgid "files in <filename>/usr/share/doc/debian</filename>" | ||
| 1020 | msgstr "<filename>debian</filename> 目錄下的其他檔案" | ||
| 1021 | |||
| 1022 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1023 | #, fuzzy | ||
| 1024 | #| msgid "<filename>source/local-options</filename> file" | ||
| 1025 | msgid "files in <filename>/usr/share/doc/autotools-dev</filename>" | ||
| 1026 | msgstr "<filename>source/local-options</filename> 檔案" | ||
| 1027 | |||
| 1028 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1029 | #, fuzzy | ||
| 1030 | #| msgid "<filename><replaceable>package</replaceable>.info</filename> file" | ||
| 1031 | osamu | 8653 | msgid "" |
| 1032 | "files in <filename>/usr/share/doc/<replaceable>package</replaceable></" | ||
| 1033 | "filename> for all pertinent packages." | ||
| 1034 | osamu | 8646 | msgstr "<filename><replaceable>package</replaceable>.info</filename> 檔案" |
| 1035 | |||
| 1036 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1037 | osamu | 8653 | msgid "" |
| 1038 | "contents of <literal><command>man</command> <replaceable>command</" | ||
| 1039 | "replaceable></literal> for all pertinent commands" | ||
| 1040 | osamu | 8646 | msgstr "" |
| 1041 | |||
| 1042 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1043 | osamu | 8653 | msgid "" |
| 1044 | "contents of <literal><command>info</command> <replaceable>command</" | ||
| 1045 | "replaceable></literal> for all pertinent commands" | ||
| 1046 | osamu | 8646 | msgstr "" |
| 1047 | |||
| 1048 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1049 | #, fuzzy | ||
| 1050 | osamu | 8653 | #| msgid "" |
| 1051 | #| "See <ulink url=\"&debian-mentors-ldo;\">&debian-mentors-ldo;</ulink> for " | ||
| 1052 | #| "more information about this mailing list." | ||
| 1053 | msgid "" | ||
| 1054 | "contents of <ulink url=\"&debian-mentors-ldo;\">debian-mentors@lists.debian." | ||
| 1055 | "org mailing list archive</ulink>" | ||
| 1056 | msgstr "" | ||
| 1057 | "關於此郵件列表,參考 <ulink url=\"&debian-mentors-ldo;\">&debian-mentors-ldo;" | ||
| 1058 | "</ulink>" | ||
| 1059 | osamu | 8646 | |
| 1060 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1061 | osamu | 8653 | msgid "" |
| 1062 | "contents of <ulink url=\"&debian-devel-ldo;\">debian-devel@lists.debian.org " | ||
| 1063 | "mailing list archive</ulink>" | ||
| 1064 | osamu | 8646 | msgstr "" |
| 1065 | |||
| 1066 | osamu | 8601 | #. type: Content of: <book><chapter><section><para> |
| 1067 | osamu | 8653 | msgid "" |
| 1068 | "Please consider to use web search engine effectively by including search " | ||
| 1069 | "string such as <literal>site:lists.debian.org</literal> to limit the domain." | ||
| 1070 | osamu | 8646 | msgstr "" |
| 1071 | |||
| 1072 | #. type: Content of: <book><chapter><section><para> | ||
| 1073 | osamu | 8653 | msgid "" |
| 1074 | "Making a small test package is good way to learn details of packaging. " | ||
| 1075 | "Inspecting existing well maintained packages is the best way to learn how " | ||
| 1076 | "other people make packages." | ||
| 1077 | msgstr "" | ||
| 1078 | "製作小的測試套件是學習打包的好方法,仔細査看維護較好的套件則是瞭解他人如何製" | ||
| 1079 | "作套件的最佳辦法。" | ||
| 1080 | osamu | 8601 | |
| 1081 | #. type: Content of: <book><chapter><section><para> | ||
| 1082 | osamu | 8653 | msgid "" |
| 1083 | "If you still have questions about packaging that you couldn't find answers " | ||
| 1084 | "to in the available documentation and web resources, you can ask them " | ||
| 1085 | "interactively." | ||
| 1086 | osamu | 8619 | msgstr "" |
| 1087 | osamu | 8601 | |
| 1088 | osamu | 8646 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 1089 | #, fuzzy | ||
| 1090 | osamu | 8653 | #| msgid "" |
| 1091 | #| "See <ulink url=\"&debian-mentors-ldo;\">&debian-mentors-ldo;</ulink> for " | ||
| 1092 | #| "more information about this mailing list." | ||
| 1093 | msgid "" | ||
| 1094 | "<ulink url=\"&debian-mentors-ldo;\">debian-mentors@lists.debian.org mailing " | ||
| 1095 | "list</ulink>. (This mailing list is for the novice.)" | ||
| 1096 | msgstr "" | ||
| 1097 | "關於此郵件列表,參考 <ulink url=\"&debian-mentors-ldo;\">&debian-mentors-ldo;" | ||
| 1098 | "</ulink>" | ||
| 1099 | osamu | 8601 | |
| 1100 | osamu | 8646 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 1101 | osamu | 8653 | msgid "" |
| 1102 | "<ulink url=\"&debian-devel-ldo;\">debian-devel@lists.debian.org mailing " | ||
| 1103 | "list</ulink>. (This mailing list is for the expert.)" | ||
| 1104 | osamu | 8646 | msgstr "" |
| 1105 | |||
| 1106 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1107 | osamu | 8653 | msgid "" |
| 1108 | "<ulink url=\"&irc-debian;\">IRC</ulink> such as <literal>#debian-mentors</" | ||
| 1109 | "literal>." | ||
| 1110 | osamu | 8646 | msgstr "" |
| 1111 | |||
| 1112 | osamu | 8601 | #. type: Content of: <book><chapter><section><para> |
| 1113 | osamu | 8653 | msgid "" |
| 1114 | "The more experienced Debian developers will gladly help you, if you ask " | ||
| 1115 | "properly after making your required efforts." | ||
| 1116 | osamu | 8646 | msgstr "" |
| 1117 | |||
| 1118 | #. type: Content of: <book><chapter><section><para> | ||
| 1119 | #, fuzzy | ||
| 1120 | osamu | 8653 | #| msgid "" |
| 1121 | #| "When you receive a bug report (yes, actual bug reports!), you will know " | ||
| 1122 | #| "that it is time for you to dig into the <ulink url=\"&bts;\">Debian Bug " | ||
| 1123 | #| "Tracking System</ulink> and read the documentation there, to be able to " | ||
| 1124 | #| "deal with the reports efficiently. I highly recommend reading the <ulink " | ||
| 1125 | #| "url=\"&devref-bug-handling;\">Developer's Reference, 5.8. 'Handling " | ||
| 1126 | #| "bugs'</ulink>." | ||
| 1127 | msgid "" | ||
| 1128 | "When you receive a bug report (yes, actual bug reports!), you will know that " | ||
| 1129 | "it is time for you to dig into the <ulink url=\"&bts;\">Debian Bug Tracking " | ||
| 1130 | "System</ulink> and read the documentation there, to be able to deal with the " | ||
| 1131 | "reports efficiently. I highly recommend reading the <ulink url=\"&devref-" | ||
| 1132 | "bug-handling;\">Debian Developer's Reference, 5.8. 'Handling bugs'</ulink>." | ||
| 1133 | msgstr "" | ||
| 1134 | "當你收到一個 Bug 報告後(沒錯,真正的 Bug 報告!),你需要研究 <ulink url=" | ||
| 1135 | "\"&bts;\">Debian Bug Tracking System</ulink> (Debian Bug 跟蹤系統,BTS)並閱讀" | ||
| 1136 | "相關的文件以便高效處理這些報告。我推薦閱讀 <ulink url=\"&devref-bug-handling;" | ||
| 1137 | "\">Developer's Reference, 5.8. 'Handling bugs'</ulink>" | ||
| 1138 | osamu | 8601 | |
| 1139 | #. type: Content of: <book><chapter><section><para> | ||
| 1140 | osamu | 8653 | msgid "" |
| 1141 | "Even if it all worked well, it's time to start praying. Why? Because in " | ||
| 1142 | "just a few hours (or days) users from all around the world will start to use " | ||
| 1143 | "your package, and if you made some critical error you'll get mailbombed by " | ||
| 1144 | "numerous angry Debian users... Just kidding. :-)" | ||
| 1145 | msgstr "" | ||
| 1146 | "即使以上的問題都解決了,也不能高興得太早。爲什麼?因爲幾個小時或幾天內就會有" | ||
| 1147 | "人開始使用你的套件,如果你犯了某些嚴重的錯誤,將被無數生氣的 Debian 用戶的郵" | ||
| 1148 | "件所轟炸…… 只是開個玩笑。:-)" | ||
| 1149 | osamu | 8601 | |
| 1150 | #. type: Content of: <book><chapter><section><para> | ||
| 1151 | osamu | 8653 | msgid "" |
| 1152 | "Relax and be ready for bug reports, because there is a lot more work to be " | ||
| 1153 | "done before your package will be fully in line with Debian policies and its " | ||
| 1154 | "best practice guidelines (once again, read the <emphasis>real documentation</" | ||
| 1155 | "emphasis> for details). Good luck!" | ||
| 1156 | msgstr "" | ||
| 1157 | "放鬆一點並準備好處理 Bug 報告,在你的套件完全符合 Debian 的各項規範前還需要付" | ||
| 1158 | "出很多努力,處理 Bug 也是對你很好的鍛煉(再一次提醒,閱讀那些 <emphasis>必須的" | ||
| 1159 | "文件</emphasis> 來了解詳情)。祝你好運!" | ||
| 1160 | osamu | 8601 | |
| 1161 | #. type: Content of: <book><chapter><title> | ||
| 1162 | msgid "First steps" | ||
| 1163 | msgstr "第一步" | ||
| 1164 | |||
| 1165 | #. type: Content of: <book><chapter><para> | ||
| 1166 | osamu | 8653 | msgid "" |
| 1167 | "Let's try to make your own package (or, better even, adopt an existing one)." | ||
| 1168 | osamu | 8601 | msgstr "讓我們嘗試創建一個自己的套件(“收養”一個已存在的套件則更好)。" |
| 1169 | |||
| 1170 | #. type: Content of: <book><chapter><section><title> | ||
| 1171 | msgid "Choose your program" | ||
| 1172 | msgstr "選擇你的程式" | ||
| 1173 | |||
| 1174 | #. type: Content of: <book><chapter><section><para> | ||
| 1175 | osamu | 8646 | #, fuzzy |
| 1176 | osamu | 8653 | #| msgid "" |
| 1177 | #| "You have probably chosen the package you want to create. The first thing " | ||
| 1178 | #| "you need to do is check if the package is in the distribution archive " | ||
| 1179 | #| "already by using <command>aptitude</command>." | ||
| 1180 | msgid "" | ||
| 1181 | "You have probably chosen the package you want to create. The first thing " | ||
| 1182 | "you need to do is check if the package is in the distribution archive " | ||
| 1183 | "already by using the following." | ||
| 1184 | msgstr "" | ||
| 1185 | "可能你已經選好了要製作的套件。第一件要做的事是使用 <command>aptitude</" | ||
| 1186 | "command> 檢査它是否已經存在於發行版倉庫中了。" | ||
| 1187 | osamu | 8601 | |
| 1188 | osamu | 8646 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 1189 | #, fuzzy | ||
| 1190 | #| msgid "<command>debc</command> command" | ||
| 1191 | msgid "the <command>aptitude</command> command" | ||
| 1192 | msgstr "<command>debc</command> 命令" | ||
| 1193 | |||
| 1194 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1195 | #, fuzzy | ||
| 1196 | #| msgid "<ulink url=\"&debian-packages-git;\">debian packages in git</ulink>" | ||
| 1197 | msgid "<ulink url=\"&packages-do;\">Debian packages</ulink> web page" | ||
| 1198 | msgstr "<ulink url=\"&debian-packages-git;\">debian packages in git</ulink>" | ||
| 1199 | |||
| 1200 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1201 | #, fuzzy | ||
| 1202 | #| msgid "<ulink url=\"&debian-packages-git;\">debian packages in git</ulink>" | ||
| 1203 | osamu | 8653 | msgid "" |
| 1204 | "<ulink url=\"&packages-qa-do;\">Debian Package Tracking System</ulink> web " | ||
| 1205 | "page" | ||
| 1206 | osamu | 8646 | msgstr "<ulink url=\"&debian-packages-git;\">debian packages in git</ulink>" |
| 1207 | osamu | 8601 | |
| 1208 | #. type: Content of: <book><chapter><section><para> | ||
| 1209 | osamu | 8646 | #, fuzzy |
| 1210 | osamu | 8653 | #| msgid "" |
| 1211 | #| "If the package already exists, well, install it! :-) If it happens to be " | ||
| 1212 | #| "<emphasis role=\"strong\">orphaned</emphasis> -- if its maintainer is set " | ||
| 1213 | #| "to <ulink url=\"&qa-do;\">Debian QA Group</ulink>, you may be able to " | ||
| 1214 | #| "pick it up if it's still available (check the ownership status at <ulink " | ||
| 1215 | #| "url=\"&wnpp-bts;\">Debian Bug report logs: Bugs in package wnpp in " | ||
| 1216 | #| "unstable</ulink>). You may also adopt a package for which the " | ||
| 1217 | #| "corresponding maintainer has filed a Request for Adoption (<emphasis role=" | ||
| 1218 | #| "\"strong\">RFA</emphasis>)." | ||
| 1219 | msgid "" | ||
| 1220 | "If the package already exists, well, install it! :-) If it happens to be " | ||
| 1221 | "<emphasis role=\"strong\">orphaned</emphasis> -- if its maintainer is set to " | ||
| 1222 | "<ulink url=\"&qa-do;\">Debian QA Group</ulink>, you may be able to pick it " | ||
| 1223 | "up if it's still available. You may also adopt a package for which the " | ||
| 1224 | "corresponding maintainer has filed a Request for Adoption (<emphasis role=" | ||
| 1225 | "\"strong\">RFA</emphasis>)." | ||
| 1226 | msgstr "" | ||
| 1227 | "如果套件已經存在,直接安裝就好了!:-) 如果它是被 <emphasis role=\"strong\">拋" | ||
| 1228 | "棄(orphaned)</emphasis> 的——也就是說它的維護者被設置爲 <ulink url=\"&qa-do;" | ||
| 1229 | "\">Debian QA Group</ulink>,那麼你可以嘗試接手維護它(在 <ulink url=\"&wnpp-" | ||
| 1230 | "bts;\">Debian Bug report logs: Bugs in package wnpp in unstable</ulink> 檢査" | ||
| 1231 | "它的維護者訊息)。你也可以“收養”維護者發出“Request for Adoption”(<emphasis " | ||
| 1232 | "role=\"strong\">RFA</emphasis>)請求的套件。" | ||
| 1233 | osamu | 8601 | |
| 1234 | #. type: Content of: <book><chapter><section><para> | ||
| 1235 | osamu | 8646 | #, fuzzy |
| 1236 | #| msgid "There are several role names used around Debian." | ||
| 1237 | osamu | 8648 | msgid "There are several package ownership status resources." |
| 1238 | osamu | 8646 | msgstr "在 Debian 社群中有幾個常見的角色。" |
| 1239 | osamu | 8601 | |
| 1240 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1241 | osamu | 8628 | msgid "<ulink url=\"&wnpp-do;\">Work-Needing and Prospective Packages</ulink>" |
| 1242 | msgstr "<ulink url=\"&wnpp-do;\">Work-Needing and Prospective Packages</ulink>" | ||
| 1243 | osamu | 8601 | |
| 1244 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1245 | osamu | 8646 | #, fuzzy |
| 1246 | osamu | 8653 | #| msgid "" |
| 1247 | #| "<ulink url=\"&wnpp-debtags;\">Browse WNPP bugs based on debtags</ulink>" | ||
| 1248 | msgid "" | ||
| 1249 | "<ulink url=\"&wnpp-bts;\">Debian Bug report logs: Bugs in package wnpp in " | ||
| 1250 | "unstable</ulink>" | ||
| 1251 | msgstr "" | ||
| 1252 | "<ulink url=\"&wnpp-debtags;\">Browse WNPP bugs based on debtags</ulink>" | ||
| 1253 | osamu | 8646 | |
| 1254 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1255 | osamu | 8628 | msgid "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>" |
| 1256 | msgstr "<ulink url=\"&wnpp-dn;\">Debian Packages that Need Lovin'</ulink>" | ||
| 1257 | osamu | 8601 | |
| 1258 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1259 | osamu | 8628 | msgid "<ulink url=\"&wnpp-debtags;\">Browse WNPP bugs based on debtags</ulink>" |
| 1260 | osamu | 8653 | msgstr "" |
| 1261 | "<ulink url=\"&wnpp-debtags;\">Browse WNPP bugs based on debtags</ulink>" | ||
| 1262 | osamu | 8601 | |
| 1263 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 1264 | osamu | 8653 | msgid "" |
| 1265 | "Having said that, there will of course always be new programs that are " | ||
| 1266 | "worthwhile packaging." | ||
| 1267 | osamu | 8601 | msgstr "當然,也一定總是有值得打包的新軟體。" |
| 1268 | |||
| 1269 | #. type: Content of: <book><chapter><section><para> | ||
| 1270 | osamu | 8653 | msgid "" |
| 1271 | "As a side note, it's important to point out that Debian already has packages " | ||
| 1272 | "for most kinds of programs, and the number of packages already in the Debian " | ||
| 1273 | "archive is much larger than that of contributors with upload rights. Thus, " | ||
| 1274 | "contributions to packages already in the archive are far more appreciated " | ||
| 1275 | "(and more likely to receive sponsorship) by other developers <placeholder " | ||
| 1276 | "type=\"footnote\" id=\"0\"/>. You can do that in various ways." | ||
| 1277 | msgstr "" | ||
| 1278 | "僅作爲一筆旁註,Debian 已經擁有了絕大多數類型軟體的套件,倉庫中套件的數量也遠" | ||
| 1279 | "遠超過了有上傳權限的貢獻者的數量。因此,爲已經在倉庫中的套件貢獻力量是非常受" | ||
| 1280 | "其他開發者歡迎的(且更容易獲得 sponsorship)<placeholder type=\"footnote\" id=" | ||
| 1281 | "\"0\"/>。你可以通過非常多的方式來實現這一目的。" | ||
| 1282 | osamu | 8601 | |
| 1283 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1284 | msgid "taking over orphaned, yet actively used, packages" | ||
| 1285 | msgstr "接手被拋棄而仍然被很多人使用的套件。" | ||
| 1286 | |||
| 1287 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1288 | osamu | 8628 | msgid "joining <ulink url=\"&teams;\">packaging teams</ulink>" |
| 1289 | msgstr "加入 <ulink url=\"&teams;\">打包小組</ulink>。" | ||
| 1290 | osamu | 8601 | |
| 1291 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1292 | msgid "triaging bugs of very popular packages" | ||
| 1293 | msgstr "爲某些常用的套件分類 Bug。" | ||
| 1294 | |||
| 1295 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1296 | osamu | 8628 | msgid "preparing <ulink url=\"&devref-nmu;\">QA or NMU uploads</ulink>" |
| 1297 | msgstr "在需要時準備 <ulink url=\"&devref-nmu;\">QA 或 NMU 上傳</ulink>。" | ||
| 1298 | osamu | 8601 | |
| 1299 | #. type: Content of: <book><chapter><section><para> | ||
| 1300 | osamu | 8653 | msgid "" |
| 1301 | "If you are able to adopt the package, get the sources (with something like " | ||
| 1302 | "<literal>apt-get source <replaceable>packagename</replaceable></literal>) " | ||
| 1303 | "and examine them. This document unfortunately doesn't include comprehensive " | ||
| 1304 | "information about adopting packages. Thankfully you shouldn't have a hard " | ||
| 1305 | "time figuring out how the package works since someone has already done the " | ||
| 1306 | "initial set up for you. Keep reading, though, a lot of the advice below " | ||
| 1307 | "will still be applicable for your case." | ||
| 1308 | msgstr "" | ||
| 1309 | "如果你有能力“收養”那個套件,下載(使用 <literal>apt-get source " | ||
| 1310 | "<replaceable>packagename</replaceable></literal> 或其他類似的工具)並分析它的" | ||
| 1311 | "程式碼。這篇文件沒有包含如何接手套件的詳細訊息,但幸運的是因爲接手套件時起始" | ||
| 1312 | "的工作已經有人完成,接手的工作應比從頭開始輕鬆得多。儘管如此,請繼續閱讀,下" | ||
| 1313 | "面給出的建議會對你很有幫助。" | ||
| 1314 | osamu | 8601 | |
| 1315 | #. type: Content of: <book><chapter><section><para> | ||
| 1316 | osamu | 8653 | msgid "" |
| 1317 | "If the package is new, and you decide you'd like to see it in Debian, " | ||
| 1318 | "proceed as follows:" | ||
| 1319 | msgstr "" | ||
| 1320 | "如果你要製作的套件是全新的,並且希望它出現在 Debian 中,請按照以下的步驟進" | ||
| 1321 | "行:" | ||
| 1322 | osamu | 8601 | |
| 1323 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1324 | osamu | 8653 | msgid "" |
| 1325 | "First, you must know that program works, and have tried it for some time to " | ||
| 1326 | "confirm its usefulness." | ||
| 1327 | osamu | 8601 | msgstr "首先,你必須知道這個軟體能夠工作,並且需要試用一段時間。" |
| 1328 | |||
| 1329 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1330 | osamu | 8646 | #, fuzzy |
| 1331 | osamu | 8653 | #| msgid "" |
| 1332 | #| "You must check if no one else is working on the package already at <ulink " | ||
| 1333 | #| "url=\"&wnpp-packaged;\">the list of packages being worked on</ulink>. If " | ||
| 1334 | #| "no one else is working on it, file an ITP (Intent To Package) bug report " | ||
| 1335 | #| "to the <systemitem role=\"package\">wnpp</systemitem> pseudo-package " | ||
| 1336 | #| "using <command>reportbug</command>. If someone's already on it, contact " | ||
| 1337 | #| "them if you feel you need to. If not - find another interesting program " | ||
| 1338 | #| "that nobody maintains." | ||
| 1339 | msgid "" | ||
| 1340 | "You must check if no one else is working on the package already at the " | ||
| 1341 | "<ulink url=\"&wnpp-do;\">Work-Needing and Prospective Packages</ulink> " | ||
| 1342 | "site. If no one else is working on it, file an ITP (Intent To Package) bug " | ||
| 1343 | "report to the <systemitem role=\"package\">wnpp</systemitem> pseudo-package " | ||
| 1344 | "using <command>reportbug</command>. If someone's already on it, contact " | ||
| 1345 | "them if you feel you need to. If not - find another interesting program " | ||
| 1346 | "that nobody maintains." | ||
| 1347 | msgstr "" | ||
| 1348 | "你必須在 <ulink url=\"&wnpp-do;being_packaged\">正在被處理的套件列表</ulink> " | ||
| 1349 | "上査看以確定沒有其他人已經開始了工作。如果沒有,則提交一份 ITP (Intent To " | ||
| 1350 | "Package) Bug 報告到 <systemitem role=\"package\">wnpp</systemitem> pseudo 套" | ||
| 1351 | "件(可以使用 <command>reportbug</command>)。如果已經有人在處理,則在需要的情況" | ||
| 1352 | "下聯繫他或他們。如果不需要你的幫助,就尋找其他你感興趣且沒有人維護的套件。" | ||
| 1353 | osamu | 8601 | |
| 1354 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1355 | msgid "That program <emphasis role=\"strong\">must have a license</emphasis>." | ||
| 1356 | msgstr "軟體 <emphasis role=\"strong\">必須有一個許可證</emphasis>。" | ||
| 1357 | |||
| 1358 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para> | ||
| 1359 | osamu | 8653 | msgid "" |
| 1360 | "For the <literal>main</literal> section, it <emphasis role=\"strong\">must " | ||
| 1361 | "be compliant to all the Debian Free Software Guidelines</emphasis> (<ulink " | ||
| 1362 | "url=\"&dfsg;\">DFSG</ulink>) and <emphasis role=\"strong\">that program " | ||
| 1363 | "must not require a package outside of <literal>main</literal></emphasis> for " | ||
| 1364 | "compilation or execution as required by the Debian Policy. This is desired " | ||
| 1365 | "case." | ||
| 1366 | osamu | 8619 | msgstr "" |
| 1367 | osamu | 8601 | |
| 1368 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para> | ||
| 1369 | osamu | 8653 | msgid "" |
| 1370 | "For the <literal>contrib</literal> section, it must be compliant to all the " | ||
| 1371 | "DFSG but it may require a package outside of <literal>main</literal> for " | ||
| 1372 | "compilation or execution." | ||
| 1373 | msgstr "" | ||
| 1374 | "對於 <literal>contrib</literal> 類的軟體,其許可證必須滿足 DFSG 的全部條件," | ||
| 1375 | "但可以依賴於 <literal>main</literal> 之外的套件以完成編譯或運行。" | ||
| 1376 | osamu | 8601 | |
| 1377 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><itemizedlist><listitem><para> | ||
| 1378 | osamu | 8653 | msgid "" |
| 1379 | "For the <literal>non-free</literal> section, it may not be compliant to some " | ||
| 1380 | "of the DFSG but it <emphasis role=\"strong\">must be distributable</" | ||
| 1381 | "emphasis>." | ||
| 1382 | msgstr "" | ||
| 1383 | "對於 <literal>non-free</literal> 類的軟體,其許可證可以不滿足 DFSG 中的一些條" | ||
| 1384 | "件,但至少需要是 <emphasis role=\"strong\">可以散佈的</emphasis>。" | ||
| 1385 | osamu | 8601 | |
| 1386 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1387 | osamu | 8653 | msgid "" |
| 1388 | "If you are unsure about where it should go, post the license text on <ulink " | ||
| 1389 | "url=\"&debian-legal-ldo;\">debian-legal@lists.debian.org</ulink> and ask for " | ||
| 1390 | "advice." | ||
| 1391 | msgstr "" | ||
| 1392 | "如果你不清楚你的軟體應該分入哪一類,則把許可證文本發送到 <ulink url=" | ||
| 1393 | "\"&debian-legal-ldo;\">debian-legal@lists.debian.org</ulink> 請他人提出意見。" | ||
| 1394 | osamu | 8601 | |
| 1395 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1396 | osamu | 8653 | msgid "" |
| 1397 | "That program certainly should <emphasis role=\"strong\">not</emphasis> run " | ||
| 1398 | "setuid root, or even better - it shouldn't need to be setuid or setgid to " | ||
| 1399 | "anything." | ||
| 1400 | msgstr "" | ||
| 1401 | "程式 <emphasis role=\"strong\">不應該</emphasis> setuid 到 root,甚至可以更好" | ||
| 1402 | "——不 setuid 或 setgid 到任何用戶或組。" | ||
| 1403 | osamu | 8601 | |
| 1404 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1405 | osamu | 8653 | msgid "" |
| 1406 | "That program should not be a daemon, or something that goes in <filename>*/" | ||
| 1407 | "sbin</filename> directories, or open a port as root." | ||
| 1408 | msgstr "" | ||
| 1409 | "這個程式不應該是守護進程,也不應該安裝檔案到 <filename>*/sbin</filename> 目錄" | ||
| 1410 | "或者以 root 打開任何端口。" | ||
| 1411 | osamu | 8601 | |
| 1412 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1413 | osamu | 8653 | msgid "" |
| 1414 | "That program should result in binary executable form, libraries are harder " | ||
| 1415 | "to handle." | ||
| 1416 | osamu | 8601 | msgstr "程式應當最終以二進位可執行程式的形式呈現,函式庫則較難處理。" |
| 1417 | |||
| 1418 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1419 | osamu | 8653 | msgid "" |
| 1420 | "That program should be well documented and its code needs to be " | ||
| 1421 | "understandable (i.e. not obfuscated)." | ||
| 1422 | osamu | 8601 | msgstr "程式應當有很好的文件,最好原始碼也容易理解(比如不混亂)。" |
| 1423 | |||
| 1424 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 1425 | osamu | 8653 | msgid "" |
| 1426 | "You should contact program's author(s) to check if they agree with packaging " | ||
| 1427 | "it and amicable to Debian. It is important to be able to consult with author" | ||
| 1428 | "(s) about the program in case of any program specific problems, so don't " | ||
| 1429 | "try to package unmaintained pieces of software." | ||
| 1430 | msgstr "" | ||
| 1431 | "你應該與程式的作者取得聯繫問一下他是否認爲程式應當被打包,以及他是否對 " | ||
| 1432 | "Debian 友好。能夠詢問作者關於程式的任何問題是非常重要的,不要嘗試打包一個無人" | ||
| 1433 | "維護的軟體。" | ||
| 1434 | osamu | 8601 | |
| 1435 | #. type: Content of: <book><chapter><section><para> | ||
| 1436 | osamu | 8646 | #, fuzzy |
| 1437 | osamu | 8653 | #| msgid "" |
| 1438 | #| "Of course, these things are just safety measures, and intended to save " | ||
| 1439 | #| "you from raging users if you do something wrong in some setuid daemon... " | ||
| 1440 | #| "When you gain some more experience in packaging, you'll be able to do " | ||
| 1441 | #| "such packages, but even the experienced developers consult the <ulink url=" | ||
| 1442 | #| "\"&debian-mentors-ldo;\">debian-mentors@lists.debian.org</ulink> mailing " | ||
| 1443 | #| "list when they are in doubt. And people there will gladly help." | ||
| 1444 | msgid "" | ||
| 1445 | "Of course, these things are just safety measures, and intended to save you " | ||
| 1446 | "from raging users if you do something wrong in some setuid daemon... When " | ||
| 1447 | "you gain some more experience in packaging, you'll be able to package such " | ||
| 1448 | "packages." | ||
| 1449 | msgstr "" | ||
| 1450 | "當然,這些問題都只是爲了安全,並試圖讓你不至於在比如 setuid 守護進程等問題上" | ||
| 1451 | "犯錯誤而激怒了用戶... 當你在打包方面有了更多經驗時,就可以處理這些套件了。但" | ||
| 1452 | "即便是富有經驗的開發人員在遇到疑惑時也會發郵件到 <ulink url=\"&debian-" | ||
| 1453 | "mentors-ldo;\">debian-mentors@lists.debian.org</ulink> 郵件列表諮詢,那裏的人" | ||
| 1454 | "會很樂意提供幫助。" | ||
| 1455 | osamu | 8601 | |
| 1456 | #. type: Content of: <book><chapter><section><title> | ||
| 1457 | msgid "Get the program, and try it out" | ||
| 1458 | msgstr "獲得程式,並且試用它" | ||
| 1459 | |||
| 1460 | #. type: Content of: <book><chapter><section><para> | ||
| 1461 | osamu | 8653 | msgid "" |
| 1462 | "So the first thing to do is to find and download the original source code. " | ||
| 1463 | "I presume that you already have the source file that you picked up at the " | ||
| 1464 | "author's homepage. Sources for free Unix programs usually come in " | ||
| 1465 | "<command>tar</command>+<command>gzip</command> format with extension " | ||
| 1466 | "<filename>.tar.gz</filename>, or <command>tar</command>+<command>bzip2</" | ||
| 1467 | "command> format with extension <filename>.tar.bz2</filename>. These usually " | ||
| 1468 | "contain the subdirectory called <filename><replaceable>programname</" | ||
| 1469 | "replaceable>-<replaceable>version</replaceable></filename> in them and all " | ||
| 1470 | "the sources under it." | ||
| 1471 | msgstr "" | ||
| 1472 | "第一件要做的事就是找到並下載原始的原始碼。我假定你已經從作者的首頁上找到了它" | ||
| 1473 | "的原始碼。Unix 下的自由軟體原始碼通常是以 <command>tar</command>" | ||
| 1474 | "+<command>gzip</command> 格式(副檔名爲 <filename>.tar.gz</filename>)或 " | ||
| 1475 | "<command>tar</command>+<command>bzip2</command> 格式(副檔名爲 <filename>.tar." | ||
| 1476 | "bz2</filename>)的形式提供的。通常壓縮檔中包含了一個名爲 " | ||
| 1477 | "<filename><replaceable>programname</replaceable>-<replaceable>version</" | ||
| 1478 | "replaceable></filename> 的子目錄,裏面包含了全部的原始碼。" | ||
| 1479 | osamu | 8601 | |
| 1480 | #. type: Content of: <book><chapter><section><para> | ||
| 1481 | osamu | 8653 | msgid "" |
| 1482 | "If the latest version of such sources are available through VCS such as Git, " | ||
| 1483 | "Subversion, or CVS repository, you need to get it with <literal>git clone</" | ||
| 1484 | "literal>, <literal>svn co</literal>, or <literal>cvs co</literal> and repack " | ||
| 1485 | "it into <command>tar</command>+<command>gzip</command> format by yourself " | ||
| 1486 | "using the <literal>--exclude-vcs</literal> option." | ||
| 1487 | osamu | 8619 | msgstr "" |
| 1488 | osamu | 8601 | |
| 1489 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 1490 | osamu | 8653 | msgid "" |
| 1491 | "You can identify the archive format using the <command>file</command> " | ||
| 1492 | "command when the file extension is not enough." | ||
| 1493 | msgstr "" | ||
| 1494 | "當檔案副檔名不足以判斷檔案類型時,可以使用 <command>file</command> 命令來判" | ||
| 1495 | "斷。" | ||
| 1496 | osamu | 8601 | |
| 1497 | #. type: Content of: <book><chapter><section><para> | ||
| 1498 | osamu | 8653 | msgid "" |
| 1499 | "If your program's source comes as some other sort of archive (for instance, " | ||
| 1500 | "the filename ends in <filename>.Z</filename> or <filename>.zip</" | ||
| 1501 | "filename><placeholder type=\"footnote\" id=\"0\"/>), unpack it with " | ||
| 1502 | "appropriate tools and repack it, too." | ||
| 1503 | msgstr "" | ||
| 1504 | "如果你的程式原始碼是以其他形式提供的(比如檔案名以 <filename>.Z</filename> 或 " | ||
| 1505 | "<filename>.zip</filename> 結尾<placeholder type=\"footnote\" id=\"0\"/>),則" | ||
| 1506 | "使用合適的工具將其解壓縮,再重新打包。" | ||
| 1507 | osamu | 8601 | |
| 1508 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 1509 | osamu | 8646 | #, fuzzy |
| 1510 | osamu | 8653 | #| msgid "" |
| 1511 | #| "This program is already packaged. Current version 0.15.3 has changed " | ||
| 1512 | #| "substantially from the version 0.9.12 in the following examples." | ||
| 1513 | msgid "" | ||
| 1514 | "This program is already packaged. Its <ulink url=\"&gentoo-package;" | ||
| 1515 | "\">current version</ulink> uses Autotools as its build structure and is " | ||
| 1516 | "substantially different from the following examples based on the version " | ||
| 1517 | "0.9.12." | ||
| 1518 | msgstr "" | ||
| 1519 | "需要注意的是,這個程式已經被打包好了,並且從寫這篇文件之初到現在它已經發生了" | ||
| 1520 | "很大的變化。" | ||
| 1521 | osamu | 8601 | |
| 1522 | #. type: Content of: <book><chapter><section><para> | ||
| 1523 | osamu | 8648 | #, fuzzy |
| 1524 | osamu | 8653 | #| msgid "" |
| 1525 | #| "As an example, I'll use a program called <command>gentoo</command>, an X " | ||
| 1526 | #| "GTK+ file manager.<placeholder type=\"footnote\" id=\"0\"/>" | ||
| 1527 | msgid "" | ||
| 1528 | "As an example, I'll use a program called <command>gentoo</command>, an X GTK" | ||
| 1529 | "+ file manager. <placeholder type=\"footnote\" id=\"0\"/>" | ||
| 1530 | msgstr "" | ||
| 1531 | "作爲範例,我將使用一個名爲 <command>gentoo</command> 的程式,它是一個 X GTK+ " | ||
| 1532 | "檔案管理器。<placeholder type=\"footnote\" id=\"0\"/>" | ||
| 1533 | osamu | 8601 | |
| 1534 | #. type: Content of: <book><chapter><section><para> | ||
| 1535 | osamu | 8653 | msgid "" |
| 1536 | "Create a subdirectory under your home directory named <filename>debian</" | ||
| 1537 | "filename> or <filename>deb</filename> or anything you find appropriate (e." | ||
| 1538 | "g. just <filename>~/gentoo</filename> would do fine in this case). Place " | ||
| 1539 | "the downloaded archive in it, and extract it (with <literal>tar xzf " | ||
| 1540 | "gentoo-0.9.12.tar.gz</literal>). Make sure there are no errors, even some " | ||
| 1541 | "<emphasis>irrelevant</emphasis> ones, because there will most probably be " | ||
| 1542 | "problems unpacking on other people's systems, whose unpacking tools may or " | ||
| 1543 | "may not ignore those anomalies. On your console screen, you should see the " | ||
| 1544 | "following." | ||
| 1545 | msgstr "" | ||
| 1546 | "在你的用戶主目錄下創建一個子目錄,命名爲 <filename>debian</filename> 或 " | ||
| 1547 | "<filename>deb</filename> 或任意你覺得合適的其他名字(本例中使用 <filename>~/" | ||
| 1548 | "gentoo</filename>)。把下載好的壓縮檔放在其中並解壓縮(使用 <literal>tar xzf " | ||
| 1549 | "gentoo-0.9.12.tar.gz</literal> 命令)。要確定解壓縮過程中沒有發生錯誤,即便是" | ||
| 1550 | "有一點 <emphasis>不恰當</emphasis> 也不行,因爲在別人的系統上解壓縮這些檔案" | ||
| 1551 | "時,如果他們的工具並不忽略這些反常的現象就會出現問題。在你的終端螢幕上,應該" | ||
| 1552 | "看到如下的情形。" | ||
| 1553 | osamu | 8601 | |
| 1554 | #. type: Content of: <book><chapter><section><screen> | ||
| 1555 | #, no-wrap | ||
| 1556 | msgid "" | ||
| 1557 | "$ mkdir ~/gentoo ; cd ~/gentoo\n" | ||
| 1558 | "$ wget http://<replaceable>www.example.org</replaceable>/gentoo-0.9.12.tar.gz\n" | ||
| 1559 | "$ tar xvzf gentoo-0.9.12.tar.gz\n" | ||
| 1560 | "$ ls -F\n" | ||
| 1561 | "gentoo-0.9.12/\n" | ||
| 1562 | "gentoo-0.9.12.tar.gz\n" | ||
| 1563 | msgstr "" | ||
| 1564 | "$ mkdir ~/gentoo ; cd ~/gentoo\n" | ||
| 1565 | "$ wget http://<replaceable>www.example.org</replaceable>/gentoo-0.9.12.tar.gz\n" | ||
| 1566 | "$ tar xvzf gentoo-0.9.12.tar.gz\n" | ||
| 1567 | "$ ls -F\n" | ||
| 1568 | "gentoo-0.9.12/\n" | ||
| 1569 | "gentoo-0.9.12.tar.gz\n" | ||
| 1570 | |||
| 1571 | #. type: Content of: <book><chapter><section><para> | ||
| 1572 | osamu | 8653 | msgid "" |
| 1573 | "Now you have another subdirectory, called <filename>gentoo-0.9.12</" | ||
| 1574 | "filename>. Change to that directory and <emphasis>thoroughly</emphasis> " | ||
| 1575 | "read the provided documentation. Usually there are files named " | ||
| 1576 | "<filename>README*</filename>, <filename>INSTALL*</filename>, <filename>*." | ||
| 1577 | "lsm</filename> or <filename>*.html</filename>. You must find instructions " | ||
| 1578 | "on how to correctly compile and install the program (most probably they'll " | ||
| 1579 | "assume you want to install to <filename>/usr/local/bin</filename> directory; " | ||
| 1580 | "you won't be doing that, but more on that later in <xref linkend=\"destdir\"/" | ||
| 1581 | "> )." | ||
| 1582 | msgstr "" | ||
| 1583 | "現在又有了一個新的子目錄,名爲 <filename>gentoo-0.9.12</filename>。進入該目錄" | ||
| 1584 | "並 <emphasis>徹底</emphasis> 讀完其中的文件。通常情況下這些文件被命名爲 " | ||
| 1585 | "<filename>README*</filename>、<filename>INSTALL*</filename>、<filename>*." | ||
| 1586 | "lsm</filename> 或 <filename>*.html</filename>。你必須找到關於如何正確編譯和安" | ||
| 1587 | "裝程式的指導(最可能的是他們會默認你希望把程式安裝到 <filename>/usr/local/" | ||
| 1588 | "bin</filename> 目錄,但事實上你不能那樣做,詳細的內容稍後將在 <xref linkend=" | ||
| 1589 | "\"destdir\"/> 中說明)。" | ||
| 1590 | osamu | 8601 | |
| 1591 | osamu | 8646 | #. type: Content of: <book><chapter><section><para><footnote><para> |
| 1592 | osamu | 8653 | msgid "" |
| 1593 | "Many modern programs come with a script <filename>configure</filename> which " | ||
| 1594 | "creates a <filename>Makefile</filename> file customized for your system upon " | ||
| 1595 | "its execution." | ||
| 1596 | osamu | 8646 | msgstr "" |
| 1597 | |||
| 1598 | osamu | 8601 | #. type: Content of: <book><chapter><section><para> |
| 1599 | osamu | 8646 | #, fuzzy |
| 1600 | osamu | 8653 | #| msgid "" |
| 1601 | #| "Simple programs come with a <filename>Makefile</filename> file in them " | ||
| 1602 | #| "and can be compiled simply with <literal>make</literal>. Some of them " | ||
| 1603 | #| "support <literal>make check</literal>, which runs included self-checks. " | ||
| 1604 | #| "Installation to the destination directories is usually done with " | ||
| 1605 | #| "<literal>make install</literal>." | ||
| 1606 | msgid "" | ||
| 1607 | "Simple programs come with a <filename>Makefile</filename> file in them and " | ||
| 1608 | "can be compiled simply with <literal>make</literal>.<placeholder type=" | ||
| 1609 | "\"footnote\" id=\"0\"/> Some of them support <literal>make check</literal>, " | ||
| 1610 | "which runs included self-checks. Installation to the destination " | ||
| 1611 | "directories is usually done with <literal>make install</literal>." | ||
| 1612 | msgstr "" | ||
| 1613 | "帶有 <filename>Makefile</filename> 檔案的簡單程式可以很容易地使用 " | ||
| 1614 | "<literal>make</literal> 來編譯。其中的一些還支持 <literal>make check</" | ||
| 1615 | "literal>,可以完成一系列自身測試。編譯好後可以使用 <literal>make install</" | ||
| 1616 | "literal> 來將程式安裝到目標目錄。" | ||
| 1617 | osamu | 8601 | |
| 1618 | #. type: Content of: <book><chapter><section><para> | ||
| 1619 | osamu | 8653 | msgid "" |
| 1620 | "Now try to compile and run your program, to make sure it works properly and " | ||
| 1621 | "doesn't break something else while it's installing or running." | ||
| 1622 | msgstr "" | ||
| 1623 | "現在嘗試編譯和運行你的程式,確保它工作正常,且在安裝和運行時不會導致其他問" | ||
| 1624 | "題。" | ||
| 1625 | osamu | 8601 | |
| 1626 | #. type: Content of: <book><chapter><section><para> | ||
| 1627 | osamu | 8653 | msgid "" |
| 1628 | "Also, you can usually run <literal>make clean</literal> (or better " | ||
| 1629 | "<literal>make distclean</literal>) to clean up the build directory. " | ||
| 1630 | "Sometimes there's even a <literal>make uninstall</literal> which can be used " | ||
| 1631 | "to remove all the installed files." | ||
| 1632 | msgstr "" | ||
| 1633 | "你還可以運行 <literal>make clean</literal> (或更好的 <literal>make " | ||
| 1634 | "distclean</literal>)來清理編譯目錄。有時還會帶有 <literal>make uninstall</" | ||
| 1635 | "literal> 用以反安裝已經安裝了的檔案。" | ||
| 1636 | osamu | 8601 | |
| 1637 | #. type: Content of: <book><chapter><section><title> | ||
| 1638 | msgid "Free portable programs" | ||
| 1639 | msgstr "自由的可移植程式" | ||
| 1640 | |||
| 1641 | #. type: Content of: <book><chapter><section><para> | ||
| 1642 | osamu | 8646 | #, fuzzy |
| 1643 | osamu | 8653 | #| msgid "" |
| 1644 | #| "A lot of Free programs are written in the <ulink url=\"&cxx;_" | ||
| 1645 | #| "(programming_language)\">C</ulink> and <ulink url=\"&cxx;++\">C++</ulink> " | ||
| 1646 | #| "languages. Many of these use Autotools or CMake to make them portable " | ||
| 1647 | #| "across different platforms. These tools are used to generate " | ||
| 1648 | #| "<filename>Makefile</filename> and other required source files. Then, " | ||
| 1649 | #| "such programs are built with usual <literal>make; make install</literal>." | ||
| 1650 | msgid "" | ||
| 1651 | "A lot of Free programs are written in the <ulink url=\"&c-program;\">C</" | ||
| 1652 | "ulink> and <ulink url=\"&cxx;\">C++</ulink> languages. Many of these use " | ||
| 1653 | "Autotools or CMake to make them portable across different platforms. These " | ||
| 1654 | "tools are used to generate <filename>Makefile</filename> and other required " | ||
| 1655 | "source files. Then, such programs are built with usual <literal>make; make " | ||
| 1656 | "install</literal>." | ||
| 1657 | msgstr "" | ||
| 1658 | "非常多的自由軟體是使用 <ulink url=\"&cxx;_(programming_language)\">C</ulink> " | ||
| 1659 | "和 <ulink url=\"&cxx;++\">C++</ulink> 語言編寫的。其中的有很多使用 Autotools " | ||
| 1660 | "或 CMake 來使其可以在不同平臺上移植。這些工具被用於生成 <filename>Makefile</" | ||
| 1661 | "filename> 和其他必須的源檔案,然後這些程式可以使用正常的 <literal>make; make " | ||
| 1662 | "install</literal> 來編譯和安裝。" | ||
| 1663 | osamu | 8601 | |
| 1664 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 1665 | osamu | 8646 | #, fuzzy |
| 1666 | osamu | 8653 | #| msgid "" |
| 1667 | #| "See <ulink url=\"&autotools-tutorial;\">Autotools Tutorial</ulink> and " | ||
| 1668 | #| "<filename>/usr/share/doc/autotools-dev/README.Debian.gz</filename>." | ||
| 1669 | msgid "" | ||
| 1670 | "See <ulink url=\"&autotools-tutorial;\">Autotools Tutorial</ulink> and " | ||
| 1671 | "<ulink url=\"&autotools-readme;\"/>." | ||
| 1672 | msgstr "" | ||
| 1673 | "參考 <ulink url=\"&autotools-tutorial;\">Autotools Tutorial</ulink> 和 " | ||
| 1674 | "<filename>/usr/share/doc/autotools-dev/README.Debian.gz</filename>。" | ||
| 1675 | osamu | 8601 | |
| 1676 | #. type: Content of: <book><chapter><section><para> | ||
| 1677 | osamu | 8653 | msgid "" |
| 1678 | "<ulink url=\"&gnu-build-system;\">Autotools</ulink> are the GNU build system " | ||
| 1679 | "comprising <ulink url=\"&autoconf;\">Autoconf</ulink>, <ulink url=" | ||
| 1680 | "\"&automake;\">Automake</ulink>, <ulink url=\"&libtool;\">Libtool</ulink>, " | ||
| 1681 | "and <ulink url=\"&gettext;\">gettext</ulink>. You can notice such sources " | ||
| 1682 | "by the <filename>configure.ac</filename>, <filename>Makefile.am</filename>, " | ||
| 1683 | "and <filename>Makefile.in</filename> files. <placeholder type=\"footnote\" " | ||
| 1684 | "id=\"0\"/>" | ||
| 1685 | msgstr "" | ||
| 1686 | "<ulink url=\"&gnu-build-system;\">Autotools</ulink> 是 GNU 編譯系統工具,包" | ||
| 1687 | "括 <ulink url=\"&autoconf;\">Autoconf</ulink>、<ulink url=\"&automake;" | ||
| 1688 | "\">Automake</ulink>、<ulink url=\"&libtool;\">Libtool</ulink> 和 <ulink url=" | ||
| 1689 | "\"&gettext;\">gettext</ulink>。你可以通過 <filename>configure.ac</filename>、" | ||
| 1690 | "<filename>Makefile.am</filename> 和 <filename>Makefile.in</filename> 等檔案來" | ||
| 1691 | "識別這種類型的原始碼。<placeholder type=\"footnote\" id=\"0\"/>" | ||
| 1692 | osamu | 8601 | |
| 1693 | #. type: Content of: <book><chapter><section><para> | ||
| 1694 | osamu | 8653 | msgid "" |
| 1695 | "The first step of Autotools work flow is usually that the upstream runs " | ||
| 1696 | "<literal>autoreconf -i -f</literal> in the source and distributes this " | ||
| 1697 | "source with generated files." | ||
| 1698 | msgstr "" | ||
| 1699 | "使用 Autotools 的第一步是上游作者在程式碼中運行 <literal>autoreconf -i -f</" | ||
| 1700 | "literal> 並把生成的檔案同原始碼一起散佈。" | ||
| 1701 | osamu | 8601 | |
| 1702 | #. type: Content of: <book><chapter><section><screen> | ||
| 1703 | #, no-wrap | ||
| 1704 | msgid "" | ||
| 1705 | "configure.ac-----+-> autoreconf -+-> configure\n" | ||
| 1706 | "Makefile.am -----+ | +-> Makefile.in\n" | ||
| 1707 | "src/Makefile.am -+ | +-> src/Makefile.in\n" | ||
| 1708 | " | +-> config.h.in\n" | ||
| 1709 | " automake\n" | ||
| 1710 | " aclocal\n" | ||
| 1711 | " aclocal.m4\n" | ||
| 1712 | " autoheader\n" | ||
| 1713 | msgstr "" | ||
| 1714 | "configure.ac-----+-> autoreconf -+-> configure\n" | ||
| 1715 | "Makefile.am -----+ | +-> Makefile.in\n" | ||
| 1716 | "src/Makefile.am -+ | +-> src/Makefile.in\n" | ||
| 1717 | " | +-> config.h.in\n" | ||
| 1718 | " automake\n" | ||
| 1719 | " aclocal\n" | ||
| 1720 | " aclocal.m4\n" | ||
| 1721 | " autoheader\n" | ||
| 1722 | |||
| 1723 | #. type: Content of: <book><chapter><section><para> | ||
| 1724 | osamu | 8653 | msgid "" |
| 1725 | "Editing <filename>configure.ac</filename> and <filename>Makefile.am</" | ||
| 1726 | "filename> files requires some knowledge of <command>autoconf</command> and " | ||
| 1727 | "<command>automake</command>. See <literal>info autoconf</literal> and " | ||
| 1728 | "<literal>info automake</literal>." | ||
| 1729 | msgstr "" | ||
| 1730 | "編輯 <filename>configure.ac</filename> 和 <filename>Makefile.am</filename> 等" | ||
| 1731 | "檔案需要一些關於 <command>autoconf</command> 和 <command>automake</command> " | ||
| 1732 | "的知識。參考 <literal>info autoconf</literal> 和 <literal>info automake</" | ||
| 1733 | "literal>。" | ||
| 1734 | osamu | 8601 | |
| 1735 | #. type: Content of: <book><chapter><section><para> | ||
| 1736 | osamu | 8653 | msgid "" |
| 1737 | "The second step of Autotools work flow is usually that the user obtains this " | ||
| 1738 | "distributed source and runs <literal>./configure && make</literal> " | ||
| 1739 | "in the source to compile program into a <command><replaceable>binary</" | ||
| 1740 | "replaceable></command>." | ||
| 1741 | msgstr "" | ||
| 1742 | "使用 Autotools 的流程第二部是用戶獲得散佈的原始碼後在原始碼中運行 <literal>./" | ||
| 1743 | "configure && make</literal> 並將其編譯成爲 " | ||
| 1744 | "<command><replaceable>binary</replaceable></command> (二進位程式)。" | ||
| 1745 | osamu | 8601 | |
| 1746 | #. type: Content of: <book><chapter><section><screen> | ||
| 1747 | #, no-wrap | ||
| 1748 | msgid "" | ||
| 1749 | "Makefile.in -----+ +-> Makefile -----+-> make -> <replaceable>binary</replaceable>\n" | ||
| 1750 | "src/Makefile.in -+-> ./configure -+-> src/Makefile -+\n" | ||
| 1751 | "config.h.in -----+ +-> config.h -----+\n" | ||
| 1752 | " |\n" | ||
| 1753 | " config.status -+\n" | ||
| 1754 | " config.guess --+\n" | ||
| 1755 | msgstr "" | ||
| 1756 | "Makefile.in -----+ +-> Makefile -----+-> make -> <replaceable>binary</replaceable>\n" | ||
| 1757 | "src/Makefile.in -+-> ./configure -+-> src/Makefile -+\n" | ||
| 1758 | "config.h.in -----+ +-> config.h -----+\n" | ||
| 1759 | " |\n" | ||
| 1760 | " config.status -+\n" | ||
| 1761 | " config.guess --+\n" | ||
| 1762 | |||
| 1763 | #. type: Content of: <book><chapter><section><para> | ||
| 1764 | osamu | 8653 | msgid "" |
| 1765 | "You can change many things in the <filename>Makefile</filename> file such as " | ||
| 1766 | "the default file install location using the command option, e.g. <command>./" | ||
| 1767 | "configure --prefix=/usr</command>." | ||
| 1768 | msgstr "" | ||
| 1769 | "你可以通過命令選項來改變 <filename>Makefile</filename> 檔案中的很多設置,比如" | ||
| 1770 | "默認的檔案安裝位置(使用 <command>./configure --prefix=/usr</command>)。" | ||
| 1771 | osamu | 8601 | |
| 1772 | osamu | 8646 | #. type: Content of: <book><chapter><section><para><footnote><para> |
| 1773 | #, fuzzy | ||
| 1774 | osamu | 8653 | #| msgid "" |
| 1775 | #| "Install the <systemitem role=\"package\">dh-autoreconf</systemitem> " | ||
| 1776 | #| "package in <literal>Build-Depends</literal>." | ||
| 1777 | msgid "" | ||
| 1778 | "You can automate this by using <systemitem role=\"package\">dh_autoreconf</" | ||
| 1779 | "systemitem> package. See <xref linkend=\"customrules\"/>." | ||
| 1780 | msgstr "" | ||
| 1781 | "在 <literal>Build-Depends</literal> 中添加 <systemitem role=\"package\">dh-" | ||
| 1782 | "autoreconf</systemitem> 套件。" | ||
| 1783 | osamu | 8646 | |
| 1784 | osamu | 8601 | #. type: Content of: <book><chapter><section><para> |
| 1785 | osamu | 8646 | #, fuzzy |
| 1786 | osamu | 8653 | #| msgid "" |
| 1787 | #| "Although it is not required, updating the <filename>configure</filename> " | ||
| 1788 | #| "and other files with <literal>autoreconf -i -f</literal> as the user may " | ||
| 1789 | #| "improve the compatibility of the source." | ||
| 1790 | msgid "" | ||
| 1791 | "Although it is not required, updating the <filename>configure</filename> and " | ||
| 1792 | "other files with <literal>autoreconf -i -f</literal> as the user may improve " | ||
| 1793 | "the compatibility of the source. <placeholder type=\"footnote\" id=\"0\"/>" | ||
| 1794 | msgstr "" | ||
| 1795 | "儘管不是必須的,還可以使用 <literal>autoreconf -i -f</literal> 更新 " | ||
| 1796 | "<filename>configure</filename> 和其他相關檔案,這樣做可能提高原始碼的兼容性。" | ||
| 1797 | osamu | 8601 | |
| 1798 | #. type: Content of: <book><chapter><section><para> | ||
| 1799 | osamu | 8646 | #, fuzzy |
| 1800 | osamu | 8653 | #| msgid "" |
| 1801 | #| "<ulink url=\"&cxx;Make\">CMake</ulink> is an alternative build system. " | ||
| 1802 | #| "You can notice such sources by the <filename>CMakeLists.txt</filename> " | ||
| 1803 | #| "file." | ||
| 1804 | msgid "" | ||
| 1805 | "<ulink url=\"&cmake;\">CMake</ulink> is an alternative build system. You " | ||
| 1806 | "can notice such sources by the <filename>CMakeLists.txt</filename> file." | ||
| 1807 | msgstr "" | ||
| 1808 | "<ulink url=\"&cxx;Make\">CMake</ulink> 是另一個可選的編譯系統,可以通過 " | ||
| 1809 | "<filename>CMakeLists.txt</filename> 檔案來識別它。" | ||
| 1810 | osamu | 8601 | |
| 1811 | #. type: Content of: <book><chapter><section><title> | ||
| 1812 | msgid "Package name and version" | ||
| 1813 | msgstr "套件名稱和版本" | ||
| 1814 | |||
| 1815 | #. type: Content of: <book><chapter><section><para> | ||
| 1816 | osamu | 8653 | msgid "" |
| 1817 | "You should start packaging with a completely clean (pristine) source " | ||
| 1818 | "directory, or simply with freshly unpacked sources." | ||
| 1819 | msgstr "" | ||
| 1820 | "開始打包時原始碼目錄應當是絕對乾淨(原始)的,或者直接使用剛剛解壓縮得到的原始" | ||
| 1821 | "碼。" | ||
| 1822 | osamu | 8601 | |
| 1823 | #. type: Content of: <book><chapter><section><para> | ||
| 1824 | osamu | 8653 | msgid "" |
| 1825 | "For the package to be built correctly, you must make the program's original " | ||
| 1826 | "name lowercase (if it isn't already), and you should move the source " | ||
| 1827 | "directory to <filename><replaceable>packagename</replaceable>-" | ||
| 1828 | "<replaceable>version</replaceable></filename>." | ||
| 1829 | msgstr "" | ||
| 1830 | "爲了讓套件可以正確地編譯和構建,如果程式原有的名字不是完全小寫的則必須將其改" | ||
| 1831 | "成小寫,並且應當把原始碼以 <filename><replaceable>packagename</replaceable>-" | ||
| 1832 | "<replaceable>version</replaceable></filename> 的形式命名。" | ||
| 1833 | osamu | 8601 | |
| 1834 | #. type: Content of: <book><chapter><section><para> | ||
| 1835 | osamu | 8653 | msgid "" |
| 1836 | "If the program name consists of more than one word, contract them to one " | ||
| 1837 | "word, or make an abbreviation. For example, program John's little editor " | ||
| 1838 | "for X package would be named <systemitem role=\"package\">johnledx</" | ||
| 1839 | "systemitem>, or <systemitem role=\"package\">jle4x</systemitem>, or whatever " | ||
| 1840 | "you decide, as long as it's under some reasonable limit, e.g. 20 characters." | ||
| 1841 | msgstr "" | ||
| 1842 | "如果程式的名稱超過一個單詞,把它改成一個單詞或縮寫成合適的形式。例如,程" | ||
| 1843 | "式“John's little editor for X”可以命名爲 <systemitem role=\"package" | ||
| 1844 | "\">johnledx</systemitem> 或 <systemitem role=\"package\">jle4x</systemitem>," | ||
| 1845 | "或者隨便你認爲合適的其他名字。它需要符合一定的限制,比如長度不要超過 20 和字" | ||
| 1846 | "符。" | ||
| 1847 | osamu | 8601 | |
| 1848 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 1849 | osamu | 8653 | msgid "" |
| 1850 | "Version string can be compared by <literal>dpkg --compare-versions " | ||
| 1851 | "<replaceable>ver1</replaceable> <replaceable>op</replaceable> " | ||
| 1852 | "<replaceable>ver2</replaceable></literal>. See <citerefentry> " | ||
| 1853 | "<refentrytitle>dpkg</refentrytitle> <manvolnum>1</manvolnum> </citerefentry> " | ||
| 1854 | "manpage." | ||
| 1855 | msgstr "" | ||
| 1856 | "Version 字符串可以用 <literal>dpkg --compare-versions <replaceable>ver1</" | ||
| 1857 | "replaceable> <replaceable>op</replaceable> <replaceable>ver2</replaceable></" | ||
| 1858 | "literal> 命令比較。參考 <citerefentry> <refentrytitle>dpkg</refentrytitle> " | ||
| 1859 | "<manvolnum>1</manvolnum> </citerefentry> man 手冊頁。" | ||
| 1860 | osamu | 8601 | |
| 1861 | #. type: Content of: <book><chapter><section><para> | ||
| 1862 | osamu | 8653 | msgid "" |
| 1863 | "Also check for the exact version of the program (to be included in the " | ||
| 1864 | "package version). If that piece of software is not numbered with versions " | ||
| 1865 | "like <literal>X.Y.Z</literal>, but with some kind of date, feel free to use " | ||
| 1866 | "that date as the version number, as long as newer version numbers will look " | ||
| 1867 | "larger. While it is best to use the same version number as what upstream " | ||
| 1868 | "uses, if it is in the format of <literal>09Oct23</literal> you may need to " | ||
| 1869 | "convert it to <literal>YYYYMMDD</literal> format, which would be " | ||
| 1870 | "<literal>20091023</literal>, to ensure proper order for upgrade with the " | ||
| 1871 | "<command>dpkg</command> program.<placeholder type=\"footnote\" id=\"0\"/>" | ||
| 1872 | msgstr "" | ||
| 1873 | "還要檢査程式的版本號,它將被包含到套件版本內。如果手中的軟體版本號不是 " | ||
| 1874 | "<literal>X.Y.Z</literal> 的形式,而是使用日期等形式。那麼可以繼續使用日期來作" | ||
| 1875 | "爲版本號,只要新版本程式的版本號能變得比老闆本大即可。最好能與上游使用相同的" | ||
| 1876 | "版本號,如果上游使用了諸如 <literal>09Oct23</literal> 的格式,那麼最好將其轉" | ||
| 1877 | "換爲 <literal>YYYYMMDD</literal> 的格式,此例中爲 <literal>20091023</" | ||
| 1878 | "literal>,以便保證 <command>dpkg</command> 程式在更新軟體時能正確處理新舊版" | ||
| 1879 | "本。<placeholder type=\"footnote\" id=\"0\"/>" | ||
| 1880 | osamu | 8601 | |
| 1881 | #. type: Content of: <book><chapter><section><para> | ||
| 1882 | osamu | 8653 | msgid "" |
| 1883 | "Some programs won't be numbered at all, in which case you should contact the " | ||
| 1884 | "upstream maintainer to see if they've got some other revision-tracking " | ||
| 1885 | "method." | ||
| 1886 | msgstr "" | ||
| 1887 | "還有一些程式根本就沒有版本號,這是你應該聯繫上游維護者,看他們是否使用了其他" | ||
| 1888 | "的版本跟蹤方法。" | ||
| 1889 | osamu | 8601 | |
| 1890 | #. type: Content of: <book><chapter><section><title> | ||
| 1891 | msgid "Initial Debian package" | ||
| 1892 | msgstr "初始化 Debian 套件" | ||
| 1893 | |||
| 1894 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 1895 | osamu | 8653 | msgid "" |
| 1896 | "The following text assumes you are using Bash as your login shell. If you " | ||
| 1897 | "use other login shells such as Z shell, use their pertinent configuration " | ||
| 1898 | "files instead of <filename>~/.bashrc</filename>." | ||
| 1899 | msgstr "" | ||
| 1900 | "以下默認以 Bash 作爲登陸 shell。如果你使用其他的 shell,例如 Z shell,使用它" | ||
| 1901 | "們的設定檔案代替這裏提到的 <filename>~/.bashrc</filename>。" | ||
| 1902 | osamu | 8601 | |
| 1903 | #. type: Content of: <book><chapter><section><para> | ||
| 1904 | osamu | 8653 | msgid "" |
| 1905 | "Let's set up the shell environment variable <literal>$DEBEMAIL</literal> and " | ||
| 1906 | "<literal>$DEBFULLNAME</literal> so many Debian maintenance tools recognize " | ||
| 1907 | "your name and email address to use for packages as follows.<placeholder type=" | ||
| 1908 | "\"footnote\" id=\"0\"/>." | ||
| 1909 | msgstr "" | ||
| 1910 | "首先我們設置兩個 環境變量,<literal>$DEBEMAIL</literal> 和 <literal>" | ||
| 1911 | "$DEBFULLNAME</literal>,使多數 Debian 維護工具能夠正確識別你用於維護套件的姓" | ||
| 1912 | "名和電子郵件地址。<placeholder type=\"footnote\" id=\"0\"/>" | ||
| 1913 | osamu | 8601 | |
| 1914 | #. type: Content of: <book><chapter><section><screen> | ||
| 1915 | #, no-wrap | ||
| 1916 | msgid "" | ||
| 1917 | "$ cat >>~/.bashrc <<EOF\n" | ||
| 1918 | "DEBEMAIL=your.email.address@example.org\n" | ||
| 1919 | "DEBFULLNAME=Firstname Lastname\n" | ||
| 1920 | "export DEBEMAIL DEBFULLNAME\n" | ||
| 1921 | "EOF\n" | ||
| 1922 | msgstr "" | ||
| 1923 | "$ cat >>~/.bashrc <<EOF\n" | ||
| 1924 | "DEBEMAIL=your.email.address@example.org\n" | ||
| 1925 | "DEBFULLNAME=Firstname Lastname\n" | ||
| 1926 | "export DEBEMAIL DEBFULLNAME\n" | ||
| 1927 | "EOF\n" | ||
| 1928 | |||
| 1929 | #. type: Content of: <book><chapter><section><para> | ||
| 1930 | osamu | 8653 | msgid "" |
| 1931 | "Let's make an initial Debian package by issuing the <command>dh_make</" | ||
| 1932 | "command> command as follows." | ||
| 1933 | msgstr "" | ||
| 1934 | "讓我們按照以下方法使用 <command>dh_make</command> 來初始化 Debian 套件。" | ||
| 1935 | osamu | 8601 | |
| 1936 | #. type: Content of: <book><chapter><section><screen> | ||
| 1937 | #, no-wrap | ||
| 1938 | msgid "" | ||
| 1939 | "$ . ~/.bashrc\n" | ||
| 1940 | "$ cd ~/gentoo/gentoo-0.9.12\n" | ||
| 1941 | "$ dh_make -f ../gentoo-0.9.12.tar.gz\n" | ||
| 1942 | msgstr "" | ||
| 1943 | "$ . ~/.bashrc\n" | ||
| 1944 | "$ cd ~/gentoo/gentoo-0.9.12\n" | ||
| 1945 | "$ dh_make -f ../gentoo-0.9.12.tar.gz\n" | ||
| 1946 | |||
| 1947 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 1948 | osamu | 8653 | msgid "" |
| 1949 | "If the upstream source provides the <filename>debian</filename> directory " | ||
| 1950 | "and its contents, run the <command>dh_make</command> command with the " | ||
| 1951 | "<literal>--addmissing</literal> option, instead. The new source " | ||
| 1952 | "<literal>3.0 (quilt)</literal> format is quite robust not to break even for " | ||
| 1953 | "these packages. You may need to update contents provided by the upstream " | ||
| 1954 | "for your Debian package." | ||
| 1955 | osamu | 8619 | msgstr "" |
| 1956 | osamu | 8601 | |
| 1957 | #. type: Content of: <book><chapter><section><para> | ||
| 1958 | osamu | 8653 | msgid "" |
| 1959 | "Of course, replace the filename with the name of your original source " | ||
| 1960 | "archive. <placeholder type=\"footnote\" id=\"0\"/> See <citerefentry> " | ||
| 1961 | "<refentrytitle>dh_make</refentrytitle> <manvolnum>1</manvolnum> </" | ||
| 1962 | "citerefentry> for details." | ||
| 1963 | osamu | 8619 | msgstr "" |
| 1964 | osamu | 8601 | |
| 1965 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 1966 | osamu | 8653 | msgid "" |
| 1967 | "There are few choices here: <literal>s</literal> for Single binary, " | ||
| 1968 | "<literal>i</literal> for Arch-Independent, <literal>m</literal> for Multiple " | ||
| 1969 | "binary, <literal>l</literal> for Library, <literal>k</literal> for Kernel " | ||
| 1970 | "module, <literal>n</literal> for Kernel patch and <literal>b</literal> for " | ||
| 1971 | "<systemitem role=\"package\">cdbs</systemitem>. This document focuses on " | ||
| 1972 | "the use of the <systemitem role=\"package\">debhelper</systemitem> package " | ||
| 1973 | "with the <command>dh</command> command. This document focuses on the use of " | ||
| 1974 | "the new <command>dh</command> command for Single binary and touches on it " | ||
| 1975 | "for Arch-Independent and Multiple binary. The <systemitem role=\"package" | ||
| 1976 | "\">cdbs</systemitem> package offers alternative package script " | ||
| 1977 | "infrastructure to the <command>dh</command> command and outside of the scope " | ||
| 1978 | "of this document." | ||
| 1979 | osamu | 8619 | msgstr "" |
| 1980 | osamu | 8601 | |
| 1981 | #. type: Content of: <book><chapter><section><para> | ||
| 1982 | osamu | 8653 | msgid "" |
| 1983 | "Some information will come up. It will ask you what sort of package you " | ||
| 1984 | "want to create. Gentoo is a single binary package - it creates only one " | ||
| 1985 | "binary, and thus one <filename>.deb</filename> file - so we will select the " | ||
| 1986 | "first option, with the <literal>s</literal> key, check the information on " | ||
| 1987 | "the screen and confirm by pressing <literal><replaceable>ENTER</" | ||
| 1988 | "replaceable></literal>. <placeholder type=\"footnote\" id=\"0\"/>" | ||
| 1989 | osamu | 8619 | msgstr "" |
| 1990 | osamu | 8601 | |
| 1991 | #. type: Content of: <book><chapter><section><para> | ||
| 1992 | osamu | 8653 | msgid "" |
| 1993 | "After this execution of <command>dh_make</command>, a copy of the upstream " | ||
| 1994 | "tarball is created as <filename>gentoo_0.9.12.orig.tar.gz</filename> in the " | ||
| 1995 | "parent directory to accommodate the creation of the non-native Debian source " | ||
| 1996 | "package with the <filename>debian.tar.gz</filename> later." | ||
| 1997 | msgstr "" | ||
| 1998 | "執行 <command>dh_make</command> 後,上一級目錄中自動創建了一份上游 tarball 的" | ||
| 1999 | "副本,名爲 <filename>gentoo_0.9.12.orig.tar.gz</filename>,這個檔案和稍後介紹" | ||
| 2000 | "的 <filename>debian.tar.gz</filename> 在一起滿足了 Debian 非本地原始碼套件的" | ||
| 2001 | "要求。" | ||
| 2002 | osamu | 8601 | |
| 2003 | #. type: Content of: <book><chapter><section><screen> | ||
| 2004 | #, no-wrap | ||
| 2005 | msgid "" | ||
| 2006 | "$ cd ~/gentoo ; ls -F\n" | ||
| 2007 | "gentoo-0.9.12/\n" | ||
| 2008 | "gentoo-0.9.12.tar.gz\n" | ||
| 2009 | "gentoo_0.9.12.orig.tar.gz\n" | ||
| 2010 | msgstr "" | ||
| 2011 | "$ cd ~/gentoo ; ls -F\n" | ||
| 2012 | "gentoo-0.9.12/\n" | ||
| 2013 | "gentoo-0.9.12.tar.gz\n" | ||
| 2014 | "gentoo_0.9.12.orig.tar.gz\n" | ||
| 2015 | |||
| 2016 | #. type: Content of: <book><chapter><section><para> | ||
| 2017 | osamu | 8653 | msgid "" |
| 2018 | "Please note 2 key features in this <filename>gentoo_0.9.12.orig.tar.gz</" | ||
| 2019 | "filename> file name:" | ||
| 2020 | msgstr "" | ||
| 2021 | "請注意 <filename>gentoo_0.9.12.orig.tar.gz</filename> 這個檔案名的兩個關鍵特" | ||
| 2022 | "點:" | ||
| 2023 | osamu | 8601 | |
| 2024 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 2025 | osamu | 8653 | msgid "" |
| 2026 | "Package name and version are separated by the <literal>_</literal> " | ||
| 2027 | "(underscore)." | ||
| 2028 | osamu | 8601 | msgstr "套件名稱和版本是以底線 <literal>_</literal> 分隔的。" |
| 2029 | |||
| 2030 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 2031 | osamu | 8653 | msgid "" |
| 2032 | "There is the <filename>.orig</filename> before the <filename>.tar.gz</" | ||
| 2033 | "filename>." | ||
| 2034 | osamu | 8601 | msgstr "<filename>.tar.gz</filename> 副檔名前有 <filename>.orig</filename>。" |
| 2035 | |||
| 2036 | #. type: Content of: <book><chapter><section><para> | ||
| 2037 | osamu | 8653 | msgid "" |
| 2038 | "You should also notice that many template files are created in the source " | ||
| 2039 | "under the <filename>debian</filename> directory. These will be explained in " | ||
| 2040 | "<xref linkend=\"dreq\"/> and <xref linkend=\"dother\"/> . You should also " | ||
| 2041 | "understand that the packaging is not automatic process. You need to modify " | ||
| 2042 | "the upstream source for Debian as <xref linkend=\"modify\"/> . After all " | ||
| 2043 | "these, you need to build Debian packages under the proper method as <xref " | ||
| 2044 | "linkend=\"build\"/> , check them as <xref linkend=\"checkit\"/> , and upload " | ||
| 2045 | "them as <xref linkend=\"upload\"/> . I will explain all these steps." | ||
| 2046 | msgstr "" | ||
| 2047 | "你應該可以注意到 <filename>debian</filename> 目錄下有了許多模板檔案。這些檔案" | ||
| 2048 | "將在 <xref linkend=\"dreq\"/> 和 <xref linkend=\"dother\"/> 一一解釋。你還應" | ||
| 2049 | "該明白,打包不是一個自動的過程,你還需要按照 <xref linkend=\"modify\"/> 中的" | ||
| 2050 | "方法來修改套件。此後,你還要按照 <xref linkend=\"build\"/> 中敘述的合適的方法" | ||
| 2051 | "來編譯 Debian 套件、按照 <xref linkend=\"checkit\"/> 中的方法檢査其中錯誤,最" | ||
| 2052 | "終依照 <xref linkend=\"upload\"/> 的介紹將其上傳。我將對所有的這些步驟進行解" | ||
| 2053 | "釋。" | ||
| 2054 | osamu | 8601 | |
| 2055 | #. type: Content of: <book><chapter><section><para> | ||
| 2056 | osamu | 8653 | msgid "" |
| 2057 | "Once again, as a new maintainer you are discouraged from creating " | ||
| 2058 | "complicated packages, e.g.," | ||
| 2059 | osamu | 8601 | msgstr "再次強調,作爲一個新維護人員,不推薦創建複雜的套件,例如:" |
| 2060 | |||
| 2061 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 2062 | msgid "multiple binary packages," | ||
| 2063 | msgstr "多個二進位套件的套件;" | ||
| 2064 | |||
| 2065 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 2066 | msgid "library packages," | ||
| 2067 | msgstr "函式庫套件;" | ||
| 2068 | |||
| 2069 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 2070 | msgid "kernel module packages," | ||
| 2071 | msgstr "核心模組套件;" | ||
| 2072 | |||
| 2073 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 2074 | msgid "kernel patch packages," | ||
| 2075 | msgstr "核心補丁套件;" | ||
| 2076 | |||
| 2077 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 2078 | osamu | 8653 | msgid "" |
| 2079 | "the source file format being neither in <filename>tar.gz</filename> nor " | ||
| 2080 | "<filename>tar.bz2</filename>, or" | ||
| 2081 | msgstr "" | ||
| 2082 | "原始碼不是 <filename>tar.gz</filename> 也不是 <filename>tar.bz2</filename> 格" | ||
| 2083 | "式,或" | ||
| 2084 | osamu | 8601 | |
| 2085 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 2086 | msgid "the source tarball containing undistributable contents." | ||
| 2087 | msgstr "原始碼 tarball 中包含不可散佈的內容。" | ||
| 2088 | |||
| 2089 | #. type: Content of: <book><chapter><section><para> | ||
| 2090 | osamu | 8653 | msgid "" |
| 2091 | "It's not too hard, but it does require a bit more knowledge, so we won't " | ||
| 2092 | "describe all of it here." | ||
| 2093 | msgstr "" | ||
| 2094 | "它們並非特別難於掌握,但確實需要更多的知識,所以我們不在這裏對所有情況進行描" | ||
| 2095 | "述。" | ||
| 2096 | osamu | 8601 | |
| 2097 | #. type: Content of: <book><chapter><section><para> | ||
| 2098 | osamu | 8653 | msgid "" |
| 2099 | "If you accidentally erased some template files while working on them, you " | ||
| 2100 | "can recover them by running <command>dh_make</command> with the <literal>--" | ||
| 2101 | "addmissing</literal> option again in a Debian package source tree." | ||
| 2102 | msgstr "" | ||
| 2103 | "如果你在修改過程中不小心刪除或弄壞了某些模板檔案,你可以使用 " | ||
| 2104 | "<command>dh_make</command> 加上 <literal>--addmissing</literal> 參數來將其還" | ||
| 2105 | "原。" | ||
| 2106 | osamu | 8601 | |
| 2107 | #. type: Content of: <book><chapter><section><para> | ||
| 2108 | osamu | 8653 | msgid "" |
| 2109 | "Updating an existing package may get complicated since it may be using older " | ||
| 2110 | "techniques. Please stick with fresh packaging cases for now to learn " | ||
| 2111 | "basics. I will come back to explain it later in <xref linkend=\"update\"/> ." | ||
| 2112 | msgstr "" | ||
| 2113 | "更新一個已存在的套件可能比較複雜,因爲它可能使用舊的技術。請繼續在這裏學習最" | ||
| 2114 | "新的打包技術以便掌握必要的基本功。我們會在稍後的 <xref linkend=\"update\"/> " | ||
| 2115 | "中回頭講解如何處理這種情況。" | ||
| 2116 | osamu | 8601 | |
| 2117 | #. type: Content of: <book><chapter><title> | ||
| 2118 | msgid "Modifying the source" | ||
| 2119 | msgstr "修改原始碼" | ||
| 2120 | |||
| 2121 | #. type: Content of: <book><chapter><para> | ||
| 2122 | osamu | 8653 | msgid "" |
| 2123 | "Please note that there isn't space here to go into <emphasis>all</emphasis> " | ||
| 2124 | "the details of fixing upstream sources, but here are some basic steps and " | ||
| 2125 | "problems people often run across." | ||
| 2126 | msgstr "" | ||
| 2127 | "請注意這裏沒有足夠的篇幅來描述修改上游原始碼的 <emphasis>全部</emphasis> 細" | ||
| 2128 | "節,但是這裏介紹了基本的步驟和常見的問題。" | ||
| 2129 | osamu | 8601 | |
| 2130 | #. type: Content of: <book><chapter><section><title> | ||
| 2131 | msgid "Set up <command>quilt</command>" | ||
| 2132 | msgstr "設置 <command>quilt</command>" | ||
| 2133 | |||
| 2134 | #. type: Content of: <book><chapter><section><para> | ||
| 2135 | osamu | 8646 | #, fuzzy |
| 2136 | osamu | 8653 | #| msgid "" |
| 2137 | #| "The <command>quilt</command> program offers the basic method to record " | ||
| 2138 | #| "modification to the source for the Debian packaging. Since slightly " | ||
| 2139 | #| "different default is desirable for Debian packaging, let's set up " | ||
| 2140 | #| "<filename>~/.quiltrc</filename> as follows. <placeholder type=\"footnote" | ||
| 2141 | #| "\" id=\"0\"/>" | ||
| 2142 | msgid "" | ||
| 2143 | "The <command>quilt</command> program offers the basic method to record " | ||
| 2144 | "modification to the source for the Debian packaging. Since slightly " | ||
| 2145 | "different default is desirable, let's create an alias <command>dquilt</" | ||
| 2146 | "command> for Debian packaging by adding the following line to <filename>~/." | ||
| 2147 | "bashrc</filename>." | ||
| 2148 | msgstr "" | ||
| 2149 | "<command>quilt</command> 程式爲 Debian 工作提供了對源碼修改的基本記錄方法。由" | ||
| 2150 | "於我們的需求與默認設定相當的不同,我們把 <filename>~/.quiltrc</filename> 設置" | ||
| 2151 | "成如下的樣子。<placeholder type=\"footnote\" id=\"0\"/>" | ||
| 2152 | osamu | 8601 | |
| 2153 | #. type: Content of: <book><chapter><section><screen> | ||
| 2154 | #, no-wrap | ||
| 2155 | osamu | 8646 | msgid "alias dquilt=quilt --quiltrc=~/.quiltrc-dpkg\n" |
| 2156 | msgstr "" | ||
| 2157 | |||
| 2158 | #. type: Content of: <book><chapter><section><para> | ||
| 2159 | #, fuzzy | ||
| 2160 | #| msgid "You change the <filename>Makefile</filename> file as follows." | ||
| 2161 | msgid "Then let's create <filename>~/.quiltrc-dpkg</filename> as follows." | ||
| 2162 | msgstr "現在將 <filename>Makefile</filename> 修改爲如下的樣子。" | ||
| 2163 | |||
| 2164 | #. type: Content of: <book><chapter><section><screen> | ||
| 2165 | #, fuzzy, no-wrap | ||
| 2166 | #| msgid "" | ||
| 2167 | #| "d=. ; while [ ! -d $d/debian -a `readlink -e $d` != / ]; do d=$d/..; done\n" | ||
| 2168 | #| "if [ -d $d/debian ] && [ -z $QUILT_PATCHES ]; then\n" | ||
| 2169 | #| " # Debian packaging case and unset $QUILT_PATCHES\n" | ||
| 2170 | #| " QUILT_PATCHES=debian/patches\n" | ||
| 2171 | #| " QUILT_PATCH_OPTS=--unified-reject-files\n" | ||
| 2172 | #| " QUILT_DIFF_ARGS=-p ab --no-timestamps --no-index --color=auto\n" | ||
| 2173 | #| " QUILT_REFRESH_ARGS=-p ab --no-timestamps --no-index\n" | ||
| 2174 | #| " 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" | ||
| 2175 | #| " if ! [ -d $d/debian/patches ]; then mkdir $d/debian/patches; fi\n" | ||
| 2176 | #| "fi\n" | ||
| 2177 | osamu | 8601 | msgid "" |
| 2178 | "d=. ; while [ ! -d $d/debian -a `readlink -e $d` != / ]; do d=$d/..; done\n" | ||
| 2179 | "if [ -d $d/debian ] && [ -z $QUILT_PATCHES ]; then\n" | ||
| 2180 | " # Debian packaging case and unset $QUILT_PATCHES\n" | ||
| 2181 | osamu | 8651 | " QUILT_PATCHES=\"debian/patches\"\n" |
| 2182 | " QUILT_PATCH_OPTS=\"--reject-format=unified\"\n" | ||
| 2183 | " QUILT_DIFF_ARGS=\"-p ab --no-timestamps --no-index --color=auto\"\n" | ||
| 2184 | " QUILT_REFRESH_ARGS=\"-p ab --no-timestamps --no-index\"\n" | ||
| 2185 | " 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" | ||
| 2186 | osamu | 8601 | " if ! [ -d $d/debian/patches ]; then mkdir $d/debian/patches; fi\n" |
| 2187 | "fi\n" | ||
| 2188 | msgstr "" | ||
| 2189 | "d=. ; while [ ! -d $d/debian -a `readlink -e $d` != / ]; do d=$d/..; done\n" | ||
| 2190 | "if [ -d $d/debian ] && [ -z $QUILT_PATCHES ]; then\n" | ||
| 2191 | " # Debian packaging case and unset $QUILT_PATCHES\n" | ||
| 2192 | " QUILT_PATCHES=debian/patches\n" | ||
| 2193 | " QUILT_PATCH_OPTS=--unified-reject-files\n" | ||
| 2194 | " QUILT_DIFF_ARGS=-p ab --no-timestamps --no-index --color=auto\n" | ||
| 2195 | " QUILT_REFRESH_ARGS=-p ab --no-timestamps --no-index\n" | ||
| 2196 | " 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" | ||
| 2197 | " if ! [ -d $d/debian/patches ]; then mkdir $d/debian/patches; fi\n" | ||
| 2198 | "fi\n" | ||
| 2199 | |||
| 2200 | #. type: Content of: <book><chapter><section><para> | ||
| 2201 | osamu | 8646 | #, fuzzy |
| 2202 | osamu | 8653 | #| msgid "" |
| 2203 | #| "See <citerefentry> <refentrytitle>quilt</refentrytitle> <manvolnum>1</" | ||
| 2204 | #| "manvolnum> </citerefentry> and <filename>/usr/share/doc/quilt/quilt.html</" | ||
| 2205 | #| "filename> for how to use <command>quilt</command>." | ||
| 2206 | msgid "" | ||
| 2207 | "See <citerefentry> <refentrytitle>quilt</refentrytitle> <manvolnum>1</" | ||
| 2208 | "manvolnum> </citerefentry> and <ulink url=\"&quilt-pdf;\">quilt.pdf</ulink> " | ||
| 2209 | "for how to use <command>quilt</command>." | ||
| 2210 | msgstr "" | ||
| 2211 | "參考 <citerefentry> <refentrytitle>quilt</refentrytitle> <manvolnum>1</" | ||
| 2212 | "manvolnum> </citerefentry> 和 <filename>/usr/share/doc/quilt/quilt.html</" | ||
| 2213 | "filename> 來了解如何使用 <command>quilt</command>。" | ||
| 2214 | osamu | 8601 | |
| 2215 | #. type: Content of: <book><chapter><section><title> | ||
| 2216 | msgid "Fixing upstream bug" | ||
| 2217 | msgstr "修復上游 Bug" | ||
| 2218 | |||
| 2219 | #. type: Content of: <book><chapter><section><para> | ||
| 2220 | osamu | 8653 | msgid "" |
| 2221 | "Let's assume you find an error in the upstream <filename>Makefile</filename> " | ||
| 2222 | "file as follows where <literal>install: gentoo</literal> should have been " | ||
| 2223 | "<literal>install: gentoo-target</literal>." | ||
| 2224 | msgstr "" | ||
| 2225 | "讓我們假設你在上游的 <filename>Makefile</filename> 檔案中找到了一個錯誤,其中" | ||
| 2226 | "的 <literal>install: gentoo</literal> 應該是 <literal>install: gentoo-" | ||
| 2227 | "target</literal> 才正確。" | ||
| 2228 | osamu | 8601 | |
| 2229 | #. type: Content of: <book><chapter><section><screen> | ||
| 2230 | #, no-wrap | ||
| 2231 | msgid "" | ||
| 2232 | "install: gentoo\n" | ||
| 2233 | " install ./gentoo $(BIN)\n" | ||
| 2234 | " install icons/* $(ICONS)\n" | ||
| 2235 | " install gentoorc-example $(HOME)/.gentoorc\n" | ||
| 2236 | msgstr "" | ||
| 2237 | "install: gentoo\n" | ||
| 2238 | " install ./gentoo $(BIN)\n" | ||
| 2239 | " install icons/* $(ICONS)\n" | ||
| 2240 | " install gentoorc-example $(HOME)/.gentoorc\n" | ||
| 2241 | |||
| 2242 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 2243 | osamu | 8653 | msgid "" |
| 2244 | "The <filename>debian/patches</filename> directory should exist now if you " | ||
| 2245 | "run <command>dh_make</command> as described before. This example operation " | ||
| 2246 | "creates it just in case you are updating the existing package." | ||
| 2247 | msgstr "" | ||
| 2248 | "<filename>debian/patches</filename> 應當在你按照前面所述的步驟運行 " | ||
| 2249 | "<command>dh_make</command> 時生成的。這個例子中我們新創建它,因爲假設的是在更" | ||
| 2250 | "新一個已存在的套件。" | ||
| 2251 | osamu | 8601 | |
| 2252 | #. type: Content of: <book><chapter><section><para> | ||
| 2253 | osamu | 8646 | #, fuzzy |
| 2254 | osamu | 8653 | #| msgid "" |
| 2255 | #| "Let's fix this and record this with the <command>quilt</command> command " | ||
| 2256 | #| "as <filename>fix-gentoo-target.patch</filename>. <placeholder type=" | ||
| 2257 | #| "\"footnote\" id=\"0\"/>" | ||
| 2258 | msgid "" | ||
| 2259 | "Let's fix this and record this with the <command>dquilt</command> command as " | ||
| 2260 | "<filename>fix-gentoo-target.patch</filename>. <placeholder type=\"footnote" | ||
| 2261 | "\" id=\"0\"/>" | ||
| 2262 | msgstr "" | ||
| 2263 | "讓我們使用 <command>quilt</command> 修復它,並把它命名爲 <filename>fix-" | ||
| 2264 | "gentoo-target.patch</filename>。<placeholder type=\"footnote\" id=\"0\"/>" | ||
| 2265 | osamu | 8601 | |
| 2266 | #. type: Content of: <book><chapter><section><screen> | ||
| 2267 | osamu | 8646 | #, fuzzy, no-wrap |
| 2268 | #| msgid "" | ||
| 2269 | #| "$ mkdir debian/patches\n" | ||
| 2270 | #| "$ quilt new fix-gentoo-target.patch\n" | ||
| 2271 | #| "$ quilt add Makefile\n" | ||
| 2272 | osamu | 8601 | msgid "" |
| 2273 | "$ mkdir debian/patches\n" | ||
| 2274 | osamu | 8646 | "$ dquilt new fix-gentoo-target.patch\n" |
| 2275 | "$ dquilt add Makefile\n" | ||
| 2276 | osamu | 8601 | msgstr "" |
| 2277 | "$ mkdir debian/patches\n" | ||
| 2278 | "$ quilt new fix-gentoo-target.patch\n" | ||
| 2279 | "$ quilt add Makefile\n" | ||
| 2280 | |||
| 2281 | #. type: Content of: <book><chapter><section><para> | ||
| 2282 | msgid "You change the <filename>Makefile</filename> file as follows." | ||
| 2283 | msgstr "現在將 <filename>Makefile</filename> 修改爲如下的樣子。" | ||
| 2284 | |||
| 2285 | #. type: Content of: <book><chapter><section><screen> | ||
| 2286 | #, no-wrap | ||
| 2287 | msgid "" | ||
| 2288 | "install: gentoo-target\n" | ||
| 2289 | " install ./gentoo $(BIN)\n" | ||
| 2290 | " install icons/* $(ICONS)\n" | ||
| 2291 | " install gentoorc-example $(HOME)/.gentoorc\n" | ||
| 2292 | msgstr "" | ||
| 2293 | "install: gentoo-target\n" | ||
| 2294 | " install ./gentoo $(BIN)\n" | ||
| 2295 | " install icons/* $(ICONS)\n" | ||
| 2296 | " install gentoorc-example $(HOME)/.gentoorc\n" | ||
| 2297 | |||
| 2298 | #. type: Content of: <book><chapter><section><para> | ||
| 2299 | osamu | 8646 | #, fuzzy |
| 2300 | osamu | 8653 | #| msgid "" |
| 2301 | #| "Ask <command>quilt</command> to refresh the patch to create " | ||
| 2302 | #| "<filename>debian/patches/fix-gentoo-target.patch</filename> and add its " | ||
| 2303 | #| "description." | ||
| 2304 | msgid "" | ||
| 2305 | "Ask <command>dquilt</command> to refresh the patch to create " | ||
| 2306 | "<filename>debian/patches/fix-gentoo-target.patch</filename> and add its " | ||
| 2307 | "description following <ulink url=\"&dep3;\">DEP-3: Patch Tagging Guidelines</" | ||
| 2308 | "ulink>." | ||
| 2309 | msgstr "" | ||
| 2310 | "使用 <command>quilt</command> 更新補丁以創建 <filename>debian/patches/fix-" | ||
| 2311 | "gentoo-targe.patch</filename> 並添加描述。" | ||
| 2312 | osamu | 8601 | |
| 2313 | #. type: Content of: <book><chapter><section><screen> | ||
| 2314 | osamu | 8646 | #, fuzzy, no-wrap |
| 2315 | #| msgid "" | ||
| 2316 | #| "$ quilt refresh\n" | ||
| 2317 | #| "$ quilt header -e\n" | ||
| 2318 | #| "... describe patch\n" | ||
| 2319 | osamu | 8601 | msgid "" |
| 2320 | osamu | 8646 | "$ dquilt refresh\n" |
| 2321 | "$ dquilt header -e\n" | ||
| 2322 | osamu | 8601 | "... describe patch\n" |
| 2323 | msgstr "" | ||
| 2324 | "$ quilt refresh\n" | ||
| 2325 | "$ quilt header -e\n" | ||
| 2326 | "... 描述補丁\n" | ||
| 2327 | |||
| 2328 | #. type: Content of: <book><chapter><section><title> | ||
| 2329 | msgid "Installation of files to the destination" | ||
| 2330 | msgstr "把檔案安裝到目的位置" | ||
| 2331 | |||
| 2332 | #. type: Content of: <book><chapter><section><para> | ||
| 2333 | osamu | 8646 | #, fuzzy |
| 2334 | osamu | 8653 | #| msgid "" |
| 2335 | #| "Normally, programs install themselves in the <filename>/usr/local</" | ||
| 2336 | #| "filename> subdirectory. Since it is reserved for system administrator's " | ||
| 2337 | #| "(or user's) private use, Debian packages must not use that directory but " | ||
| 2338 | #| "should use system directories such as the <filename>/usr/bin</filename> " | ||
| 2339 | #| "subdirectory following the Filesystem Hierarchy Standard (<ulink url=" | ||
| 2340 | #| "\"&fhs;\">FHS</ulink>, <filename>/usr/share/doc/debian-policy/fhs/fhs-2.3." | ||
| 2341 | #| "html</filename>)." | ||
| 2342 | msgid "" | ||
| 2343 | "Normally, programs install themselves in the <filename>/usr/local</filename> " | ||
| 2344 | "subdirectory. Since it is reserved for system administrator's (or user's) " | ||
| 2345 | "private use, Debian packages must not use that directory but should use " | ||
| 2346 | "system directories such as the <filename>/usr/bin</filename> subdirectory " | ||
| 2347 | "following the <ulink url=\"&fhs;\">Filesystem Hierarchy Standard</ulink> " | ||
| 2348 | "(FHS)." | ||
| 2349 | msgstr "" | ||
| 2350 | "正常情況下,程式將其本身安裝在 <filename>/usr/local</filename>。因爲它是保留" | ||
| 2351 | "給系統管理員(或用戶)的私有位置,Debian 套件不可以使用該目錄,而是按照檔案系統" | ||
| 2352 | "層級標準(<ulink url=\"&fhs;\">FHS</ulink>,<filename>/usr/share/doc/debian-" | ||
| 2353 | "policy/fhs/fhs-2.3.html</filename>)使用如 <filename>/usr/bin</filename> 等目" | ||
| 2354 | "錄。" | ||
| 2355 | osamu | 8601 | |
| 2356 | #. type: Content of: <book><chapter><section><para> | ||
| 2357 | osamu | 8653 | msgid "" |
| 2358 | "Normally, <citerefentry> <refentrytitle>make</refentrytitle> <manvolnum>1</" | ||
| 2359 | "manvolnum> </citerefentry> is used to automate building the program and the " | ||
| 2360 | "execution of <literal>make install</literal> installs programs directly to " | ||
| 2361 | "the desired destination by the <literal>install</literal> target of the " | ||
| 2362 | "<filename>Makefile</filename> file. In order for Debian to provide binary " | ||
| 2363 | "packages, the build system installs programs to the file tree image created " | ||
| 2364 | "under a temporary directory instead to the actual destination." | ||
| 2365 | msgstr "" | ||
| 2366 | "通常在自動編譯程式時使用 <citerefentry> <refentrytitle>make</refentrytitle> " | ||
| 2367 | "<manvolnum>1</manvolnum> </citerefentry> 程式,執行 <literal>make install</" | ||
| 2368 | "literal> 就把程式直接按照 <filename>Makefile</filename> 檔案中的 " | ||
| 2369 | "<literal>install</literal> target 安裝到指定的位置。爲了使 Debian 能夠提供二" | ||
| 2370 | "進位套件,編譯系統將檔案安裝到一個臨時目錄中創建的檔案系統樹的鏡像中,而非直" | ||
| 2371 | "接安裝到實際的目標位置。" | ||
| 2372 | osamu | 8601 | |
| 2373 | #. type: Content of: <book><chapter><section><para> | ||
| 2374 | osamu | 8653 | msgid "" |
| 2375 | "These 2 differences between (1) the normal program installation and (2) the " | ||
| 2376 | "Debian packaging can be transparently addressed by the <systemitem role=" | ||
| 2377 | "\"package\">debhelper</systemitem> package through the " | ||
| 2378 | "<command>dh_auto_configure</command> and <command>dh_auto_install</command> " | ||
| 2379 | "commands if the following conditions are met." | ||
| 2380 | msgstr "" | ||
| 2381 | "普通程式安裝過程和 Debian 打包安裝過程的區別可以由 <systemitem role=\"package" | ||
| 2382 | "\">debhelper</systemitem> 套件中的 <command>dh_auto_configure</command> 和 " | ||
| 2383 | "<command>dh_auto_install</command> 透明地處理。但程式必須滿足以下條件:" | ||
| 2384 | osamu | 8601 | |
| 2385 | osamu | 8646 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para><footnote><para> |
| 2386 | osamu | 8653 | msgid "" |
| 2387 | "See <ulink url=\"&gnu-destdir;\">GNU Coding Standards: 7.2.4 DESTDIR: " | ||
| 2388 | "Support for Staged Installs</ulink>." | ||
| 2389 | osamu | 8646 | msgstr "" |
| 2390 | |||
| 2391 | osamu | 8601 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> |
| 2392 | osamu | 8646 | #, fuzzy |
| 2393 | osamu | 8653 | #| msgid "" |
| 2394 | #| "The <filename>Makefile</filename> file follows the GNU conventions to " | ||
| 2395 | #| "support <literal>$(DESTDIR)</literal> variable (<filename>/usr/share/doc/" | ||
| 2396 | #| "gnu-standards/standards.html#Makefile-Conventions</filename>)." | ||
| 2397 | msgid "" | ||
| 2398 | "The <filename>Makefile</filename> file follows the GNU conventions to " | ||
| 2399 | "support <literal>$(DESTDIR)</literal> variable. <placeholder type=\"footnote" | ||
| 2400 | "\" id=\"0\"/>" | ||
| 2401 | msgstr "" | ||
| 2402 | "<filename>Makefile</filename> 檔案遵循 GNU 的規定支持 <literal>$(DESTDIR)</" | ||
| 2403 | "literal> 變量(<filename>/usr/share/doc/gnu-standards/standards.html#Makefile-" | ||
| 2404 | "Conventions</filename>)。" | ||
| 2405 | osamu | 8601 | |
| 2406 | #. type: Content of: <book><chapter><section><itemizedlist><listitem><para> | ||
| 2407 | msgid "The source follows the Filesystem Hierarchy Standard (FHS)." | ||
| 2408 | msgstr "原始碼遵循檔案系統層級標準(FHS)。" | ||
| 2409 | |||
| 2410 | #. type: Content of: <book><chapter><section><para> | ||
| 2411 | osamu | 8653 | msgid "" |
| 2412 | "Programs that use GNU <command>autoconf</command> <emphasis>automatically</" | ||
| 2413 | "emphasis> follow the GNU conventions and their packaging is almost " | ||
| 2414 | "<emphasis>automatic</emphasis>. With this and other heuristics, the " | ||
| 2415 | "<systemitem role=\"package\">debhelper</systemitem> package estimates that " | ||
| 2416 | "it works for about 90% of packages without making any intrusive changes to " | ||
| 2417 | "their build system. So the packaging is not as complicated as it may seem." | ||
| 2418 | msgstr "" | ||
| 2419 | "使用 GNU <command>autoconf</command> 的程式 <emphasis>自動</emphasis> 遵守了 " | ||
| 2420 | "GNU 的規定,這些程式的打包也就 <emphasis>幾乎是自動的</emphasis>。通過這項特" | ||
| 2421 | "點和其他啓發式處理,<systemitem role=\"package\">debhelper</systemitem> 套件" | ||
| 2422 | "可以直接打包約 90% 的套件而不需對編譯系統做出大的改變。所以打包也不是它看起來" | ||
| 2423 | "那樣複雜。" | ||
| 2424 | osamu | 8601 | |
| 2425 | #. type: Content of: <book><chapter><section><para> | ||
| 2426 | osamu | 8653 | msgid "" |
| 2427 | "If you need to make changes in the <filename>Makefile</filename> file, you " | ||
| 2428 | "should make sure to support these <literal>$(DESTDIR)</literal> variable. " | ||
| 2429 | "The <literal>$(DESTDIR)</literal> variable is unset in it and is prepended " | ||
| 2430 | "to each file path used for the program installation. The packaging script " | ||
| 2431 | "will set <literal>$(DESTDIR)</literal> to the temporary directory." | ||
| 2432 | msgstr "" | ||
| 2433 | "如果你需要修改 <filename>Makefile</filename> 檔案,要確保其支持 <literal>" | ||
| 2434 | "$(DESTDIR)</literal> 變量。默認情況下 <literal>$(DESTDIR)</literal> 變量沒有" | ||
| 2435 | "設置並且默認使用程式選擇的安裝位置。打包腳本會將 <literal>$(DESTDIR)</" | ||
| 2436 | "literal> 設置爲臨時目錄。" | ||
| 2437 | osamu | 8601 | |
| 2438 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 2439 | osamu | 8653 | msgid "" |
| 2440 | "For multiple binary packages, the <command>dh_auto_install</command> command " | ||
| 2441 | "uses <filename>debian/tmp</filename> as the temporary directory while the " | ||
| 2442 | "<command>dh_install</command> command with the help of <filename>debian/" | ||
| 2443 | "<replaceable>package-1</replaceable>.install</filename> and <filename>debian/" | ||
| 2444 | "<replaceable>package-2</replaceable>.install</filename> files will split " | ||
| 2445 | "contents of <filename>debian/tmp</filename> into <filename>debian/" | ||
| 2446 | "<replaceable>package-1</replaceable></filename> and <filename>debian/" | ||
| 2447 | "<replaceable>package-2</replaceable></filename> temporary directories to " | ||
| 2448 | "create multiple binary <filename>*.deb</filename> packages." | ||
| 2449 | msgstr "" | ||
| 2450 | "對於多個二進位套件,<command>dh_auto_install</command> 將臨時目錄設置爲" | ||
| 2451 | "<filename>debian/tmp</filename>,而 <command>dh_install</command> 命令則將檔" | ||
| 2452 | "案按照 <filename>debian/<replaceable>package-1</replaceable>.install</" | ||
| 2453 | "filename> 和 <filename>debian/<replaceable>package-2</replaceable>.install</" | ||
| 2454 | "filename> 等檔案的描述將 <filename>debian/tmp</filename> 中的檔案分別裝入 " | ||
| 2455 | "<filename>debian/<replaceable>package-1</replaceable></filename> 和 " | ||
| 2456 | "<filename>debian/<replaceable>package-2</replaceable></filename> 等臨時目錄以" | ||
| 2457 | "創建 <filename>*.deb</filename> 套件。" | ||
| 2458 | osamu | 8601 | |
| 2459 | #. type: Content of: <book><chapter><section><para> | ||
| 2460 | osamu | 8653 | msgid "" |
| 2461 | "The temporary directory used by the <command>dh_auto_install</command> " | ||
| 2462 | "command is chosen as <filename>debian/<replaceable>package</replaceable></" | ||
| 2463 | "filename> for single binary packages. <placeholder type=\"footnote\" id=" | ||
| 2464 | "\"0\"/> Everything that is contained in the temporary directory will be " | ||
| 2465 | "installed on a user's system when they install your package, the only " | ||
| 2466 | "difference is that <command>dpkg</command> will be installing the files in " | ||
| 2467 | "the root directory." | ||
| 2468 | msgstr "" | ||
| 2469 | "對於單個二進位套件 <command>dh_auto_install</command> 將臨時目錄設置爲 " | ||
| 2470 | "<filename>debian/<replaceable>package</replaceable></filename>。<placeholder " | ||
| 2471 | "type=\"footnote\" id=\"0\"/> 臨時目錄中的全部檔案都將在用戶安裝套件時被安裝到" | ||
| 2472 | "用戶系統,唯一的區別是 <command>dpkg</command> 會把檔案安裝到真實的根目錄樹" | ||
| 2473 | "中。" | ||
| 2474 | osamu | 8601 | |
| 2475 | #. type: Content of: <book><chapter><section><para> | ||
| 2476 | osamu | 8653 | msgid "" |
| 2477 | "Bear in mind that even though your program installs in <filename>debian/" | ||
| 2478 | "<replaceable>package</replaceable></filename>, it still needs to behave " | ||
| 2479 | "correctly when placed in the root directory, i.e. when installed from the " | ||
| 2480 | "<filename>.deb</filename> package. So you must not allow the build system " | ||
| 2481 | "to hardcode strings like <literal>/home/me/deb/<replaceable>package</" | ||
| 2482 | "replaceable>-<replaceable>version</replaceable>/usr/share/" | ||
| 2483 | "<replaceable>package</replaceable></literal> into the package file." | ||
| 2484 | msgstr "" | ||
| 2485 | "請記住,即使你的程式正確安裝到了<filename>debian/<replaceable>package</" | ||
| 2486 | "replaceable></filename>,仍然要考慮它可以在在實際的根目錄中安裝的情形,即從" | ||
| 2487 | "<filename>.deb</filename> 套件檔案安裝的情形。所以絕對不允許將諸如 <literal>/" | ||
| 2488 | "home/me/deb/<replaceable>package</replaceable>-<replaceable>version</" | ||
| 2489 | "replaceable>/usr/share/<replaceable>package</replaceable></literal> 的內容硬" | ||
| 2490 | "編碼到編譯系統中並裝入套件檔案。" | ||
| 2491 | osamu | 8601 | |
| 2492 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 2493 | osamu | 8653 | msgid "" |
| 2494 | "This is just an example to show how the <filename>Makefile</filename> file " | ||
| 2495 | "should look like. If the <filename>Makefile</filename> file is created by " | ||
| 2496 | "the <command>./configure</command> command, the correct way to fix this kind " | ||
| 2497 | "of <filename>Makefile</filename> is to executed the <command>./configure</" | ||
| 2498 | "command> command from the <command>dh_auto_configure</command> command with " | ||
| 2499 | "default options including <literal>--prefix=/usr</literal>." | ||
| 2500 | msgstr "" | ||
| 2501 | "這只是一個 <filename>Makefile</filename> 的例子。如果 <filename>Makefile</" | ||
| 2502 | "filename> 是通過 <command>./configure</command> 命令生成的,修復該類的 " | ||
| 2503 | "<filename>Makefile</filename> 的方法是通過 <command>dh_auto_configure</" | ||
| 2504 | "command> 執行 <command>./configure</command>,並帶上如 <literal>--prefix=/" | ||
| 2505 | "usr</literal> 的默認選項。" | ||
| 2506 | osamu | 8601 | |
| 2507 | #. type: Content of: <book><chapter><section><para> | ||
| 2508 | osamu | 8653 | msgid "" |
| 2509 | "Here's the relevant part of <systemitem role=\"package\">gentoo</" | ||
| 2510 | "systemitem>'s <filename>Makefile</filename> file <placeholder type=\"footnote" | ||
| 2511 | "\" id=\"0\"/>:" | ||
| 2512 | msgstr "" | ||
| 2513 | "以下是 <systemitem role=\"package\">gentoo</systemitem> 的 " | ||
| 2514 | "<filename>Makefile</filename> 檔案中的相關部分<placeholder type=\"footnote\" " | ||
| 2515 | "id=\"0\"/>:" | ||
| 2516 | osamu | 8601 | |
| 2517 | #. type: Content of: <book><chapter><section><screen> | ||
| 2518 | osamu | 8619 | #, no-wrap |
| 2519 | osamu | 8601 | msgid "" |
| 2520 | "# Where to put binary on 'make install'?\n" | ||
| 2521 | "BIN = /usr/local/bin\n" | ||
| 2522 | "# Where to put icons on 'make install'?\n" | ||
| 2523 | "ICONS = /usr/local/share/gentoo\n" | ||
| 2524 | msgstr "" | ||
| 2525 | osamu | 8619 | "# Where to put binary on 'make install'?\n" |
| 2526 | osamu | 8601 | "BIN = /usr/local/bin\n" |
| 2527 | osamu | 8619 | "# Where to put icons on 'make install'?\n" |
| 2528 | osamu | 8601 | "ICONS = /usr/local/share/gentoo\n" |
| 2529 | |||
| 2530 | #. type: Content of: <book><chapter><section><para> | ||
| 2531 | osamu | 8653 | msgid "" |
| 2532 | "We see that the files are set to install under <filename>/usr/local</" | ||
| 2533 | "filename>. Change those paths to:" | ||
| 2534 | msgstr "" | ||
| 2535 | "可以看到檔案被放到了 <filename>/usr/local</filename> 下。把他們改變爲:" | ||
| 2536 | osamu | 8601 | |
| 2537 | #. type: Content of: <book><chapter><section><screen> | ||
| 2538 | osamu | 8619 | #, no-wrap |
| 2539 | osamu | 8601 | msgid "" |
| 2540 | "# Where to put binary on 'make install'?\n" | ||
| 2541 | "BIN = $(DESTDIR)/usr/bin\n" | ||
| 2542 | "# Where to put icons on 'make install'?\n" | ||
| 2543 | "ICONS = $(DESTDIR)/usr/share/gentoo\n" | ||
| 2544 | msgstr "" | ||
| 2545 | osamu | 8619 | "# Where to put binary on 'make install'?\n" |
| 2546 | osamu | 8601 | "BIN = $(DESTDIR)/usr/bin\n" |
| 2547 | osamu | 8619 | "# Where to put icons on 'make install'?\n" |
| 2548 | osamu | 8601 | "ICONS = $(DESTDIR)/usr/share/gentoo\n" |
| 2549 | |||
| 2550 | #. type: Content of: <book><chapter><section><para> | ||
| 2551 | osamu | 8653 | msgid "" |
| 2552 | "But why in that directory, and not some other? Because Debian packages never " | ||
| 2553 | "install files beneath <filename>/usr/local</filename> -- that tree is " | ||
| 2554 | "reserved for the system administrator's use. Such files on Debian systems " | ||
| 2555 | "go under <filename>/usr</filename> instead." | ||
| 2556 | msgstr "" | ||
| 2557 | "爲什麼要放在那個目錄,而非其他的呢?因爲 Debian 套件從不在 <filename>/usr/" | ||
| 2558 | "local</filename> 下安裝檔案——那是保留給系統管理員使用的。在 Debian 中這些檔案" | ||
| 2559 | "被直接放入 <filename>/usr</filename>。" | ||
| 2560 | osamu | 8601 | |
| 2561 | #. type: Content of: <book><chapter><section><para> | ||
| 2562 | osamu | 8646 | #, fuzzy |
| 2563 | osamu | 8653 | #| msgid "" |
| 2564 | #| "The more exact locations for binaries, icons, documentation etc. are " | ||
| 2565 | #| "specified in the Filesystem Hierarchy Standard (see <filename>/usr/share/" | ||
| 2566 | #| "doc/debian-policy/fhs/</filename>). I recommend you browse it and read " | ||
| 2567 | #| "the sections that might concern your package." | ||
| 2568 | msgid "" | ||
| 2569 | "The more exact locations for binaries, icons, documentation etc. are " | ||
| 2570 | "specified in the Filesystem Hierarchy Standard (FHS). I recommend you " | ||
| 2571 | "browse it and read the sections that might concern your package." | ||
| 2572 | msgstr "" | ||
| 2573 | "二進位檔案、圖示和文件等的更詳細位置均在檔案層級標準(FHS,參考 <filename>/" | ||
| 2574 | "usr/share/doc/debian-policy/fhs/</filename>)中作出了詳盡描述。我建議閱讀相關" | ||
| 2575 | "章節以瞭解可能影響你套件的內容。" | ||
| 2576 | osamu | 8601 | |
| 2577 | #. type: Content of: <book><chapter><section><para> | ||
| 2578 | osamu | 8653 | msgid "" |
| 2579 | "So, we should install the binary in <filename>/usr/bin</filename> instead of " | ||
| 2580 | "<filename>/usr/local/bin</filename>, the manual page in <filename>/usr/share/" | ||
| 2581 | "man/man1</filename> instead of <filename>/usr/local/man/man1</filename> " | ||
| 2582 | "etc. Notice how there's no manual page mentioned in <systemitem role=" | ||
| 2583 | "\"package\">gentoo</systemitem>'s <filename>Makefile</filename>, but since " | ||
| 2584 | "the Debian Policy requires that every program has one, we'll make one later " | ||
| 2585 | "and install it in <filename>/usr/share/man/man1</filename>." | ||
| 2586 | msgstr "" | ||
| 2587 | "因此,我們應當把二進位檔案安裝到 <filename>/usr/bin</filename> 而非 " | ||
| 2588 | "<filename>/usr/local/bin</filename>,man 手冊頁則應放在 <filename>/usr/share/" | ||
| 2589 | "man/man1</filename> 而非 <filename>/usr/local/man/man1</filename> 等。注意到 " | ||
| 2590 | "<systemitem role=\"package\">gentoo</systemitem>的 <filename>Makefile</" | ||
| 2591 | "filename> 裏沒有提及手冊頁,而按照 Debian Policy 的要求,每個程式都應當有一個" | ||
| 2592 | "手冊頁,我們將在稍後製作一個並安裝到 <filename>/usr/share/man/man1</filename>" | ||
| 2593 | osamu | 8601 | |
| 2594 | #. type: Content of: <book><chapter><section><para> | ||
| 2595 | osamu | 8653 | msgid "" |
| 2596 | "Some programs don't use <filename>Makefile</filename> variables to define " | ||
| 2597 | "paths such as these. This means you might have to edit some real C sources " | ||
| 2598 | "in order to fix them to use the right locations. But where to search, and " | ||
| 2599 | "exactly what for? You can find this out by issuing:" | ||
| 2600 | msgstr "" | ||
| 2601 | "有些程式不使用 <filename>Makefile</filename> 變量定義路徑,這意味着你可能需要" | ||
| 2602 | "去編輯 C 程式原始碼來使他們使用正確的路徑。但是到哪裏去搜索,哪些才是呢?你可" | ||
| 2603 | "以通過以下的方法找到它們:" | ||
| 2604 | osamu | 8601 | |
| 2605 | #. type: Content of: <book><chapter><section><screen> | ||
| 2606 | #, no-wrap | ||
| 2607 | msgid "$ grep -nr -e 'usr/local/lib' --include='*.[c|h]' .\n" | ||
| 2608 | msgstr "$ grep -nr -e 'usr/local/lib' --include='*.[c|h]' .\n" | ||
| 2609 | |||
| 2610 | #. type: Content of: <book><chapter><section><para> | ||
| 2611 | osamu | 8653 | msgid "" |
| 2612 | "<command>grep</command> will run recursively through the source tree and " | ||
| 2613 | "tell you the filename and the line number for all matches." | ||
| 2614 | msgstr "" | ||
| 2615 | "<command>grep</command> 會遞歸搜索整個原始碼樹並告訴你所有匹配項的檔案名和行" | ||
| 2616 | "號。" | ||
| 2617 | osamu | 8601 | |
| 2618 | #. type: Content of: <book><chapter><section><para> | ||
| 2619 | osamu | 8646 | #, fuzzy |
| 2620 | osamu | 8653 | #| msgid "" |
| 2621 | #| "Edit those files and in those lines replace <literal>usr/local/lib</" | ||
| 2622 | #| "literal> with <literal>usr/lib</literal>." | ||
| 2623 | msgid "" | ||
| 2624 | "Edit those files and in those lines replace <literal>usr/local/lib</literal> " | ||
| 2625 | "with <literal>usr/lib</literal>. This can be done automatically as follows:" | ||
| 2626 | msgstr "" | ||
| 2627 | "編輯那些檔案,用 <literal>usr/lib</literal> 替換 <literal>usr/local/lib</" | ||
| 2628 | "literal>。" | ||
| 2629 | osamu | 8601 | |
| 2630 | #. type: Content of: <book><chapter><section><screen> | ||
| 2631 | #, no-wrap | ||
| 2632 | msgid "" | ||
| 2633 | "$ vim '+argdo %s/usr\\/local\\/lib/usr\\/lib/gce|update' +q \\\n" | ||
| 2634 | " $(find . -type f -name '*.[c|h]')\n" | ||
| 2635 | msgstr "" | ||
| 2636 | "$ vim '+argdo %s/usr\\/local\\/lib/usr\\/lib/gce|update' +q \\\n" | ||
| 2637 | " $(find . -type f -name '*.[c|h]')\n" | ||
| 2638 | |||
| 2639 | #. type: Content of: <book><chapter><section><para> | ||
| 2640 | msgid "Be careful that you don't mess up the rest of the code! :-)" | ||
| 2641 | msgstr "小心不要弄亂其他部分的程式碼! :-)" | ||
| 2642 | |||
| 2643 | #. type: Content of: <book><chapter><section><para> | ||
| 2644 | osamu | 8653 | msgid "" |
| 2645 | "After that you should find the install target (search for line that starts " | ||
| 2646 | "with <literal>install:</literal>, that will usually work) and rename all " | ||
| 2647 | "references to directories other than ones defined at the top of the " | ||
| 2648 | "<filename>Makefile</filename>." | ||
| 2649 | msgstr "" | ||
| 2650 | "此後你應該找到 install target (通常搜索以 <literal>install:</literal> 開頭的" | ||
| 2651 | "行即可),並把所有的相關目錄以及在 <filename>Makefile</filename> 頂部定義變量" | ||
| 2652 | "均做修改。" | ||
| 2653 | osamu | 8601 | |
| 2654 | #. type: Content of: <book><chapter><section><para> | ||
| 2655 | osamu | 8646 | #, fuzzy |
| 2656 | osamu | 8653 | #| msgid "" |
| 2657 | #| "After your upstream bug fix, <systemitem role=\"package\">gentoo</" | ||
| 2658 | #| "systemitem>'s install target said:" | ||
| 2659 | msgid "" | ||
| 2660 | "Before your upstream bug fix, <systemitem role=\"package\">gentoo</" | ||
| 2661 | "systemitem>'s install target said:" | ||
| 2662 | msgstr "" | ||
| 2663 | "在你修復了上游的 Bug 後,<systemitem role=\"package\">gentoo</systemitem> 的 " | ||
| 2664 | "install target 應是這樣:" | ||
| 2665 | osamu | 8601 | |
| 2666 | #. type: Content of: <book><chapter><section><para> | ||
| 2667 | osamu | 8646 | #, fuzzy |
| 2668 | osamu | 8653 | #| msgid "" |
| 2669 | #| "Let's fix this and record this with the <command>quilt</command> command " | ||
| 2670 | #| "as <filename>debian/patches/install.patch</filename>." | ||
| 2671 | msgid "" | ||
| 2672 | "Let's fix this and record this with the <command>dquilt</command> command as " | ||
| 2673 | "<filename>debian/patches/install.patch</filename>." | ||
| 2674 | msgstr "" | ||
| 2675 | "讓我們把這些修改使用 <command>quilt</command> 記錄到<filename>debian/patches/" | ||
| 2676 | "install.patch</filename>。" | ||
| 2677 | osamu | 8601 | |
| 2678 | #. type: Content of: <book><chapter><section><screen> | ||
| 2679 | osamu | 8646 | #, fuzzy, no-wrap |
| 2680 | #| msgid "" | ||
| 2681 | #| "$ quilt new install.patch\n" | ||
| 2682 | #| "$ quilt add Makefile\n" | ||
| 2683 | osamu | 8601 | msgid "" |
| 2684 | osamu | 8646 | "$ dquilt new install.patch\n" |
| 2685 | "$ dquilt add Makefile\n" | ||
| 2686 | osamu | 8601 | msgstr "" |
| 2687 | "$ quilt new install.patch\n" | ||
| 2688 | "$ quilt add Makefile\n" | ||
| 2689 | |||
| 2690 | #. type: Content of: <book><chapter><section><para> | ||
| 2691 | msgid "Let's change this for Debian package as following using the editor:" | ||
| 2692 | msgstr "我們使用編輯器按照以下內容爲 Debian 套件做修改:" | ||
| 2693 | |||
| 2694 | #. type: Content of: <book><chapter><section><screen> | ||
| 2695 | #, no-wrap | ||
| 2696 | msgid "" | ||
| 2697 | "install: gentoo-target\n" | ||
| 2698 | " install -d $(BIN) $(ICONS) $(DESTDIR)/etc\n" | ||
| 2699 | " install ./gentoo $(BIN)\n" | ||
| 2700 | " install -m644 icons/* $(ICONS)\n" | ||
| 2701 | " install -m644 gentoorc-example $(DESTDIR)/etc/gentoorc\n" | ||
| 2702 | msgstr "" | ||
| 2703 | "install: gentoo-target\n" | ||
| 2704 | " install -d $(BIN) $(ICONS) $(DESTDIR)/etc\n" | ||
| 2705 | " install ./gentoo $(BIN)\n" | ||
| 2706 | " install -m644 icons/* $(ICONS)\n" | ||
| 2707 | " install -m644 gentoorc-example $(DESTDIR)/etc/gentoorc\n" | ||
| 2708 | |||
| 2709 | #. type: Content of: <book><chapter><section><para> | ||
| 2710 | osamu | 8653 | msgid "" |
| 2711 | "You've surely noticed that there's now a <literal>install -d</literal> " | ||
| 2712 | "command before the other commands in the rule. The original " | ||
| 2713 | "<filename>Makefile</filename> didn't have it because usually the <literal>/" | ||
| 2714 | "usr/local/bin</literal> and other directories already exist on the system " | ||
| 2715 | "where one runs <literal>make install</literal>. However, since we will " | ||
| 2716 | "install into our own empty (or even nonexistent) directory, we will have to " | ||
| 2717 | "create each and every one of those directories." | ||
| 2718 | msgstr "" | ||
| 2719 | "你一定會注意到在其他命令前有了一個 <literal>install -d</literal> 命令。原始" | ||
| 2720 | "的 <filename>Makefile</filename> 檔案中沒有它,因爲通常情況下 <literal>/usr/" | ||
| 2721 | "local/bin</literal> 和用到的其他目錄早已存在於系統,使用 <literal>make " | ||
| 2722 | "install</literal> 時不用對此處理。然而因爲我們要向空目錄或尚不存在的目錄中安" | ||
| 2723 | "裝,我們必須創建每一個目錄。" | ||
| 2724 | osamu | 8601 | |
| 2725 | #. type: Content of: <book><chapter><section><para> | ||
| 2726 | osamu | 8653 | msgid "" |
| 2727 | "We can also add in other things at the end of the rule, like the " | ||
| 2728 | "installation of additional documentation that the upstream authors sometimes " | ||
| 2729 | "omit:" | ||
| 2730 | osamu | 8601 | msgstr "我們還可以在末尾添加上其他的內容,比如上游作者有時會省略的附加文件:" |
| 2731 | |||
| 2732 | #. type: Content of: <book><chapter><section><screen> | ||
| 2733 | #, no-wrap | ||
| 2734 | msgid "" | ||
| 2735 | " install -d $(DESTDIR)/usr/share/doc/gentoo/html\n" | ||
| 2736 | " cp -a docs/* $(DESTDIR)/usr/share/doc/gentoo/html\n" | ||
| 2737 | msgstr "" | ||
| 2738 | " install -d $(DESTDIR)/usr/share/doc/gentoo/html\n" | ||
| 2739 | " cp -a docs/* $(DESTDIR)/usr/share/doc/gentoo/html\n" | ||
| 2740 | |||
| 2741 | #. type: Content of: <book><chapter><section><para> | ||
| 2742 | osamu | 8646 | #, fuzzy |
| 2743 | osamu | 8653 | #| msgid "" |
| 2744 | #| "After careful check, if everything is fine, ask <command>quilt</command> " | ||
| 2745 | #| "to refresh the patch to create <filename>debian/patches/install.patch</" | ||
| 2746 | #| "filename> and add its description." | ||
| 2747 | msgid "" | ||
| 2748 | "After careful check, if everything is fine, ask <command>dquilt</command> to " | ||
| 2749 | "refresh the patch to create <filename>debian/patches/install.patch</" | ||
| 2750 | "filename> and add its description." | ||
| 2751 | msgstr "" | ||
| 2752 | "仔細檢査後如果沒有問題,使用 <command>quilt</command> 更新補丁以創建 " | ||
| 2753 | "<filename>debian/patches/install.patch</filename> 檔案並添加對它的描述。" | ||
| 2754 | osamu | 8601 | |
| 2755 | #. type: Content of: <book><chapter><section><para> | ||
| 2756 | msgid "Now you have a series of patches." | ||
| 2757 | msgstr "現在你有了一格系列的補丁。" | ||
| 2758 | |||
| 2759 | #. type: Content of: <book><chapter><section><orderedlist><listitem><para> | ||
| 2760 | osamu | 8653 | msgid "" |
| 2761 | "Upstream bug fix: <filename>debian/patches/fix-gentoo-target.patch</filename>" | ||
| 2762 | msgstr "" | ||
| 2763 | "修復上游 Bug:<filename>debian/patches/fix-gentoo-target.patch</filename>" | ||
| 2764 | osamu | 8601 | |
| 2765 | #. type: Content of: <book><chapter><section><orderedlist><listitem><para> | ||
| 2766 | osamu | 8653 | msgid "" |
| 2767 | "Debian specific packaging modification: <filename>debian/patches/install." | ||
| 2768 | "patch</filename>" | ||
| 2769 | msgstr "" | ||
| 2770 | "Debian 特有的打包修改:<filename>debian/patches/install.patch</filename>" | ||
| 2771 | osamu | 8601 | |
| 2772 | #. type: Content of: <book><chapter><section><para> | ||
| 2773 | osamu | 8653 | msgid "" |
| 2774 | "Whenever you make changes that are not specifically related to Debian " | ||
| 2775 | "package such as <filename>debian/patches/fix-gentoo-target.patch</filename>, " | ||
| 2776 | "be sure to send them to the upstream maintainer so they can be included in " | ||
| 2777 | "the next program revision and be useful to everyone else. Also remember to " | ||
| 2778 | "make your fixes not specific to Debian or Linux (or even Unix!) prior to " | ||
| 2779 | "sending them -- make them portable. This will make your fixes much easier " | ||
| 2780 | "to apply." | ||
| 2781 | msgstr "" | ||
| 2782 | "進行任何不是 Debian 特有的修改時,比如 <filename>debian/patches/fix-gentoo-" | ||
| 2783 | "target.patch</filename>,一定要向上遊作者進行反饋,以便上游作者方便在下一版本" | ||
| 2784 | "中以使更多人受益。同時請記住在做不特別針對 Debian 或 Linux (甚至是 Unix!)的" | ||
| 2785 | "修改時要使其可以移植,這會使你的修改更容易被接受。" | ||
| 2786 | osamu | 8601 | |
| 2787 | #. type: Content of: <book><chapter><section><para> | ||
| 2788 | osamu | 8653 | msgid "" |
| 2789 | "Note that you don't have to send the <filename>debian/*</filename> files " | ||
| 2790 | "upstream." | ||
| 2791 | osamu | 8601 | msgstr "注意你不一定要把 <filename>debian/*</filename> 都提交到上游。" |
| 2792 | |||
| 2793 | #. type: Content of: <book><chapter><section><title> | ||
| 2794 | msgid "Differing libraries" | ||
| 2795 | msgstr "不一樣的函式庫名稱" | ||
| 2796 | |||
| 2797 | #. type: Content of: <book><chapter><section><para> | ||
| 2798 | osamu | 8653 | msgid "" |
| 2799 | "There is one other common problem: libraries are often different from " | ||
| 2800 | "platform to platform. For example, a <filename>Makefile</filename> can " | ||
| 2801 | "contain a reference to a library which doesn't exist on Debian systems. In " | ||
| 2802 | "that case, we need to change it to a library which does exist in Debian, and " | ||
| 2803 | "serves the same purpose." | ||
| 2804 | msgstr "" | ||
| 2805 | "還有另外一個常見的問題:不同平臺之間的函式庫常常是不同的。例如一個 " | ||
| 2806 | "<filename>Makefile</filename> 中可能引了用一個不在 Debian 上存在的函式庫。這" | ||
| 2807 | "種情況下我們需要將其修改爲 Debian 中存在的、提供完全相同功能的函式庫。" | ||
| 2808 | osamu | 8601 | |
| 2809 | #. type: Content of: <book><chapter><section><para><footnote><para> | ||
| 2810 | osamu | 8653 | msgid "" |
| 2811 | "The author realizes that this is not the best example considering our " | ||
| 2812 | "<systemitem role=\"package\">libncurses</systemitem> package now ships with " | ||
| 2813 | "a <filename>libcurses.so</filename> symlink, but he couldn't think of a " | ||
| 2814 | "better one. Suggestions very welcome :-)" | ||
| 2815 | msgstr "" | ||
| 2816 | "作者已經意識到這不是一個最好的例子,因爲我們的 <systemitem role=\"package" | ||
| 2817 | "\">libncurses</systemitem> 套件現在提供了一個 <filename>libcurses.so</" | ||
| 2818 | "filename> 的符號鏈接,但作者還沒有想出更好的例子。非常歡迎提出建議 :-)" | ||
| 2819 | osamu | 8601 | |
| 2820 | #. type: Content of: <book><chapter><section><para> | ||
| 2821 | osamu | 8653 | msgid "" |
| 2822 | "So, if there is a line in your program's <filename>Makefile</filename> (or " | ||
| 2823 | "<filename>Makefile.in</filename>) that says something like this (and your " | ||
| 2824 | "program doesn't compile) <placeholder type=\"footnote\" id=\"0\"/>:" | ||
| 2825 | msgstr "" | ||
| 2826 | "如果你手中程式的 <filename>Makefile</filename>(或 <filename>Makefile.in</" | ||
| 2827 | "filename>)中有如下的行(且程式無法通過編譯)<placeholder type=\"footnote\" id=" | ||
| 2828 | "\"0\"/>:" | ||
| 2829 | osamu | 8601 | |
| 2830 | #. type: Content of: <book><chapter><section><screen> | ||
| 2831 | #, no-wrap | ||
| 2832 | msgid "LIBS = -lcurses -lsomething -lsomethingelse\n" | ||
| 2833 | msgstr "LIBS = -lcurses -lsomething -lsomethingelse\n" | ||
| 2834 | |||
| 2835 | #. type: Content of: <book><chapter><section><para> | ||
| 2836 | osamu | 8653 | msgid "" |
| 2837 | "Let's fix this as <filename>debian/patches/ncurse.patch</filename> by " | ||
| 2838 | "changing <literal>curses</literal> into <literal>ncurses</literal>." | ||
| 2839 | msgstr "" | ||
| 2840 | "我們將這個補丁命名爲 <filename>debian/patches/ncurse.patch</filename>,內容是" | ||
| 2841 | "把 <literal>curses</literal> 改爲 <literal>ncurses</literal>。" | ||
| 2842 | osamu | 8601 | |
| 2843 | #. type: Content of: <book><chapter><section><screen> | ||
| 2844 | osamu | 8646 | #, fuzzy, no-wrap |
| 2845 | #| msgid "" | ||
| 2846 | #| "$ quilt new ncurse.patch\n" | ||
| 2847 | #| "$ quilt add Makefile\n" | ||
| 2848 | #| "$ sed -i -e s/-lcurses/-lncurses/g Makefile\n" | ||
| 2849 | #| "$ quilt refresh\n" | ||
| 2850 | #| "$ quilt header -e\n" | ||
| 2851 | #| "... describe patch\n" | ||
| 2852 | osamu | 8601 | msgid "" |
| 2853 | osamu | 8646 | "$ dquilt new ncurse.patch\n" |
| 2854 | "$ dquilt add Makefile\n" | ||
| 2855 | osamu | 8601 | "$ sed -i -e s/-lcurses/-lncurses/g Makefile\n" |
| 2856 | osamu | 8646 | "$ dquilt refresh\n" |
| 2857 | "$ dquilt header -e\n" | ||
| 2858 | osamu | 8601 | "... describe patch\n" |
| 2859 | msgstr "" | ||
| 2860 | "$ quilt new ncurse.patch\n" | ||
| 2861 | "$ quilt add Makefile\n" | ||
| 2862 | "$ sed -i -e s/-lcurses/-lncurses/g Makefile\n" | ||
| 2863 | "$ quilt refresh\n" | ||
| 2864 | "$ quilt header -e\n" | ||
| 2865 | "... 描述補丁\n" | ||
| 2866 | |||
| 2867 | #. type: Content of: <book><chapter><title> | ||
| 2868 | msgid "Required files under the <filename>debian</filename> directory" | ||
| 2869 | msgstr "<filename>debian</filename> 目錄中的必須內容" | ||
| 2870 | |||
| 2871 | #. type: Content of: <book><chapter><para> | ||
| 2872 | osamu | 8653 | msgid "" |
| 2873 | "There is a new subdirectory under the program's source directory, it's " | ||
| 2874 | "called <filename>debian</filename>. There are a number of files in this " | ||
| 2875 | "directory that we should edit in order to customize the behavior of the " | ||
| 2876 | "package. The most important of them are <filename>control</filename>, " | ||
| 2877 | "<filename>changelog</filename>, <filename>copyright</filename> and " | ||
| 2878 | "<filename>rules</filename>, which are required for all packages." | ||
| 2879 | osamu | 8619 | msgstr "" |
| 2880 | osamu | 8601 | |
| 2881 | #. type: Content of: <book><chapter><section><title> | ||
| 2882 | msgid "<filename>control</filename> file" | ||
| 2883 | msgstr "<filename>control</filename> 檔案" | ||
| 2884 | |||
| 2885 | #. type: Content of: <book><chapter><section><para> | ||
| 2886 | osamu | 8653 | msgid "" |
| 2887 | "This file contains various values which <command>dpkg</command>, " | ||
| 2888 | "<command>dselect</command>, <command>apt-get</command>, <command>apt-cache</" | ||
| 2889 | "command>, <command>aptitude</command>, and other package management tools " | ||
| 2890 | "will use to manage the package. It is defined by the <ulink url=\"&policy-" | ||
| 2891 | "control;\">Debian Policy Manual, 5 'Control files and their fields'</ulink>." | ||
| 2892 | msgstr "" | ||
| 2893 | "這個檔案包含了很多供 <command>dpkg</command>、<command>dselect</command>、" | ||
| 2894 | "<command>apt-get</command>、<command>apt-cache</command>、<command>aptitude</" | ||
| 2895 | "command> 等套件管理工具提取訊息以進行管理時所使用的變量。這些變量均在 <ulink " | ||
| 2896 | "url=\"&policy-control;\">Debian Policy Manual, 5 'Control files and their " | ||
| 2897 | "fields'</ulink> 中定義。" | ||
| 2898 | osamu | 8601 | |
| 2899 | #. type: Content of: <book><chapter><section><para> | ||
| 2900 | osamu | 8653 | msgid "" |
| 2901 | &nb |