[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

maint-guide (chapter 2)



倉敷です。

表題の翻訳です。査読をお願いします。

ではでは。
--
KURASHIKI Satoru

--
#. type: <heading></heading>
#: maint-guide.en.sgml:391
msgid "First steps"
msgstr "はじめの一歩"

#. type: <p></p>
#: maint-guide.en.sgml:393
msgid ""
"Let's try to make your own package (or, better even, adopt an existing one)."
msgstr "自分のパッケージを作成 (もしくは、より望ましく、既存のパッケージを引き取り) してみましょう "

#. type: <heading></heading>
#: maint-guide.en.sgml:395
msgid "Choose your program"
msgstr "プログラムの選定"

#. type: <p></p>
#: maint-guide.en.sgml:399
msgid ""
"You have probably chosen the package you want to create. The first thing you "
"need to do is check if the package is in the distribution archive already by "
"using <prgn>aptitude</prgn>."
msgstr "パッケージにしたいプログラムについてはすでに各自お考えがあると思います。まず最初にしなければならないことは、そのパッケージがすでにディストリビューションに収録されていないか <prgn>aptitude</prgn> を使ってどうか確認することです。"

#. type: <p></p>
#: maint-guide.en.sgml:403
msgid ""
"You can also check package information through <url id=\"http://www.debian.";
"org/distrib/packages\" name=\"package search page\"> and <url id=\"http://";
"packages.qa.debian.org/common/index.html\" name=\"Debian Package Tracking "
"System\">."
msgstr ""
"パッケージの情報は、<url id=\"http://www.debian.org/distrib/packages\"; name="
"\"パッケージ検索ページ\"> や <url id=\"http://packages.qa.debian.org/common/";
"index.html\" name=\"Debian パッケージ追跡システム\">でもチェックすることがで"
"きます。"

#. type: <p></p>
#: maint-guide.en.sgml:411
msgid ""
"If the package already exists, well, install it! :-) If it happens to be "
"<strong>orphaned</strong> -- if its maintainer is set to <url id=\"http://qa.";
"debian.org/\" name=\"Debian QA Group\">, you may be able to pick it up if "
"it's still available (check the ownership status at <url id=\"http://bugs.";
"debian.org/wnpp\" name=\"Debian Bug report logs: Bugs in package wnpp in "
"unstable\">). You may also adopt a package for which the corresponding "
"maintainer has filed a \"Request for Adoption\" (<strong>RFA</strong>)."
msgstr "もしパッケージが既に存在していたら、インストールしましょう! :-) もしそのパッケージが<strong>「みなしご」</strong>にされていたら (もしメンテナの名前が <url id=\"http://qa.debian.org/\"; name=\"Debian QA Group\"> になっていたら)、それがまだ有効であれば、そのパッケージを引き取ることができるかもしれません (<url id=\"http://bugs.debian.org/wnpp\"; name=\"Debian Bug report logs: Bugs in package wnpp in unstable\"> で所有者の状況をチェックしてください)。関係しているメンテナが \"養子の要求\" (<strong>RFA</strong>) を出しているパッケージを引きとるのもアリです。"

#. type: <p><list>
#: maint-guide.en.sgml:412
msgid ""
"Several different views of orphaned or RFA'ed packages are available at:"
msgstr ""
"みなしごの、もしくは RFA の出ているパッケージについて、いくつか違った見方がで"
"きるようになっています:"

#. type: <p><list>
#: maint-guide.en.sgml:427
msgid ""
"As a side note, it's important to point out that Debian already has packages "
"for most kinds of programs, and the number of packages already in the Debian "
"archive is much larger than that of contributors with upload rights. Thus, "
"contributions to packages already in the archive are far more appreciated "
"(and more likely to receive sponsorship) by other developers "
"<footnote><p>Having said that, there will of course always be new programs "
"that are worthwhile packaging.</p></footnote>. You can do that in various "
"ways."
msgstr ""
"注釈ですが、Debian にはすでにほとんどの種類のプログラムが含まれていること、"
"Debian アーカイブにすでに含まれているパッケージの数は、アップロード権限をもつ"
"ユーザの数よりもはるかに多いこと、に注意しておくのは重要です。従って、すでに"
"アーカイブに含まれているパッケージへの作業は、他の開発者からはるかに喜ばれま"
"す (し、よりスポンサーしてもらえる見込みがあります)。\n"
"<footnote><p>とはいっても、パッケージ化する価値のある新しいプログラムはいつ"
"だって存在するでしょう。</p></footnote>。作業のやり方はいろいろあります。"

#. type: <p></p>
#: maint-guide.en.sgml:429
msgid "taking over orphaned, yet actively used, packages"
msgstr "まだよく使われている、みなしごのパッケージを引き取る"

#. type: <p></p>
#: maint-guide.en.sgml:430
msgid ""
"joining <url id=\"http://wiki.debian.org/Teams\"; name=\"packaging teams\">"
msgstr "<url id=\"http://wiki.debian.org/Teams\"; name=\"パッケージ化チーム\">に参加する"

#. type: <p></p>
#: maint-guide.en.sgml:431
msgid "triaging bugs of very popular packages"
msgstr "非常に有名なパッケージのバグに対処する"

#. type: <p></p>
#: maint-guide.en.sgml:432
msgid ""
"preparing <url id=\"http://www.debian.org/doc/developers-reference/pkgs.";
"html#nmu-qa-upload\" name=\"QA or NMU uploads\">"
msgstr ""
"<url id=\\\"http://www.debian.org/doc/developers-reference/pkgs.\"\n";
"\"html#nmu-qa-upload\\\" name=\\\"QA もしくは NMU アップロード\\\"> を準備す"
"る"

#. type: <p></p>
#: maint-guide.en.sgml:442
msgid ""
"If you are able to adopt the package, get the sources (with something like "
"\"<tt>apt-get source <var>packagename</var></tt>\") and examine them. This "
"document unfortunately doesn't include comprehensive information about "
"adopting packages. Thankfully you shouldn't have a hard time figuring out "
"how the package works since someone has already done the initial set up for "
"you. Keep reading, though, a lot of the advice below will still be "
"applicable for your case."
msgstr ""
"もしパッケージを引き取ることができたら、(<tt>apt-get source <var>パッケージ名"
"</var></tt> などの方法で) ソースを入手して、調べてみてください。残念ながらこ"
"の文書では、パッケージを引き取ることについて、わかりやすく説明してはいませ"
"ん。ありがたいことに、既に誰かがあなたのためにパッケージを準備してくれたわけ"
"ですから、そのパッケージがどのように動作するのか理解することは、それほど難し"
"くはないでしょう。とはいえ、そうした場合でもこの文書に書かれた多くのアドバイ"
"スはそのまま通用しますから、このまま読み進めていってください。"

#. type: <p><list>
#: maint-guide.en.sgml:445
msgid ""
"If the package is new, and you decide you'd like to see it in Debian, "
"proceed as follows:"
msgstr ""
"もしあなたの選んだプログラムがまだパッケージ化されていない もので、それを "
"Debian に入れたいと決めたなら、以下のチェック 項目について確認してください。"

#. type: <p></p>
#: maint-guide.en.sgml:448
msgid ""
"First, you must know that program works, and have tried it for some time to "
"confirm its usefulness."
msgstr ""
"まず、そのプログラムが機能することがわかっていて、その有用性についてある程度"
"の時間試しておかねばなりません。\n"

#. type: <p></p>
#: maint-guide.en.sgml:455
msgid ""
"You must check if no one else is working on the package already at <url id="
"\"http://www.de.debian.org/devel/wnpp/being_packaged\"; name=\"the list of "
"packages being worked on\">. If no one else is working on it, file an ITP "
"(Intent To Package) bug report to the <package>wnpp</package> pseudo-package "
"using <prgn>reportbug</prgn>. If someone's already on it, contact them if "
"you feel you need to. If not - find another interesting program that nobody "
"maintains."
msgstr ""
"<url id=\"http://www.de.debian.org/devel/wnpp/being_packaged\"; name=\"作業中"
"のパッケージ\"> を確認し、他の誰かが、同じプログラムのパッケージを作っていな"
"いかどうか確かめてください。誰も作っていなければ、<prgn>reportbug</prgn> を"
"使って ITP (Intent To Package) のバグレポートを、<package>wnpp</package> 疑似"
"パッケージに送ってください。もし誰か作っていたら、必要に応じて連絡をとってく"
"ださい。もしその必要が無ければ、まだ誰も手をつけていない 他の面白いプログラム"
"を探して再チャレンジです。"

#. type: <p><list>
#: maint-guide.en.sgml:459
msgid "That program <strong>must have a license</strong>."
msgstr "プログラムには、<strong>ライセンスが必ず必要</strong>です。"

#. type: <p></p>
#: maint-guide.en.sgml:465
msgid ""
"For the <tt>main</tt> section, it <strong>must be compliant to all the "
"Debian Free Software Guidelines (DFSG)</strong> (see <url id=\"http://www.";
"debian.org/social_contract#guidelines\">) and <strong>that program must not "
"require a package outside of <tt>main</tt></strong> for compilation or "
"execution as required by the Debian Policy. This is desired case."
msgstr ""
"<tt>main</tt> セクションは、<strong>Debian フリーソフトウェアガイドライン "
"(DFSG) に完全に準拠しなければなりません</strong>し (<url id=\"http://www.";
"debian.org/social_contract#guidelines\"> 参照)、また Debian ポリシーにより、"
"コンパイル・実行時に <strong><tt>main</tt> にあるもの以外のパッケージに依存し"
"てはなりません</strong>。これが望ましいケースです。"

#. type: <p></p>
#: maint-guide.en.sgml:468
msgid ""
"For the <tt>contrib</tt> section, it must be compliant to all the DSFG but "
"it may require a package outside of <tt>main</tt> for compilation or "
"execution."
msgstr ""
"<tt>contrib</tt> セクションは、DSFG に完全に準拠していなければなりませんが、"
"コンパイル・実行時に <tt>main</tt> にあるもの以外のパッケージに依存していても"
"かまいません。"

#. type: <p></p>
#: maint-guide.en.sgml:471
msgid ""
"For the <tt>non-free</tt> section, it may not be compliant to some of the "
"DSFG but it <strong>must be distributable</strong>."
msgstr ""
"<tt>non-free</tt> セクションは、DSFG に準拠していない部分があるかもしれません"
"が、<strong>配布可能でなければなりません</strong>。"

#. type: </list></p>
#: maint-guide.en.sgml:475
msgid ""
"If you are unsure about where it should go, post the license text on <url id="
"\"http://lists.debian.org/debian-legal/\"; name=\"debian-legal@xxxxxxxxxxxxx"
"org\"> and ask for advice."
msgstr ""
"どうするべきかよくわからなければ、<url id=\"http://lists.debian.org/debian-";
"legal/\" name=\"debian-legal@lists.debian.org\"> にライセンス文を送り、アドバ"
"イスを求めてください。"

#. type: <p></p>
#: maint-guide.en.sgml:479
msgid ""
"That program certainly should <strong>not</strong> run setuid root, or even "
"better - it shouldn't need to be setuid or setgid to anything."
msgstr ""
"実行時に setuid root <strong>しない</strong>プログラムがよいでしょう。もっと"
"言えば、どんなときも setuid や setgid を必要としないほうがよいでしょう。"

#. type: <p></p>
#: maint-guide.en.sgml:482
msgid ""
"That program should not be a daemon, or something that goes in <file>*/sbin</"
"file> directories, or open a port as root."
msgstr ""
"デーモンとして動作するプログラムや、<file>*/sbin</file> ディレクトリに配置す"
"るプログラム、また root 特権を使ってポートを開くプログラムでないほうがよいで"
"しょう。"

#. type: <p></p>
#: maint-guide.en.sgml:485
msgid ""
"That program should result in binary executable form, libraries are harder "
"to handle."
msgstr ""
"バイナリ実行形式が得られるプログラムを選びましょう。ライブラリを扱うのはずっ"
"と難しいのです。"

#. type: <p></p>
#: maint-guide.en.sgml:488
msgid ""
"That program should be well documented and its code needs to be "
"understandable (i.e. not obfuscated)."
msgstr ""
"ちゃんとした説明書きのあるプログラムで、ソースコードが理解可能なもの (つま"
"り、わかりにくくないこと)。"

#. type: <p></p>
#: maint-guide.en.sgml:493
msgid ""
"You should contact program's author(s) to check if they agree with packaging "
"it and amicable to Debian. It is important to be able to consult with author"
"(s) about the program in case of any program specific problems, so don't try "
"to package unmaintained pieces of software."
msgstr ""
"プログラムの作者に連絡をとって、パッケージ化の承諾と Debian に友好的かどうか"
"を確認しておきましょう。何かプログラムそのものに起因する問題が発生した際に、"
"作者にいろいろ聞けるということは重要なので、由来のはっきりしないソフトウェア"
"の断片をパッケージ化するのはやめておきましょう。"

#. type: <p></p>
#: maint-guide.en.sgml:502
msgid ""
"Of course, these things are just safety measures, and intended to save you "
"from raging users if you do something wrong in some setuid daemon... When "
"you gain some more experience in packaging, you'll be able to do such "
"packages, but even the experienced developers consult the <url id=\"http://";
"lists.debian.org/debian-mentors/\" name=\"debian-mentors@lists.debian.org\"> "
"mailing list when they are in doubt. And people there will gladly help."
msgstr ""
"もちろんこれらのことは安全策というだけのことです。setuid デーモンで何かミスし"
"てしまい、怒り狂ったユーザから抗議殺到という事態を回避したいのです。パッケー"
"ジ化についてもっと経験を積めば、こうしたパッケージも 作れるようになるでしょ"
"う。しかし、どんなに老練な開発者だって、何か分からないことがあれば <url id="
"\"http://lists.debian.org/debian-mentors/\"; name=\"debian-mentors@lists."
"debian.org\"> メーリングリストで 質問するのです。そこには喜んで手助けしてくれ"
"る人々がいます。"

#. type: <p></p>
#: maint-guide.en.sgml:504
msgid ""
"For more help about these, check in <url id=\"http://www.debian.org/doc/";
"devel-manuals#devref\" name=\"Debian Developer's Reference\">."
msgstr ""
"もっと詳しい話は、<url id=\"http://www.debian.org/doc/devel-manuals#devref\"; "
"name=\"Debian 開発者リファレンス\">に載っていますので、そちらを参照してくださ"
"い。"

#. type: <heading></heading>
#: maint-guide.en.sgml:506
msgid "Get the program, and try it out"
msgstr "プログラムの入手と検証"

#. type: <p></p>
#: maint-guide.en.sgml:515
msgid ""
"So the first thing to do is to find and download the original source code. I "
"presume that you already have the source file that you picked up at the "
"author's homepage. Sources for free Unix programs usually come in <prgn>tar</"
"prgn>+<prgn>gzip</prgn> format with extension <file>.tar.gz</file>, or "
"<prgn>tar</prgn>+<prgn>bzip2</prgn> format with extension <file>.tar.bz2</"
"file>. These usually contain the subdirectory called <file><var>programname</"
"var>-<var>version</var></file> in them and all the sources under it."
msgstr ""
"さて、最初にすべきことは、オリジナルのソースコードを探してダウンロードするこ"
"とです。ここでは作者のホームページから、すでにソースファイルを入手したとして"
"話を進めます。フリーな Unix 用プログラムのソースは、ふつう <file>.tar.gz</"
"file> 拡張子が付いた <prgn>tar</prgn>+<prgn>gzip</prgn> 形式や、<file>.tar."
"bz2</file> 拡張子が付いた <prgn>tar</prgn>+<prgn>bzip2</prgn> 形式で提供され"
"ています。この中にはたいてい、すべてのソースが入った <file><var>programname</"
"var>-<var>version</var></file> というサブディレクトリがあります。"

#. type: <p></p>
#: maint-guide.en.sgml:521
msgid ""
"If the latest version of such sources are available through VCS such as Git, "
"Subversion, or CVS repository, you need to get it with \"<tt>git clone</tt>"
"\", \"<tt>cvs co</tt>\", or \"<tt>svn co</tt>\" and repack it into "
"<prgn>tar</prgn>+<prgn>gzip</prgn> format by yourself using the \"<tt>--"
"exclude-vcs</tt>\" option."
msgstr ""
"該当ソースの最新版が Git や Subversion、CVS リポジトリ のような VCS で提供さ"
"れているなら、取得するのに \"<tt>git clone</tt>\"、\"<tt>cvs co</tt>\" や "
"\"<tt>svn co</tt>\" してから、\"\"<tt>--exclude-vcs</tt>\"\" オプションを使っ"
"て自分で <prgn>tar</prgn>+<prgn>gzip</prgn> 形式に再パックする必要がありま"
"す。"

#. type: <p></p>
#: maint-guide.en.sgml:527
msgid ""
"If your program's source comes as some other sort of archive (for instance, "
"the filename ends in <file>.Z</file> or <file>.zip</file><footnote><p>You "
"can identify the archive format using the <prgn>file</prgn> command when the "
"file extension is not enough.</p></footnote>), unpack it with appropriate "
"tools and repack it, too."
msgstr ""
"プログラムのソースが、他の種類のアーカイブ (例えば、<file>.Z</file>で終わる"
"ファイル名や、<file>.zip</file><footnote><p>ファイルの拡張子で足りなければ、"
"<prgn>file</prgn> コマンドを使ってアーカイブ形式を判別することができます。</"
"p></footnote>) の場合も、適切なツールで展開してから再パックしてください。"

#. type: <p></p>
#: maint-guide.en.sgml:531
msgid ""
"As an example, I'll use a program called <prgn>gentoo</prgn>, an X GTK+ file "
"manager.<footnote><p>This program is already packaged. Current version "
"0.15.3 has changed substantially from the version 0.9.12 in the following "
"examples.</p></footnote>"
msgstr ""
"さて本稿では、<prgn>gentoo</prgn> という X GTK+ ファイルマネージャを例に説明"
"します<footnote><p>このプログラムはすでにパッケージ化されています。現在のバー"
"ジョンは 0.15.3 で、以下の例にあるバージョン 0.9.12 とは大幅に変更されていま"
"す。</p></footnote>"

#. type: <p><example>
#: maint-guide.en.sgml:540
msgid ""
"Create a subdirectory under your home directory named <file>debian</file> or "
"<file>deb</file> or anything you find appropriate (e.g. just <file>~/gentoo</"
"file> would do fine in this case). Place the downloaded archive in it, and "
"extract it (with \"<tt>tar xzf gentoo-0.9.12.tar.gz</tt>\"). Make sure there "
"are no errors, even some <em>irrelevant</em> ones, because there will most "
"probably be problems unpacking on other people's systems, whose unpacking "
"tools may or may not ignore those anomalies. On your console screen, you "
"should see the following."
msgstr ""
"自分のホームディレクトリ以下に <file>debian</file> や <file>deb</file>、また"
"は何か適当な名前のサブディレクトリを作りましょう (今回の場合には <file>~/"
"gentoo/</file> としても良いでしょう)。ダウンロードしたアーカイブをここにコ"
"ピーし、\"<tt>tar xzf gentoo-0.9.12.tar.gz</tt>\" を実行して展開してくださ"
"い。この時、一見<em>無関係</em>に思えるようなものも含めて、エラーは一切発生し"
"ないということを確認しておいてください。もしエラーが起きたら、それは他の人々"
"のシステム上で展開する際にも、おそらくエラーが起きるということです。そしてそ"
"こで使われている展開用のツールは、こういった異常を無視するかも知れませんし、"
"無視しないかもしれません。あなたのコンソール画面では、以下のように見えている"
"でしょうか。"

#. type: <example></example>
#: maint-guide.en.sgml:547
#, no-wrap
msgid ""
"$ mkdir ~/gentoo ; cd ~/gentoo\n"
"$ wget http://<var>www.example.org</var>/gentoo-0.9.12.tar.gz\n"
"$ tar xvzf gentoo-0.9.12.tar.gz\n"
"$ ls -F\n"
"gentoo-0.9.12/\n"
"gentoo-0.9.12.tar.gz"
msgstr ""
"$ mkdir ~/gentoo ; cd ~/gentoo\n"
"$ wget http://<var>www.example.org</var>/gentoo-0.9.12.tar.gz\n"
"$ tar xvzf gentoo-0.9.12.tar.gz\n"
"$ ls -F\n"
"gentoo-0.9.12/\n"
"gentoo-0.9.12.tar.gz"

#. type: <p></p>
#: maint-guide.en.sgml:557
msgid ""
"Now you have another subdirectory, called <file>gentoo-0.9.12</file>. Change "
"to that directory and <em>thoroughly</em> read the provided documentation. "
"Usually there are files named <file>README*</file>, <file>INSTALL*</file>, "
"<file>*.lsm</file> or <file>*.html</file>. You must find instructions on how "
"to correctly compile and install the program (most probably they'll assume "
"you want to install to <file>/usr/local/bin</file> directory; you won't be "
"doing that, but more on that later in <ref id=\"destdir\">)."
msgstr ""
"さて、<file>gentoo-0.9.12</file> という別のサブディレクトリができました。展開"
"したディレクトリに移動して、提供されているドキュメントを<em>徹底的に</em>読み"
"ましょう。通常は <file>README*</file>, <file>INSTALL*</file>, <file>*.lsm</"
"file>, <file>*.html</file> といった名前のファイルです。それらの文書の中に、ど"
"うやったら正しくコンパイルできるのか、どうインストールすればよいのかといった"
"情報が見つかるはずです (おそらく <file>/usr/local/bin</file> にインストールす"
"るものとして説明されていますが、そうしてはいけません。これについては <ref id="
"\"destdir\"> を参照してください)。"

#. type: <p></p>
#: maint-guide.en.sgml:562
msgid ""
"Simple programs come with a <file>Makefile</file> file in them and can be "
"compiled simply with \"<tt>make</tt>\". Some of them support \"<tt>make "
"check</tt>\", which runs included self-checks. Installation to the "
"destination directories is usually done with \"<tt>make install</tt>\"."
msgstr ""
"シンプルなプログラムには <file>Makefile</file> ファイルが付属していて、単純"
"に \"<tt>make</tt>\" でコンパイルできます。\"<tt>make check</tt>\" をサポート"
"していて、含まれているセルフテストを実行できるものもあります。目的のディレク"
"トリへのインストールは一般に \"<tt>make install</tt>\"によって実行されます。"

#. type: <p></p>
#: maint-guide.en.sgml:565
msgid ""
"Now try to compile and run your program, to make sure it works properly and "
"doesn't break something else while it's installing or running."
msgstr ""
"さあ、試しにプログラムをコンパイルし、実行してみましょう。 インストール中や実"
"行中に他の何かを壊してしまうことが無いかどうか、 またちゃんと動作するかどう"
"か、などを確認してください。"

#. type: <p></p>
#: maint-guide.en.sgml:569
msgid ""
"Also, you can usually run \"<tt>make clean</tt>\" (or better \"<tt>make "
"distclean</tt>\") to clean up the build directory. Sometimes there's even a "
"\"<tt>make uninstall</tt>\" which can be used to remove all the installed "
"files."
msgstr ""
"それから、たいていの場合は \"<tt>make clean</tt>\" ( \"<tt>make distclean</"
"tt>\" を使えるならそのほうが良いです) を実行すると、コンパイル用のディレクト"
"リをきれいにしてくれます。さらに \"<tt>make uninstall</tt>\" を実行すると、イ"
"ンストールされたファイルをすべて削除できることさえもあります。"

#. type: <heading></heading>
#: maint-guide.en.sgml:571
msgid "Free portable programs"
msgstr "自由に移植できるプログラム"

#. type: <p></p>
#: maint-guide.en.sgml:579
msgid ""
"A lot of Free programs are written in the <url id=\"http://en.wikipedia.org/";
"wiki/C_(programming_language)\" name=\"C\"> and <url id=\"http://en.";
"wikipedia.org/wiki/C++\" name=\"C++\"> languages. Many of these use "
"Autotools or CMake to make them portable across different platforms. These "
"tools are used to generate <file>Makefile</file> and other required source "
"files. Then, such programs are built with usual \"<tt>make; make install</tt>"
"\"."
msgstr ""
"多数の自由なプログラムが、<url id=\"http://en.wikipedia.org/wiki/C_";
"(programming_language)\" name=\"C\"> と <url id=\"http://en.wikipedia.org/";
"wiki/C++\" name=\"C++\"> 言語で書かれています。これらの多くは、異なるプラット"
"フォームに移植可能とするために Automake や CMake を使っています。こういった"
"ツールは、<file>Makefile</file> やその他必要なソースファイルを生成するのに使"
"われます。その後、そういったプログラムは通常の \"<tt>make; make install</tt>"
"\" でビルドされます。"

#. type: <p></p>
#: maint-guide.en.sgml:592
msgid ""
"<url id=\"http://en.wikipedia.org/wiki/GNU_build_system\"; name=\"Autotools"
"\"> are the GNU build system comprising <url id=\"http://en.wikipedia.org/";
"wiki/Autoconf\" name=\"Autoconf\">, <url id=\"http://en.wikipedia.org/wiki/";
"Automake\" name=\"Automake\">, <url id=\"http://en.wikipedia.org/wiki/";
"GNU_Libtool\" name=\"Libtool\">, and <url id=\"http://en.wikipedia.org/wiki/";
"GNU_gettext\" name=\"gettext\">. You can notice such sources by the "
"<file>configure.ac</file>, <file>Makefile.am</file>, and <file>Makefile.in</"
"file> files. <footnote><p>See <url id=\"http://www.lrde.epita.fr/~adl/";
"autotools.html\" name=\"Autotools Tutorial\"> and <file>&autotools-dev;</"
"file>. </p></footnote>"
msgstr ""
"<url id=\"http://en.wikipedia.org/wiki/GNU_build_system\"; name=\"Autotools"
"\"> は <url id=\"http://en.wikipedia.org/wiki/Autoconf\"; name=\"Autoconf\">、"
"<url id=\"http://en.wikipedia.org/wiki/Automake\"; name=\"Automake\">、<url "
"id=\"http://en.wikipedia.org/wiki/GNU_Libtool\"; name=\"Libtool\"> と <url id="
"\"http://en.wikipedia.org/wiki/GNU_gettext\"; name=\"gettext\"> から成る GNU "
"のビルドシステムです。\n"
"<file>configure.ac</file>、<file>Makefile.am</file> や <file>Makefile.in</"
"file> ファイルがあれば、そういうソースであることがわかります。"
"<footnote><p><url id=\"http://www.lrde.epita.fr/~adl/autotools.html\"; name="
"\"Autotools Tutorial\"> と <file>&autotools-dev;</file> を参照してください。"
"</p></footnote>\n"

#. type: <p><example>
#: maint-guide.en.sgml:596
msgid ""
"The first step of Autotools work flow is usually that the upstream runs "
"\"<tt>autoreconf -i -f</tt>\" in the source and distributes this source with "
"generated files."
msgstr ""
"Autotools を使ったワークフローの最初の一歩は、上流の作者がソースディレクトリ"
"で \"<tt>autoreconf -i -f</tt>\" を実行し、生成されたファイルと一緒にこのソー"
"ス配布することです。\n"

#. type: <example></example>
#: maint-guide.en.sgml:605
#, no-wrap
msgid ""
"configure.ac-----+-> autoreconf -+-> configure\n"
"Makefile.am -----+        |      +-> Makefile.in\n"
"src/Makefile.am -+        |      +-> src/Makefile.in\n"
"                          |      +-> config.h.in\n"
"                      automake\n"
"                      aclocal\n"
"                      aclocal.m4\n"
"                      autoheader"
msgstr ""
"configure.ac-----+-> autoreconf -+-> configure\n"
"Makefile.am -----+        |      +-> Makefile.in\n"
"src/Makefile.am -+        |      +-> src/Makefile.in\n"
"                          |      +-> config.h.in\n"
"                      automake\n"
"                      aclocal\n"
"                      aclocal.m4\n"
"                      autoheader"

#. type: <p></p>
#: maint-guide.en.sgml:610
msgid ""
"Editing <file>configure.ac</file> and <file>Makefile.am</file> files "
"requires some knowledge of <prgn>autoconf</prgn> and <prgn>automake</prgn>. "
"See \"<tt>info autoconf</tt>\" and \"<tt>info automake</tt>\"."
msgstr ""
"<file>configure.ac</file> や <file>Makefile.am</file> ファイルを編集するに"
"は、<prgn>autoconf</prgn> と <prgn>automake</prgn> についての知識が多少必要に"
"なります。\"<tt>info autoconf</tt>\" と \"<tt>info automake</tt>\" を参照して"
"ください。"

#. type: <p><example>
#: maint-guide.en.sgml:615
msgid ""
"The second step of Autotools work flow is usually that the user obtains this "
"distributed source and runs \"<tt>./configure &amp;&amp; make</tt>\" in the "
"source to compile program into a <prgn><var>binary</var></prgn>."
msgstr ""
"Autotools のワークフローの次のステップでは、通常はユーザがこの配布されている"
"ソースを入手して、ソースディレクトリで \"<tt>./configure &amp;&amp; make</tt>"
"\" を実行することで、プログラムを <prgn><var>binary</var></prgn> にコンパイル"
"します。"

#. type: <example></example>
#: maint-guide.en.sgml:622
#, no-wrap
msgid ""
"Makefile.in -----+                +-> Makefile -----+-> make -> <var>binary</var>\n"
"src/Makefile.in -+-> ./configure -+-> src/Makefile -+\n"
"config.h.in -----+                +-> config.h -----+\n"
"                          |\n"
"           config.status -+\n"
"           config.guess --+"
msgstr ""
"Makefile.in -----+                +-> Makefile -----+-> make -> <var>binary</var>\n"
"src/Makefile.in -+-> ./configure -+-> src/Makefile -+\n"
"config.h.in -----+                +-> config.h -----+\n"
"                          |\n"
"           config.status -+\n"
"           config.guess --+"

#. type: <p></p>
#: maint-guide.en.sgml:627
msgid ""
"You can change many things in the <file>Makefile</file> file such as the "
"default file install location using the command option, e.g. \"<prgn>./"
"configure --prefix=/usr</prgn>\"."
msgstr ""
"デフォルトでファイルがインストールされる場所など、<file>Makefile</file> ファ"
"イルにある内容の多くは、コマンドオプションを使って変更することができます。例"
"えば \"<prgn>./configure --prefix=/usr</prgn>\" のように。"

#. type: <p></p>
#: maint-guide.en.sgml:631
msgid ""
"Although it is not required, updating the <file>configure</file> and other "
"files with \"<tt>autoreconf -i -f</tt>\" as the user may improve the "
"compatibility of the source."
msgstr ""
"必要ではないとしても、\"<tt>autoreconf -i -f</tt>\" をユーザとして実行して、"
"<file>configure</file> や他のファイルを更新すると、ソースの互換性が改善される"
"場合があります。"

#. type: <p></p>
#: maint-guide.en.sgml:635
msgid ""
"<url id=\"http://en.wikipedia.org/wiki/CMake\"; name=\"CMake\"> is an "
"alternative build system. You can notice such sources by the "
"<file>CMakeLists.txt</file> file."
msgstr ""
"<url id=\"http://en.wikipedia.org/wiki/CMake\"; name=\"CMake\"> はまた別のビル"
"ドシステムです。<file>CMakeLists.txt</file> ファイルがあれば、そういうソース"
"だとわかります。\n"

#. type: <heading></heading>
#: maint-guide.en.sgml:637
msgid "Package name and version"
msgstr "パッケージ名とバージョン"

#. type: <p></p>
#: maint-guide.en.sgml:640
msgid ""
"You should start packaging with a completely clean (pristine) source "
"directory, or simply with freshly unpacked sources."
msgstr ""
"パッケージ化の作業は完全にクリーンな (オリジナルのままの) ソースディレクト"
"リ、簡単に言えば新しく展開したソースから 始めるべきです。"

#. type: <p></p>
#: maint-guide.en.sgml:644
msgid ""
"For the package to be built correctly, you must make the program's original "
"name lowercase (if it isn't already), and you should move the source "
"directory to <file><var>packagename</var>-<var>version</var></file>."
msgstr ""
"パッケージをきちんと作るためには、プログラム名がすべて小文字になるよう、(まだ"
"そうなっていなければ) オリジナルの名前から変更しておかなければいけません。ま"
"たソースディレクトリ名を <file><var>packagename</var>-<var>version</var></"
"file> に変更しておきましょう。"

#. type: <p></p>
#: maint-guide.en.sgml:649
msgid ""
"If the program name consists of more than one word, contract them to one "
"word, or make an abbreviation. For example, program \"John's little editor "
"for X\" package would be named <package>johnledx</package>, or "
"<package>jle4x</package>, or whatever you decide, as long as it's under some "
"reasonable limit, e.g. 20 characters."
msgstr ""
"もしプログラムの名前が一語以上で構成されていたら、一つの語につなげるか省略形"
"にしましょう。 例えば、\"John's little editor for X\" というソフトウェアなら"
"ば <package>johnledx</package> とか <package>jle4x</package> というようにしま"
"しょう。あまり長すぎない程度、 せいぜい 20 文字くらいまでの長さで、適当に決め"
"て下されば結構です。"

#. type: <p></p>
#: maint-guide.en.sgml:660
msgid ""
"Also check for the exact version of the program (to be included in the "
"package version). If that piece of software is not numbered with versions "
"like <tt>X.Y.Z</tt>, but with some kind of date, feel free to use that date "
"as the version number, as long as newer version numbers will look larger. "
"While it is best to use the same version number as what upstream uses, if it "
"is in the format of <tt>09Oct23</tt> you may need to convert it to "
"<tt>YYYYMMDD</tt> format, which would be <tt>20091023</tt>, to ensure proper "
"order for upgrade with the <prgn>dpkg</prgn> program.<footnote><p>Version "
"string can be compared by \"<tt>dpkg --compare-versions <var>ver1</var> "
"<var>op</var> <var>ver2</var></tt>\". See <manref section=\"1\" name=\"dpkg"
"\"> manpage.</p></footnote>"
msgstr ""
"プログラムの正確なバージョンもチェックしましょう (パッケージのバージョンに含"
"めるために)。もしそのソフトウェアが「バージョン X.Y.Z」という形式で番号付けさ"
"れて おらず、ある種の日付で区別されている場合には、新しいバージョン番号が大き"
"くなっているようなら、その日付をバージョン番号として自由に使ってください。"
"アップストリームが使っているのと同じバージョン番号を使うのがベストではありま"
"すが、それが<tt>09Oct23</tt> といった形式の場合は、それを <tt>20091023</tt> "
"といった <tt>YYYYMMDD</tt> 形式に変換して、<prgn>dpkg</prgn> プログラムでの"
"アップグレードが適切な順番でできるようにする必要があるかもしれません。"
"<footnote><p>バージョン文字列は、\"<tt>dpkg --compare-versions <var>ver1</"
"var> <var>op</var> <var>ver2</var></tt>\" として比較できます。<manref "
"section=\"1\" name=\"dpkg\"> のマニュアルページを参照してください。</p></"
"footnote>"

#. type: <p></p>
#: maint-guide.en.sgml:664
msgid ""
"Some programs won't be numbered at all, in which case you should contact the "
"upstream maintainer to see if they've got some other revision-tracking "
"method."
msgstr ""
"およそバージョン番号に使えそうな情報がまったくないと言う場合、 上流メンテナに"
"連絡をとって彼らが何か他のリビジョン管理手段を 使っているかどうか聞いてみま"
"しょう。"

#. type: <heading></heading>
#: maint-guide.en.sgml:666
msgid "Initial Debian package"
msgstr "最初の Debian パッケージ"

#. type: <p><example>
#: maint-guide.en.sgml:671
msgid ""
"Let's set up the Bash shell environment variable <tt>$DEBEMAIL</tt> and <tt>"
"$DEBFULLNAME</tt> so many Debian maintenance tools recognize your name and "
"email address to use for packages as follows."
msgstr ""
"次のようにして、Bash シェルの環境変数 <tt>$DEBEMAIL</tt> と <tt>"
"$DEBFULLNAME</tt> を設定して、パッケージに使うあなたの名前と email アドレス"
"を、多くの Debian メンテナンスツールが認識できるようにしましょう:"

#. type: <example></example>
#: maint-guide.en.sgml:677
#, no-wrap
msgid ""
"$ cat &gt;&gt;~/.bashrc &lt;&lt;EOF\n"
"DEBEMAIL=your.email.address@example.org\n"
"DEBFULLNAME=\"Firstname Lastname\"\n"
"export DEBEMAIL DEBFULLNAME\n"
"EOF"
msgstr ""
"$ cat &gt;&gt;~/.bashrc &lt;&lt;EOF\n"
"DEBEMAIL=your.email.address@example.org\n"
"DEBFULLNAME=\"Firstname Lastname\"\n"
"export DEBEMAIL DEBFULLNAME\n"
"EOF"

#. type: <p><example>
#: maint-guide.en.sgml:681
msgid ""
"Let's make an initial Debian package by issuing the <prgn>dh_make</prgn> "
"command as follows."
msgstr ""
"次のように <prgn>dh_make</prgn> コマンドを発行して、最初の Debian パッケージ"
"を作ってみましょう。"

#. type: <example></example>
#: maint-guide.en.sgml:685
#, no-wrap
msgid ""
"$ . ~/.bashrc\n"
"$ cd ~/gentoo/gentoo-0.9.12\n"
"$ dh_make -f ../gentoo-0.9.12.tar.gz"
msgstr ""
"$ . ~/.bashrc\n"
"$ cd ~/gentoo/gentoo-0.9.12\n"
"$ dh_make -f ../gentoo-0.9.12.tar.gz"

#. type: <p></p>
#: maint-guide.en.sgml:696
msgid ""
"Of course, replace the filename with the name of your original source "
"archive. <footnote><p>If the upstream source provides the <file>debian</"
"file> directory and its contents, run the <prgn>dh_make</prgn> command with "
"the <tt>--addmissing</tt> option, instead. The new source <tt>3.0 (quilt)</"
"tt> format is quite robust not to break even for these packages. You may "
"need to update contents provided by the upstream for your Debian package.</"
"p></footnote> See <manref section=\"1\" name=\"dh_make\"> for details."
msgstr ""
"当然ですが、ファイル名はあなたのオリジナルのソースアーカイブの名前と置き換え"
"てください。<footnote><p>上流のソースが <file>debian</file> ディレクトリとそ"
"の中身を提供している場合は、かわりに <prgn>dh_make</prgn> コマンドを <tt>--"
"addmissing</tt> オプションをつけて実行してください。新しい <tt>3.0 (quilt)</"
"tt> 形式のソースはとても堅牢なので、こういったパッケージでも壊すことはありま"
"せん。自分の Debian パッケージ用に、アップストリームで提供されている内容を更"
"新する必要があるかもしれません。</p></footnote> 詳細は、<manref section="
"\"1\" name=\"dh_make\"> を参照してください。"

#. type: <p></p>
#: maint-guide.en.sgml:712
msgid ""
"Some information will come up. It will ask you what sort of package you want "
"to create. Gentoo is a single binary package - it creates only one binary, "
"and thus one <file>.deb</file> file - so we will select the first option, "
"with the \"<tt>s</tt>\" key, check the information on the screen and confirm "
"by pressing \"<tt><var>ENTER</var></tt>\". <footnote><p>There are few "
"choices here: \"<tt>s</tt>\" for \"Single binary\", \"<tt>i</tt>\" for "
"\"Arch-Independent\", \"<tt>m</tt>\" for \"Multiple binary\", \"<tt>l</tt>\" "
"for \"Library\", \"<tt>k</tt>\" for \"Kernel module\", \"<tt>n</tt>\" for "
"\"Kernel patch\" and \"<tt>b</tt>\" for \"<package>cdbs</package>\". This "
"document focuses on the use of the <package>debhelper</package> package with "
"the <prgn>dh</prgn> command. This document focuses on the use of the new "
"<prgn>dh</prgn> command for \"Single binary\" and touches on it for \"Arch-"
"Independent\" and \"Multiple binary\". The <package>cdbs</package> package "
"offers alternative package script infrastructure to the <prgn>dh</prgn> "
"command and outside of the scope of this document.</p></footnote>"
msgstr ""
"いくつかの情報が表示されます。どんな種類のパッケージを作ろうとしているのか尋"
"ねてきます。Gentoo は単一のバイナリパッケージで、ただ一つのバイナリと、一つ"
"の .deb ファイルを生成します。なので、\"<tt>s</tt>\" キーで最初の選択肢を選"
"び、表示された情報をチェックして、確認のために \"<tt><var>ENTER</var></tt>\" "
"を押してください。<footnote><p>ここでの選択肢はわずかです。\"<tt>s</tt>\" は "
"\"Single binary (単一バイナリ)\"、\"<tt>i</tt> は \"Arch-Independent(アーキテ"
"クチャ非依存)\"、\"<tt>m</tt>\" は \"Multiple binary (複数バイナ"
"リ)、\"<tt>l</tt>\" は \"Library (ライブラリ)\"、\"<tt>k</tt>\" は \"Kernel "
"module (カーネルモジュール)\"、\"<tt>n</tt>\" は \"Kernel patch (カーネルパッ"
"チ)\"、\"<tt>b</tt>\" は \"<package>cdbs</package>\" です。このドキュメントで"
"は、<prgn>dh</prgn> コマンドで <package>debhelper</package> パッケージを使う"
"のに重点を置いています。\n"

#. type: <p><example>
#: maint-guide.en.sgml:718
msgid ""
"After this execution of <prgn>dh_make</prgn>, a copy of the upstream tarball "
"is created as <file>gentoo_0.9.12.orig.tar.gz</file> in the parent directory "
"to accommodate the creation of the non-native Debian source package with the "
"<file>debian.tar.gz</file> later."
msgstr ""
"<prgn>dh_make</prgn> を実行した後、上流の tarball のコピーを、親ディレクトリ"
"に <file>gentoo_0.9.12.orig.tar.gz</file> として作成します。また、対応する非"
"ネイティブ Debian ソースパッケージを 後述する <file>debian.tar.gz</file> とし"
"て作成します。"

#. type: <example></example>
#: maint-guide.en.sgml:723
#, no-wrap
msgid ""
"$ cd ~/gentoo ; ls -F\n"
"gentoo-0.9.12/\n"
"gentoo-0.9.12.tar.gz\n"
"gentoo_0.9.12.orig.tar.gz"
msgstr ""
"$ cd ~/gentoo ; ls -F\n"
"gentoo-0.9.12/\n"
"gentoo-0.9.12.tar.gz\n"
"gentoo_0.9.12.orig.tar.gz"

#. type: <p><list>
#: maint-guide.en.sgml:725
msgid ""
"Please note 2 key features in this <file>gentoo_0.9.12.orig.tar.gz</file> "
"file name:"
msgstr ""
"この <file>gentoo_0.9.12.orig.tar.gz</file> ファイル名がもっている 2 つの特徴"
"に注意してください:"

#. type: <p></p>
#: maint-guide.en.sgml:727
msgid ""
"Package name and version are separated by the \"<tt>_</tt>\" (underscore)."
msgstr ""
"パッケージ名とバージョンは \"<tt>_</tt>\" (アンダースコア) で区切られていま"
"す。"

#. type: <p></p>
#: maint-guide.en.sgml:728
msgid "There is the <file>.orig</file> before the <file>.tar.gz</file>."
msgstr "\"<tt>tar.gz</tt>\" の前に \"<tt>orig.</tt>\" があります。"

#. type: <p></p>
#: maint-guide.en.sgml:739
msgid ""
"You should also notice that many template files are created in the source "
"under the <file>debian</file> directory. These will be explained in <ref id="
"\"dreq\"> and <ref id=\"dother\">. You should also understand that the "
"packaging is not automatic process. You need to modify the upstream source "
"for Debian as <ref id=\"modify\">. After all these, you need to build Debian "
"packages under the proper method as <ref id=\"build\">, check them as <ref "
"id=\"checkit\">, and upload them as <ref id=\"upload\">. I will explain all "
"these steps."
msgstr ""
"ソース中の<file>debian</file>ディレクトリにたくさんのテンプレートファイルが作"
"成されていることにも注意が必要です。これらについては、<ref id=\"dreq\"> と "
"<ref id=\"dother\"> で説明します。パッケージ作成が自動的な過程ではないことも"
"理解しておかねばなりません。<ref id=\"modify\"> のように、アップストリームの"
"ソースを Debian 向けに変更する必要があります。こういった作業の後で、<ref id="
"\"build\"> のように正しいやり方で Debian パッケージをビルドし、<ref id="
"\"checkit\"> のようにチェックし、そして <ref id=\"upload\"> のようにしてアッ"
"プロードする必要があります。これら全てのステップについてこれから説明します。"

#. type: <p><list>
#: maint-guide.en.sgml:741
msgid ""
"Once again, as a new maintainer you are discouraged from creating "
"complicated packages, e.g.,"
msgstr ""
"繰り返しますが、新規メンテナのあなたには、以下のような複雑なパッケージの作成"
"はお勧めできません。"

#. type: <p></p>
#: maint-guide.en.sgml:743
msgid "multiple binary packages,"
msgstr "マルチバイナリパッケージ"

#. type: <p></p>
#: maint-guide.en.sgml:744
msgid "library packages,"
msgstr "ライブラリパッケージ"

#. type: <p></p>
#: maint-guide.en.sgml:745
msgid "kernel module packages,"
msgstr "カーネルモジュールパッケージ"

#. type: <p></p>
#: maint-guide.en.sgml:746
msgid "kernel patch packages,"
msgstr "カーネルパッチパッケージ"

#. type: <p></p>
#: maint-guide.en.sgml:748
msgid ""
"the source file format being neither in <file>tar.gz</file> nor <file>tar."
"bz2</file>, or"
msgstr ""
"ソースファイルの形式が、<file>tar.gz.</file> や <file>tar.bz2</file> でないも"
"の"

#. type: <p></p>
#: maint-guide.en.sgml:749
msgid "the source tarball containing undistributable contents."
msgstr "配布できない内容がソースの tarball にあるもの"

#. type: </list></p>
#: maint-guide.en.sgml:753
msgid ""
"It's not too hard, but it does require a bit more knowledge, so we won't "
"describe all of it here."
msgstr ""
"実際には作業自体はそれほど大変ではないのですが、ちょっとだけ より多くの知識が"
"必要になります。そのため、ここではその作業について 一切説明しません。"

#. type: <p></p>
#: maint-guide.en.sgml:758
msgid ""
"If you accidentally erased some template files while working on them, you "
"can recover them by running <prgn>dh_make</prgn> with the <tt>--addmissing</"
"tt> option again in a Debian package source tree."
msgstr ""
"作業中にテンプレートファイルを間違って消した場合は、Debian パッケージのソース"
"ツリーで <prgn>dh_make</prgn> を <tt>--addmissing</tt> オプションつきで再度実"
"行することで修復できます。"

#. type: <p></p>
#: maint-guide.en.sgml:762
msgid ""
"Updating an existing package may get complicated since it may be using older "
"techniques. Please stick with fresh packaging cases for now to learn basics. "
"I will come back to explain it later in <ref id=\"update\">."
msgstr ""
"既存のパッケージの更新は、古いテクニックが使われていたりして、やっかいな場合"
"があります。基本を学習するために、今のところは新しいパッケージの作成で続けて"
"ください。後ほど、<ref id=\"update\"> で取り上げて説明します。"

#. type: <heading></heading>
#: maint-guide.en.sgml:764
msgid "Modifying the source"
msgstr "ソースコードの変更"

#. type: <p></p>
#: maint-guide.en.sgml:768
msgid ""
"Please note that there isn't space here to go into <em>all</em> the details "
"of fixing upstream sources, but here are some basic steps and problems "
"people often run across."
msgstr ""
"上流ソース修正の具体的なやり方について、<em>何から何まで</em>説明するにはとて"
"も紙面が足りませんが、よくあるパターンとしては大体以下のようなものでしょう。"