View file File name : README.ja Content : aptitude ユーザマニュアル バージョン 0.8.12 Burrows Daniel [FAMILY Given] Main author of the document. <dburrows@debian.org> Fernandez Montecelo Manuel A. [FAMILY Given] Main maintainer after Daniel Burrows, documentation about new features, corrections and formatting. <mafm@debian.org> 製作著作 © 2004-2011, 2012-2016 Daniel Burrows, Manuel A. Fernandez Montecelo This manual is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This manual is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this manual; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ══════════════════════════════════════════════════════════════════════════ 目次 はじめに まずこの aptitude というものは…… パッケージマネージャとは apt システムとは aptitude を入手するには Pre-built aptitude packages, or, 「what 99% of users should do」 ソースコードからの aptitude のビルド Tracking and participating in aptitude development 1. Getting started aptitude の使い方 aptitude basics aptitude パッケージ一覧の操作 名前を用いたパッケージ検索 パッケージ管理 パッケージ一覧の更新とパッケージのインストール コマンドラインからの aptitude の使い方 2. aptitude reference guide The aptitude terminal user interface メニューの利用 メニューのコマンド 複数の画面を用いた作業 root になる パッケージ管理 パッケージ一覧の管理 パッケージ情報へのアクセス Modifying package states パッケージのダウンロード・インストール・削除 パッケージの信頼性の意味と管理方法 自動的にインストールされたパッケージの管理 Resolving package dependencies Dependency resolution in aptitude Immediate dependency resolution Resolving Dependencies Interactively Costs in the interactive dependency resolver Configuring the interactive dependency resolver Search patterns Searching for strings Shorthand for search terms Searches and versions Explicit search targets Search term reference aptitude のカスタマイズ Customizing the package list Customizing keybindings テキストの色とスタイルのカスタマイズ Customizing the display layout Configuration file reference テーマ マインスイーパで遊ぶ 3. aptitude frequently asked questions 4. クレジット I. Command-line reference aptitude — パッケージマネージャの高レベルインタフェース aptitude-create-state-bundle — bundle the current aptitude state aptitude-run-state-bundle — unpack an aptitude state bundle and invoke aptitude on it 図の一覧 2.1. 「アクション」メニューで利用可能なコマンド 2.2. 「取り消し」メニューで利用可能なコマンド 2.3. 「パッケージ」メニューで利用可能なコマンド 2.4. 「問題解決」メニューで利用可能なコマンド 2.5. 「検索」メニューで利用可能なコマンド 2.6. 「オプション」メニューで利用可能なコマンド 2.7. 「表示」メニューで利用可能なコマンド 2.8. 「ヘルプ」メニューで利用可能なコマンド 2.9. 「現在の状態」フラグの値 2.10. 「アクション」フラグの値 2.11. Syntax of compound cost components 2.12. Safety cost levels 2.13. Syntax of the ?for term 2.14. aptitude においてカスタマイズ可能なスタイル 表の一覧 2.1. Basic cost components 2.2. Default safety cost levels 2.3. Quick guide to search terms 例の一覧 2.1. Sample resolver costs 2.2. Use of the ?= term. 2.3. Use of the ?bind term 2.4. Use of the ?exact-name term 2.5. Use of the ?for term 2.6. Use of the ?term-prefix term 2.7. Grouping policy firstchar or firstchar(binary) 2.8. Grouping policy firstchar(source) 2.9. Use of pattern to group packages by their maintainer 2.10. Use of pattern with some packages placed at the top level 2.11. Use of the pattern grouping policy with sub-policies 12. Usage of --show-summary はじめに 目次 まずこの aptitude というものは…… パッケージマネージャとは apt システムとは aptitude を入手するには Pre-built aptitude packages, or, 「what 99% of users should do」 ソースコードからの aptitude のビルド Tracking and participating in aptitude development 「Master, does Emacs possess the Buddha nature?」 the novice asked. 「I don't see why not,」 replied the master. 「It's got bloody well everything else.」 Several years later, the novice suddenly achieved enlightenment. -- Fouhy John [FAMILY Given] こんにちは。aptitude ユーザマニュアルへようこそ! この導入セクションでは 、aptitude がどのようなものか、どうしたら手に入るかを説明します。実際の使 い方を知りたい場合は、1章Getting startedへ進んでください。 まずこの aptitude というものは…… aptitude は、名高い apt パッケージ管理インフラストラクチャに基づいた 、Debian GNU/Linux システム用の多機能パッケージマネージャです。aptitude は dselect や apt-get の機能を提供し、その他に、これらのプログラムに見られな い多数の追加機能ももっています。 パッケージマネージャとは パッケージマネージャとは、コンピュータに何のソフトウェアがインストールされ たかを記録し、新しいソフトウェアのインストール・新しいバージョンへのソフト ウェアの更新・以前インストールしたソフトウェアの削除を容易に行えるようにす るプログラムです。名前が示すように、パッケージマネージャはパッケージを取り 扱います。パッケージとは、ファイル群を一つにし、インストールや削除をまとめ てできるようにしたものです。 多くの場合、パッケージはある特定のプログラムにすぎません。例えば、インスタ ントメッセージングクライアントの gaim は同名の Debian パッケージに含まれて います。他方で、プログラムが、互いに関連しあった複数のパッケージから成るこ ともよくあります。例えば、画像エディタ gimp は、gimp パッケージのみからで なく gimp-data パッケージからも成っており、それ以外にも、任意で利用可能な アドオンパッケージ (上級者向けのデータやドキュメントなどを含んでいます。) がいくつかあります。また、関連しあった複数の小さなプログラムが単一のパッケ ージに含められていることもあります。例えば fileutils パッケージには、ls や cp などのような、いくつかの一般的な Unix コマンドが含まれています。 Some packages require other packages in order to function. In Debian, packages can depend upon, recommend, suggest, break, or conflict with other packages. • パッケージ A が別のパッケージ B に依存するとは、B が A が適切に機能す るのに必要になるということです。例えば、GIMP 画像エディタは GIMP の重 要なデータファイルに確実にアクセスできなければならないので、gimp パッ ケージは gimp-data パッケージに依存しています。 • パッケージ A が別のパッケージ B を推奨するとは、B が、大抵の状況におい て要望される重要な追加機能を A に提供するということです。例えば 、mozilla-psm パッケージは Mozilla ウェブブラウザに安全なデータ転送の サポートを追加するため、mozilla-browser パッケージは mozilla-psm パッ ケージを推奨します。厳密な意味で、Mozilla が機能するのに mozilla-psm が必要になるというわけではありませんが、大抵のユーザは、秘密のデータ ( クレジットカードの番号など) の安全な通信を Mozilla がサポートするのを 期待するでしょう。 • パッケージ A が別のパッケージ B を提案するとは、パッケージ B が提供す る機能が A の機能を強化するかもしれないが、大抵の場合その機能強化は必 要とされないということです。例えば、gnupg パッケージには KMail が使用 する暗号化ソフトウェアが含まれているため、kmail パッケージは gnupg パ ッケージを提案します。 • パッケージ A が他のパッケージ B と衝突するとは、これら 2 つのパッケー ジが同時にインストールできないということです。例えば、fb-music-hi は fb-music-low と衝突します。これらはどちらもゲーム Frozen Bubble に音楽 のセットを提供しますが、それらはどちらか一方しか使えないためです。 パッケージマネージャの仕事は、システムにインストールされたパッケージ群の管 理に役立つインタフェースを、ユーザに提供することです。aptitude は、apt パ ッケージ管理システム上にそのようなインタフェースを構築して提供します。 apt システムとは パッケージのインストールや削除ができるのは素晴らしいことですが、それを行う ための基本ソフトウェア (御存知のとおり dpkg です。) はまさにそれだけを行い 、それ以上のことは何もしません。1 つや 2 つのパッケージを手動でダウンロー ドする場合ならそれでもかまいませんが、大量のパッケージを管理しようとすると 急速に面倒になるでしょう。その上、インストールしたい光り輝く新しいパッケー ジに、まだインストールされていないソフトウェアが必須とされる場合、その新し く必須とされたソフトウェアを手動でダウンロードしなければなりません。また後 に、そのパッケージがもはや光り輝かなくなったので削除することにしても、さき ほど必須とされて入れた追加のパッケージは、手動で削除しなければシステムに残 り、ハードドライブの領域を消費してしまいます。 明らかに、これらの単純労働はすべてつまらない雑用なので、ほとんどのパッケー ジ管理システムには、これらの一部またはすべてを処理してくれるソフトウェアが 付属しています。apt はこういったプログラムをビルドするための共通のベースで 、aptitude の他に、synaptic や apt-watch などのプログラムが apt を利用して います。 apt は、Debian からコンピュータ上にダウンロードできるパッケージの一覧を保 持するという方法で機能します。この一覧は、更新する必要のあるパッケージを検 索したり、新しいパッケージをインストールしたりするのに使用されます。apt は また、多数の依存関係の問題を自動的に解決できます。例えば、あるパッケージを インストール対象として選択すると、apt は、それに必須とされるあらゆる追加パ ッケージを見つけて同様にインストールします。 aptitude などの、apt ベースのパッケージマネージャを使って作業するときには 、通常は 3 つの基本作業を行うことになります。すなわち、まず Debian のサー バから利用可能なパッケージの一覧を新たにダウンロードして、一覧を更新します 。そしてインストール・更新・削除すべきパッケージを選択します。最後に、実際 にそのインストールや削除などを行い、その選択をコミットします。 apt ベースのパッケージマネージャは、「入手先」 (Debian パッケージのリポジ トリ) の一覧をファイル /etc/apt/sources.list から読み込みます。このファイ ルの書式や内容はこのドキュメントでは割愛しますが、マニュアルページ sources.list(5) に説明があります。 aptitude を入手するには 万が一、このマニュアルを読んでいるのに aptitude がまだシステムにインストー ルされていない場合に備えて、このセクションではその不幸な状況を是正する方法 を説明します。ほとんどの人々はバイナリパッケージに関するセクションに直行す べきでしょう。 Pre-built aptitude packages, or, 「what 99% of users should do」 ビルド済み、つまり「バイナリ」のパッケージは、aptitude のインストール手段 としては最も容易で最も一般的です。何らかの理由でバイナリパッケージが入手で きない場合、あるいはバイナリパッケージが用意されない特殊な必要性がある場合 のみ、ソースインストールを試すべきでしょう。 Debian システムを使用している場合、root で次のコマンドを実行してください 。apt-get install aptitude。Debian システムを使用していない場合、あなたの システムを提供している業者が aptitude のビルド済みパッケージを作成している かもしれません。わからない場合は、彼らに連絡をとってさらに詳しい示唆を受け てもよいでしょう。 ソースコードからの aptitude のビルド aptitude はソースからビルドすることも可能です。しかし、システムで apt が既 に利用可能になっているのでなければ、ビルドはおそらく有益な訓練とはならない でしょう。システムで apt が利用可能なら、以下のステップで aptitude をソー スからインストールできます。 1. 以下の一連のソフトウェアをインストールしてください。 • g++ などの C++ コンパイラ。 • 通常は libapt-pkg-dev のような名前をもったパッケージで入手できる apt 開発ファイル。 • The libsigc++-2.0 library, available in the package libsigc++-2.0-dev or from http://libsigc.sourceforge.net. • The cwidget library, available in the package libcwidget-dev or from http://cwidget.alioth.debian.org. • The gettext program, which should be included with your Linux distribution. • A make tool, such as GNU make. 2. 大事なことを言い忘れていましたが 、http://packages.debian.org/unstable/admin/aptitude から入手できる最 新の aptitude ソースコードをダウンロードしてください。(ページの最下部 までスクロールし、「.orig.tar.gz」ファイルをダウンロードしてください) 必要な部品がすべて利用可能になったら、ターミナルを開いてコマンド tar zxf aptitude-0.8.12.tar.gz を実行し、ソースコードを展開してください。ソースコ ードが展開されたら、cd aptitude-0.8.12 && ./configure && make と入力して aptitude をコンパイルしてください。コンパイルが成功したら、(例えば su など を用いて) 必ず root ユーザになり、make install と入力してコンピュータに aptitude をインストールしてください。aptitude のインストールに成功したら、 コマンドプロンプトで aptitude と入力するとプログラムが起動するはずです。 Tracking and participating in aptitude development Getting the aptitude development source tree If you want to test the latest bleeding-edge source code for aptitude, you can download unreleased aptitude source code using Git. Install Git (available from http://git-scm.com/) and execute the command git clone git://anonscm.debian.org/aptitude/aptitude.git to retrieve the most recent source code. [警 警告 告] The aptitude Git repository is an active development tree; it will change as bugs are fixed and features are added, and there is absolutely no guarantee that it will even compile, let alone run properly! Bug reports are welcome, but be aware that you use development code entirely at your own risk!^[1] Mailing list The primary mailing list for aptitude development is <aptitude-devel@lists.alioth.debian.org>. Archives of the list are located at http://lists.alioth.debian.org/pipermail/aptitude-devel/. To subscribe, visit the Web page http://lists.alioth.debian.org/mailman/listinfo/aptitude-devel. Submitting patches Ideally, patches should be submitted to the aptitude mailing list, <aptitude-devel@lists.alioth.debian.org>. But if you prefer sending them by private email, you may email them to <aptitude@packages.debian.org> or <dburrows@debian.org>. A brief description of the motivation behind your patch, and an explanation of how it works, are greatly appreciated. Tracking changes to the aptitude source tree The aptitude source tree is regularly updated with new features, bugfixes, and new bugs. Once the source code is available on your computer (see the previous section), you can cd into it and type git pull to update it with any changes made to the main repository. To automatically receive notifications when changes are made to the aptitude codebase, subscribe to the Atom feed available at http://anonscm.debian.org/gitweb/?p=aptitude/aptitude.git;a=atom or RSS feed available at http://anonscm.debian.org/gitweb/?p=aptitude/aptitude.git;a=rss. Building aptitude from the development tree To build aptitude from the Git repository, you must have the programs autoconf and automake installed. Type sh ./autogen.sh && ./configure to generate the files needed to compile aptitude, then execute make and make install. ══════════════════════════════════════════════════════════════════════════ ^[1] もちろん、すべてのフリーソフトウェアの利用は自己責任となります。しか し、現役の開発ツリーの利用にともなう危険性は、それに比べてはるかに高いので す。 第1章 Getting started 目次 aptitude の使い方 aptitude basics aptitude パッケージ一覧の操作 名前を用いたパッケージ検索 パッケージ管理 パッケージ一覧の更新とパッケージのインストール コマンドラインからの aptitude の使い方 千里の道も一歩から。 -- Tsu Lao [FAMILY Given] aptitude は多くの機能をもったかなり大きなプログラムなので、新規ユーザが使 いこなせるようになるにはやや大きすぎて手のつけどころに困るかもしれません。 この章では、aptitude の機能を徹底的に説明することはありません (そのような 説明は 2章aptitude reference guideを参照してください)。その代わりに、プロ グラムの基本や最もよく使用される機能をざっと説明します。 aptitude の使い方 このセクションでは、aptitude のビジュアルインタフェースの使い方について説 明します。aptitude のコマンドラインインタフェースの使い方に関する情報は、 「コマンドラインからの aptitude の使い方」を参照してください。 aptitude basics aptitude を実行するには、好きなテキストターミナルを開き、コマンドラインに 次のように入力してください。 foobar$ aptitude Once the cache is loaded (this may take some time on slower machines), the main aptitude screen should appear: Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 --- Installed Packages --- Not Installed Packages --- Obsolete and Locally Created Packages --- Virtual Packages --- Tasks These packages are currently installed on your computer. 御覧のとおり、aptitude のメイン画面は複数の領域に分かれています。ターミナ ル最上部の青色の 1 行はメニューバーで、その下の数行分の青色部分は、いくつ かの重要なコマンドを説明する情報メッセージです。その下に広がる黒い領域は利 用可能なパッケージ全ての一覧で、そこにはパッケージのいくつかのグループが表 示されています。選択中のグループ (「インストール済みのパッケージ」) がハイ ライトされており、その説明が下側の黒い領域に表示されています。 As the top line of the screen suggests, you can access aptitude's menus by pressing Control+t (also valid: Control+Space and F10); you can also click the mouse on a menu title if your system supports it. Pressing Control+t will open the Actions menu: Actions Undo Package Search Options Views Help +-------------------------+ u: Update g: Download/Install/Remove Pkgs |Install/remove packages g| |Update package list u| |Forget new packages f| |Clean package cache |eated Packages |Clean obsolete files | |Mark Upgradable U| |Play Minesweeper | |Become root | +-------------------------+ |Quit Q| +-------------------------+ These packages are currently installed on your computer. Perform all pending installs and removals メニューの項目を選択するには矢印キーと Enter を用いてください (システムが サポートしている場合は、その項目をマウスでクリックしてもかまいません)。何 も選択せずにメニューを閉じるには、もう一度 Control+t を押してください。メ ニューで現在ハイライトされている項目については、スクリーン最下部に説明が表 示されます。キーボードショートカットを用いてメニューの項目を実行できる場合 は、メニューにそのショートカットが表示されます。例えば、コマンド「Update package list」は u を押すと実行できます。 どんなときでも ? を押せば、利用可能なキーボードショートカットのオンライン リファレンスを表示できます。 aptitude パッケージ一覧の操作 パッケージ一覧は aptitude の主要なインタフェースです。aptitude の起動時に 一覧は多数のグループにまとめられ、次のスクリーンショットに見られるような状 態になります。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 --- Installed Packages --- Not Installed Packages --- Obsolete and Locally Created Packages --- Virtual Packages --- Tasks These packages are currently installed on your computer. [注 注記 記] 空のパッケージグループは自動的に aptitude が隠します。したがって、この スクリーンショットに見られるよりもグループが多い場合も少ない場合もある でしょう。 上のスクリーンショットでは、最初のグループ (「Installed Packages」) がハイ ライトされており、現在選択中であることを示しています。選択は矢印キーで上下 に移動できます。そうするとパッケージ一覧の下に表示される説明文も変わること に注意してください。グループを「展開する」には、グループを選択中に Enter を押してください。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 --\ Installed Packages --- admin - Administrative utilities (install software, manage users, etc) --- base - The Debian base system --- devel - Utilities and programs for software development --- doc - Documentation and specialized programs for viewing documentation --- editors - Text editors and word processors --- electronics - Programs for working with circuits and electronics --- games - Games, toys, and fun programs --- gnome - The GNOME Desktop System --- graphics - Utilities to create, view, and edit graphics files These packages are currently installed on your computer. 御覧のとおり、グループ「Installed Packages」が展開され、 中身が現れました 。このグループの中には多数のサブグループが含まれており、それらは含まれるソ フトウェアの種類で大まかに定義されています。「admin」 セクションを選択して Enter を押すと、セクションが展開されて次のようになります。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 --\ Installed Packages --\ admin - Administrative utilities (install software, manage users, etc) --- main - The main Debian archive --- base - The Debian base system --- devel - Utilities and programs for software development --- doc - Documentation and specialized programs for viewing documentation --- editors - Text editors and word processors --- electronics - Programs for working with circuits and electronics --- games - Games, toys, and fun programs --- gnome - The GNOME Desktop System Packages in the 'admin' section allow you to perform administrative tasks such as installing software, managing users, configuring and monitoring your system, examining network traffic, and so on. 「admin」グループにはサブグループが一つだけ含まれています。「main」 Debian アーカイブです。このグループを展開するといくつかのパッケージが現れます! [ヒ ヒント ン 時間を節約するために、[ キーを使用してグループのサブグループすべてを一 ト] 度に展開できます。「Installed Packages」を選択し [ を押すと次のスクリ ーンショットのようにパッケージがすぐに現れます。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 --\ Installed Packages --\ admin - Administrative utilities (install software, manage users, etc) --\ main - The main Debian archive i acpid 1.0.3-19 1.0.3-19 i alien 8.44 8.44 i anacron 2.3-9 2.3-9 i apt-show-versions 0.07 0.07 i A apt-utils 0.5.25 0.5.25 i apt-watch 0.3.2-2 0.3.2-2 i aptitude 0.2.14.1-2 0.2.14.1-2 The Debian distribution consists of packages from the 'main' section. Every package in 'main' is Free Software. For more information about what Debian considers to be Free Software, see http://www.debian.org/social_contract#guidelines 矢印キーによる移動に加えて、パッケージ一覧では、Page Up や Page Down キー を用いて情報 1 ページぶん一度に選択を移動することも可能です。 [ヒ ヒント ン 表示可能な領域に収まる量よりも画面の下半分の情報が多い場合は、a や z ト] キーを用いてそれらをスクロールできます。 名前を用いたパッケージ検索 名前のわかっているパッケージを瞬時に見つけるには、/ を押して検索ダイアログ を開いてください。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 i frozen-bubble 1.0.0-5 1.0.0-5 i A frozen-bubble-data 1.0.0-5 1.0.0-5 i geekcode 1.7.3-1 1.7.3-1 i gfpoken 0.25-3 0.25-3 i ggz-gnome-client 0.0.7-2 0.0.7-2 i ggz-gtk-client 0.0.7-1 0.0.7-1 i ggz-gtk-game-data 0.0.7-2 0.0.7-2 i +--------------------------------------------------------------------------+ i |Search for: | i |froz | Po| [ Ok ] [ Cancel ]| Fr+--------------------------------------------------------------------------+ attempt to shoot bubbles into groups of the same color to cause them to pop. It features 100 single-player levels, a two-player mode, music and striking graphics. This game is widely rumored to be responsible for delaying the Woody release. URL: http://www.frozen-bubble.org/ 上のスクリーンショットにあるように、froz で検索すると frozen-bubble パッケ ージが見つかります。「Search patterns」で述べるような aptitude の強力な検 索言語を用いると、多数の複雑な判定基準を用いてパッケージを見つけられます。 [ヒ ヒント ン \ を押すとパッケージ一覧で後方検索できます。また検索ウィンドウを閉じた ト] 後で n を押すと、最後に行った検索を繰り返せます。 パッケージのうち、ある特定の判定基準に合うもの以外はすべて隠すと好都合なこ とがあります。それを行うには l を押してください。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 --- Installed Packages --- Not Installed Packages --- Obsolete and Locally Created Packages --- Virtual Packages --- Tasks +--------------------------------------------------------------------------+ |Enter the new package tree limit: | |apti | | [ Ok ] [ Cancel ]| Th+--------------------------------------------------------------------------+ a このダイアログは検索ダイアログとまったく同じように機能しますが、ダイアログ ボックスへの入力内容とマッチする次のパッケージをハイライトする代わりに、マ ッチしないものをすべて隠します。例えばダイアログボックスに apti と入力して Enter を押すと、「apti」 を名前に含むパッケージ以外はすべて隠されます。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 --\ Installed Packages --\ admin - Administrative utilities (install software, manage users, etc) --\ main - The main Debian archive i aptitude 0.2.14.1-2 0.2.14.1-2 i A synaptic 0.51-1 0.51-1 --\ x11 - The X window system and related software --\ main - The main Debian archive i xfree86-driver-synaptics 0.13.3-1 0.13.3-1 --- Not Installed Packages --- Virtual Packages These packages are currently installed on your computer. パッケージ管理 パッケージ一覧の中を動き回れるようになったら、いよいよ aptitude を用いてパ ッケージのインストールや削除をする時間です。本セクションでは、パッケージに インストール・削除・更新用のフラグをつける方法を学びます。 [ヒ ヒント ン システムの構成に変更を加えることが可能なのは root ユーザだけです ト] 。aptitude で実験をしたい場合は、root 以外のユーザで aptitude を安全に 実行し、どんなかたちであれシステムに損傷を与えることのないようにすると よいでしょう。root のみができることをしようとすると、aptitude はそれを 通知してくれます。続行したい場合は root のパスワードを入力しなければな りません。 All changes to a package are performed by first highlighting it in the package list, then pressing a key corresponding to the action which should be performed. The basic action keys ^[2] are + to install or upgrade a package, - to remove a package, and = to prevent a package from being automatically upgraded (this is known as holding the package). These actions are not performed immediately; aptitude will simply update the package list to show the change that has been requested. For instance, in the screen shot below, the kaffeine-mozilla package was selected and + was pushed. The package is now highlighted in green and the letter 「i」 has appeared to the left of its name, to indicate that it will be installed; in addition, an estimate of the amount of space that the package will use is displayed. Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 Will use 2925kB of disk space DL Size: 1375kB --\ kde - The KDE Desktop System --\ main - The main Debian archive p bibletime-i18n <none> 1.4.1-1 p education-desktop-kde <none> 0.771 p junior-kde <none> 1.4 piA kaffeine +2843kB <none> 0.4.3-1 pi kaffeine-mozilla +81.9kB <none> 0.4.3-1 p karamba <none> 0.17-5 p kde-devel <none> 4:3.1.2 p kde-devel-extras <none> 4:3.1.2 The K Desktop Environment (development files) A metapackage containing dependencies for the core development suite of KDE including kdesdk, qt3-designer, and all core KDE -dev packages. [ヒ ヒント ン いつでも、1 つ以上のパッケージに加えたあらゆる変更を 取り消し → 取り消 ト] し (Control+u) を用いて「取り消す」ことが可能です。これは、アクション が予想外の結果をもたらしてしまい「元に戻し」たくなった場合に有用です。 個々のパッケージに対して行うアクション以外に、もう 1 つ重要なアクションが 利用可能です。U と入力すると、更新可能なあらゆるパッケージを更新しようとし ます。システムを最新状態に保つために、このコマンドを定期的に使用してくださ い。 Managing broken packages パッケージの状態を変更すると依存関係が満たされなくなることがあります。依存 関係が満たされていないパッケージは破損しているといいます。破損パッケージが 生じると aptitude は警告を発し、その発生原因を説明します。例えば 、sound-juicer を削除しようとするとこんなことが起こります。 Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.3.3 #Broken: 1 Will free 48.6MB of disk space i A nautilus 2.10.1-4 2.10.1-4 i nautilus-cd-burner 2.10.2-1.1 2.10.2-1.1 i A nautilus-data 2.10.1-4 2.10.1-4 i netspeed 0.12.1-1 0.12.1-1 i A oaf 0.6.10-3 0.6.10-3 i pybliographer 1.2.6.2-1 1.2.6.2-1 i rhythmbox 0.8.8-13 0.8.8-13 i shermans-aquarium 3.0.1-1 3.0.1-1 idA sound-juicer -1733kB 2.10.1-3 2.10.1-3 GNOME 2 CD Ripper sound-juicer will be removed. The following packages depend on sound-juicer and will be broken by its removal: * gnome-desktop-environment depends on sound-juicer [1(1)/...] Suggest 2 keeps e: Examine !: Apply .: Next ,: Previous As you can see, aptitude displays three indicators that something has gone wrong: first, the number of broken packages is displayed in the upper blue area; second, the lower half of the display changes to describe broken packages that are related to the currently highlighted package; third, a bar appears at the bottom of the screen with a suggestion on how to solve the problem. To quickly find broken packages in the package list, you can press b or search for ?broken. [注 注記 記] [1(1)/...] というテキストは、aptitude の依存関係解決ツールの進行状況を 示しています。最初の数字は現在選択中の解決方法を示し、2 番目の数字は aptitude がこれまでに生成した解決方法の数を示します。「...」というテキ ストの存在は、生成された解決方法の他に追加の解決方法が存在するというこ とを意味します。唯一可能な解決方法を生成したと aptitude が確信している 場合は、表示は [1/1] となるでしょう。 どうやったらこの問題を解決できるかと aptitude が考えているか、さらに詳しく 見るには、e を押してください。次のようなスクリーンが現れるでしょう。 Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Packages Resolve Dependencies --\ Keep the following packages at their current version: gstreamer0.8-cdparanoia [0.8.10-1 (unstable, now)] sound-juicer [2.10.1-2 (now)] [1(1)/...] Suggest 2 keeps e: Examine !: Apply .: Next ,: Previous この状態から、. を押すとさらに多くの解決方法を見ることができ、, を押すと前 に検討した解決方法に戻ることができます。現在選択中の解決方法を適用してパッ ケージ一覧に戻るには、! を押してください。例えば、上のスクリーンの表示中に . を押すと、次のような解決方法が提案されます。 Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Packages Resolve Dependencies --\ Keep the following packages at their current version: sound-juicer [2.10.1-3 (unstable, now)] --\ Downgrade the following packages: gstreamer0.8-cdparanoia [0.8.11-1 unstable, now -> 0.8.8-3 testing] [2(2)/...] Suggest 1 keep,1 downgrade e: Examine !: Apply .: Next ,: Previous 基本的な解決方法操作コマンドによる操作だけでなく、r を押して、同意しないア クションを「拒否」することも可能です。例えば、提案された最初の解決方法では sound-juicer の削除を取り消そうとしています ―― sound-juicer の削除は、まさ に私たちが行おうとしていたアクションです! このアクションに対応する項目の上 で r を押すと、aptitude に、このように sound-juicer の削除を取り消してはい けない、と教えることができます。 Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Packages Resolve Dependencies --\ Keep the following packages at their current version: gstreamer0.8-cdparanoia [0.8.11-1 (unstable, now)] R sound-juicer [2.10.1-3 (unstable, now)] GNOME 2 CD Ripper gnome-desktop-environment depends upon sound-juicer --\ The following actions will resolve this dependency: -> Remove gnome-desktop-environment [1:2.10.2.3 (unstable, testing, now)] R -> Cancel the removal of sound-juicer -> Downgrade sound-juicer [2.10.1-3 (unstable, now) -> 0.6.1-2 (testing)] [1(1)/...] Suggest 2 keeps e: Examine !: Apply .: Next ,: Previous 御覧のとおり、sound-juicer を現在のバージョンに一時固定するというアクショ ンに相当するリスト項目が赤色になり「R」という印がつけられて、このアクショ ンが拒否されていることを示すようになりました。今後生成される解決方法 (すな わち、まだ表示されていないあらゆる解決方法) には、このアクションは含まれま せん。しかし、これまでに生成された、このアクションを含む解決方法も利用可能 です。 [注 注記 記] 上のスクリーンショットでは、sound-juicer の説明がスクリーンの中央に表 示されています。御覧のとおり、その下には、sound-juicer を現在のバージ ョンに一時固定させる原因となった依存関係が、aptitude が知っているこの 依存関係の解決方法すべてとともに表示されています。 例えば、sound-juicer を削除しようとした直後にこの拒否を行った場合、. を押 すと、sound-juicer のインストールを取り消し gstreamer0.8-cdparanoia をダウ ングレードするという解決方法を飛ばして次の解決方法が得られます。 Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Packages Resolve Dependencies --\ Remove the following packages: gnome-desktop-environment [1:2.10.2.3 (unstable, testing, now)] [2(2)/...] Suggest 1 removal e: Examine !: Apply .: Next ,: Previous 拒否は、新しく生成される解決方法、すなわち最後に生成された解決方法を表示中 に . を押したときに生成される解決方法のみに適用されます。拒否の実行前に生 成された解決方法には、拒否したアクションが依然として含まれています。拒否は いつでも、拒否したアクションをもう一度選択して r を押せば取り消せます。拒 否を取り消せば、その前に「飛ばされた」解決方法など、そのアクションを含む解 決方法をもう一度生成できます。 The opposite of rejecting an action is approving it. To approve an action, just select it and press a; this forces the problem resolver to choose the action whenever possible^[3]. Approved actions will turn green and will be marked with 「A」, as in the following screenshot: Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Packages Resolve Dependencies --\ Remove the following packages: A gnome-desktop-environment [1:2.10.2.3 (unstable, testing, now)] [2(2)/...] Suggest 1 removal e: Examine !: Apply .: Next ,: Previous [重 重要 要] 壊れた依存関係を解決せずに g を押して選択をコミットすると、aptitude は 現在選択中の提案を自動的に実行します。しかし、依存関係の問題を自動的に 解決するのは難しいので、あなたはその結果に満足できない可能性があります 。したがって、一般に、選択をコミットする前には aptitude が何を行おうと しているのか確認するとよいでしょう。 パッケージ一覧の更新とパッケージのインストール 現時点であなたには、実際にシステムに変更を加えるのに必要となる、aptitude に関する知識が十分にあります。 Debian のサーバから入手可能なパッケージの一覧を定期的に更新し、新しいパッ ケージやパッケージの新しいバージョンを把握しましょう。これを行うには、u を 押してください。ダウンロード中はいつでも、q を押して中断できます。 新たなパッケージ一覧が手に入ったら、前のセクションで説明した方法で、更新・ インストール・削除するパッケージを選択できます。これまでに要求したアクショ ンを再点検するには、g を一度押してください。(前の例にあった) kaffeine-mozilla パッケージをインストールするときには次のような画面が現れ ます。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 Will use 2925kB of disk space DL Size: 1375kB --\ Packages being automatically installed to satisfy dependencies piA kaffeine +2843kB <none> 0.4.3-1 --\ Packages to be installed pi kaffeine-mozilla +81.9kB <none> 0.4.3-1 These packages are being installed because they are required by another package you have chosen for installation. If you select a package, an explanation of its current state will appear in this space. 御覧のとおり、kaffeine-mozilla には kaffeine が必須なので、aptitude は kaffeine をインストールするよう自動的に決定しました。この時点では、g を押 してインストールを続行するか q を押して中断するかを選択できます。 コマンドラインからの aptitude の使い方 前のセクションで説明した「ビジュアル」インタフェースに加え、aptitude を使 って、apt-get と同様にコマンドラインから直接パッケージを管理することも可能 です。本セクションでは、aptitude のコマンドラインアクションのうち最もよく 使用されるものを取り上げます。さらに詳しくは、aptitude コマンドラインリフ ァレンスを参照してください。 一般に、 aptitude のコマンドライン呼び出しは次のようになります。 aptitude action [arguments...] action tells aptitude what action it is to take; the remaining arguments are used in an option-specific fashion. Typically they will consist of package names and command-line switches^[4]. 最も重要なアクションを以下に示します。 aptitude update このコマンドは、ビジュアルインタフェースに入って u と押すのとちょうど同じ ように、パッケージ一覧を更新します。 aptitude safe-upgrade This command will upgrade as many packages as it can upgrade without removing existing packages. It is sometimes necessary to remove one package in order to upgrade another; this command is not able to upgrade packages in such situations. Use the full-upgrade command to upgrade those packages as well. aptitude full-upgrade Like safe-upgrade, this command will attempt to upgrade packages, but it is more aggressive about solving dependency problems: it will install and remove packages until all dependencies are satisfied. Because of the nature of this command, it is possible that it will do undesirable things, and so you should be careful when using it. [注 注記 記] For historical reasons, this command was originally named dist-upgrade, and that name is still recognized by aptitude. aptitude [ install | remove | purge ] pkg1 [pkg2...] These commands install, remove, or purge^[5] the specified packages. 「Installing」 a package which is already installed but can be upgraded will cause it to be upgraded. aptitude search pattern1 [pattern2...] This command searches for packages whose name contains any of the given patterns, printing the result to the terminal. In addition to just being a string of text, each pattern can be a search pattern as described in 「Search patterns」. ^[6] For instance, 「aptitude search gnome kde」 will list all packages whose name contains either 「gnome」 or 「kde」. aptitude show pkg1 [pkg2...] 各パッケージに関する情報をターミナルに表示します。 パッケージのインストール・更新・削除を行うコマンドはすべて、パラメタ -s を つけることが可能です。このパラメタは「シミュレート (simulate)」を意味しま す。コマンドラインに -s が渡されると、プログラムは通常行うアクションをすべ て実行しますが、ファイルのダウンロードやインストール・削除は実際には行いま せん。 aptitude は次のようなプロンプトを表示することがあります。 以下の新規パッケージが自動的にインストールされます: space-orbit-common 以下の新規パッケージがインストールされます: space-orbit space-orbit-common 更新: 0 個、新規インストール: 2 個、削除: 0 個、保留: 0 個。 3200kB のアーカイブを取得する必要があります。展開後に 8413kB のディスク領域が新たに消費されます。 続けますか? [Y/n/?] 「はい (Yes)」や「いいえ (No)」という明白な選択肢を利用できるだけでなく、 多数のコマンドを使用してプロンプトに表示される情報を変更したり追加アクショ ンを指定したりすることが可能です。例えば s と入力すると、各パッケージが使 用するディスク領域の大きさに関する情報を表示させたり隠したりできます。 続けますか? [Y/n/?] s サイズの変化を表示します。 以下の新規パッケージが自動的にインストールされます: space-orbit-common <+8020kB> 以下の新規パッケージがインストールされます: space-orbit <+393kB> space-orbit-common <+8020kB> 更新: 0 個、新規インストール: 2 個、削除: 0 個、保留: 0 個。 3200kB のアーカイブを取得する必要があります。展開後に 8413kB のディスク領域が新たに消費されます。 続けますか? [Y/n/?] 同様に、d と入力すると自動的にインストール・削除されるパッケージに関する情 報を表示します。 以下の新規パッケージが自動的にインストールされます: space-orbit-common (依: space-orbit) 以下の新規パッケージがインストールされます: space-orbit space-orbit-common 更新: 0 個、新規インストール: 2 個、削除: 0 個、保留: 0 個。 3200kB のアーカイブを取得する必要があります。展開後に 8413kB のディスク領域が新たに消費されます。 これは、space-orbit-common がインストール予定になっているのは space-orbit が space-orbit-common に依存しているためだ、という意味です。プロンプトに ? と入力すると、可能な入力の完全な一覧を参照できます。 自明には解決できないような依存関係の問題が要求によって生じる場合、aptitude はどうするか尋ねます。 The following packages are BROKEN: libsdl1.2debian The following packages will be REMOVED: libsdl1.2debian-alsa . . . The following actions will resolve these dependencies: Install the following packages: libsdl1.2debian-all [1.2.12-1 (unstable)] Score is 41 Accept this solution? [Y/n/q/?] y と入力する (または単に enter を押す) と提案されている解決方法を受け入れ ます。n と入力すると、「次善の」解決方法を表示します。 Accept this solution? [Y/n/q/?] n The following actions will resolve these dependencies: Install the following packages: libsdl1.2debian-esd [1.2.12-1 (unstable)] Score is 19 Accept this solution? [Y/n/q/?] メインのコマンドラインプロンプトと同様、依存関係問題解決用プロンプトからは 、パッケージ状態の手動での変更など多数の追加アクションを実行できます。完全 な一覧を参照するには ? と入力してください。 Typing q will abort the automatic resolver and allow you to resolve the dependencies manually: Accept this solution? [Y/n/q/?] q aptitude failed to find a solution to these dependencies. You can solve them yourself by hand or type 'n' to quit. The following packages have unmet dependencies: libsdl1.2debian: Depends: libsdl1.2debian-alsa (= 1.2.12-1) but it is not installable or libsdl1.2debian-all (= 1.2.12-1) but it is not installable or libsdl1.2debian-esd (= 1.2.12-1) but it is not installable or libsdl1.2debian-arts (= 1.2.12-1) but it is not installable or libsdl1.2debian-oss (= 1.2.12-1) but it is not installable or libsdl1.2debian-nas (= 1.2.12-1) but it is not installable or libsdl1.2debian-pulseaudio (= 1.2.12-1) but it is not installable Resolve these dependencies by hand? [N/+/-/_/:/?] You can use any of the package manipulation commands to resolve the broken dependencies (type ? for a full list of the available commands). Type n or press enter to quit aptitude: Resolve these dependencies by hand? [N/+/-/_/:/?] n Abort. aptitude のコマンドライン機能の完全な説明は、Command-line referenceを参照 してください。 ══════════════════════════════════════════════════════════════════════════ ^[2] パッケージメニューを用いてパッケージに変更を加えることが可能です。詳 しくは「The Package menu」を参照してください。 ^[3] アクションの承認は、すべての解決方法にアクションが含まれるように要求 することとはわずかに異なります。承認とは、承認されたアクションと承認されて いないアクションの間で選択をしなければならなくなるといつでも、問題解決ツー ルは承認されたアクションを選ぶ、ということです。承認された可能なアクション が複数ある場合は、それらすべてが解決方法に含められる候補となります。 ^[4] 「スイッチ」は、1 つのハイフンに続く 1 文字です (例: -a や -v など)。 ^[5] パッケージの完全削除は、パッケージだけでなくその設定ファイルも削除し ます。 ^[6] 実は同じことが、install や show などの、パッケージを引数にとる他のコ マンドにも当てはまります。 第2章 aptitude reference guide 目次 The aptitude terminal user interface メニューの利用 メニューのコマンド 複数の画面を用いた作業 root になる パッケージ管理 パッケージ一覧の管理 パッケージ情報へのアクセス Modifying package states パッケージのダウンロード・インストール・削除 パッケージの信頼性の意味と管理方法 自動的にインストールされたパッケージの管理 Resolving package dependencies Dependency resolution in aptitude Immediate dependency resolution Resolving Dependencies Interactively Costs in the interactive dependency resolver Configuring the interactive dependency resolver Search patterns Searching for strings Shorthand for search terms Searches and versions Explicit search targets Search term reference aptitude のカスタマイズ Customizing the package list Customizing keybindings テキストの色とスタイルのカスタマイズ Customizing the display layout Configuration file reference テーマ マインスイーパで遊ぶ The White Rabbit put on his spectacles. 'Where shall I begin, please your Majesty?' he asked. 'Begin at the beginning,' the King said gravely, 'and go on till you come to the end: then stop.' -- Carrol Lewis [FAMILY Given], Alice in Wonderland aptitude is a large program with many features, and it is sometimes difficult to remember how to do something, or even to remember whether that something is even possible. Indeed, many feature requests received by the author describe features which are already present but are difficult to find.^[7] このようなプログラムの不明瞭な部分をなくそうと、このリファレンスガイドでは 、aptitude のあらゆる機能と設定パラメタを説明します。aptitude の重要な機能 についてのより初心者向けの手引きについては、1章Getting startedを参照してく ださい。 [注 注記 記] aptitude の挙動や見た目は多くの方法で設定可能です。このマニュアルでは 、デフォルトの設定でプログラムがどのように動作するかを説明します。各種 の設定で挙動がどのように変化するかは、「aptitude のカスタマイズ」で説 明します。 The aptitude terminal user interface This section describes the parts of the terminal-based user interface of aptitude that do not deal with managing packages. メニューの利用 The menu bar at the top of the screen lists the most important commands in aptitude. To activate the menu bar, press Control+t (also valid: Control+Space and F10); you can then navigate it using the arrow keys and select a menu item using Enter. メニューの項目の一部には「ホットキー」が与えられています。それらは、そのメ ニューがアクティブになっている間、その項目を選択するのに使える文字や数字で す。これらのホットキーは、メニューの他の文字よりも明るい白で表示されます。 さらに、メニューの項目の一部には「ショートカット」が与えられています。それ らは、そのメニューがアクティブになっていない間、そのメニューの項目と同じア クションを実行するキーストークです。これらのキーストークはメニューの右端に 表示されます。 In the remainder of the manual, menu commands will be written like this: Menu → Item (key). This indicates that you should choose Item from the Menu menu, and that key is the shortcut for this command. メニューのコマンド The Actions menu 図2.1 「アクション」メニューで利用可能なコマンド ┌────────────────────┬───────────────────────────────────────────────────┐ │ コマンド │ 説明 │ ├────────────────────┼───────────────────────────────────────────────────┤ │ │ インストールプレビュー画面が表示されていない場合 │ │ アクション → パッ │ は表示します。表示されている場合はインストールの │ │ ケージのインストー │ 実行を行います。インストールの実行については「パ │ │ ル・削除 (g) │ ッケージのダウンロード・インストール・削除」で説 │ │ │ 明します。 │ ├────────────────────┼───────────────────────────────────────────────────┤ │ アクション → パッ │ │ │ ケージ一覧の更新 │ パッケージ一覧を最新状態にします。 │ │ (u) │ │ ├────────────────────┼───────────────────────────────────────────────────┤ │ アクション → 更新 │ 固定されているパッケージや更新が禁止されているパ │ │ 可能パッケージとい │ ッケージを除くすべての更新可能なパッケージに、更 │ │ う印を添付 (U) │ 新用のフラグを立てます。 │ ├────────────────────┼───────────────────────────────────────────────────┤ │ アクション → 新規 │ どのパッケージが「新規」かの情報をすべて消去しま │ │ パッケージ一覧の消 │ す (「新規パッケージ」のツリーを空にします)。 │ │ 去 (f) │ │ ├────────────────────┼───────────────────────────────────────────────────┤ │ │ Cancel all pending actions from this session │ │ アクション → 未実 │ (including installations, removals, upgrades, │ │ 行アクションの取り │ holds, marking as automatically installed...). │ │ 消し │ This is roughly equivalent to restart the │ │ │ program. │ ├────────────────────┼───────────────────────────────────────────────────┤ │ アクション → パッ │ Delete all the compressed packages that were │ │ ケージのキャッシュ │ downloaded by aptitude ^[a]. │ │ の消去 │ │ ├────────────────────┼───────────────────────────────────────────────────┤ │ │ aptitude でダウンロードした圧縮パッケージ^[a]のう │ │ アクション → 廃止 │ ちもう入手不可能なものをすべて削除します。これら │ │ されたファイルを一 │ は廃止されたパッケージと考えられるので、本来は不 │ │ 掃する │ 必要なダウンロードがパッケージ削除のために後から │ │ │ 必要になるということもなく、ディスク領域の節約の │ │ │ ために削除できます。 │ ├────────────────────┼───────────────────────────────────────────────────┤ │ アクション → マイ │ マインスイーパゲームで遊びます。ゲームについては │ │ ンスイーパで遊ぶ │ 「マインスイーパで遊ぶ」で説明します。 │ ├────────────────────┼───────────────────────────────────────────────────┤ │ アクション → root │ root ユーザとして作業を続行します。「root になる │ │ になる │ 」を参照してください。 │ ├────────────────────┼───────────────────────────────────────────────────┤ │ アクション → 終了 │ Quit aptitude, saving any changes to package │ │ (Q) │ states. │ ├────────────────────┴───────────────────────────────────────────────────┤ │ ^[a] aptitude 以外の apt ユーティリティを用いてダウンロードしたものも │ │ 含まれます。 │ └────────────────────────────────────────────────────────────────────────┘ The Undo menu 図2.2 「取り消し」メニューで利用可能なコマンド ┌─────────────────────┬──────────────────────────────────────────────────┐ │ コマンド │ 説明 │ ├─────────────────────┼──────────────────────────────────────────────────┤ │ │ Cancel the effect of the last change to a │ │ 取り消し → 取り消し │ package's state, up to the last time aptitude │ │ (Control+u) │ was started, the package list was updated, or an │ │ │ install run was performed. │ └─────────────────────┴──────────────────────────────────────────────────┘ The Package menu 図2.3 「パッケージ」メニューで利用可能なコマンド ┌─────────────────────────┬──────────────────────────────────────────────┐ │ コマンド │ 説明 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ パッケージ → インストー │ 現在選択中のパッケージにインストール用のフラ │ │ ル (+) │ グを立てます。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ Package → Reinstall (L) │ Flag the currently selected package for │ │ │ reinstallation. │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ パッケージ → 削除 (-) │ 現在選択中のパッケージに削除用のフラグを立て │ │ │ ます。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ パッケージ → 完全削除 │ 現在選択中のパッケージに完全削除用のフラグを │ │ (_) │ 立てます。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ パッケージ → 一時固定 │ 現在選択中のパッケージに設定された、実行され │ │ (:) │ ていないインストール・更新・削除をすべて取り │ │ │ 消し、設定された固定状態を解除します。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ パッケージ → 固定 (=) │ 現在選択中のパッケージが更新されないように固 │ │ │ 定します。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ │ 現在選択中のパッケージに、「自動的にインスト │ │ パッケージ → 自動的にイ │ ールされた」パッケージという印をつけます。手 │ │ ンストールされたという │ 動でインストールされたパッケージおよび自動的 │ │ 印を添付 (M) │ にインストールされたパッケージに関してさらに │ │ │ 詳しく知りたければ、「自動的にインストールさ │ │ │ れたパッケージの管理」を参照してください。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ │ 現在選択中のパッケージに、「手動でインストー │ │ パッケージ → 手動でイン │ ルされた」パッケージという印をつけます。手動 │ │ ストールしたという印を │ でインストールされたパッケージおよび自動的に │ │ 添付 (m) │ インストールされたパッケージに関してさらに詳 │ │ │ しく知りたければ、「自動的にインストールされ │ │ │ たパッケージの管理」を参照してください。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ │ 更新可能なパッケージを選択している場合、それ │ │ パッケージ → バージョン │ を現在利用可能なバージョンに更新するのを禁止 │ │ の禁止 (F) │ します。パッケージの特定のバージョンを選択し │ │ │ ている場合、パッケージをそのバージョンに更新 │ │ │ するのを禁止します。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ │ 現在選択中のパッケージに関する情報 (パッケー │ │ パッケージ → 情報 │ ジが依存するパッケージ・依存されているパッケ │ │ (enter) │ ージ・利用可能なバージョンなど) を含むスクリ │ │ │ ーンを表示します。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ │ When browsing the package list, cycles │ │ │ through the information that can be │ │ │ displayed in the information area (the lower │ │ │ half of the display). The information area │ │ Package → Cycle │ can display the long description of the │ │ Information (i) │ selected package (its default behavior), a │ │ │ summary of the dependencies related to the │ │ │ package, or an analysis of which other │ │ │ packages require or suggest the selected │ │ │ package. │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ │ 現在選択中のパッケージの Debian での変更履歴 │ │ パッケージ → 変更履歴 │ を表示します。特定バージョンの変更履歴だけ見 │ │ (C) │ るには、そのバージョンを選択してからこのコマ │ │ │ ンドを実行してください。 │ └─────────────────────────┴──────────────────────────────────────────────┘ The Resolver menu 図2.4 「問題解決」メニューで利用可能なコマンド ┌───────────────┬────────────────────────────────────────────────────────┐ │ コマンド │ 説明 │ ├───────────────┼────────────────────────────────────────────────────────┤ │ 問題解決 → 解 │ 問題解決ツールから現在なされている提案の詳細な説明を表 │ │ 決方法の検討 │ 示します (「Resolving Dependencies Interactively」を参 │ │ (e) │ 照してください)。 │ ├───────────────┼────────────────────────────────────────────────────────┤ │ 問題解決 → 解 │ │ │ 決方法の適用 │ 問題解決ツールが現在提案中のアクションを実行します。 │ │ (!) │ │ ├───────────────┼────────────────────────────────────────────────────────┤ │ 問題解決 → 次 │ │ │ の解決方法 │ 問題解決ツールの次の提案を選択します。 │ │ (.) │ │ ├───────────────┼────────────────────────────────────────────────────────┤ │ 問題解決 → 前 │ │ │ の解決方法 │ 問題解決ツールの前の提案を選択します。 │ │ (,) │ │ ├───────────────┼────────────────────────────────────────────────────────┤ │ 問題解決 → 最 │ │ │ 初の解決方法 │ 問題解決ツールの最初の提案を選択します。 │ │ (<) │ │ ├───────────────┼────────────────────────────────────────────────────────┤ │ 問題解決 → 最 │ 問題解決ツールによって最後に生成された提案を選択します │ │ 後の解決方法 │ (「Resolving Dependencies Interactively」を参照してく │ │ (>) │ ださい)。 │ ├───────────────┼────────────────────────────────────────────────────────┤ │ 問題解決 → 拒 │ 解決方法を検討する際に、現在選択中のアクションを拒否す │ │ 否する・しな │ る・しないを切り替えてから次のアクションに移動します ( │ │ いを切り替え │ 「Resolving Dependencies Interactively」を参照してくだ │ │ (r) │ さい)。アクションが現在承認されている場合、その承認が │ │ │ 取り消されます。 │ ├───────────────┼────────────────────────────────────────────────────────┤ │ 問題解決 → 承 │ 解決方法を検討する際に、現在選択中のアクションを承認す │ │ 認する・しな │ る・しないを切り替えてから次のアクションに移動します ( │ │ いを切り替え │ 「Resolving Dependencies Interactively」を参照してくだ │ │ (a) │ さい)。アクションが現在拒否されている場合、その拒否が │ │ │ 取り消されます。 │ ├───────────────┼────────────────────────────────────────────────────────┤ │ 問題解決 → 対 │ 解決方法を検討する際に、現在選択中のアクションによって │ │ 象を表示 │ そのパッケージが受ける影響に関する詳細な情報を表示しま │ │ (Enter) │ す (「Resolving Dependencies Interactively」を参照して │ │ │ ください)。 │ ├───────────────┼────────────────────────────────────────────────────────┤ │ │ Reject (as if with 問題解決 → 拒否する・しないを切り替 │ │ Resolver → │ え (r)) all actions that would break a hold on a │ │ Reject │ package or install a forbidden version. These actions │ │ Breaking │ are rejected by default unless │ │ Holds │ Aptitude::ProblemResolver::Allow-Break-Holds is set to │ │ │ true, but this menu item allows you to reject them │ │ │ manually at any time. │ └───────────────┴────────────────────────────────────────────────────────┘ The Search menu 図2.5 「検索」メニューで利用可能なコマンド ┌───────────────────────────┬────────────────────────────────────────────┐ │ コマンド │ 説明 │ ├───────────────────────────┼────────────────────────────────────────────┤ │ │ パッケージ一覧から、検索パターンにマッチす │ │ 検索 → 下を検索 (/) │ るパッケージを下方へと検索します (「Search │ │ │ patterns」を参照してください)。 │ ├───────────────────────────┼────────────────────────────────────────────┤ │ │ パッケージ一覧から、検索パターンにマッチす │ │ 検索 → 上を検索 (\) │ るパッケージを上方へと検索します (「Search │ │ │ patterns」を参照してください)。 │ ├───────────────────────────┼────────────────────────────────────────────┤ │ 検索 → 前の検索を繰り返す │ 最後に実行した検索コマンドをもう一度、実行 │ │ (n) │ します。 │ ├───────────────────────────┼────────────────────────────────────────────┤ │ │ Repeat the last Find command, but in the │ │ Search → Find Again │ opposite direction. If the last Find │ │ Backwards (N) │ command was Find Backwards, this will │ │ │ perform a forwards search, and vice versa. │ ├───────────────────────────┼────────────────────────────────────────────┤ │ │ 検索パターンにマッチしないパッケージを取り │ │ 検索 → 表示を制限 (l) │ 除くことで、現在のパッケージ一覧にフィルタ │ │ │ をかけます (「Search patterns」を参照して │ │ │ ください)。 │ ├───────────────────────────┼────────────────────────────────────────────┤ │ 検索 → 表示制限を解除 │ 現在のパッケージ一覧のフィルタを解除します │ │ │ (すべてのパッケージが表示されます)。 │ ├───────────────────────────┼────────────────────────────────────────────┤ │ 検索 → 壊れた依存関係を検 │ Find the next broken package. This is │ │ 索 (b) │ equivalent to searching for ?broken. │ └───────────────────────────┴────────────────────────────────────────────┘ The Options menu 図2.6 「オプション」メニューで利用可能なコマンド ┌───────────────────────┬────────────────────────────────────────────────┐ │ コマンド │ 説明 │ ├───────────────────────┼────────────────────────────────────────────────┤ │ │ Open a new top-level view in which you can │ │ │ modify aptitude's settings. Configuration │ │ │ options are displayed in a tree similar to the │ │ Options → Preferences │ tree of packages; to enable or disable an │ │ │ option, select it and press Space or Enter. │ │ │ Configuration options are saved to │ │ │ ~/.aptitude/config immediately upon being │ │ │ selected. │ ├───────────────────────┼────────────────────────────────────────────────┤ │ オプション → オプショ │ すべてのオプションをデフォルトの値にリセットし │ │ ンを元に戻す │ ます。 │ └───────────────────────┴────────────────────────────────────────────────┘ The Views menu [注 注記 記] 画面がどのような機能をもつかに関する大まかな説明については、「複数の画 面を用いた作業」を参照してください。 図2.7 「表示」メニューで利用可能なコマンド ┌─────────────────────────┬──────────────────────────────────────────────┐ │ コマンド │ 説明 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ 表示 → 次 (F6) │ 次のアクティブな画面に切り換えます。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ 表示 → 前 (F7) │ 前のアクティブな画面に切り換えます。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ 表示 → 閉じる (q) │ 現在の画面を閉じます。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ 表示 → パッケージ画面を │ パッケージ一覧の画面を新規に作成します。 │ │ 新規に作成 │ │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ │ インストールされていなく、システムにインスト │ │ 表示 → 推奨を監査 │ ールされているパッケージから「推奨」されてい │ │ │ るパッケージを表示する画面を作成します。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ 表示 → 平坦なパッケージ │ パッケージをカテゴリ分けせずに一覧表示する画 │ │ 一覧を新規に作成 │ 面を新規に作成します。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ 表示 → Debtags 表示を新 │ debtags のエントリによってパッケージを分類し │ │ 規に作成 │ たパッケージ一覧の画面を新規に作成します。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ │ 多数の追加項目が表示されます。それらは、現在 │ │ 追加項目 │ アクティブな画面に対応しています。直接、ある │ │ │ 画面に切り換えるには、それをメニューから選択 │ │ │ してください。 │ └─────────────────────────┴──────────────────────────────────────────────┘ The Help menu 図2.8 「ヘルプ」メニューで利用可能なコマンド ┌─────────────────────────┬──────────────────────────────────────────────┐ │ コマンド │ 説明 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ ヘルプ → このプログラム │ 著作権情報をいくらか表示します。 │ │ について │ │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ ヘルプ → ヘルプ (?) │ オンラインヘルプページを表示します。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ ヘルプ → ユーザマニュア │ ユーザマニュアル (このドキュメント) を表示し │ │ ル │ ます。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ ヘルプ → FAQ │ aptitude FAQ を表示します。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ ヘルプ → 変更履歴 │ aptitude に加えられた主な変更の履歴を表示し │ │ │ ます。 │ ├─────────────────────────┼──────────────────────────────────────────────┤ │ ヘルプ → ライセンス │ aptitude のコピー・修正・配布を行う場合に基 │ │ │ づくべき条項を表示します。 │ └─────────────────────────┴──────────────────────────────────────────────┘ 複数の画面を用いた作業 aptitude を用いると、同時に複数の「画面」で作業できます。「画面」(「スクリ ーン」と呼ばれることもあります。) は、単に、メニューバーの下の画面領域に表 示できるものです。最もよく用いられる画面はパッケージ一覧ですが、ダウンロー ド画面もよく用いられます。 複数の画面を同時に開いているときには、アクティブな画面をすべて一覧表示する バーがスクリーンの最上部に現れます。例えば、Enter を押して apt を検査し、 その後 libc6 を検査すると、スクリーンはこのような感じになるでしょう。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Packages apt info libc6 info aptitude 0.3.1 i A --\ libc6 2.3.2.ds1- 2.3.2.ds1- Description: GNU C Library: Shared libraries and Timezone data Contains the standard libraries that are used by nearly all programs on the system. This package includes shared versions of the standard C library and the standard math library, as well as many others. Timezone data is also included. Priority: required Section: base Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org> Compressed size: 4901k Uncompressed size: 15.9M Source Package: glibc --\ Depends --- libdb1-compat --\ Suggests --- locales --- glibc-doc --\ Conflicts GNU C Library: Shared libraries and Timezone data 現在の画面は 表示 → 閉じる (q) で閉じることができます。次の画面や前の画面 に切り替えるには 表示 → 次 (F6) と 表示 → 前 (F7) を用いるか、スクリーン最 上部の画面の名前の上でクリックしてください。アクティブな画面すべての一覧は 「表示」メニューでも表示できます。 As shown above, some commands (for instance, viewing information about a package) will create new views automatically; you can also explicitly create a new view using 表示 → パッケージ画面を新規に作成. root になる パッケージ一覧の更新など一部のアクションは root でしか実行できません。root でない状態でパッケージ一覧を更新しようとした場合、aptitude は root になり たいか尋ねます。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 --- Installed Packages --- Not Installed Packages --- Obsolete and Locally Created Packages --- Virtual Packages --- Tasks +-------------------------------------------------------------------------+ |Updating the package lists requires administrative privileges, which | |you currently do not have. Would you like to change to the root account?| | | | [ Become root ] [ Don't become root ] | Th+-------------------------------------------------------------------------+ 「root になる」を選択すると、aptitude はプロンプトを出して root のパスワー ドを求めます。パスワードを正しく入力し終えると、aptitude は、その root 権 限の必要なアクションを実行します。アクションが完了した後もまだあなたは root になっています。 アクション → root になる コマンドを用いるといつでも root アカウントに切り 換えることが可能です。パッケージ状態に対して行った変更はすべて保存されます (しかし aptitude を終了するまで保存されるわけではありません)。 By default, aptitude will use the command su to gain root privileges. If you would like it to use some other command (such as sudo), set the configuration option Aptitude::Get-Root-Command. パッケージ管理 このセクションでは、パッケージ一覧の操作方法やシステムにパッケージを新規に インストールする方法、古いパッケージの削除方法を説明します。 パッケージ一覧の管理 パッケージ一覧は、最新状態に保つために、定期的に更新することをお勧めします 。更新は、アクション → パッケージ一覧の更新 (u) コマンドを用いて行えます。 パッケージ情報へのアクセス パッケージに関する情報は aptitude 内の複数の場所で得られます。パッケージ一 覧では各パッケージの状態の概要が手短に得られます。また、パッケージに関する 詳細情報を提供する画面も利用可能です。 The package list パッケージ一覧には、「ひと目でわかる」パッケージの状態の概要が表示されます 。例えば、webmin パッケージには次のような概要が表示されます。 piAU webmin +5837kB <なし> 1.160-2 概要の左側の 4 文字は、パッケージがインストールされていなく (「p」)、イン ストール予定であり (「i」)、自動的にインストール対象に選択されたもので ( 「A」)、信頼されていない (「U」)、という意味です。概要の右側には、現在のバ ージョンと入手可能な最新バージョンが、更新によって使用されるディスク領域の サイズとともに表示されています。 [ヒ ヒント ン パッケージの概要の表示方法はカスタマイズ可能です。詳しくは「パッケージ ト] の表示方法のカスタマイズ」を参照してください。 スクリーン左側の 4 文字の状態フラグからは、パッケージの状態に関する基本的 な情報が得られます。1 文字目はパッケージの現在の状態です。2 文字目はパッケ ージに対して行う予定のアクションです。3 文字目はパッケージが自動的にインス トールされたかどうかを表します (「自動的にインストールされたパッケージの管 理」を参照してください)。4 文字目はパッケージが信頼されているかどうかを表 します (「パッケージの信頼性の意味と管理方法」を参照してください)。 「現在の状態」フラグのとりうる値を図2.9「「現在の状態」フラグの値」に、「 アクション」フラグのとりうる値を図2.10「「アクション」フラグの値」に示しま す。 図2.9 「現在の状態」フラグの値 i - パッケージがインストール済みで、その依存関係がすべて満たされています。 c - パッケージは削除されましたが、設定ファイルがまだ残っています。 p - パッケージとその設定ファイルがすべて削除されました。またはインストール されたことがありません。 v - パッケージが仮想パッケージです。 B - パッケージに壊れた依存関係があります。 u - パッケージは展開済みですが設定が行われていません。 C - 設定未完了です。つまりパッケージの設定が中断されました。 H - インストール未完了です。つまりパッケージのインストールが中断されました 。 W - triggers-awaited: the package awaits trigger processing by another package. T - triggers-pending: The package has had an update triggered due to changes in another package. 図2.10 「アクション」フラグの値 i - パッケージはインストール予定です。 u - パッケージは更新予定です。 w - the package will be downgraded. d - パッケージは削除予定です。削除されますが、設定ファイルはシステムに残り ます。 p - パッケージは完全削除予定です。パッケージとその設定ファイルは削除されま す。 h - パッケージは固定されています。つまり、固定が取り消されるまでは、たとえ 新しいバージョンが利用可能になっても現在のバージョンに留められます。 F - パッケージは更新が禁止されています。 r - パッケージは再インストール予定です。 パッケージは「破損」しています。つまり、一部の依存関係が満たされていま B - せん。破損パッケージがある間は、どのパッケージも aptitude でインストー ル・削除・更新できません。 さらに、ターミナルがサポートしていれば、aptitude はパッケージの状態を表す のに色を使用します。状態の違いは主に背景色を用いて表示されます。 黒 パッケージは更新できなく (またはインストール予定ではなく)、依存関係の問題 もありません。パッケージがインストールされると名前がハイライトされます。 緑 パッケージはインストール予定です。 青 パッケージは現在インストール済みで、更新予定です。 Brown The package is currently installed, and it will be downgraded. マゼンタ パッケージは現在インストール済みで、削除予定です。 白 パッケージは現在インストール済みで、現在のバージョンに「固定」されています 。つまり、自動的な更新では無視されます。 赤 このパッケージは破損しています。つまり、一部の依存関係が満たされていません 。 最後に、スクリーンの下半分にはパッケージ説明・詳細版が表示されます 。aptitude はパッケージが依存関係の問題に関わっているかを検出しようと試み ます。依存関係の問題に関わっている場合、その問題に関する情報がこの領域に表 示されます。依存関係の情報とパッケージ説明を切り替えるには、i を押してくだ さい。 詳細なパッケージ情報 パッケージがハイライトされているときに Enter を押すと、次のようなパッケー ジ情報スクリーンが表示されます。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 i A --\ apt 0.5.25 0.5.25 Description: Advanced front-end for dpkg This is Debian's next generation front-end for the dpkg package manager. It provides the apt-get utility and APT dselect method that provides a simpler, safer way to install and upgrade packages. APT features complete installation ordering, multiple source capability and several other unique features, see the Users Guide in apt-doc. Essential: yes Priority: important Section: base Maintainer: APT Development Team <deity@lists.debian.org> Compressed size: 970k Uncompressed size: 2961k Source Package: apt --\ Depends --- libc6 (>= 2.3.2.ds1-4) --- libgcc1 (>= 1:3.3.3-1) --- libstdc++5 (>= 1:3.3.3-1) --\ Suggests --- aptitude | synaptic | gnome-apt | wajig --- dpkg-dev --\ apt-doc (UNSATISFIED) p 0.6.25 p 0.5.25 --\ Replaces --- libapt-pkg-doc (< 0.3.7) --- libapt-pkg-dev (< 0.3.7) --- Package names provided by apt --- Packages which depend on apt --\ Versions p A 0.6.25 i A 0.5.25 この表示は、パッケージ一覧と同様の方法で操作できます。つまり、例えば、上の スクリーンショットでは、apt-doc の上で依存関係を展開し、依存関係を満たす apt-doc の入手可能なバージョンを表示しました。これらのバージョンはパッケー ジと同様の方法で操作可能です。例えば、apt-doc のバージョン 0.5.25 をインス トールするには、それをハイライトさせて + を押してください。 [ヒ ヒント ン 依存関係を手早く満たすためには、依存関係を選択して + を押してください ト] 。aptitude は自動的にその依存関係を満たそうと試みます。 パッケージが依存するパッケージに加えて、それが提供 (Provides) するパッケー ジ、つまりそのパッケージに依存しているパッケージについても、名前や入手可能 なバージョンを表示できます (自身が提供 (Provides) するパッケージを提供する 他のパッケージも表示できます)。 通常どおり、q を押すと、このスクリーンを閉じてメイン画面に復帰できます。便 宜のため、他にも情報スクリーンがいくつか利用可能です (これらのスクリーンで は、いくつかのよく利用される情報のみが表示され、それ以外の情報が隠されま す)。v を押すとパッケージのバージョンを表示できます。また、d を押すとパッ ケージの依存パッケージを表示でき、r を押すとパッケージの「逆依存パッケージ 」 (そのパッケージに依存しているパッケージ) を表示できます。 Modifying package states The following commands are available to modify the states of packages. Commands take effect the next time you perform an install run; until you do, all of these commands can be reversed using 取り消し → 取り消し (Control+u). To apply a command to a package, simply select the package in a package list and issue the command. These commands can also be applied to groups of packages by selecting the group header (for instance, 「Upgradable Packages」) and issuing the command. ┌────────────────────────────┬───────────────────────────────────────────┐ │ コマンド │ 説明 │ ├────────────────────────────┼───────────────────────────────────────────┤ │ │ Flag the current package for │ │ │ installation. │ │ │ │ │ Install: パッケージ → イン │ If the package is not installed, it will │ │ ストール (+) │ be installed. If it is already installed, │ │ │ it will be upgraded if possible and any │ │ │ sticky upgrade prevention that is in │ │ │ effect (eg, Hold) will be cancelled. │ ├────────────────────────────┼───────────────────────────────────────────┤ │ │ Flag the currently selected package for │ │ Remove: パッケージ → 削除 │ removal. │ │ (-) │ │ │ │ If the package is installed, it will be │ │ │ removed. │ ├────────────────────────────┼───────────────────────────────────────────┤ │ │ Flag the current package to be purged. │ │ │ │ │ Purge: パッケージ → 完全削 │ If the package is installed, it will be │ │ 除 (_) │ removed. Furthermore, even if it is │ │ │ removed, any remaining files (such as │ │ │ configuration files) related to the │ │ │ package will be removed from the system. │ ├────────────────────────────┼───────────────────────────────────────────┤ │ │ Flag the current package to be kept at │ │ │ its current version. │ │ │ │ │ Keep: パッケージ → 一時固 │ Any action that was to be performed on │ │ 定 (:) │ the package -- installation, removal, or │ │ │ upgrade -- is cancelled, and any │ │ │ persistent hold that was set on the │ │ │ package is removed. │ ├────────────────────────────┼───────────────────────────────────────────┤ │ │ Set a persistent hold on the package. │ │ │ │ │ │ As with Keep, any action that was to be │ │ Hold: パッケージ → 固定 │ performed on the package is cancelled. In │ │ (=) │ addition, the package will not be │ │ │ automatically upgraded ^[a] until the │ │ │ hold is removed. You may cancel a hold by │ │ │ issuing the Install command. │ ├────────────────────────────┼───────────────────────────────────────────┤ │ │ The package will not be automatically │ │ │ upgraded^[a] to the version it would │ │ │ currently be upgraded to. If it was going │ │ │ to be upgraded, the upgrade will be │ │ │ cancelled. │ │ │ │ │ │ If you issue this command on a particular │ │ パッケージ → バージョンの │ version of a package, the package will │ │ 禁止 (F) │ not be upgraded to the selected version. │ │ │ Note that only one version can be │ │ │ forbidden at once. │ │ │ │ │ │ This functionality is largely provided as │ │ │ a convenience for users of the 「unstable │ │ │ 」 distribution, so they can avoid │ │ │ known-bad versions of packages. │ ├────────────────────────────┼───────────────────────────────────────────┤ │ │ Flag the current package for │ │ │ reinstallation. │ │ │ │ │ │ Note that the reinstallation will not be │ │ Reinstall: Package → │ saved when you quit aptitude or perform │ │ Reinstall (L) │ an install run, for technical reasons │ │ │ (essentially, the underlying software │ │ │ layers (dpkg and apt) do not provide any │ │ │ way to find out whether a reinstallation │ │ │ was successful or not). │ ├────────────────────────────┼───────────────────────────────────────────┤ │ パッケージ → 自動的にイン │ Sets whether the package is treated as │ │ ストールされたという印を添 │ having been automatically installed; │ │ 付 (M), パッケージ → 手動 │ automatically installed packages will be │ │ でインストールしたという印 │ removed when no other package requires │ │ を添付 (m) │ them. For more information, see 「自動的 │ │ │ にインストールされたパッケージの管理」. │ ├────────────────────────────┴───────────────────────────────────────────┤ │ ^[a] That is, it will be unaffected by アクション → 更新可能パッケージ │ │ という印を添付 (U) or the full-upgrade or safe-upgrade command-line │ │ actions. │ └────────────────────────────────────────────────────────────────────────┘ In addition to these commands that affect the selected package, there are two commands that affect large numbers of packages at once regardless of what is selected. アクション → 新規パッケージ一覧の消去 (f) clears the 「new」 status of all packages in the package list, and アクション → 更新 可能パッケージという印を添付 (U) flags every package which can be upgraded for upgrade, except for packages that are held back or would be upgraded to a forbidden version. [注 注記 記] All changes to package states are saved when you quit aptitude, update the package list, or perform an install run. If you do not wish to save your changes, you can always abort aptitude by pressing Ctrl-C. パッケージのダウンロード・インストール・削除 Changing package states as described in the previous section does not actually affect what is installed on your system. Thus, you can adjust the state of packages without affecting your system until you are happy with what you see; once you are, you can 「commit」 the changes by actually installing and removing packages.^[8] 変更をコミットするには アクション → パッケージのインストール・削除 (g) コ マンドを使用してください。このコマンドを選択すると、実行予定の変更を記述し たプレビュースクリーンが表示されます。このスクリーンは単なる 1 つのパッケ ージ一覧なので、メインのパッケージ一覧と同じ方法でパッケージを操作 (例えば 、望まないパッケージを削除) できます。 プレビュースクリーンでの操作を終えたら、インストールを取り消すには 表示 → 閉じる (q) を、先に進むには アクション → パッケージのインストール・削除 (g) を使用してください。aptitude は、ダウンロードが必要なファイルをすべて ダウンロードし、インストールを続行するか尋ねるプロンプトを出します。「続行 」を選択するとインストールや削除が開始します。 aptitude によってダウンロードされたパッケージはキャッシュディレクトリ (通 常は /var/cache/apt/archives) に置かれます。通常、パッケージはこのディレク トリ内に永遠に残されます。このディレクトリ内のファイルをすべて削除するには アクション → パッケージのキャッシュの消去 を使用してください。再度ダウンロ ードできない (つまり廃止されたパッケージの) ファイルだけ削除するには アク ション → 廃止されたファイルを一掃する を使用してください。 パッケージの信頼性の意味と管理方法 apt が複数のパッケージ入手先にアクセスできることはセキュリティ脆弱性に繋が る可能性があります。Joe Random Hacker の gargleblast パッケージをインスト ールするために、Joe が公開しているパッケージアーカイブをあなたの sources.list ファイルに追加すると仮定しましょう。しかし Joe のアーカイブに は、libc6 や ssh などのパッケージの、彼の「カスタム」バージョンも――あなた に気付かれずに――含まれている可能性があります。……あなたの個人情報を盗んだり システムにバックドアを開けたりするバージョンです! もしこれらのパッケージの バージョン番号が正規の Debian パッケージのバージョン番号よりも大きかったら 、apt は次の更新時に軽率にもこれらをシステムにインストールしてしまい、Joe が汚い仕事を気付かれずに行うのを可能にしてしまうでしょう。Joe はまた、あな たの Debian アーカイブのミラーに侵入し、含まれている正規のソフトウェアを彼 が細工したバージョンに置き換えてしまうかもしれません。 幸いにも、このマニュアルが対象としているような新しいバージョンの apt や aptitude には、このような種類の攻撃を打ち負かす手助けとなる内蔵の防御機能 が備わっています。apt は、Debian 公式ミラーで配布されているパッケージが Debian 開発者がアップロードしたパッケージと同一であることを検証するのに、 有名な暗号化ソフトウェア GPG に基づいた強力なセキュリティ機構を使用してい ます。その結果 aptitude は、Debian 以外の入手先からパッケージをインストー ルしようとしたり、Debian の入手先からインストールしたパッケージを Debian 以外の入手先に由来するバージョンに更新しようとしたりすると、警告を発します 。 [警 警告 告] apt のセキュリティ機構によって、アーカイブミラーの内容が Debian のマス ターアーカイブの内容と同一であることについては完璧に近い保証が提供され ます。しかしこの機構は万能薬ではありません。例えば、改竄されたパッケー ジが Debian のマスターアーカイブに紛れ込むことは、理論的には多数の方法 で可能です。 信頼できる入手先のみからソフトウェアをインストールするようにすることは 、悪意のあるパッケージに対する有力な防御になります。しかし、それでも、 ソフトウェアのインストールにつきものの危険性をすべて取り除けるわけでは ありません。 信頼性とは apt allows the administrator of an archive to provide a signature of the archive's index. This signature, which (for all practical purposes) cannot be forged, indicates that the package files listed in the index are the same files that the administrator intended to place in the archive: ie, that the contents of the archive have not been tampered with since it was created.^[9] The signature can be validated by checking that it corresponds to the administrator's public key. The public key of the Debian archive is distributed with apt, typically on your Debian CD. aptitude は、アーカイブのインデックスをダウンロードする際に、インデックス が適切に署名されているか調べます。署名がなされていない場合、aptitude はそ のアーカイブから入手するパッケージファイルを信頼しません (その意味について は、以下の情報を参照してください)。インデックスに署名があってもそれが間違 っているか検証できない場合は、aptitude は警告を表示し、そのアーカイブから 入手するパッケージを信頼することを拒否します。 後でインストールの実行を行うときに、aptitude はパッケージが信頼できる入手 先からのものか調べます。信頼されていないパッケージをインストールしようとし ている場合、またはパッケージを信頼されているバージョンから信頼されていない バージョンに更新しようとしている場合は、警告が表示され、ダウンロードを中断 する機会が与えられます。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.3.0 Will use 831kB of disk space DL Size: 30.4MB --\ Packages to be upgraded iu U wesnoth -98.3kB 0.8.7-1 0.8.8-1.0w iuAU wesnoth-data +930kB 0.8.7-1 0.8.8-1.0w +------------------------------------------------------------------------------+ |WARNING: untrusted versions of the following packages will be installed! #| | #| |Untrusted packages could compromise your system's security. You should only #| |proceed with the installation if you are certain that this is what you want #| |to do. #| | #| | * wesnoth [version 0.8.8-1.0wesnoth.org] #| | * wesnoth-data [version 0.8.8-1.0wesnoth.org] #| | * wesnoth-music [version 0.8.8-1.0wesnoth.org] #| | [ Really Continue ] [ Abort Installation ] | +------------------------------------------------------------------------------+ # # # # # # 追加の鍵を信頼させる Debian のメインアーカイブに加えて追加のアーカイブを apt が信頼するようにで きると便利だと感じるでしょう。追加のアーカイブを apt に信頼させるには、信 頼させたい各アーカイブのパッケージインデックスの署名に使用する公開鍵を取得 しなければなりません。公開鍵は通常、名前が .asc で終わるテキストファイルで 、おそらくサイトの管理者によって配布されているか、公開鍵サーバからダウンロ ード可能です。公開鍵の意味や取得方法についてさらに詳しく知りたい場合は 、GPG のウェブページを参照してください。 apt が信頼する鍵の一覧は鍵輪ファイル /etc/apt/trusted.gpg に格納されていま す。GPG 鍵を取得したら、コマンド gpg --no-default-keyring --keyring /etc/apt/trusted.gpg --import newkey.asc を実行すると鍵をこの鍵輪ファイル に追加できます。すると aptitude は、newkey.asc に含まれている鍵で署名され ているあらゆるアーカイブを信頼するようになります。 [警 警告 告] APT の鍵輪に追加されると、アーカイブの鍵は Debian のメインミラー自体と 完全に同様に信頼されます! 鍵輪への追加は、追加しようとしている鍵が正し く、かつ鍵を所持する個人が信頼に値する有能な人物であるときちんと確信し ている場合にのみ行うべきです。 自動的にインストールされたパッケージの管理 1 つのパッケージをインストールするために、他のパッケージをいくつかインスト ールする (依存関係を満たす) 必要があることが、しばしばあります。例えば clanbomber パッケージをインストールしたい場合、libclanlib2 パッケージもイ ンストールしなければなりません。さらに clanbomber を削除する場合 、libclanlib2 パッケージはおそらくもう必要ないでしょう。aptitude は libclanlib2 が必要ないことを検出し、libclanlib2 パッケージを自動的に削除し ます。 It works like this: when you install a package, aptitude will automatically install any other packages on which it depends. These packages are marked as having been 「automatically installed」; aptitude will monitor them and remove them when they are no longer depended upon by any manually installed package ^[10] . They will appear in the preview as 「packages being removed because they are no longer used.」 あらゆる自動処理と同様、この処理にも不都合になる可能性があります。例えば、 最初は自動的にインストールされたパッケージであっても、それ自体で有用になる かもしれません。m を押すと、パッケージについた「自動」フラグをいつでも取り 消せます。パッケージが既に削除予定となっている場合、パッケージ → インスト ール (+) を使用すると、その削除を取り消して「自動」フラグを取り除けます。 Resolving package dependencies Dependency resolution in aptitude There are two main dependency resolution algorithms in aptitude. The first is an algorithm that is also used by programs such as apt-get and synaptic; I will call it 「immediate resolution」. It is invoked whenever you select a package for installation interactively, and immediately after one or more packages are marked for installation at the command-line. Immediate resolution is fast and will solve most dependency problems, but it is sometimes unable to find any solution. The second algorithm, which I will call 「interactive resolution」, is invoked when packages have broken dependencies even after immediate resolution^[11]. It can resolve more dependencies, it allows you to review a solution before applying it, and it allows you to provide feedback to the resolver, guiding it towards a better solution. Immediate dependency resolution Whenever you choose to install or upgrade a package in aptitude, aptitude makes an immediate attempt to resolve any of its dependencies that are not fulfilled. For each unsatisfied dependency (either a 「Depends」, a 「Recommends」, or a 「Conflicts」), it performs the following steps: 1. If the dependency is a recommendation, aptitude tries to guess whether it is a 「new」 recommendation or a 「previously satisfied」 recommendation. aptitude considers a recommendation to be 「new」 if the package declaring the recommendation is not currently installed, or if its installed version does not recommend a package of the same name. On the other hand, a recommendation is 「previously satisfied」 if the package declaring the recommendation is installed, the currently installed version recommends a package of the same name, and that recommendation is currently fulfilled. For example: suppose that version 1.0 of prog recommends version 4.0 of libcool1, but version 2.0 of prog recommends version 5.0 of libcool1, and also recommends apache. If you choose to upgrade prog from version 1.0 to version 2.0, the recommendation of apache will be considered to be 「new」 because version 1.0 of prog did not recommend apache. On the other hand, the recommendation of libcool1 is not 「new 」, because version 1.0 of prog recommended libcool1, even though it recommended a different version. However, if libcool1 is installed, then that recommendation will be considered to be 「previously satisfied」. If the configuration option APT::Install-Recommends is true, aptitude will always attempt to fulfill 「new」 and 「previously satisfied」 recommendations; all others will be ignored by immediate resolution. If that option is false, immediate dependency resolution will ignore all recommendations. 2. If the dependency is on several packages combined with OR, examine each of the alternatives in the order that they are given. For instance, if a package depends on 「exim | mail-transport-agent」, aptitude will first process exim, then mail-transport-agent. 3. For each alternative, attempt to resolve it. If the dependency is a conflict, remove the current alternative if it is installed (and for an unversioned conflict, also remove any package providing the target of the conflict). Otherwise, install the candidate version of the current alternative if it satisfies the dependency. If not, or if there is no candidate version (for instance, because the current alternative is a virtual package), and if the dependency is unversioned, attempt to install the highest-priority package^[12] whose candidate version provides the target of the current alternative. For instance, say we are attempting to resolve 「Depends: exim | mail-transport-agent」. aptitude will first attempt to install the package exim. If exim is not available, aptitude will then attempt to install the highest-priority package whose candidate version provides exim. If there is no such package, aptitude will install the highest-priority package whose candidate version provides the virtual package mail-transport-agent. On the other hand, suppose that the dependency is 「Depends: exim (>= 2.0.0) | mail-transport-agent」, but only version 1.0 of exim is available. In this case, aptitude will not install exim (because the version does not match), nor will it attempt to install packages providing exim (because virtual packages cannot match a dependency with a version restriction). Thus, aptitude will fall back to installing the highest-priority package whose candidate version provides mail-transport-agent. 4. If a package was installed by the previous step, resolve its dependencies using this algorithm, then stop. While this technique very often solves all the outstanding package dependencies, it can fail in a number of common circumstances. • Conflicts are resolved by removing the package that is the target of the conflict. But now other packages that depend on this package have unresolved dependencies; the immediate resolver makes no attempt to fix them. • A dependency might not be satisfiable due to version restrictions and due to the limitation that only candidate versions are considered. For instance, say that versions 1.0 and 2.0 of fileutils are available, that the candidate version is 1.0, and that the package octopus declares a dependency 「Depends: fileutils (>= 2.0)」. Immediate resolution is unable to resolve this dependency: it will never consider version 2.0 of the package, since that is not the candidate version. The interactive dependency resolver can solve these situations and more. When there are broken dependencies left over, or when immediate dependency resolution is disabled, the interactive resolver will automatically start searching for a solution. The next section describes how to use the interactive dependency resolver. Resolving Dependencies Interactively If a dependency problem arises that cannot be handled using the immediate dependency resolver, aptitude can assist you in resolving it. As soon as a problem occurs, a red bar will appear at the bottom of the screen with a summary of aptitude's suggestion about how to fix it. For instance, in the following screenshot, aptitude is indicating that it can resolve the situation by keeping two packages at their current versions. Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.3.3 #Broken: 1 Will free 48.6MB of disk space i A nautilus 2.10.1-4 2.10.1-4 i nautilus-cd-burner 2.10.2-1.1 2.10.2-1.1 i A nautilus-data 2.10.1-4 2.10.1-4 i netspeed 0.12.1-1 0.12.1-1 i A oaf 0.6.10-3 0.6.10-3 i pybliographer 1.2.6.2-1 1.2.6.2-1 i rhythmbox 0.8.8-13 0.8.8-13 i shermans-aquarium 3.0.1-1 3.0.1-1 idA sound-juicer -1733kB 2.10.1-3 2.10.1-3 GNOME 2 CD Ripper sound-juicer will be removed. The following packages depend on sound-juicer and will be broken by its removal: * gnome-desktop-environment depends on sound-juicer [1(1)/...] Suggest 2 keeps e: Examine !: Apply .: Next ,: Previous スクリーン最下部に示されているように、. や , を押すと別の解決方法を表示で きます。また、! を押すと現在の解決方法を適用でき、e を押すとその解決方法を さらに詳しく検討できます。現在選択中の解決方法を検討すると次のようなスクリ ーンが現れます。 Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Packages Resolve Dependencies --\ Keep the following packages at their current version: gstreamer0.8-cdparanoia [0.8.10-1 (unstable, now)] sound-juicer [2.10.1-2 (now)] [1(1)/...] Suggest 2 keeps e: Examine !: Apply .: Next ,: Previous アクションによって影響を受けるパッケージについては、パッケージがハイライト されているときに Enter を押すだけで、情報にアクセスできます。aptitude が特 定の決断を下した理由についてのさらに詳しい説明を参照するには、リストの項目 をハイライトさせてください。ハイライトさせると、aptitude の選択によって解 決される依存関係が、他に可能なすべての解決方法とともにスクリーンの下半分に 表示されます。 Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Packages Resolve Dependencies --\ Keep the following packages at their current version: gstreamer0.8-cdparanoia [0.8.11-1 (unstable, now)] sound-juicer [2.10.1-3 (unstable, now)] cdparanoia plugin for GStreamer sound-juicer depends upon gstreamer0.8-cdparanoia --\ The following actions will resolve this dependency: -> Downgrade sound-juicer [2.10.1-3 (unstable, now) -> 0.6.1-2 (testing)] -> Remove sound-juicer [2.10.1-3 (unstable, now)] -> Cancel the removal of gstreamer0.8-cdparanoia -> Downgrade gstreamer0.8-cdparanoia [0.8.11-1 (unstable, now) -> 0.8.8-3 (tes [1(1)/...] Suggest 2 keeps e: Examine !: Apply .: Next ,: Previous You can guide the dependency resolver to a solution of which you approve by approving or rejecting the individual actions of a solution. If you approve an action, the resolver will choose it whenever possible, ignoring alternatives (when there are several approved alternatives, any one of them could be chosen). On the other hand, if you reject an action, the resolver will never choose that action. To reject an action, highlight it and press r; the rejection can be cancelled by pressing r again. Similarly, select an action and press a to approve it; press a again to restore its original state. You can undo either action by using 取り消し → 取り消し (Control+u) while the resolver screen is active. If you cancel a rejection or an approval, any solutions that were ignored will be available the next time that you generate a new solution. [注 注記 記] By default, the resolver rejects actions that change the state of held packages, or that install forbidden versions of packages. You can override these rejections, thus allowing the hold or forbidding to be automatically overridden, in the same way that you would override any other rejection. Setting the configuration option Aptitude::ProblemResolver::Allow-Break-Holds to true will disable this behavior, meaning that the resolver will always break holds (albeit at a penalty, see Aptitude::ProblemResolver::BreakHoldScore). 拒否されたアクションは赤色になり「R」という印がつきます。他方で、承認され たアクションは緑色になり「A」という印がつきます。これは次のスクリーンショ ットを見ればわかるでしょう。このスクリーンショットでは、 「gstreamer0.8-cdparanoia を現在のバージョンに一時固定する」というアクショ ンが拒否され、「sound-juicer を現在のバージョンに一時固定する」というアク ションが承認されています。 Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Packages Resolve Dependencies --\ Keep the following packages at their current version: R gstreamer0.8-cdparanoia [0.8.11-1 (unstable, now)] A sound-juicer [2.10.1-3 (unstable, now)] [1(1)/...] Suggest 2 keeps e: Examine !: Apply .: Next ,: Previous Rejections and approvals only affect newly generated solutions. You can tell when a new solution will be generated by examining the indicator in the lower left hand corner of the screen: if there is a number in parentheses, it is the number of solutions that have been generated. Thus, when the number outside the parentheses and the number inside are identical (as above), pressing . will generate a new solution. If there is no number in parentheses (for instance, the indicator reads [1/5]), then there are no more solutions to generate. At any time, you can select the last generated solution by pressing >, and the first generated solution by pressing <. [重 重要 要] 問題解決ツールの状態は、どのパッケージの状態を変更しても破棄されます。 つまり、パッケージにインストール・更新・削除などの印をつけると、問題解 決ツールで行った拒否や承認の情報は、それまでに生成された解決方法の情報 とともにすべて消去されます。 スクリーン最上部のリスト内のアクションを選択するだけでなく、スクリーン下半 分のリストを使用してアクションを選択することも可能です。このリストにアクセ スするには、マウスを用いてその領域をクリックするか、または Tab を押してく ださい。最後に、問題解決ツールが下した決断を順を追って眺めるには o を押し てください。そうすると、次のスクリーンショットにあるように、解決される依存 関係とその解決のために行うアクションのリストが表示されます。 Actions Undo Package Resolver Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Packages Resolve Dependencies --\ gnome-desktop-environment depends upon sound-juicer -> Cancel the removal of sound-juicer --\ sound-juicer depends upon gstreamer0.8-cdparanoia -> Cancel the removal of gstreamer0.8-cdparanoia GNOME 2 CD Ripper gnome-desktop-environment depends upon sound-juicer --\ The following actions will resolve this dependency: -> Remove gnome-desktop-environment [1:2.10.2.3 (unstable, testing, now)] -> Cancel the removal of sound-juicer -> Downgrade sound-juicer [2.10.1-3 (unstable, now) -> 0.6.1-2 (testing)] [1(1)/...] Suggest 2 keeps e: Examine !: Apply .: Next ,: Previous もう一度 o を押すとこの表示モードから出ることが可能です。 Costs in the interactive dependency resolver Costs and cost components The cost of a solution produced by the interactive dependency resolver is a value that aptitude uses to determine how 「bad」 that solution is. Solutions that are 「better」 are always displayed before solutions that are 「worse」. The cost of solutions is defined in the configuration option Aptitude::ProblemResolver::SolutionCost. Some typical costs are shown in 例2.1「Sample resolver costs」. 例2.1 Sample resolver costs The default cost, sorting solutions by their safety cost, then by their apt pin priority: safety, priority Remove as few packages as possible, then cancel as few actions as possible: removals, canceled-actions Sort solutions by the number of packages they remove plus twice the number of actions they cancel. removals + 2 * canceled-actions As can be seen from the above examples, a cost is not necessarily a single number. In fact, a cost consists of one or more cost components, each of which is a number associated with the solution. When sorting solutions, the resolver examines cost components in order, proceeding to later components only if the earlier ones are equal. For instance, in the cost 「removals, canceled-actions」, solutions with fewer removals always appear before solutions with more removals, regardless of how many canceled actions they have. However, solutions with the same number of removals are sorted so that solutions with fewer canceled actions appear first. Cost components come in two flavors: basic cost components and compound cost components. Basic components simply name some property of the solution, such as 「upgrades」 or 「removals」. A list of built-in basic components provided by aptitude can be found in 表2.1「Basic cost components」. You can also create your own cost components using the add-to-cost-component and raise-cost-component hints; see 「Configuring resolver hints」 for details. Each basic component is either a counter or a level. Counters count how many of a solution's actions meet some condition (such as removing packages or installing new packages), while levels associate a number with each action and compute the highest number associated with any action in the solution. 表2.1 Basic cost components ┌────────────────────┬───────┬─────────────────────────────────────────────────────┐ │ 名前 │ Type │ 説明 │ ├────────────────────┼───────┼─────────────────────────────────────────────────────┤ │ │ │Counts the number of holds that the solution breaks, │ │broken-holds │Counter│if the resolver is allowed to break holds │ │ │ │(Aptitude::ProblemResolver::Allow-Break-Holds). │ ├────────────────────┼───────┼─────────────────────────────────────────────────────┤ │ │ │Counts the number of pending actions that the │ │canceled-actions │Counter│solution cancels (keeping packages at their current │ │ │ │version). │ ├────────────────────┼───────┼─────────────────────────────────────────────────────┤ │installs │Counter│Counts the number of packages that the solution │ │ │ │installs. │ ├────────────────────┼───────┼─────────────────────────────────────────────────────┤ │non-default-versions│Counter│Counts the number of versions that the solution │ │ │ │installs or upgrades from non-default sources. │ ├────────────────────┼───────┼─────────────────────────────────────────────────────┤ │ │ │A value that increases as the apt pin priority of a │ │priority │Level │version decreases. Specifically, this is computed by │ │ │ │negating the pin priority (so, e.g., if the pin │ │ │ │priority is 500, this component will compute -500). │ ├────────────────────┼───────┼─────────────────────────────────────────────────────┤ │removals │Counter│Counts the number of packages that the solution │ │ │ │removes. │ ├────────────────────┼───────┼─────────────────────────────────────────────────────┤ │removals-of-manual │Counter│Counts the number of manually installed packages that│ │ │ │the solution removes. │ ├────────────────────┼───────┼─────────────────────────────────────────────────────┤ │safety │Level │A broad heuristic that increases as actions become │ │ │ │less 「safe」; see 「Safety costs」 for details. │ ├────────────────────┼───────┼─────────────────────────────────────────────────────┤ │upgrades │Counter│Counts the number of packages that the solution │ │ │ │upgrades. │ └────────────────────┴───────┴─────────────────────────────────────────────────────┘ Compound components are built by combining the values of basic components. For instance, removals + canceled-actions adds the components removal and canceled-actions, resulting in a component that counts the number of removals and canceled actions. Compound components combine counters by adding them together and levels by taking their maximum value, as shown in 図2.11「Syntax of compound cost components」. [注 注記 記] It is an error to add two levels, or to take the maximum of two counters, or to combine levels and counters in any way. For instance, the costs removals + safety and max(upgrades, installs) will be treated as errors and ignored by the resolver.^[13] 図2.11 Syntax of compound cost components Add two or more basic costs: [scale1]*cost1 + [scale2]*cost2 + ... Take the maximum value of two or more basic costs: max([scale1]*cost1, [scale2]*cost2, ...) Note that each individual basic component can be multiplied by a scaling factor before it is combined with other components. This can be used to control the trade-offs that the resolver makes between costs. For instance, a cost of 2*removals + 3*upgrades says that three removals are exactly as 「bad」 as two upgrades. Solutions that contain four removals and one upgrade will be considered equivalent to solutions containing one removal and three upgrades, since both have a cost of eleven. Safety costs 図2.12 Safety cost levels Safety cost levels [Safety cost levels diagram] The safety cost component is a heuristic estimate of how 「safe」 or 「unsafe」 a solution is. Safety costs can be thought of as a way of dividing solutions into several numbered 「levels」, where 「less safe」 levels are given higher numbers. 図2.12「Safety cost levels」 shows how this works with aptitude's default settings. [ヒ ヒント ン Safety cost levels are just one way to control the order in which ト] dependency solutions are returned. See 「Costs in the interactive dependency resolver」 for a full description of how to change the order in which aptitude sorts solutions. By default, aptitude initializes the resolver with a 「reasonable」 set of safety cost levels. They are: 表2.2 Default safety cost levels ┌──────┬──────────────────────────────────────────────┬─────────────────────────────────────────────────┐ │ Cost │ 説明 │ Configuration option │ │level │ │ │ ├──────┼──────────────────────────────────────────────┼─────────────────────────────────────────────────┤ │ │Solutions that include only 「safe」 actions │ │ │10,000│(installing the default target for a package │Aptitude::ProblemResolver::Safe-Level, │ │ │or keeping a package at its current version) │Aptitude::ProblemResolver::Remove-Level │ │ │and package removals. │ │ ├──────┼──────────────────────────────────────────────┼─────────────────────────────────────────────────┤ │ │The solution that cancels all the user's │ │ │ │actions. It used to be higher than │ │ │10,000│Aptitude::ProblemResolver::Remove-Level, but │Aptitude::ProblemResolver::Keep-All-Level │ │ │removing packages was ranked higher than │ │ │ │keeping the same packages, even if the package│ │ │ │was to be upgraded. │ │ ├──────┼──────────────────────────────────────────────┼─────────────────────────────────────────────────┤ │40,000│Solutions that break holds set by the user or │Aptitude::ProblemResolver::Break-Hold-Level │ │ │install forbidden versions. │ │ ├──────┼──────────────────────────────────────────────┼─────────────────────────────────────────────────┤ │ │Solutions that install packages from │ │ │50,000│non-default versions (such as 「experimental │Aptitude::ProblemResolver::Non-Default-Level │ │ │」, for instance). │ │ ├──────┼──────────────────────────────────────────────┼─────────────────────────────────────────────────┤ │60,000│Solutions that remove Essential packages. │Aptitude::ProblemResolver::Remove-Essential-Level│ └──────┴──────────────────────────────────────────────┴─────────────────────────────────────────────────┘ If a solution qualifies for several safety cost levels, it will be placed in the highest one, that is, the one that appears last. For example, a solution that upgrades one package to its default version and breaks a hold on a second package will be placed at level 40,000. You can adjust the levels of individual versions using resolver hints; see 「Configuring resolver hints」 for details. The default levels are illustrated in 図2.12 「Safety cost levels」. Besides numbers you can also use the keywords 「maximum」 and 「minimum」 for cost levels. They refer to the maximal respective minimal integer value possible on the hardware architecture of your system. Configuring the interactive dependency resolver Configuring resolver hints To improve the quality of the dependency solutions that you receive, you can provide hints to the interactive dependency resolver. These hints can alter the priorities of the resolver, biasing it more strongly in favor of one version or package, or they can be used to 「pre-load」 the resolver with rejections and approvals, as if you had entered the resolver and manually rejected or approved various versions. Hints are stored in the apt configuration file, /etc/apt/apt.conf, in the configuration group 「Aptitude::ProblemResolver::Hints」 (see 「Configuration file reference」 for details on the configuration file). Each resolver hint consists of an action, a target, and an optional version. A hint is written like this: "action target [version]". To apply a resolver hint, aptitude locates one or more packages using the value of target, chooses one or more versions of those packages using the value of version, and finally performs the given action. The action field of a resolver hint may be one of the following: 1. 「approve」: Approve the version, as if the command 問題解決 → 承認す る・しないを切り替え (a) had been invoked on it. 2. 「reject」: Reject the version, as if the command 問題解決 → 拒否する ・しないを切り替え (r) had been invoked on it. 3. 「discard」: Discard every solution containing the version. Differs from 「reject」 in that it is not visible to the user and cannot be modified interactively. 4. 「increase-safety-cost-to number」: increase the safety cost of any solution that contains the version to number; if its safety cost is already higher than number, this hint has no effect. The safety cost can be used (and is used by default) to control the order in which solutions appear; see 「Costs and cost components」 and 「Safety costs 」 for details. Several special cost levels can be chosen by name: a. conflict, discard: instead of changing the safety cost, discard solutions containing the version as if the 「discard」 hint had been applied. b. maximum: the highest safety cost. c. minimum: the lowest safety cost. All searches start at this cost, so 「increasing」 a version to this cost has no effect. However, this value can also be used when adjusting the predefined cost levels: for instance, setting Aptitude::ProblemResolver::Remove-Level to 「minimum」 will cause removed packages to have no effect on the safety cost of a solution. [注 注記 記] The increase-safety-cost-to hint is applied in addition to any default safety cost that is due to the selected action. For instance, a hint that increases the safety cost of 「install hal from experimental」 to 15,000 will have no effect, because that action already has a safety cost of 50,000 (assuming that this version of hal is not the default candidate version). 5. 「number」: add the given number to the version's score, biasing the resolver in favor of it or (with a negative number) away from it. For instance, the hint 200 emacs adds 200 to the score of emacs, whereas the hint -10 emacs subtracts 10 from its score. If target field of a resolver hint contains a question mark (「?」) or tilde (「~」), it is considered to be a search pattern and all matching package versions are considered. Otherwise, it is considered to be the name of a package to select. So the target 「g++」 will select only the g++ package, but the target 「?section(non-free)」 will select any package in the non-free section. See 「Search patterns」 for more information on search patterns. If the version field is not present, then all versions of the package are affected by the hint. Otherwise, it may have any of the following forms: 1. 「/archive」: the hint only affects versions that are available in the given archive. 2. 「<version」: the hint only affects versions whose version number is less than version. 3. 「<=version」: the hint only affects versions whose version number is less than or equal to version. 4. 「=version」: the hint only affects versions whose version number is version. 5. 「<>version」: the hint only affects versions whose version number is not version. 6. 「>=version」: the hint only affects versions whose version number is greater than or equal to version. 7. 「>version」: the hint only affects versions whose version number is greater than version. 8. 「:UNINST」: instead of affecting any of the versions of target, the hint affects the decision to remove target. For instance, 「Aptitude::ProblemResolver::Hints { "reject aptitude :UNINST"; };」 will prevent the resolver from attempting to remove aptitude. 9. 「version」: the hint only affects versions whose version number is version. Search patterns When you search for a package or set a display limit in aptitude, the string you enter is known as a 「search pattern」. While the most basic usage of search patterns is to match packages by name, aptitude allows you to create much more complex searches. In addition to the visual interface, some command-line operations can use search patterns; see Command-line reference for details. A search pattern consists of one or more conditions (sometimes known as 「terms」); packages match the pattern if they match all of its terms. Terms generally start with a question mark (「?」), followed by the name of the match term, which describes the search that the term performs: for instance, the term ?name matches package names, while the term ?version matches package versions. Finally, any additional parameters to the search term are placed in parentheses (see the documentation of individual terms for details of what each term's parameters mean). [注 注記 記] Text with no leading 「?」 also forms a search pattern: aptitude will treat each word (or quoted string) as the argument to a ?name pattern, which searches for a package whose name matches the text when the text is interpreted as a regular expression. [警 警告 告] The behavior of aptitude when given a search pattern without a leading 「?」 (or 「~」) is provided as a convenience for interactive use and will change in future releases; scripts that invoke aptitude should explicitly name the search strategy they want to use. That is, scripts should search for 「?name(coq)」 rather than 「coq」). Searching for strings Many search terms take a string as a parameter and match it against one or more fields of a package. Strings can be entered either with or without double quotes (「"」), so 「?name(scorch)」 and 「?name("scorch")」 will perform the same search. If you enter a search string using double quotes, you can include a literal double-quote in the search string by placing a backslash (「\」) immediately before it: for instance, 「?description("\"easy\"")」 will match any package whose description contains the string 「"easy"」. If you enter a 「bare」 string, one not surrounded by double quotes, then aptitude will consider the string to have 「ended」 when it encounters the closing parenthesis or the comma before a second argument to the search term. ^[14] To remove the special meaning of these characters, place a tilde (「~」) directly before them. For instance, 「?description(etc))」 is a syntax error, because the first 「)」 ends the ?description term, and the second 「)」 does not correspond to any 「(」. In contrast, 「?description(etc~))」 matches any package whose description contains the text 「etc)」. There are additional considerations if you are using the shorthand notation for a term; see 「Shorthand for search terms」 for details. Most textual searches (for package names, descriptions, etc) are performed using case-insensitive regular expressions. A regular expression will match against a field if any portion of the field matches the expression; for instance, 「ogg[0-9]」 will match 「libogg5」, 「ogg123」, and 「theogg4u」. Some characters have a special meaning within regular expressions ^[15] , so if you want to match them in searches you need to backslash-escape them: for instance, to find 「g++」, you should use the pattern 「g\+\+」. The characters 「!」 and 「|」 have special meanings within search patterns. In order to include these characters in an unquoted string, you can place a tilde (「~」) directly before them. For instance, to match packages whose description contains either 「grand」 or 「oblique」, use the pattern 「?description(grand~|oblique)」. However, you will probably find it more convenient to simply use a quoted string in these cases: 「?description("grand|oblique")」. Shorthand for search terms Some search terms can be written using 「short」 forms, which consist of a tilde (「~」) followed by a single character that identifies the term, and finally the arguments (if any) to the term. For instance, the short form of ?name(aptitude) is ~n aptitude. When writing a term using its short form, tilde characters and 「whitespace」 -- that is, space characters, tabs, and so on -- will break the term off and start a new term. For instance, 「~mDaniel Burrows」 will match any package whose maintainer field contains 「Daniel」 and whose name contains 「Burrows」, while 「~i~napt」 matches installed packages whose name contains apt. To include whitespace characters in the search expression, you can either place a tilde in front of it (as in Daniel~ Burrows) or place quotation marks around it (as in "Debian Project" or even Debian" "Project). Inside a quoted string, the backslash character ( 「\」) can be used to cancel the special meaning of the quotation mark: for instance, ~d"\"email" will match any package whose description contains a quotation mark followed immediately by email. ^[16] [注 注記 記] Question marks (「?」) will not end the short form of a term, even if they are followed by the name of a search term. For instance, 「~napt?priority(required)」 will match all packages whose name matches the regular expression 「apt?priority(required)」. To combine a short query term with a search term specified by name, add one or more spaces between the two terms, as in 「~napt ?priority(required) 」, or place quotation marks around the text (if any) following the short form of a term, as in 「~n"apt"?priority(required)」. 表2.3「Quick guide to search terms」 lists the short form of each search term. Searches and versions By default, a pattern matches a package if any version of the package matches the pattern. However, some patterns will restrict their sub-patterns to only match against some versions of a package. For instance, the search term ?depends(pattern) will select any package that depends on a package matching pattern. However, pattern will only be checked against the versions of the package that actually satisfy a dependency. This means that if foo depends on bar (>= 3.0) and versions 2.0, 3.0, and 4.0 of bar are available, then in the search pattern ?depends(?version(2\.0)), only versions 3.0 and 4.0 will be tested against ?version(2\.0), and hence foo will not be found by this search. It matters which versions are checked because, as in the example above, some patterns will match one version but not another. For instance, the pattern ?installed will only match the version of the package (if any) that is currently installed. Similarly, the pattern ?maintainer(maintainer) will only match versions that have the given maintainer. Normally all versions of a package have the same maintainer, but this is not always the case; in fact, any search pattern that examines the fields of a package (other than its name, of course) will behave this way, because all the fields of a package can change between versions. To test a pattern against all the versions of a package, even if the pattern would normally be tested against only some of the versions, use the ?widen term. For instance, ?depends(?widen(?version(2\.0))) will match any package A that depends on a package B, where B has a version matching 2.0, regardless of whether that version actually satisfies A's dependency. On the other hand, the ?narrow term restricts the versions that its sub-pattern is matched against: ?narrow(?installed, ?depends(?version(ubuntu))) will match any package whose installed version has a dependency that can be satisfied by a package whose version string contains 「ubuntu」. [注 注記 記] There is a subtle, but important, distinction between matching a pattern against a package, and matching it against all the versions of that package. When a pattern is matched against a package, each of its terms is matched against the package, and so each term will match if any version of the package matches. In contrast, when a pattern is matched against each version of a package, it will successfully match if it matches when all its terms are matched against the same version of the package. For example: suppose that version 3.0-1 of the package aardvark is installed, but that version 4.0-1 is available. Then the search expression ?version(4\.0-1)?installed matches aardvark, because ?version(4\.0-1) matches against version 4.0-1 of aardvark, while ?installed matches against version 3.0-1. On the other hand, this expression does not match against all the versions of aardvark, because no single version is installed and also has a version number of 4.0-1. Explicit search targets Some particularly complex searches can be expressed in aptitude using explicit targets. In normal search expressions, there is no way to refer to the package or version that is currently being tested. For instance, suppose that you want to search for all packages P that depend on a second package Q such that Q recommends P. Clearly you need to start out with a ?depends(...) term. But the term filling in the ... needs to somehow select packages that are identical to the one being matched against ?depends. When describing the goal above, I dealt with this by giving the packages names, calling them P and Q; terms with explicit targets do exactly the same thing. ^[17] An explicit target is introduced by the ?for term: 図2.13 Syntax of the ?for term ?for variable: pattern This behaves exactly like pattern, but variable can be used within pattern to refer to the package or version that pattern is being matched against. You can use variable in two ways: 1. The term ?= will match exactly the package or version indicated by the given variable. Specifically: if the corresponding ?for term is limited to a particular version, then ?= will match either that version (if ?= is limited) or the whole package; otherwise it will match any version of the package. See 例2.2「 Use of the ?= term. 」 for an example of how to use ?=. 2. The term ?bind(variable, pattern) will match any package or version if the value of variable matches against pattern. For ?-style terms, a shorthand form is available. The expression ?bind(variable, ?term[(args)]) can be replaced by ?variable:term(args). See 例2.3「Use of the ?bind term」 for an example of how to use ?bind. Search term reference 表2.3「Quick guide to search terms」 provides a brief summary of all the search terms provided by aptitude. A full description of each term can be found below. 表2.3 Quick guide to search terms ┌────────────────────────────────┬────────────────────────────┬──────────────────┐ │ Long form │ Short form │ 説明 │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select the package│ │?=variable │ │bound to variable;│ │ │ │see 「Explicit │ │ │ │search targets」. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select any package│ │?not(pattern) │!pattern │that does not │ │ │ │match pattern. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │that have been │ │?action(action) │~aaction │marked for the │ │ │ │given action │ │ │ │(e.g., 「install」│ │ │ │or 「upgrade」). │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?all-versions(pattern) │ │whose versions all│ │ │ │match pattern. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select any package│ │?and(pattern1, pattern2) │pattern1 pattern2 │that matches both │ │ │ │pattern1 and │ │ │ │pattern2. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?any-version(pattern) │ │for which at least│ │ │ │one version │ │ │ │matches pattern. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │for the given │ │ │ │architecture (such│ │?architecture(architecture) │~rarchitecture │as 「amd64」, or │ │ │ │「all」). Special │ │ │ │values: native and│ │ │ │foreign. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?archive(archive) │~Aアーカイブ │from the given │ │ │ │archive (such as │ │ │ │「unstable」). │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?automatic │~M │that were │ │ │ │automatically │ │ │ │installed. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Selects anything │ │ │ │if variable │ │?bind(variable, pattern) │?variable:term-name[(args)] │matches pattern; │ │ │ │see 「Explicit │ │ │ │search targets」. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?broken │~b │that have a broken│ │ │ │dependency. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select package │ │?broken-depType │~BdepType │that have a broken│ │ │ │dependency of the │ │ │ │given depType. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │that have a broken│ │?broken-depType(pattern) │~DB[depType:]pattern │dependency of the │ │ │ │given depType │ │ │ │matching pattern. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │that a package │ │?broken-reverse-depType(pattern)│~RBdepType:pattern │matching pattern │ │ │ │declares a broken │ │ │ │dependency of type│ │ │ │depType. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?conflicts(pattern) │~Cpattern │that conflict with│ │ │ │a package matching│ │ │ │pattern. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?config-files │~c │that were removed │ │ │ │but not purged. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Match packages │ │ │ │that declare a │ │?depType(pattern) │~D[depType:]pattern │dependency of type│ │ │ │depType on a │ │ │ │package matching │ │ │ │pattern. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?description(description) │~d説明 │whose description │ │ │ │matches │ │ │ │description. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select essential │ │ │ │packages, those │ │?essential │~E │with Essential: │ │ │ │yes in their │ │ │ │control files. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │?exact-name(name) │ │Select packages │ │ │ │named name. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │?false │~F │Select no │ │ │ │packages. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │that match pattern│ │ │ │with variable │ │?for variable: pattern │ │bound to the │ │ │ │package being │ │ │ │matched; see │ │ │ │「Explicit search │ │ │ │targets」. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │that are not │ │?garbage │~g │required by any │ │ │ │manually installed│ │ │ │package. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │?installed │~i │Select installed │ │ │ │packages. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?maintainer(maintainer) │~mメンテナ │maintained by │ │ │ │maintainer. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │with a multi-arch │ │ │ │capability of │ │ │ │multiarch (that │ │?multiarch(multiarch) │ │is, either │ │ │ │「foreign」, │ │ │ │「same」, │ │ │ │「allowed」, or │ │ │ │「none」). │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │for which a single│ │?narrow(filter, pattern) │~S filter pattern │version matches │ │ │ │both filter and │ │ │ │pattern. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?name(name) │~nname, name │with the given │ │ │ │name. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │?new │~N │Select new │ │ │ │packages. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Match installed │ │?obsolete │~o │packages that │ │ │ │cannot be │ │ │ │downloaded. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?or(pattern1, pattern2) │pattern1 | pattern2 │that match │ │ │ │pattern1, │ │ │ │pattern2, or both.│ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?origin(origin) │~O提供元 │with the given │ │ │ │origin. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?provides(pattern) │~Ppattern │that provide a │ │ │ │package matching │ │ │ │pattern. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?priority(priority) │~p優先度 │with the given │ │ │ │priority. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │that are the │ │ │ │targets of a │ │?reverse-depType(pattern) │~R[depType:]pattern │dependency of type│ │ │ │depType declared │ │ │ │by a package │ │ │ │matching pattern. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │that are the │ │ │ │targets of a │ │?reverse-broken-depType(pattern)│~RBdepType:pattern │broken dependency │ │ │ │of type depType │ │ │ │declared by a │ │ │ │package matching │ │ │ │pattern. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │?section(section) │~sセクション │Select packages in│ │ │ │the given section.│ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │whose source │ │?source-package(name) │~ename │package name │ │ │ │matches the │ │ │ │regular expression│ │ │ │name. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │whose source │ │?source-version(version) │ │version matches │ │ │ │the regular │ │ │ │expression │ │ │ │version. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?tag(tag) │~Gタグ │that have the │ │ │ │given debtags tag.│ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Full-text search │ │?term(keyword) │ │for packages that │ │ │ │contain the given │ │ │ │keyword. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Full-text search │ │ │ │for packages that │ │?term-prefix(keyword) │ │contain a keyword │ │ │ │that begins with │ │ │ │the given keyword.│ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │?true │~T │Select all │ │ │ │packages. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?task(task) │~tタスク │that are in the │ │ │ │given task. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │?upgradable │~U │that are installed│ │ │ │and can be │ │ │ │upgraded. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │that are marked │ │?user-tag │ │with a user-tag │ │ │ │matching the │ │ │ │regular expression│ │ │ │user-tag. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select packages │ │ │ │whose version │ │ │ │matches version │ │?version(version) │~Vバージョン │(special values: │ │ │ │CURRENT, │ │ │ │CANDIDATE, and │ │ │ │TARGET). │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │?virtual │~v │Select virtual │ │ │ │packages. │ ├────────────────────────────────┼────────────────────────────┼──────────────────┤ │ │ │Select versions │ │ │ │for which pattern │ │ │ │matches any │ │ │ │version of the │ │?widen(pattern) │~Wpattern │corresponding │ │ │ │package, │ │ │ │discarding local │ │ │ │version │ │ │ │restrictions. │ └────────────────────────────────┴────────────────────────────┴──────────────────┘ 名前 正規表現名前に名前がマッチするパッケージにマッチします。これは「デフォルト 」の検索モードで、~ で始まらないパターンに使用されます。 [注 注記 記] To match packages whose names contain several different substrings, use the ?name term (described below); for instance, 「?name(apti)?name(tude)」 will match any package whose name contains both 「apti」 and 「tude」. ?=variable Matches packages that correspond to the value of variable, which must be bound by an enclosing ?for. For instance, ?for x: ?depends( ?recommends( ?=x ) ) will match any package x that depends on a package which recommends x. For instance, the following search expression matches packages that conflict with themselves: 例2.2 Use of the ?= term. ?for x: ?conflicts(?=x) See 「Explicit search targets」 for more information. ?not(pattern), !pattern Matches packages which do not match the pattern pattern. For instance, 「?not(?broken)」 selects packages that are not 「broken」. [注 注記 記] To include a 「!」 in a search string, it must be 「escaped」 by placing a tilde (「~」) in front of it; otherwise, aptitude will consider it to be part of a ?not term. For instance, to select packages whose description contains 「extra!」, use 「?description(extra~!)」. ?and(pattern1, pattern2), pattern1 pattern2 Matches packages that match both pattern1 and pattern2. ?or(pattern1, pattern2), pattern1 | pattern2 Matches packages that match either pattern1 or pattern2. [注 注記 記] 正規表現内で「|」の文字を使用する場合、この文字を「~|」と「エスケープ 」して aptitude に OR 条件を生成させないようにしなければなりません。 (pattern) Matches pattern. For instance, 「opengl (perl|python)」 matches any package whose name contains opengl, and also contains either perl or python. ?action(action), ~aaction 指定されたアクションを実行予定のパッケージにマッチします。アクションには、 「install」 (インストール)、「upgrade」 (更新)、「downgrade」 (ダウングレ ード)、「remove」 (削除)、「purge」 (完全削除)、「hold」 (固定。パッケージ が既に固定されているかをテストします)、「keep」 (一時固定。パッケージが変 化しないかをテストします) を指定可能です。 [注 注記 記] Note that this only tests whether an action is actually queued up to be performed on a package, not whether it could be performed. Thus, for instance, ?action(upgrade) matches exactly those packages that you have already decided to upgrade, not packages which could be upgraded in the future (for that, use ?upgradable). ?all-versions(pattern) Matches any package whose versions all match the given expression. Each version of a package will be separately tested against pattern, and the package will match if all of its versions match. Packages without versions, such as virtual packages, will always be matched by this search term. This term may not be used in a context in which the versions to match against have already been narrowed, such as within ?depends or ?narrow. However, it may always be used within ?widen. ?any-version(pattern) Matches a package if any one of its versions matches the enclosed pattern. This is the dual to ?all-versions. This term may not be used in a context in which the versions to match against have already been narrowed, such as within ?depends or ?narrow. However, it may always be used within ?widen. [注 注記 記] This term is closely related to ?narrow. In fact, ?any-version(pattern1 pattern2) is exactly the same as ?narrow(pattern1, pattern2). [注 注記 記] To be precise, as with any other pattern, it is not packages but versions of the packages which are matched. For 「aptitude search」 and other uses it does not make much difference, but 「aptitude versions」 will only show the versions that match, not all versions of the package for which any version matches. For that, use an enclosing ?widen. ?architecture(architecture-spec), ~rarchitecture-spec Matches package versions for the given architecture-spec. For instance, 「?architecture(amd64)」 matches amd64 packages, while 「?architecture(all)」 matches arch-independent packages. It also accepts the special values native and foreign, and architecture wildcards (e.g. linux-any or any-amd64), as specified in Policy (「11.1 Architecture specification strings」). ?archive(archive), ~Aarchive Matches package versions which are available from an archive that matches the regular expression archive. For instance, 「?archive(testing)」 matches any package available from the testing archive. ?automatic, ~M 自動的にインストールされたパッケージにマッチします。 ?bind(variable, pattern), ?variable:term-name[(args)] Matches any package or version if the given pattern matches the package or version bound to variable, which must be defined in an enclosing ?for. 例2.3 Use of the ?bind term ?for x: ?depends(?depends(?for z: ?bind(x, ?depends(?=z)))) ?for x: ?depends(?depends(?for z: ?x:depends(?=z))) The two search patterns in the above example both match any package x such that x depends on a package y which in turn depends on a package z such that x also depends directly on z. The first pattern uses ?bind directly, while the second one uses an equivalent shorthand syntax. See 「Explicit search targets」 for more information. ?broken, ~b Matches packages that are 「broken」: they have an unfulfilled dependency, predependency, breaks, or conflict. ?broken-depType, ~BdepType Matches packages which have an unfulfilled (「broken」) dependency of the given depType. depType can be 「depends」, 「predepends」, 「recommends」, 「suggests」, 「breaks」, 「conflicts」, or 「replaces」. ?broken-depType(pattern), ~DB[depType:]pattern Matches packages with an unsatisfied dependency of type depType on a package matching pattern. depType may be any one of the dependency types listed in the documentation of ?broken-depType. ?conflicts(pattern), ~Cpattern Matches packages which conflict with a package matching the given pattern. For instance, 「?conflicts(?maintainer(dburrows@debian.org))」 matches any package which conflicts with a package I maintain. ?config-files, ~c パッケージ自体は削除済みだが設定ファイルがシステム上に残っているパッケージ にマッチします (つまりこれらのパッケージは、削除はされましたが完全削除はさ れていません)。 ?depType(pattern), ~D[depType:]pattern depType may be any one of the dependency types given in the documentation of ?broken-depType, as well as provides: for instance, ?depends(libpng3) will match any package that depends on libpng3. If the short form (~D) is used and depType is not present, it defaults to depends. If depType is 「provides」, matches packages that provide a package matching pattern (the equivalent of ?provides). Otherwise, matches packages which declare a dependency of type depType upon a package version which matches pattern. ?description(description), ~ddescription 正規表現説明にパッケージ説明がマッチするパッケージにマッチします。 ?essential, ~E 必須パッケージにマッチします。 ?exact-name(name) Matches packages named name. This is similar to ?name, but the name must match exactly. For instance, the following pattern will match only the package apt; with ?name, it would also match aptitude, uvccapture, etc. 例2.4 Use of the ?exact-name term ?exact-name(apt) ?false, ~F This term does not match any package. ^[18] ?for variable: pattern Matches pattern, but the given variable may be used inside pattern to refer to the package or package version this term to. You can use variable in two ways. To apply a ?-style term to the variable, write ?variable:term-name(args); for instance, ?x:depends(apt). In addition, the term ?=variable will select any package or version that matches the value of the given variable. For instance, the following term will match any package x that both depends and recommends a second package y. 例2.5 Use of the ?for term ?for x: ?depends( ?for y: ?x:recommends( ?=y ) ) See 「Explicit search targets」 for more information. ?garbage, ~g インストールされていないか、または自動的にインストールされたが現在はどのイ ンストール済みのパッケージにも依存されていないパッケージにマッチします。 ?installed, ~i 現在インストールされているパッケージバージョンにマッチします。 デフォルトでは全てのバージョンがテストされるため、これは通常、現在インスト ールされているパッケージにマッチします。 ?maintainer(maintainer), ~mmaintainer Matches packages whose Maintainer field matches the regular expression maintainer. For instance, 「?maintainer(joeyh)」 will find all packages maintained by Joey Hess. ?multiarch(multiarch) Matches packages with the multi-arch capability specified by multiarch. For instance, 「?multiarch(foreign)」 will find all packages which can satisfy dependencies of packages for another architecture. 「?multiarch(none)」 will select packages with no multi-arch capability. ?narrow(filter, pattern), ~S filter pattern This term 「narrows」 the search to package versions matching filter. In particular, it matches any package version which matches both filter and pattern. The string value of the match is the string value of pattern. ?name(name), ~nname Matches packages whose name matches the regular expression name. For instance, most of the packages that match 「?name(^lib)」 are libraries of one sort or another. ?new, ~N Matches packages which are 「new」: that is, they have been added to the archive since the last time the list of packages was cleared using アクシ ョン → 新規パッケージ一覧の消去 (f) or the command-line action forget-new. ?obsolete, ~o This term matches any installed package which is not available in any version from any archive. These packages appear as 「Obsolete or Locally Installed」 in the visual interface. ?origin(origin), ~Oorigin Matches package versions whose origin matches the regular expression origin. For instance, 「!?origin(debian)」 will find any unofficial packages on your system (packages not from the Debian archive). ?provides(pattern), ~Ppattern Matches package versions which provide a package that matches the pattern. For instance, 「?provides(mail-transport-agent)」 will match all the packages that provide 「mail-transport-agent」. ?priority(priority), ~ppriority Matches packages whose priority is priority; priority must be extra, important, optional, required, or standard. For instance, 「?priority(required)」 matches packages whose priority is 「required」. ?reverse-depType(pattern), ~R[depType:]pattern depType may be either 「provides」 or one of the dependency types given in the documentation of ?broken-depType. If depType is not present, it defaults to depends. If depType is 「provides」, matches packages whose name is provided by a package version matching pattern. Otherwise, matches packages which a package version matching pattern declares a dependency of type depType upon. ?reverse-broken-depType(pattern), ?broken-reverse-depType(pattern), ~RB[depType:]pattern depType may be either 「provides」 or one of the dependency types given in the documentation of ?broken-depType. If depType is not present, it defaults to depends. Matches packages which a package version matching pattern declares an unsatisfied dependency of type depType upon. ?section(section), ~ssection 正規表現セクションにセクションがマッチするパッケージにマッチします。 ?source-package(name), ~ename Matches packages whose source package name matches the regular expression name. ?source-version(version) Matches packages whose source version matches the regular expression version. ?tag(tag), ~Gtag Matches packages whose Tag field matches the regular expression tag. For instance, the pattern ?tag(game::strategy) would match strategy games. タグや debtags についてさらに詳しく知りたい場合は 、http://debtags.alioth.debian.org を参照してください。 ?task(task), ~ttask 正規表現タスクにマッチする名前のタスクに現れるパッケージにマッチします。 ?term(keyword) This term performs a full-text search for keyword in the apt package cache. When used with 「aptitude search」, 検索 → 表示を制限 (l) in the curses front-end, or typed into a package search box in the GTK+ front-end, this term will allow aptitude to accelerate the search using a Xapian index. ?term-prefix(keyword) This term performs a full-text search for any keyword beginning with keyword in the apt package cache. When used with 「aptitude search」, 検索 → 表示を制限 (l) in the curses front-end, or typed into a package search box in the GTK+ front-end, this term will allow aptitude to accelerate the search using a Xapian index. This is similar to ?term, but matches extensions of the keyword. For instance, the following search pattern will match any package indexed under the keywords hour, hourglass, hourly, and so on: 例2.6 Use of the ?term-prefix term ?term-prefix(hour) ?true, ~T This term matches any package. For instance, 「?installed?provides(?true) 」 matches installed packages which provide any package. ?upgradable, ~U この表現は、あらゆる更新可能なインストール済みパッケージにマッチします。 [注 注記 記] Note that this only tests whether there are upgrades available for a package, not whether an upgrade could be performed (with actions such as safe-upgrade or full-upgrade). For instance, there can be upgrades available for several packages, but maybe the upgraded versions of a subset conflict with each other, so they cannot be co-installed or not all of them upgraded at the same time. ?user-tag(tag) This term matches any package that is marked with a user-tag matching the regular expression tag. ?version(version), ~Vversion Matches any package version whose version number matches the regular expression version, with the exceptions noted below. For instance, 「?version(debian)」 matches packages whose version contains 「debian」. バージョンが以下の値の場合は特別扱いを受けます。これらの値を含むバージョン 番号を検索するには、値の前にバックスラッシュを置いてください。例えば、バー ジョン番号に CURRENT を含むパッケージを見つけるには、\CURRENT を用いて検索 してください。 • CURRENT は、現在インストールされているパッケージのバージョンがあればそ れにマッチします。 • CANDIDATE は、パッケージの上で + を押したりそれに対して aptitude install を実行したりした場合にインストールされるパッケージのバージョン があれば、それにマッチします。 • TARGET は、現在インストール対象になっているパッケージのバージョンがあ ればそれにマッチします。 ?virtual, ~v Matches any package which is purely virtual: that is, its name is provided by a package, but no package of that name exists. For instance, 「?virtual?reverse-provides(?installed)」 matches virtual packages which are provided by any installed package. ?widen(pattern), ~Wpattern 「Widens」 the match: if the versions to match against have been limited by an enclosing term (such as ?depends), these limits are dropped. Thus, ?widen(pattern) matches a package version if pattern matches any version of that package. aptitude のカスタマイズ Customizing the package list パッケージ一覧は大規模にカスタマイズできます。パッケージの表示方法・パッケ ージ階層構造の形成方法・パッケージの並べ方が、そして表示のまとめ方さえも、 自由に変更可能です。 パッケージの表示方法のカスタマイズ This section describes how to configure the contents and format of the package list, status line, and header line, as well as the output of aptitude search. これらの各領域の書式は、「書式指定文字列」によって定義されます。書式指定文 字列とは、%p や %S などのような % エスケープを含む一連のテキストです。結果 として返される出力は、このテキストを取得し、その中の % エスケープをその意 味内容 (以下で説明します) によって置換して生成されます。 % エスケープは固定サイズの場合と「伸長可能」な場合があります。前者の場合 、% エスケープは、常に同じ長さのテキストで (欄を埋めるために必要に応じて余 分な空白文字を追加して) 置換されます。後者は、固定サイズの欄が使用しない領 域をすべて使用するという意味です。伸長可能な欄が複数ある場合は、余分な空白 が等しく分配されます。 すべての % エスケープは、デフォルトサイズをもっているか伸長可能であるか、 またはその両方です。% エスケープのサイズは、% とエスケープの識別文字の間に 書いて変更できます。例えば %20V は、パッケージのインストール候補のバージョ ンを表す、20 文字分の幅をもつテキストを生成します。% とエスケープの識別文 字の間にクエスチョンマーク (?) を置くと、欄の「基本的な」幅を欄の内容に応 じて変更可能です。この場合、結果として返される欄が垂直方向に一列に並ばない 可能性があることに注意してください! 通常は幅が固定されている特定の % エスケープを伸長可能にしたい場合は、ナン バー記号 (「#」) をエスケープ表記の直後に置いてください。例えば、あるパッ ケージのインストール候補のバージョンがどんなに長くてもすべて表示するには、 書式指定文字列 %V# を使用してください。また、% エスケープ以外のテキストの 後に # を置くと、aptitude は、# の前のテキストを、その後ろに余分な空白を挿 入して「伸長」します。 まとめると、% エスケープの構文は次のようになります。 %[幅][?]コード[#] The configuration variables Aptitude::UI::Package-Display-Format, Aptitude::UI::Package-Header-Format, and Aptitude::UI::Package-Status-Format define the default formats the package list, the header at the top of the package list, and the status line below the package list respectively. To change how the results of an aptitude search command are displayed, use the -F option. 書式指定文字列では以下の % エスケープが利用可能です。 [注 注記 記] 以下の説明の一部では、「(その) パッケージ」という言葉を用いています 。GUI では、これは表示されているパッケージと現在選択中のパッケージのど ちらか一方を指します。コマンドライン検索では、表示されているパッケージ を指します。 エスケ デフォルトサ 伸長可 ープ表 名前 イズ 能か? 説明 記 これは実際にはエスケープ表記で %% リテラル % 1 いいえ はありません。出力において、こ の表記がある場所にパーセント記 号を挿入するだけです。 状況によっては、表示用の書式指 定文字列に「パラメタ」が含まれ ていることがあります。例えばコ マンドラインで search を実行す %#数字 パラメタ置換 可変 いいえ ると、検索結果を表示する際に、 検索にマッチしたグループがパラ メタとして使用されます。この書 式指定コードは、数字で表される パラメタで置換されます。 パッケージに対して実行予定のあ らゆるアクションを簡潔に表す、 %a アクションフラグ 1 いいえ 単一文字のフラグ (図2.10「「ア クション」フラグの値」を参照し てください)。 パッケージに対して実行予定のア %A アクション 10 いいえ クションについての、いくらか冗 長な記述。 破損パッケージがない場合は何も 生成しません。存在する場合は、 %B 破損の数 12 いいえ 破損パッケージ数を表す 「Broken: 10」のような文字列を 生成します。 パッケージの現在の状態を簡潔に %c 現在の状態のフラ 1 いいえ 表す、単一文字のフラグ (図2.9 グ 「「現在の状態」フラグの値」を 参照してください)。 %C 現在の状態 11 いいえ パッケージの現在の状態について の、より冗長な記述。 %d 説明 40 はい パッケージ説明・要約版。 %D パッケージサイズ 8 いいえ パッケージを含むパッケージファ イルのサイズ。 Outputs the string of the %E Architecture 10 いいえ architecture, for example 「amd64」. Outputs the source package, %e Source 30 いいえ for example 「aptitude」 for 「aptitude-doc-en」. %H ホスト名 15 いいえ aptitude を実行しているコンピ ュータの名前。 パッケージバージョンに対しては 、指定されたプライオリティ値の Pin プライオリテ 中で最も高いものを表示します。 %i ィ 4 いいえ パッケージに対しては、強制的に インストールされる予定のバージ ョンがもしあれば、そのプライオ リティ値を表示します。 %I インストールサイ 8 いいえ パッケージが占有するディスク領 ズ 域の (推定) 量。 %m メンテナ 30 はい パッケージのメンテナ。 パッケージが自動的にインストー %M 自動フラグ 1 いいえ ルされたものである場合、「A」 を出力します。そうでない場合は 何も出力しません。 プログラムバージ 「0.8.12」の Outputs the version of %n ョン 長さ。 いいえ aptitude that is running, currently 「0.8.12」. %N プログラム名 The length いいえ Outputs the name of the of the name. program; usually 「aptitude」. インストール予定のパッケージが ない場合は何も出力しません。パ ッケージがある場合は、インスト %o ダウンロードサイ 17 いいえ ール予定の全パッケージファイル ズ の合計のサイズ (必要なダウンロ ードの量を示す推定値) を表す文 字列 (例えば 「DL サイズ: 1000B」) を出力します。 Outputs a string of the origin %O Origin 30 いいえ of the package, for example 「Debian:unstable [amd64]」. パッケージの名前を出力します。 パッケージがツリー状の一覧に表 %p パッケージ名 30 はい 示される場合、可能であれば、パ ッケージの名前はツリー内での深 さに応じてインデントされます。 %P 優先度 9 いいえ パッケージの優先度を出力します 。 パッケージに依存しているインス %r 逆依存の数 2 いいえ トール済みパッケージのおおよそ の数を出力します。 パッケージの優先度の簡略表記を %R 優先度・簡略版 3 いいえ 出力します。例えば「重要」は「 重」となります。 %s セクション 10 いいえ パッケージのセクションを出力し ます。 パッケージが信頼できないもので %S 信頼状態 1 いいえ ある場合、"U" の文字を表示しま す。 %t アーカイブ 10 はい パッケージが発見されたアーカイ ブ。 Outputs 「*」 if the package is tagged, nothing %T Tagged (and 30 いいえ otherwise.^[19] user-tags) This field also includes user-tags. 予定されているアクションによっ て、使用されるディスク領域の量 %u ディスク使用量の 30 いいえ が変化する場合は、ディスク領域 変化 の変化を記述する文字列 (例えば 、「100MB のディスク領域を新た に使用します」) を出力します。 パッケージが現在インストールさ %v 現在のバージョン 14 いいえ れている場合はそのバージョンを 、現在インストールされていない 場合は <なし> を、出力します。 パッケージが現在入手可能な場合 は、パッケージ → インストール インストール候補 (+) がそのパッケージに対して発 %V のバージョン 14 いいえ 行されたときにインストールされ るバージョンを、現在入手不可能 な場合は <なし> を、出力します 。 パッケージのインストール・更新 %Z サイズの変化 9 いいえ ・削除によって使用または解放さ れるディスク領域の量を出力しま す。 パッケージ階層構造のカスタマイズ パッケージの階層構造は分類規則によって生成されます。分類規則とは、階層構造 の構築方法を記述する一連の規則です。分類規則は規則の「処理の流れ」を記述し 、各規則は一部のパッケージを捨てたり、一部のパッケージを含む部分階層構造を 作成したり、ツリーを操作したりします。設定項目 Aptitude::UI::Default-Grouping と Aptitude::UI::Default-Preview-Grouping が、それぞれ、新規に作成したパッケージ一覧とプレビュースクリーンに分類規則 を設定します。G を押すと、現在のパッケージ一覧に分類規則を設定できます。 分類規則は、規則 1,規則 2,... というようなコンマ区切りの規則のリストで記述 されます。各規則は、例えば versions や section(subdir) というように、必要 に応じて引数を後ろにつけた規則名から成ります。引数が必要か否かや、必要とす る (あるいは任意で指定可能な) 引数の数は、規則の種類によります。 規則は非末端と末端のいずれか一方です。非末端規則は、階層構造の一部を生成し てパッケージを後方の規則に渡す、という方法でパッケージを処理します。他方で 末端規則は、やはりツリーの一部 (通常はパッケージに相当する項目) を生成しま すが、パッケージを後方の規則に渡しません。末端規則が指定されていない場合 、aptitude はデフォルトの規則を使用します。デフォルトの規則では、標準「パ ッケージ項目」が作成されます。 action パッケージに対して予定されているアクションに応じてパッケージを分類します。 更新可能ではなく変更もなされないパッケージは無視されます。これは、プレビュ ーツリーで使用されている分類方法です。 architecture Groups packages according to their architecture. deps この規則は末端規則です。 展開してパッケージの依存関係を見えるようにできる標準パッケージ項目を作成し ます。 filter(パターン) 1 つ以上のバージョンがパターンにマッチするパッケージのみを含めます。 パターンが「与えられていない」場合、捨てられるパッケージはありません。これ は後方互換性のための機能で、将来削除されるかもしれません。 firstchar[(mode)] パッケージ名の 1 文字目に基づいてパッケージを分類します。 To be precise, it is not always the first letter -- for packages starting with lib* the name of the group is liba, libb, ... like in Debian FTPs. モードには以下のいずれかを指定できます。 binary Group based on the binary package name. This is the default if no mode is specified. 例2.7 Grouping policy firstchar or firstchar(binary) With the source package dpkg as an example, the binary packages dselect, dpkg and dpkg-dev would be grouped under d, while libdpkg-dev and libdpkg-perl would be added to the libd group. source Group based on the source package name. This is useful for example when browsing packages coming from the same source package (source grouping policy) within large collections (examples: all installed packages, all upgradable packages, all packages from "main" section), to add an intermediate grouping step. In this way, one can for example emulate the hierarchy of FTPs (try grouping: "section(topdir),firstchar(source),source"). 例2.8 Grouping policy firstchar(source) Again, with the source package dpkg as an example, all the binary packages dselect, dpkg, dpkg-dev, libdpkg-dev and libdpkg-perl would be grouped under d. pattern(pattern [=> title] [{ policy }] [, ...]) A customizable grouping policy. Each version of every package is matched against the given patterns. The first match found is used to assign a title to the package; packages are then grouped by their title. Strings of the form \N that occur in title will be replaced by the Nth result of the match. If title is not present, it is assumed to be \1. Note that packages which do not match any patterns will not appear in the tree at all. 例2.9 Use of pattern to group packages by their maintainer pattern(?maintainer() => \1) The example above will group packages according to their Maintainer field. The policy pattern(?maintainer()) will do the same thing, as the absent title defaults to \1. Instead of => title, an entry may end with ||. This indicates that packages matching the corresponding pattern will be inserted into the tree at the same level as the pattern grouping, rather than being placed in subtrees. 例2.10 Use of pattern with some packages placed at the top level pattern(?action(remove) => Packages Being Removed, ?true ||) The example above will place packages that are being removed into a subtree, and place all the other packages at the current level, grouped according to the policies that follow pattern. By default, all the packages that match each pattern are grouped according to the rules that follow the pattern policy. To specify a different policy for some packages, write the policy in braces ({}) after the title of the group, after the ||, or after the pattern if neither is present. For instance: 例2.11 Use of the pattern grouping policy with sub-policies pattern(?action(remove) => Packages Being Removed {}, ?action(install) => Packages Being Installed, ?true || {status}) The policy in the above example has the following effects: • Packages that are being removed are placed into a subtree labeled 「Packages Being Removed」; the grouping policy for this subtree is empty, so the packages are placed into a flat list. • Packages that are being installed are placed into a subtree labeled Packages Being Installed and grouped according to the policies that follow pattern. • All remaining packages are placed at the top level of the tree, grouped according to their status. パターンの書式についてさらに詳しく知りたい場合は、「Search patterns」を参 照してください。 priority 優先度に応じてパッケージを分類します section[(モード[,passthrough])] セクション (Section) フィールドに応じてパッケージを分類します。 モードには以下のいずれかを指定できます。 none Group based on the whole Section field, so categories like 「non-free/games」 will be created. This is the default if no mode is specified. topdir Group based on the part of the Section field before the first / character; if this part of the Section is not recognized, or if there is no /, the first entry in the list Aptitude::Sections::Top-Sections will be used instead. subdir Group based on the part of the Section field after the first / character, if it is contained in the list Aptitude::Sections::Top-Sections. If not, or if there is no /, group based on the entire Section field instead. subdirs Group based on the part of the Section field after the first / character, if the portion of the field preceding it is contained in the list Aptitude::Sections::Top-Sections; if not, or if there is no /, the entire field will be used. If there are multiple / characters in the portion of the field that is used, a hierarchy of groups will be formed. For instance, if 「games」 is not a member of Aptitude::Sections::Top-Sections, then a package with a section of 「games/arcade」 will be placed under the top-level heading 「games」, in a sub-tree named 「arcade」. passthrough が指定されている場合、何らかの理由で実際のセクションフィールド がないパッケージ (例えば仮想パッケージ) は、次の分類レベルに渡される前に下 位のカテゴリに入れられることはなく、そのまま渡されます。 status パッケージを以下のカテゴリに分類します • セキュリティアップデート • 更新可能 • New • インストール済み • インストールされていない • Obsolete and Locally Created • 仮想 source Groups packages according to their source package name. tag[(facet)] Debian パッケージファイル内に格納されたタグ情報に応じてパッケージを分類し ます。facet が指定されている場合、その facet に相当するタグのみが表示され 、その facet がないパッケージは隠されます。facet が指定されていない場合は 、全てのパッケージが一度以上表示されます (タグのついていないパッケージは、 タグのついているパッケージとは別に一覧表示されます)。 debtags についてさらに詳しく知りたい場合は 、http://debtags.alioth.debian.org を参照してください。 task 利用可能なタスクを含む「タスク」と呼ばれるツリーを作成します (タスクに関す る情報は、tasksel パッケージ内の debian-tasks.desc から読み込まれます) 。task 以降の規則は、タスクの兄弟ノードとしてカテゴリを作成します。 versions この規則は末端規則です。 展開してパッケージのバージョンを見えるようにできる標準パッケージ項目を作成 します。 パッケージの並べ方のカスタマイズ By default, packages in the package list or in the output of aptitude search are sorted by name. However, it is often useful to sort them according to different criteria (for instance, package size), and aptitude allows you to do just that by modifying the sorting policy. 前のセクションで説明した分類規則と同様、並び替え規則はコンマ区切りのリスト です。リスト内の各項目は並び替え規則の名前で、最初の規則で複数のパッケージ が「同等」になる場合は 2 番目の規則が並び替えに使用される、というように処 理されます。規則の前にチルダ文字 (~) を置くと、その規則の意味を通常と逆に できます。例えば priority,~name とすると、優先度によってパッケージを並び替 えますが、同じ優先度のパッケージは名前による並び替え結果の逆順で並べられま す。 To change the sorting policy for an active package list, press S. To change the default sorting for all package lists, set the configuration option Aptitude::UI::Default-Sorting. To change the sorting policy for aptitude search, use the --sort command-line option. 以下の規則が利用可能です。 installsize インストール時に必要となるサイズの推定量でパッケージを並び替えます。 installsizechange Sorts packages by the change in the installed size (estimated amount of size required when installed), comparing the current version (if installed) and the candidate version to be installed, upgraded or removed. debsize Sorts packages by the size of the package. name 名前でパッケージを並び替えます。 priority 優先度でパッケージを並び替えます。 version バージョン番号でパッケージを並び替えます。 Customizing keybindings The keys used to activate commands in aptitude can be customized in the configuration file. Every command has an associated configuration variable under Aptitude::UI::Keybindings; to change the keystroke bound to a command, just set the corresponding variable to the keystroke. For instance, to make the key s perform a search, set Aptitude::UI::Keybindings::Search to 「s」. You can require the Control key to be pressed by placing 「C-」 in front of the key: for instance, using 「C-s」 instead of 「s」 would bind Search to Control+s instead of s. Finally, you can bind a command to several keys at once using a comma-separated list: for instance, using 「s,C-s」 would cause both s and Control+s to perform a search. The following commands can be bound to keys by setting the variable Aptitude::UI::Keybindings::command, where command is the name of the command to be bound: ┌────────────────────────┬─────────────────────┬─────────────────────────┐ │ コマンド │ デフォルト │ 説明 │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ If packages are broken │ │ │ │ and aptitude has │ │ ApplySolution │ ! │ suggested a solution to │ │ │ │ the problem, │ │ │ │ immediately apply the │ │ │ │ solution. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Move to the beginning │ │ │ │ of the current display: │ │ Begin │ home,C-a │ to the top of a list, │ │ │ │ or to the left of a │ │ │ │ text entry field. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Cancels the current │ │ │ │ interaction: for │ │ Cancel │ C-g,escape,C-[ │ instance, discards a │ │ │ │ dialog box or │ │ │ │ deactivates the menu. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Displays the │ │ │ │ changelog.Debian of the │ │ Changelog │ C │ currently selected │ │ │ │ package or package │ │ │ │ version. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Changes the grouping │ │ ChangePkgTreeGrouping │ G │ policy of the currently │ │ │ │ active package list. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Changes the limit of │ │ ChangePkgTreeLimit │ l │ the currently active │ │ │ │ package list. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Changes the sorting │ │ ChangePkgTreeSorting │ S │ policy of the currently │ │ │ │ active package list. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Marks the currently │ │ ClearAuto │ m │ selected package as │ │ │ │ having been manually │ │ │ │ installed. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Collapses the selected │ │ CollapseAll │ ] │ tree and all its │ │ │ │ children in a │ │ │ │ hierarchical list. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Collapses the selected │ │ CollapseTree │ left │ tree in a hierarchical │ │ │ │ list. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ In dialog boxes, this │ │ │ │ is equivalent to │ │ │ │ pressing 「Ok」; when │ │ Confirm │ enter │ interacting with a │ │ │ │ status-line multiple │ │ │ │ choice question, it │ │ │ │ chooses the default │ │ │ │ option. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Switches the keyboard │ │ Cycle │ tab │ focus to the next │ │ │ │ 「widget」. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ CycleNext │ f6 │ Switches to the next │ │ │ │ active view. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Cycles through │ │ CycleOrder │ o │ predefined arrangements │ │ │ │ of the display. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ CyclePrev │ f7 │ Switches to the │ │ │ │ previous active view. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Deletes all text │ │ DelBOL │ C-u │ between the cursor and │ │ │ │ the beginning of the │ │ │ │ line. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Deletes the previous │ │ DelBack │ backspace,C-h │ character when entering │ │ │ │ text. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Deletes all text from │ │ DelEOL │ C-k │ the cursor to the end │ │ │ │ of the line. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Deletes the character │ │ DelForward │ delete,C-d │ under the cursor when │ │ │ │ entering text. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Displays the │ │ Dependencies │ d │ dependencies of the │ │ │ │ currently selected │ │ │ │ package. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ When browsing the │ │ │ │ package list, cycles │ │ DescriptionCycle │ i │ through the available │ │ │ │ views in the │ │ │ │ information area. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ When browsing the │ │ DescriptionDown │ z │ package list, scrolls │ │ │ │ the information area │ │ │ │ down one line. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ When browsing the │ │ DescriptionUp │ a │ package list, scrolls │ │ │ │ the information area up │ │ │ │ one line. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ If not in a preview │ │ │ │ screen, display the │ │ DoInstallRun │ g │ preview screen ^[a]; if │ │ │ │ in a preview screen, │ │ │ │ perform an install run. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Moves down: for │ │ │ │ instance, scrolls a │ │ Down │ down,j │ text display down or │ │ │ │ selects the next item │ │ │ │ in a list. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ If packages are broken, │ │ │ │ writes the current │ │ DumpResolver │ * │ state of the │ │ │ │ problem-resolver to a │ │ │ │ file (for debugging │ │ │ │ purposes). │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Move to the end of the │ │ │ │ current display: to the │ │ End │ end,C-e │ bottom of a list, or to │ │ │ │ the right of a text │ │ │ │ entry field. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ If some packages are │ │ │ │ broken and aptitude has │ │ │ │ suggested a solution, │ │ ExamineSolution │ e │ display a dialog box │ │ │ │ with a detailed │ │ │ │ description of the │ │ │ │ proposed solution. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Expands the selected │ │ ExpandAll │ [ │ tree and all its │ │ │ │ children in a │ │ │ │ hierarchical list. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Expands the selected │ │ ExpandTree │ right │ tree in a hierarchical │ │ │ │ list. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Select the first │ │ FirstSolution │ < │ solution produced by │ │ │ │ the problem resolver. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Forbids a package from │ │ │ │ being upgraded to the │ │ ForbidUpgrade │ F │ currently available │ │ │ │ version (or a │ │ │ │ particular version). │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Discards all │ │ │ │ information about which │ │ ForgetNewPackages │ f │ packages are 「new」 │ │ │ │ (causes the list of │ │ │ │ 「new」 packages to │ │ │ │ become empty). │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ Help │ ? │ Displays the on-line │ │ │ │ help screen. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ In a line editor with │ │ HistoryNext │ down,C-n │ history, moves forwards │ │ │ │ in the history. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ In a line editor with │ │ HistoryPrev │ up,C-p │ history, moves │ │ │ │ backwards in the │ │ │ │ history. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ Hold │ = │ Places a package on │ │ │ │ hold. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ Install │ + │ Flags a package for │ │ │ │ installation. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Marks a single package │ │ │ │ for installation; all │ │ InstallSingle │ I │ other packages are kept │ │ │ │ at their current │ │ │ │ version. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Cancels all │ │ Keep │ : │ installation or removal │ │ │ │ requests and all holds │ │ │ │ for a package. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Select the last │ │ LastSolution │ < │ solution produced by │ │ │ │ the problem resolver. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Moves left: for │ │ │ │ instance, moves one │ │ Left │ left,h │ menu to the left in the │ │ │ │ menu bar, or moves the │ │ │ │ cursor to the left when │ │ │ │ editing text. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ In a hierarchical list, │ │ │ │ selects the next │ │ │ │ sibling of the │ │ LevelDown │ J │ currently selected item │ │ │ │ (the next item at the │ │ │ │ same level with the │ │ │ │ same parent). │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ In a hierarchical list, │ │ │ │ selects the previous │ │ │ │ sibling of the │ │ LevelUp │ K │ currently selected item │ │ │ │ (the previous item at │ │ │ │ the same level with the │ │ │ │ same parent). │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Attempts to upgrade all │ │ │ │ packages which are not │ │ MarkUpgradable │ U │ held back or forbidden │ │ │ │ from upgrading. It also │ │ │ │ installs new Essential │ │ │ │ or Required packages. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ In Minesweeper, places │ │ MineFlagSquare │ f │ or removes a flag on a │ │ │ │ square. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ MineLoadGame │ L │ Loads a Minesweeper │ │ │ │ game. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ MineSaveGame │ S │ Saves a Minesweeper │ │ │ │ game. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Sweeps around the │ │ MineSweepSquare │ No binding │ current square in │ │ │ │ Minesweeper. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ MineUncoverSquare │ No binding │ Uncovers the current │ │ │ │ square in Minesweeper │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Uncovers the current │ │ │ │ square in Minesweeper │ │ MineUncoverSweepSquare │ enter │ if it is covered; │ │ │ │ otherwise, sweeps │ │ │ │ around it. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Moves the current │ │ NextPage │ pagedown,C-f │ display one page │ │ │ │ forward. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Advance the dependency │ │ NextSolution │ . │ resolver to the next │ │ │ │ solution. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ This key will select │ │ No │ n^[b] │ the 「no」 button in │ │ │ │ yes/no dialog boxes. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Selects the parent of │ │ │ │ the selected item in a │ │ │ ^, left (in package │ hierarchical list. left │ │ Parent │ items) │ is used only in package │ │ │ │ items (rows) when │ │ │ │ showing trees of │ │ │ │ packages. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Moves the current │ │ PrevPage │ pageup,C-b │ display one page │ │ │ │ backward. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Return the dependency │ │ PrevSolution │ , │ resolver to the │ │ │ │ previous solution. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Flags the currently │ │ Purge │ _ │ selected package to be │ │ │ │ purged. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Activates the currently │ │ PushButton │ space,enter │ selected button, or │ │ │ │ toggles a checkbox. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ Quit │ q │ 現在の画面を閉じます。 │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ QuitProgram │ Q │ Quit the entire │ │ │ │ program. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Reject all resolver │ │ │ │ actions that would │ │ RejectBreakHolds │ │ break a hold; │ │ │ │ equivalent to Resolver │ │ │ │ → Reject Breaking │ │ │ │ Holds. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ Refresh │ C-l │ Redraws the screen from │ │ │ │ scratch. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ Remove │ - │ Flags a package for │ │ │ │ removal. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Flags the currently │ │ ReInstall │ L │ selected package to be │ │ │ │ reinstalled. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Repeats the last │ │ RepeatSearchBack │ N │ search, but searches in │ │ │ │ the opposite direction. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ ReSearch │ n │ Repeats the last │ │ │ │ search. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Displays packages which │ │ ReverseDependencies │ r │ depend upon the │ │ │ │ currently selected │ │ │ │ package. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Moves right: for │ │ │ │ instance, moves one │ │ Right │ right,l │ menu to the right in │ │ │ │ the menu bar, or moves │ │ │ │ the cursor to the right │ │ │ │ when editing text. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Activate the 「search」 │ │ Search │ / │ function of the │ │ │ │ currently active │ │ │ │ interface element. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Activate the 「search │ │ SearchBack │ \ │ backwards」 function of │ │ │ │ the currently active │ │ │ │ interface element. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ In a package tree, │ │ SearchBroken │ b │ search for the next │ │ │ │ broken package. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Marks the current │ │ SetAuto │ M │ package as having been │ │ │ │ automatically │ │ │ │ installed. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ In a package list, │ │ ShowHideDescription │ D │ toggles whether the │ │ │ │ information area is │ │ │ │ visible. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ When viewing a │ │ │ │ solution, marks the │ │ │ │ currently selected │ │ SolutionActionApprove │ a │ action as "approved" │ │ │ │ (it will be included in │ │ │ │ future solutions │ │ │ │ whenever possible). │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ When viewing a │ │ │ │ solution, marks the │ │ SolutionActionReject │ r │ currently selected │ │ │ │ action as "rejected" │ │ │ │ (future solutions will │ │ │ │ not contain it). │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Expands or collapses │ │ ToggleExpanded │ enter │ the currently selected │ │ │ │ tree in a hierarchical │ │ │ │ list. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Activates or │ │ ToggleMenuActive │ C-m,f10,C-space │ deactivates the main │ │ │ │ menu. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Cancels the last │ │ │ │ action, up to when │ │ │ │ aptitude was started OR │ │ Undo │ C-_,C-u │ the last time you │ │ │ │ update the package │ │ │ │ lists or installed │ │ │ │ packages. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Moves up: for instance, │ │ │ │ scrolls a text display │ │ Up │ up,k │ up or selects the │ │ │ │ previous item in a │ │ │ │ list. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Updates the list of │ │ UpdatePackageList │ u │ packages by fetching │ │ │ │ new lists from the │ │ │ │ Internet if necessary. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ Displays the available │ │ Versions │ v │ versions of the │ │ │ │ currently selected │ │ │ │ package. │ ├────────────────────────┼─────────────────────┼─────────────────────────┤ │ │ │ This key will select │ │ Yes │ y ^[b] │ the 「Yes」 button in │ │ │ │ yes/no dialog boxes. │ ├────────────────────────┴─────────────────────┴─────────────────────────┤ │ ^[a] unless Aptitude::Display-Planned-Action is false. │ │ │ │ ^[b] This default may be different in different locales. │ └────────────────────────────────────────────────────────────────────────┘ In addition to letter keys, number keys, and punctuation, the following 「special」 keys can be bound: ┌──────────────────┬─────────────────────────────────────────────────────┐ │ キーの名前 │ 説明 │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ a1 │ The A1 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ a3 │ The A3 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ b2 │ The B2 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ backspace │ The Backspace key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ backtab │ The back-tab key │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ begin │ The Begin key (not Home) │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ break │ The 「break」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ c1 │ The C1 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ c3 │ The C3 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ cancel │ The Cancel key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ create │ The Create key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ comma │ Comma (,) -- note that because commas are used to │ │ │ list keys, this is the only way to bind to a comma. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ command │ The Command key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ copy │ The Copy key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ delete │ The Delete key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ delete_line │ The 「delete line」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ down │ The 「down」 arrow key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ end │ The End key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ entry │ The Enter key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ exit │ The Exit key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ f1, f2, ..., f10 │ The F1 through F10 keys. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ find │ The Find key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ home │ The Home key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ insert │ The Insert key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ insert_exit │ The 「insert exit」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ clear │ The 「clear」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ clear_eol │ The 「clear to end of line」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ clear_eos │ The 「clear to end of screen」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ insert_line │ The 「insert line」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ left │ The 「left」 arrow key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ mark │ The Mark key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ message │ The Message key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ move │ The Move key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ next │ The Next key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ open │ The Open key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ previous │ The Previous key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ print │ The Print key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ redo │ The Redo key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ reference │ The Reference key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ refresh │ The Refresh key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ replace │ The Replace key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ restart │ The Restart key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ resume │ The Resume key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ return │ The Return key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ right │ The 「right」 arrow key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ save │ The Save key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ scrollf │ The 「scroll forward」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ scrollr │ The 「scroll backwards」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ select │ The Select key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ suspend │ The Suspend key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ pagedown │ The 「Page Down」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ pageup │ The 「Page Up」 key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ space │ The Space key │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ tab │ The Tab key │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ undo │ The Undo key. │ ├──────────────────┼─────────────────────────────────────────────────────┤ │ up │ The 「up」 arrow key. │ └──────────────────┴─────────────────────────────────────────────────────┘ In addition to binding keys globally, it is possible to change key bindings for one particular part (or domain) of aptitude: for instance, to make Tab the equivalent of the right arrow key in menu bars, set Aptitude::UI::Keybindings::Menubar::Right to 「tab,right」. The following domains are available: ┌───────────────┬────────────────────────────────────────────────────────┐ │ ドメイン │ 説明 │ ├───────────────┼────────────────────────────────────────────────────────┤ │ EditLine │ Used by line-editing widgets, such as the entry field │ │ │ in a 「search」 dialog. │ ├───────────────┼────────────────────────────────────────────────────────┤ │ Menu │ Used by drop-down menus. │ ├───────────────┼────────────────────────────────────────────────────────┤ │ Menubar │ Used by the menu bar at the top of the screen. │ ├───────────────┼────────────────────────────────────────────────────────┤ │ Minesweeper │ Used by the Minesweeper mode. │ ├───────────────┼────────────────────────────────────────────────────────┤ │ │ Used by the multiple-choice prompts that appear if you │ │ MinibufChoice │ have chosen to have some prompts appear in the status │ │ │ line. │ ├───────────────┼────────────────────────────────────────────────────────┤ │ Pager │ Used when displaying a file on disk (for instance, the │ │ │ help text). │ ├───────────────┼────────────────────────────────────────────────────────┤ │ │ Used by packages, trees of packages, package versions, │ │ PkgNode │ and package dependencies when they appear in package │ │ │ lists. │ ├───────────────┼────────────────────────────────────────────────────────┤ │ PkgTree │ Used by package lists. │ ├───────────────┼────────────────────────────────────────────────────────┤ │ Table │ Used by tables of widgets (for instance, dialog │ │ │ boxes). │ ├───────────────┼────────────────────────────────────────────────────────┤ │ TextLayout │ Used by formatted text displays, such as package │ │ │ descriptions. │ ├───────────────┼────────────────────────────────────────────────────────┤ │ Tree │ Used by all tree displays (including package lists, │ │ │ for which it can be overridden by PkgTree). │ └───────────────┴────────────────────────────────────────────────────────┘ テキストの色とスタイルのカスタマイズ aptitude がテキストを表示するのに使用する色や視覚的なスタイルは、大規模に カスタマイズできます。視覚的な要素にはそれぞれ、関連づけられた「スタイル」 があります。スタイルは、要素の表示に使用する特定の色や視覚的な属性を記述す るもので、色や属性の設定のリストのかたちをとります。このリストは必ずしも網 羅的である必要はありません。一部の色や属性が明示的に指定されていない場合、 その値は周囲の視覚的な要素の値から取得されます。実際には、ほとんどの視覚的 要素はデフォルトで「空」のスタイルをもっています。 apt や aptitude の設定ファイル内に同名の設定グループを作成すると、スタイル の内容を変更できます。例えば、「MenuBorder」スタイルは、ドロップダウンメニ ューの周囲に視覚的な枠を描くのに使用されます。デフォルトでは、この枠は青地 の背景に白い太線で描かれます。しかし次のテキストを設定ファイルに書くと、枠 はシアンの背景に白い太線に変わります。 Aptitude::UI::Styles { MenuBorder {fg white; bg cyan; set bold;}; }; 御覧のとおり、スタイル用の設定グループは一連の命令から成っています。命令の 一般的なクラスは次のとおりです。 fg 色 テキストの前景色を指定された色に設定します。aptitude が理解できる色の一覧 については下記を参照してください。 bg 色 テキストの背景色を指定された色に設定します。aptitude が理解できる色の一覧 については下記を参照してください。 set 属性 指定されたテキスト属性をオンにします。aptitude が理解できるテキスト属性の 一覧については下記を参照してください。 clear 属性 指定されたテキスト属性をオフにします。aptitude が理解できるテキスト属性の 一覧については下記を参照してください。 flip 属性 指定されたテキスト属性のオン・オフを切り替えます。つまり、周囲の属性でオン ならオフに、オフならオンにします。aptitude が理解できるテキスト属性の一覧 については下記を参照してください。 The colors that aptitude recognizes are black, blue, cyan, green, magenta, red, white, and yellow ^[20]. In addition, you may specify default in place of a background color to use the default terminal background (this could be the default color, an image file, or even 「transparent」). The styles that aptitude recognizes are: blink テキストの点滅をオンにします。 bold テキストの前景色 (反転ビデオ表示 (reverse video) がオンになっている場合は 背景色) を明るく (訳注: 正確には太字に) します。 dim 一部のターミナルではテキストを薄暗くします。Linux の一般的なターミナルでは 何の効果も観察されません。 reverse 前景色と背景色を入れ替えます。多くの視覚的要素が、一般的なハイライト効果を 実現するためにこの属性をオンにしています。 standout 「ターミナルの最大限ハイライトモード」をオンにします。xterm においては、反 転ビデオ表示 (reverse video) と同様です (同一ではありません)。その他のター ミナルでは挙動が異なるかもしれません。 underline テキストの下線をオンにします。 複数の属性をコンマで区切って同時に選択することが可能です (例: set bold,standout;)。 [注 注記 記] 上の説明を読んでおわかりかもしれませんが、スタイルとテキスト属性のどち らも、解釈は非常にターミナルに依存しています。特定の設定が自分のターミ ナルでどのように働くかを正確に知るには、少し実験する必要があるかもしれ ません。 aptitude では以下のスタイルがカスタマイズ可能です。 図2.14 aptitude においてカスタマイズ可能なスタイル ┌──────────────────────────┬───────────────┬───────────────────────────────────┐ │ スタイル │ デフォルト │ 説明 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │Bullet │fg yellow; set │箇条書きのリストの頭に置かれる点の │ │ │bold; │スタイル │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │変更履歴表示における、新しめのバー │ │ │ │ジョンのパッケージのスタイル │ │ │ │。libparse-debianchangelog-perl パ │ │ChangelogNewerVersion │set bold; │ッケージをインストールしている場合 │ │ │ │、aptitude は新しめのバージョンのパ│ │ │ │ッケージのみをハイライトすることに │ │ │ │注意してください。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │Default │fg white; bg │スクリーンの基本スタイル。 │ │ │black; │ │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │DepBroken │fg black; bg │満たされていない依存関係のスタイル │ │ │red; │。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │DisabledMenuEntry │fg black; bg │使用不能になっていて使用できないメ │ │ │blue; set dim; │ニューのエントリのスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │ファイルが過去に「ヒット」された、 │ │DownloadHit │fg black; bg │つまり最後にダウンロードしたときか │ │ │green; │らファイルが変化していないことを示 │ │ │ │すのに使用されるスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │DownloadProgress │fg blue; bg │ダウンロードの進行状況表示のスタイ │ │ │yellow; │ル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │fg white; bg │ラインエディタのスタイル (例えば「 │ │EditLine │black; clear │検索」ダイアログ内のエントリ)。 │ │ │reverse; │ │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │Error │fg white; bg │エラーメッセージのスタイル。 │ │ │red; set bold; │ │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │Header │fg white; bg │スクリーンのヘッダのスタイル。 │ │ │blue; set bold;│ │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │fg white; bg │メニューバーで現在選択中のメニュー │ │HighlightedMenuBar │blue; set │名のスタイル。 │ │ │bold,reverse; │ │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │fg white; bg │メニューで現在選択中の選択項目のス │ │HighlightedMenuEntry │blue; set │タイル。 │ │ │bold,reverse; │ │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │fg yellow; bg │新しい CD を挿入するようユーザに要 │ │MediaChange │red; set bold; │求するのに用いられるダイアログのス │ │ │ │タイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │MenuBar │fg white; bg │メニューバーのスタイル。 │ │ │blue; set bold;│ │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │MenuBorder │fg white; bg │ドロップダウンメニューを囲む枠のス │ │ │blue; set bold;│タイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │MenuEntry │fg white; bg │ドロップダウンメニューの各エントリ │ │ │blue; │のスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │MineBomb │fg red; set │マインスイーパの爆弾のスタイル。 │ │ │bold; │ │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │MineBorder │set bold; │マインスイーパのボードの周りに描か │ │ │ │れる枠のスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │MineFlag │fg red; set │マインスイーパのフラグのスタイル。 │ │ │bold; │ │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │MineNumberN │様々 │マインスイーパにおける数字 N のスタ│ │ │ │イル。N の範囲は 0 から 8 です。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │MultiplexTab │fg white; bg │現在選択されていない「タブ」を表示 │ │ │blue; │するのに使用される色。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │MultiplexTabHighlighted │fg blue; bg │現在選択中の「タブ」を表示するのに │ │ │white; │使用される色。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │fg red; flip │パッケージ一覧において満たされてい │ │PkgBroken │reverse; │ない依存関係をもつパッケージのスタ │ │ │ │イル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │パッケージ一覧において満たされてい │ │PkgBrokenHighlighted │fg red; │ない依存関係をもつ、ハイライトされ │ │ │ │たパッケージのスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │現在インストールされておらずインス │ │PkgNotInstalled │ │トール予定でもないパッケージのスタ │ │ │ │イル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │現在インストールされておらずインス │ │PkgNotInstalledHighlighted│ │トール予定でもない、ハイライトされ │ │ │ │たパッケージのスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │現在インストールされており予定中の │ │PkgIsInstalled │set bold; │アクションがないパッケージのスタイ │ │ │ │ル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │set bold; flip │現在インストールされており予定中の │ │PkgIsInstalledHighlighted │reverse; │アクションがない、ハイライトされた │ │ │ │パッケージのスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │The style of packages in the │ │PkgToDowngrade │set bold; │package list which will be │ │ │ │downgraded. │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │set bold; flip │The style of highlighted packages │ │PkgToDowngradeHighlighted │reverse │in the package list which will be │ │ │ │downgraded. │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │PkgToHold │fg white; flip │パッケージ一覧において固定状態にあ │ │ │reverse; │るパッケージのスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │パッケージ一覧において固定状態にあ │ │PkgToHoldHighlighted │fg white; │る、ハイライトされたパッケージのス │ │ │ │タイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │パッケージ一覧において (更新以外の)│ │PkgToInstall │fg green; flip │インストールまたは再インストール予 │ │ │reverse; │定となっているパッケージのスタイル │ │ │ │。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │パッケージ一覧において (更新以外の)│ │PkgToInstallHighlighted │fg green; │インストールまたは再インストール予 │ │ │ │定となっている、ハイライトされたパ │ │ │ │ッケージのスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │fg magenta; │パッケージ一覧において削除または完 │ │PkgToRemove │flip reverse; │全削除予定となっているパッケージの │ │ │ │スタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │パッケージ一覧において削除または完 │ │PkgToRemoveHighlighted │fg magenta; │全削除予定となっている、ハイライト │ │ │ │されたパッケージのスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │PkgToUpgrade │fg cyan; flip │パッケージ一覧において更新予定とな │ │ │reverse; │っているパッケージのスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │ │パッケージ一覧において更新予定とな │ │PkgToUpgradeHighlighted │fg cyan; │っている、ハイライトされたパッケー │ │ │ │ジのスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │Progress │fg blue; bg │パッケージキャッシュのロード中に現 │ │ │yellow; │れるような進行状況表示のスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │SolutionActionApproved │bg green; │解決策において承認されたアクション │ │ │ │のスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │SolutionActionRejected │bg red; │解決策において拒否されたアクション │ │ │ │のスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │Status │fg white; bg │スクリーン最下部のステータスライン │ │ │blue; set bold;│のスタイル。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │TreeBackground │ │すべての視覚的なリストおよびツリー │ │ │ │の基本色。 │ ├──────────────────────────┼───────────────┼───────────────────────────────────┤ │ │fg red; bg │パッケージの信頼性に関する警告を表 │ │TrustWarning │black; set │示するのに使用される色。 │ │ │bold; │ │ └──────────────────────────┴───────────────┴───────────────────────────────────┘ Customizing the display layout It is possible to rearrange the aptitude package list by making suitable modifications to the configuration file. Display elements The layout is stored in the configuration group Aptitude::UI::Default-Package-View, and consists of a list of display elements: Name Type { Row row; Column column; Width width; Height height; additional options... }; This creates a display element named Name; the type of element created is determined by Type. The Row, Column, Width, and Height options must be present; they determine where the display element is placed. (see below for a detailed explanation of how display elements are arranged) For examples of how to change the display layout, see the theme definitions in the file /usr/share/aptitude/aptitude-defaults. The following types of display elements are available: Description This display element will contain the 「information area」 (typically a description of the currently selected package). The option PopUpDownKey gives the name of a keyboard command which will cause the display element to be shown or hidden. For instance, setting this to ShowHideDescription will give the current display element the same behavior as the default information area. The option PopUpDownLinked gives the name of another display element; the current element will be shown or hidden whenever the other element is. MainWidget This is a placeholder for the 「main」 display element: typically this is the list of packages. A display layout must contain exactly one MainWidget element: no more, no less. Static A region of the screen which displays some text, possibly containing formatting codes as described in 「パッケージの表示方法のカスタマイズ」. The text to display can be given in the Columns option, or it can be stored in another configuration variable specified by the ColumnsCfg option. The color of the text is determined by the color named by the Color option. Static items can be displayed and hidden in the same way as Description items, using the PopUpDownKey and PopUpDownLinked options. Placement of display elements The display elements are arranged in a 「table」. The upper-left corner of an element is in the cell given by its Row and Column options (typically starting from row 0 and column 0, but this is not required). The width of an element in cells is given by its Width option, and its height is given by its Height option. Once the display elements are arranged and have been given an initial amount of space on the screen, there is likely to be space left over. If there is extra vertical space, each row containing a display element whose RowExpand option is true will be allocated a share of the extra space; similarly, if there is extra horizontal space, each column containing a display element whose ColExpand option is true will be allocated a share of the extra space. In the event that there is not enough space, every row and column whose widgets all have their RowShrink or ColShrink options set to true will be shrunk. If this is not enough, all rows and columns are shrunk to fit into the available space. If a display element is not expanded, but its row or column is, its alignment is determined by the RowAlign and ColAlign options. Setting them to Left, Right, Top, Bottom, or Center will tell aptitude where to place the element within the row or column. For instance, the following configuration group creates a static element named 「Header」, which is three cells wide and will expand horizontally but not vertically. It has the same color as other header lines and uses the standard display format for header lines: Header Static { Row 0; Column 0; Width 3; Height 1; ColExpand true; ColAlign Center; RowAlign Center; Color ScreenHeaderColor; ColumnsCfg HEADER; }; Display layout option reference The following options are available for display elements: ColAlign alignment; alignment must be either Left, Right, or Center. If the row containing the current display element is wider than the element itself and ColExpand is false, the element will be placed within the row according to the value of alignment. If this option is not present, it defaults to Left. ColExpand true|false; If this option is set to true, the column containing this display element will be allocated a share of any extra horizontal space that is available. If this option is not present, it defaults to false. Color colorname; This option applies to Static elements. colorname is the name of a color (for instance, ScreenStatusColor) which should be used as the 「default」 color for this display element. If this option is not present, it defaults to DefaultWidgetBackground. ColShrink true|false; If this option is set to true on each element in a column and there is not enough horizontal space, the column will be shrunk as necessary to fit the available space. Note that a column may be shrunk even if ColShrink is false; it simply indicates that aptitude should try shrinking a particular column before shrinking other columns. If this option is not present, it defaults to false. Column column; Specifies the leftmost column containing this display element. Columns format; This option applies to Static display elements for which the ColumnsCfg option is not set. It sets the displayed contents of the status item; it is a format string as described in 「パッケージの表示方法のカスタマイズ」. ColumnsCfg HEADER|STATUS|name; This option applies to Static display elements. It sets the display format of the current element to the value of another configuration variable: if it is HEADER or STATUS, the options Aptitude::UI::Package-Header-Format and Aptitude::UI::Package-Status-Format, repectively, are used; otherwise, the option name is used. If this option is not present, the value of the Columns option is used to control the contents of the static item. Height height; Specifies the height of the current display element. PopUpDownKey command; This option applies to Description and Static display elements. command is the name of a keyboard command (for instance, ShowHideDescription). When this key is pressed, the display element will be hidden if it is visible, and displayed if it is hidden. PopUpDownLinked element; This option applies to Description and Static display elements. element is the name of a display element. When element is displayed, the current element will also be displayed; when element is hidden, the current element will also be hidden. Row row; Specifies the uppermost row containing this display element. RowAlign alignment; alignment must be either Top, Bottom, or Center. If the row containing the current display element is taller than the element itself and RowExpand is false, the element will be placed within the row according to the value of alignment. If this option is not present, it defaults to Top. RowExpand true|false; If this option is set to true, the row containing this display element will be allocated a share of any extra vertical space that is available. If this option is not present, it defaults to false. RowShrink true|false; If this option is set to true on each element in a row and there is not enough vertical space, the row will be shrunk as necessary to fit the available space. Note that a row may be shrunk even if RowShrink is false; it simply indicates that aptitude should try shrinking a particular row before shrinking other rows. If this option is not present, it defaults to false. Visible true|false; If set to false, this display element will initially be hidden. Presumably only useful in conjunction with PopUpDownKey and/or PopUpDownLinked. If this option is not present, it defaults to true. Width width; Specifies the width of the current display element. Configuration file reference 設定ファイルの書式 aptitude の設定ファイルの基本形は、オプションとその値のリストです。ファイ ルの各行は、「オプション 値;」という形式になっているべきです。例えば、設定 ファイルの次の行はオプション Aptitude::Theme を「Dselect」と設定します。 Aptitude::Theme "Dselect"; オプションに別のオプションを「含める」ことも可能です。そうするには、次のよ うに、オプションとその後のセミコロンとの間に中括弧を入れ、その中に別のオプ ションを書いてください。 Aptitude::UI { Package-Status-Format ""; Package-Display-Format ""; }; 別のオプションを含んだオプションをグループと呼ぶことがあります。実は、オプ ション名に現れる二重コロンは、本当はオプションの包含関係の省略表現です。つ まり、オプション Aptitude::UI::Default-Grouping はグループ Aptitude::UI に 含まれており、Aptitude::UI 自体もグループ Aptitude に含まれています。した がって、もしお望みであれば、このオプション Aptitude::UI::Default-Grouping は次のようにして "" に設定できます。 Aptitude { UI { Default-Grouping ""; }; }; 設定ファイルの書式についてさらに詳しく知りたければ、マニュアルページ apt.conf(5) を参照してください。 設定ファイルの場所 aptitude の設定は以下のソースから順に読まれます。 1. Configuration file options specified on the command-line. 2. ユーザの設定ファイル ~/.aptitude/config。このファイルは、ユーザが「オ プション」メニューの設定に変更を加えたときに上書きされます。 3. システムの設定ファイル /etc/apt/apt.conf。 4. The system configuration fragment files, /etc/apt/apt.conf.d/*. 5. The file specified by the APT_CONFIG environment variable (if any). 6. /usr/share/aptitude/aptitude-defaults 内に格納されているデフォルト値。 7. Default values built into aptitude. オプションを調べるときにこれらのソースは順に検索され、そのオプションに対し て値を与えるソースのうち最初に見つかったものが使用されます。例えば、あるオ プションを /etc/apt/apt.conf に設定すると、aptitude のそのオプションのデフ ォルト値は上書きされますが、~/.aptitude/config のユーザ設定は上書きされま せん。 Available configuration options The following configuration options are used by aptitude. Note that these are not the only available configuration options; options used by the underlying apt system are not listed here. See the manual pages apt(8) and apt.conf(5) for information on apt options. Option: APT::AutoRemove::RecommendsImportant デフォルト: true 説明: If this option is true, then aptitude will not consider packages to be unused (and thus will not automatically remove them) as long as any installed package recommends them, even if APT::Install-Recommends is false. For more information, see 「自動的にインストールされたパッケージの 管理」. Option: APT::AutoRemove::SuggestsImportant デフォルト: true 説明: If this option is true, then aptitude will not consider packages to be unused (and thus will not automatically remove them) as long as any installed package suggests them. For more information, see 「自動的にイン ストールされたパッケージの管理」. Option: APT::Get::List-Cleanup デフォルト: true 説明: A synonym for APT::List-Cleanup. If either of these options is set to false, aptitude will not delete old package list files after downloading a new set of package lists. Option: APT::List-Cleanup デフォルト: true 説明: A synonym for APT::Get::List-Cleanup. If either of these options is set to false, aptitude will not delete old package list files after downloading a new set of package lists. Option: APT::Install-Recommends デフォルト: true 説明: If this option is true and Aptitude::Auto-Install is true, then whenever you mark a package for installation, aptitude will also mark the packages it recommends for installation. Furthermore, if this option is true, aptitude will not consider packages to be unused (and thus will not automatically remove them) as long as any installed package reommends them. For more information, see 「自動的にインストールされたパッケージの管 理」 and 「Immediate dependency resolution」. Option: Aptitude::Allow-Null-Upgrade デフォルト: false 説明: Normally, if you try to start an install run when no actions will be performed, aptitude will print a warning and return to the package list. If this option is true, aptitude will continue to the preview screen whenever there are upgradable packages, rather than displaying a reminder about the アクション → 更新可能パッケージという印を添付 (U) command. Option: Aptitude::Always-Use-Safe-Resolver デフォルト: false 説明: If this option is true, aptitude's command-line actions will always use a 「safe」 dependency resolver, as if --safe-resolver had been passed on the command line. Option: Aptitude::Autoclean-After-Update デフォルト: false 説明: If this option is true, aptitude will clean up obsolete files (see アクション → 廃止されたファイルを一掃する) every time you update the package list. This option is similar to Aptitude::Clean-After-Install. Option: Aptitude::Auto-Fix-Broken デフォルト: true 説明: If this option is false, aptitude will ask for permission before attempting to fix any broken packages. Option: Aptitude::Auto-Install デフォルト: true 説明: If this option is true, aptitude will automatically attempt to fulfill the dependencies of a package when you mark a package to be installed or upgraded. Option: Aptitude::Auto-Install-Remove-Ok デフォルト: false 説明: If this option is true, aptitude will automatically remove conflicting packages when you mark a package to be installed or upgraded. Normally these conflicts are flagged and you must handle them manually. Option: Aptitude::Auto-Upgrade デフォルト: false 説明: If this option is true, aptitude will automatically flag all upgradable packages for upgrade when the program starts, as if you had issued the command アクション → 更新可能パッケージという印を添付 (U). Option: Aptitude::Clean-After-Install デフォルト: false 説明: If this option is true, aptitude will clean up all files in the package cache directory (see アクション → パッケージのキャッシュの消去) after successful installation of packages (or similar operations). This option is similar to Aptitude::Autoclean-After-Update. Option: Aptitude::CmdLine::Always-Prompt デフォルト: false 説明: In command-line mode, if this is set, aptitude will always prompt before starting to install or remove packages, even if the prompt would normally be skipped. This is equivalent to the -P command-line option. Option: Aptitude::CmdLine::Assume-Yes デフォルト: false 説明: In command-line mode, if this option is true, aptitude will act as if the user had answered 「yes」 to every prompt, causing most prompts to be skipped. This is equivalent to the -y command-line option. Option: Aptitude::CmdLine::Disable-Columns デフォルト: false 説明: If this option is enabled, the results of command-line searches (performed via aptitude search) will not be formatted into fixed-width columns or truncated to the screen width. This is equivalent to the --disable-columns command-line option. Option: Aptitude::CmdLine::Download-Only デフォルト: false 説明: In command-line mode, if this option is true, aptitude will download package files but not install them. This is equivalent to the -d command-line option. Option: Aptitude::CmdLine::Fix-Broken デフォルト: false 説明: In command-line mode, if this option is true, aptitude will be more aggressive when attempting to fix the dependencies of broken packages. This is equivalent to the -f command-line option. Option: Aptitude::CmdLine::Versions-Group-By デフォルト: Set to auto, none, package, or source-package to control whether and how the output of aptitude versions is grouped. Equivalent to the command-line option --group-by (see its documentation for more description of what the values mean). Option: Aptitude::CmdLine::Ignore-Trust-Violations デフォルト: false 説明: In command-line mode, causes aptitude to ignore the installation of untrusted packages. This is a synonym for APT::Get::AllowUnauthenticated. Option: Aptitude::CmdLine::Package-Display-Format デフォルト: %c%a%M %p# - %d# 説明: This is a format string, as described in 「パッケージの表示方法のカ スタマイズ」, which is used to display the results of a command-line search. This is equivalent to the -F command-line option. Option: Aptitude::CmdLine::Package-Display-Width デフォルト: 説明: This option gives the width in characters for which command-line search results should be formatted. If it is empty (the default; ie, ""), search results will be formatted for the current terminal size, or for an 80-column display if the terminal size cannot be determined. Option: Aptitude::CmdLine::Progress::Percent-On-Right デフォルト: false 説明: This option controls whether command-line progress indicators display the percentage on the left-hand side of the screen, in the same style as apt-get, or on the right-hand side (the default). This option does not affect download progress indicators. Option: Aptitude::CmdLine::Progress::Retain-Completed デフォルト: false 説明: If this value is false, then command-line progress indicators will be deleted and overwritten once the task they represent is completed. If it is true, then they will be left on the terminal. This option does not affect download progress indicators. Option: Aptitude::CmdLine::Request-Strictness デフォルト: 10000 説明: When run in command-line mode, if dependency problems are encountered, aptitude will add this value to the problem resolver score of each action that you explicitly request. Option: Aptitude::CmdLine::Resolver-Debug デフォルト: false 説明: In command-line mode, if this option is true, aptitude will print extremely verbose information while attempting to resolve broken dependencies. As the name suggests, this option is primarily meant to aid in debugging the problem resolver. Option: Aptitude::CmdLine::Resolver-Dump デフォルト: 説明: In command-line mode, if it is necessary to resolve broken dependencies and this option is set to the name of a writable file, the resolver state will be dumped to this file before any calculations are undertaken. Option: Aptitude::CmdLine::Resolver-Show-Steps デフォルト: false 説明: If this option is true, then a dependency solution will be displayed as a sequence of resolutions of individual dependencies; for instance, 「wesnoth depends upon wesnoth-data (= 1.2.4-1) -> installing wesnoth-data 1.2.4-1 (unstable)」. To toggle between the two display modes, press o at the prompt 「Accept this solution?」. Option: Aptitude::CmdLine::Show-Deps デフォルト: false 説明: In command-line mode, if this option is true, aptitude will display a brief summary of the dependencies (if any) relating to a package's state. This is equivalent to the -D command-line option. Option: Aptitude::CmdLine::Show-Size-Changes デフォルト: false 説明: In command-line mode, if this option is true, aptitude will display the expected change in the amount of space used by each package. This is equivalent to the -Z command-line option. Option: Aptitude::CmdLine::Show-Summary デフォルト: no-summary 説明: This option sets the default value of the command-line argument --show-summary. See the documentation of --show-summary for a list of the allowed values of this option and their meanings. Option: Aptitude::CmdLine::Show-Versions デフォルト: false 説明: In command-line mode, if this option is true, aptitude will display the version of a package that is being installed or removed. This is equivalent to the -V command-line option. Option: Aptitude::CmdLine::Show-Why デフォルト: false 説明: In command-line mode, if this option is true, aptitude will display the manually installed packages that require each automatically installed package, or the manually installed packages that cause a conflict with each automatically removed package. This is equivalent to the -W command-line option and displays the same information you can access via aptitude why or by pressing i in a package list. Option: Aptitude::CmdLine::Version-Display-Format デフォルト: %c%a%M %p# %t %i 説明: This is a format string, as described in 「パッケージの表示方法のカ スタマイズ」, which is used to display the output of aptitude versions. This is equivalent to the -F command-line option. Option: Aptitude::CmdLine::Versions-Show-Package-Names デフォルト: Set to always, auto, or never to control when package names are displayed in the output of aptitude versions. Equivalent to the command-line option --show-package-names (see its documentation for more description of what the values mean). Option: Aptitude::Safe-Resolver::Show-Resolver-Actions デフォルト: false 説明: If this option is enabled, then when the 「safe」 dependency resolver has been activated via --safe-resolver or because the command-line action is safe-upgrade, it will display a summary of the actions taken by the resolver before showing the installation preview. Equivalent to the command-line option --show-resolver-actions. Option: Aptitude::Screenshot::IncrementalLoadLimit デフォルト: 16384 説明: The minimum size in bytes at which aptitude will begin to display screenshots incrementally. Below this size, screenshots will not appear until they are fully downloaded. Option: Aptitude::Screenshot::Cache-Max デフォルト: 4194304 説明: The maximum number of bytes of screenshot data that aptitude will store in memory for screenshots that are not currently being displayed. The default is four megabytes. Option: Aptitude::CmdLine::Simulate デフォルト: false 説明: This option is deprecated; use Aptitude::Simulate instead. In command-line mode, causes aptitude to just display the actions that would be performed (rather than actually performing them); in the visual interface, causes aptitude to start in read-only mode regardless of whether you are root or not. This is equivalent to the -s command-line option. Option: Aptitude::CmdLine::Verbose デフォルト: 0 説明: This controls how verbose the command-line mode of aptitude is. Every occurrence of the -v command-line option adds 1 to this value. Option: Aptitude::CmdLine::Visual-Preview デフォルト: false 説明: If this option is true, aptitude will enter its visual interface to display the preview of an installation run and to download packages. Option: Aptitude::Delete-Unused デフォルト: true 説明: If this option is true, automatically installed packages which are no longer required will be automatically removed. For more information, see 「自動的にインストールされたパッケージの管理」. Option: Aptitude::Delete-Unused-Pattern デフォルト: 説明: Deprecated alias for Aptitude::Keep-Unused-Pattern. If Aptitude::Keep-Unused-Pattern is unset or set to an empty string, the value of this configuration option will override it. Otherwise, Aptitude::Delete-Unused-Pattern is ignored. Option: Aptitude::Display-Planned-Action デフォルト: true 説明: If this option is true, aptitude will display a preview screen before actually carrying out the actions you have requested. Option: Aptitude::Forget-New-On-Install デフォルト: false 説明: If this option is true, aptitude will clear the list of new packages whenever you install, upgrade, or remove packages, as if you had issued the command アクション → 新規パッケージ一覧の消去 (f). Option: Aptitude::Forget-New-On-Update デフォルト: false 説明: If this option is true, aptitude will clear the list of new packages whenever the package list is updated, as if you had issued the command ア クション → 新規パッケージ一覧の消去 (f). Option: Aptitude::Get-Root-Command デフォルト: su:/bin/su 説明: This option sets the external command that aptitude will use to switch to the root user (see 「root になる」). It has the form protocol:command. protocol must be either su or sudo; it determines how aptitude invokes the program when it wants to gain root privileges. If protocol is su, then 「command -c arguments」 is used to become root; otherwise, aptitude uses 「command arguments」. The first word in command is the name of the program that should be invoked; remaining words are treated as arguments to that program. Option: Aptitude::Ignore-Old-Tmp デフォルト: false 説明: Old versions of aptitude created a directory ~/.aptitude/.tmp which is no longer necessary. If the directory exists and Aptitude::Ignore-Old-Tmp is true, aptitude will ask you whether to remove this directory. This option is automatically set to true after you reply. On the other hand, if the directory does not exist, this option is set to false so that you will be notified if it reappears. Option: Aptitude::Ignore-Recommends-Important デフォルト: false 説明: In previous versions of aptitude, the setting Aptitude::Recommends-Important caused recommendations to be installed automatically, the same way that APT::Install-Recommends does today. If this option is set to false and Aptitude::Recommends-Important is also set to false, aptitude will set APT::Install-Recommends to false and set Aptitude::Ignore-Recommends-Important to true on startup. Option: Aptitude::Keep-Recommends デフォルト: false 説明: This is an obsolete option; use APT::AutoRemove::RecommendsImportant instead. Setting this option to true has the same effect as setting APT::AutoRemove::RecommendsImportant to true. Option: Aptitude::Keep-Suggests デフォルト: false 説明: This is an obsolete option; use APT::AutoRemove::SuggestsImportant instead. Setting this option to true has the same effect as setting APT::AutoRemove::SuggestsImportant to true. Option: Aptitude::Keep-Unused-Pattern デフォルト: 説明: If Aptitude::Delete-Unused is true, only unused packages which do not match this pattern (see 「Search patterns」) will be removed. If this option is set to an empty string (the default), all unused packages will be removed. Option: Aptitude::LockFile デフォルト: /var/lock/aptitude 説明: A file that will be fcntl-locked to ensure that at most one aptitude process can modify the cache at once. In normal circumstances, you should never need to modify this; it may be useful for debugging. Note: if aptitude complains that it cannot acquire a lock, this is not because the lock file needs to be deleted. fcntl locks are managed by the kernel and will be destroyed when the program holding them terminates; failure to acquire the lock means that another running program is using it! Option: Aptitude::Localize-Log デフォルト: false 説明: If this option is enabled, aptitude will use the user's locale for messages and dates in the log file; otherwise it is written in the "classic" locale, to avoid having the log file written in different languages (depending on the locales of the users running the program). Option: Aptitude::Log デフォルト: /var/log/aptitude 説明: If this is set to a nonempty string, aptitude will log the package installations, removals, and upgrades that it performs. If the value of Aptitude::Log begins with a pipe character (ie, 「|」), the remainder of its value is used as the name of a command into which the log will be piped: for instance, |mail -s 'Aptitude install run' root will cause the log to be emailed to root. To log to multiple files or commands, you may set this option to a list of log targets. Option: Aptitude::Logging::File デフォルト: 説明: If this is set to a nonempty string, aptitude will write logging messages to it; setting it to 「-」 causes logging messages to be printed to standard output. This differs from the setting Aptitude::Log: that file is used to log installations and removals, whereas this file is used to log program events, errors, and debugging messages (if enabled). This option is equivalent to the command-line argument --log-file. See also Aptitude::Logging::Levels. Option: Aptitude::Logging::Levels デフォルト: (empty) 説明: This option is a group whose members control which log messages are written. Each entry is either 「level」, to set the global log level (the log level of the root logger) to the given level, or 「category:level」, where category is the category of messages to modify (such as aptitude.resolver.hints.match) and level is the lowest log level of messages in that category that should be displayed. Valid log levels are 「fatal」, 「error」, 「warn」, 「info」, 「debug」, and 「trace」. The command-line option --log-level can be used to set or override any log level. Option: Aptitude::Parse-Description-Bullets デフォルト: true 説明: If this option is enabled, aptitude will attempt to automatically detect bulleted lists in package descriptions. This will generally improve how descriptions are displayed, but it is not entirely backwards-compatible; some descriptions might be formatted less attractively when this option is true than when it is false. Option: Aptitude::Pkg-Display-Limit デフォルト: 説明: The default filter applied to the package list; see 「Search patterns」 for details about its format. Option: Aptitude::ProblemResolver::Allow-Break-Holds デフォルト: false 説明: If this option is set to true, the problem resolver will consider breaking package holds or installing forbidden versions in order to resolve a dependency. If it is set to false, these actions will be rejected by default, although you can always enable them manually (see 「Resolving Dependencies Interactively」). Option: Aptitude::ProblemResolver::BreakHoldScore デフォルト: -300 説明: How much to reward or penalize solutions that change the state of a held package or install a forbidden version. Note that unless Aptitude::ProblemResolver::Allow-Break-Holds is set to true, the resolver will never break a hold or install a forbidden version unless it has explicit permission from the user. Option: Aptitude::ProblemResolver::Break-Hold-Level デフォルト: 50000 説明: The safety cost assigned to actions that break a hold set by the user (by upgrading a held package or by installing a forbidden version of a package). See 「Safety costs」 for a description of safety costs. Option: Aptitude::ProblemResolver::BrokenScore デフォルト: -100 説明: How much to reward or penalize prospective solutions based on the number of dependencies they break. For each dependency broken by a possible solution, this many points are added to its score; typically this should be a negative value. Option: Aptitude::ProblemResolver::CancelRemovalScore デフォルト: -300 説明: How much weight the problem resolver should give to not remove or purge a package requested to be removed or purged. Option: Aptitude::ProblemResolver::DefaultResolutionScore デフォルト: 400 説明: How much to reward or penalize prospective solutions based on how many 「default」 resolutions for currently unsatisfied dependencies they install. The default resolution is the resolution that 「apt-get install」 or the 「immediate dependency resolver」 would pick. The score is only applied for dependencies and recommendations whose targets are not currently installed. Option: Aptitude::ProblemResolver::Discard-Null-Solution デフォルト: true 説明: If this option is true, aptitude will never suggest cancelling all of your proposed actions in order to resolve a dependency problem. Option: Aptitude::ProblemResolver::EssentialRemoveScore デフォルト: -100000 説明: How much to reward or penalize solutions that remove an Essential package. Option: Aptitude::ProblemResolver::Remove-Essential-Level デフォルト: 60000 説明: The safety cost assigned to actions that remove an Essential package. See 「Safety costs」 for a description of safety costs. Option: Aptitude::ProblemResolver::ExtraScore デフォルト: 0 説明: Any version of a package whose Priority is 「extra」 will have this many points added to its score. Option: Aptitude::ProblemResolver::FullReplacementScore デフォルト: 500 説明: Removing a package and installing another package that fully replaces it (i.e., conflicts with it, replaces it, and provides it) is assigned this score. Option: Aptitude::ProblemResolver::FutureHorizon デフォルト: 50 説明: How many 「steps」 the resolver should run after finding the first solution. Although aptitude attempts to generate better solutions before worse solutions, sometimes it is unable to do so; this setting causes the resolver to briefly continue searching for a better solution before displaying its results, rather than stopping immediately after it finds the first solution. Option: Aptitude::ProblemResolver::Hints デフォルト: (empty) 説明: This option is a group whose members are used to configure the problem resolver. Each item in the group is a string describing an action that should be applied to one or more packages. The syntax for each hint, and the effect that hints have, may be found in 「Configuring resolver hints」. Option: Aptitude::ProblemResolver::ImportantScore デフォルト: 4 説明: Any version of a package whose Priority is 「important」 will have this many points added to its score. Option: Aptitude::ProblemResolver::Infinity デフォルト: 1000000 説明: A 「maximum」 score for potential solutions. If a set of actions has a score worse than -Infinity, it will be discarded immediately. Option: Aptitude::ProblemResolver::InstallScore デフォルト: -20 説明: How much weight the problem resolver should give to installing a package, if the package is not already going to be installed. Option: Aptitude::ProblemResolver::Keep-All-Level デフォルト: 10000 説明: The safety cost assigned to the single solution that cancels all of the actions selected by the user. See 「Safety costs」 for a description of safety costs. Option: Aptitude::ProblemResolver::KeepScore デフォルト: 0 説明: How much weight the problem resolver should give to keeping a package in its current state, if that package is not already going to be kept in its current state. Option: Aptitude::ProblemResolver::NonDefaultScore デフォルト: -40 説明: How much weight the problem resolver should give to installing a non-default version of the package (one that is not the current version and not the 「candidate version」). Option: Aptitude::ProblemResolver::Non-Default-Level デフォルト: 50000 説明: The safety cost assigned to actions that install non-default versions of a package. For instance, if version 5 of a package is installed, versions 6, 7, and 8 are available, and version 7 is the default version, then versions 6 and 8 will be given a safety cost that is at least this high. See 「Safety costs」 for a description of safety costs. Option: Aptitude::ProblemResolver::OptionalScore デフォルト: 1 説明: Any version of a package whose Priority is 「optional」 will have this many points added to its score. Option: Aptitude::ProblemResolver::PreserveAutoScore デフォルト: 0 説明: How much weight the problem resolver should give to preserving automatic installations or removals. Option: Aptitude::ProblemResolver::PreserveManualScore デフォルト: 20 説明: How much weight the problem resolver should give to preserving explicit user selections. Option: Aptitude::ProblemResolver::RemoveObsoleteScore デフォルト: 310 説明: How much weight the problem resolver should give to removing an obsolete package (if it is not already marked for removal). It should at least counter RemoveScore, because it will still be applied. Option: Aptitude::ProblemResolver::RemoveScore デフォルト: -300 説明: How much weight the problem resolver should give to removing a package (if it is not already marked for removal). Option: Aptitude::ProblemResolver::Remove-Level デフォルト: 10000 説明: The safety cost assigned to actions that remove a package. See 「Safety costs」 for a description of safety costs. Option: Aptitude::ProblemResolver::RequiredScore デフォルト: 8 説明: Any version of a package whose Priority is 「required」 will have this many points added to its score. Option: Aptitude::ProblemResolver::ResolutionScore デフォルト: 50 説明: In addition to all other scoring factors, proposed solutions that actually resolve all unsatisfied dependencies are awarded this many extra points. Option: Aptitude::ProblemResolver::Safe-Level デフォルト: 10000 説明: The safety cost assigned to actions that install the default version of a package, upgrade a package to its default version, or cancel installing or upgrading a package. Solutions assigned this cost could be generated by aptitude safe-upgrade. See 「Safety costs」 for a description of safety costs. Option: Aptitude::ProblemResolver::SolutionCost デフォルト: safety,priority 説明: Describes how to determine the cost of a solution. See 「Costs in the interactive dependency resolver」 for a description of what solution costs are, what they do, and the syntax used to specify them. If the cost cannot be parsed, an error is issued and the default cost is used instead. Option: Aptitude::ProblemResolver::StandardScore デフォルト: 2 説明: Any version of a package whose Priority is 「standard」 will have this many points added to its score. Option: Aptitude::ProblemResolver::StepLimit デフォルト: 5000 説明: The maximum number of 「steps」 which should be performed by the problem resolver on each attempt to find a solution to a dependency problem. Decreasing this number will make aptitude 「give up」 sooner; increasing it will permit the search for a solution to consume much more time and memory before it is aborted. Setting StepLimit to 0 will disable the problem resolver entirely. The default value is large enough to accomodate commonly encountered situations, while preventing aptitude from 「blowing up」 if an overly complicated problem is encountered. (note: this applies only to command-line searches; in the visual interface, the resolver will continue working until it reaches a solution) Option: Aptitude::ProblemResolver::StepScore デフォルト: -10 説明: How much to reward or penalize prospective solutions based on their length. For each action performed by a solution, these many points are added to its score. The larger this value is, the more the resolver tends to stick with its first choice rather than considering alternatives; this will cause it to produce a solution more quickly, but the solution might be of slightly lower quality than it would otherwise be. Option: Aptitude::ProblemResolver::Trace-Directory デフォルト: 説明: If this value is set, then each time the problem resolver produces a solution, a stripped-down version of the package state sufficient to reproduce that solution is written to the given file. If Aptitude::ProblemResolver::Trace-File is also set, the same information will also be written to the trace file. Trace directories are more transparent than trace files, and are more suitable for, e.g., including in source trees as test cases. Option: Aptitude::ProblemResolver::Trace-File デフォルト: 説明: If this value is set, then each time the problem resolver produces a solution, a stripped-down version of the package state sufficient to reproduce that solution is written to the given file. If Aptitude::ProblemResolver::Trace-Directory is also set, the same information will also be written to the trace directory. A trace file is simply a compressed archive of a trace directory; it will take less space than the trace directory and is suitable for transmission over a network. Option: Aptitude::ProblemResolver::UndoFullReplacementScore デフォルト: -500 説明: Installing a package and removing another package that fully replaces it (i.e., conflicts with it, replaces it, and provides it) is assigned this score. Option: Aptitude::ProblemResolver::UnfixedSoftScore デフォルト: -200 説明: How much to reward or penalize leaving a Recommends relationship unresolved. This should typically be less than RemoveScore, or aptitude will tend to remove packages rather than leaving their Recommendations unfixed. See 「Resolving Dependencies Interactively」 for details. Option: Aptitude::ProblemResolver::UpgradeScore デフォルト: 30 説明: How much weight the problem resolver should give to upgrading (or downgrading) a package to its candidate version, if the package was not already going to be upgraded. Option: Aptitude::Purge-Unused デフォルト: false 説明: If this option is true and Aptitude::Delete-Unused is also true, then packages which are unused will be purged from the system, removing their configuration files and perhaps other important data. For more information about which packages are considered to be 「unused」, see 「自 動的にインストールされたパッケージの管理」. THIS OPTION CAN CAUSE DATA LOSS! DO NOT ENABLE IT UNLESS YOU KNOW WHAT YOU ARE DOING! Option: Aptitude::Recommends-Important デフォルト: true 説明: This is an obsolete configuration option that has been superseded by APT::Install-Recommends. On startup, aptitude will copy Aptitude::Recommends-Important (if it exists) to APT::Install-Recommends and then clear Aptitude::Recommends-Important in your user configuration file. Option: Aptitude::Safe-Resolver::No-New-Installs デフォルト: false 説明: If this option is true, then when the 「safe」 dependency resolver has been activated via --safe-resolver or by using the safe-upgrade command-line action, the resolver will not be allowed to install packages that are not currently installed. Option: Aptitude::Safe-Resolver::No-New-Upgrades デフォルト: false 説明: If this option is enabled, then when the 「safe」 dependency resolver has been activated via --safe-resolver or by using the safe-upgrade command-line action, the resolver will not be allowed to resolve dependencies by upgrading packages. Option: Aptitude::Sections::Descriptions デフォルト: See $prefix/share/aptitude/section-descriptions 説明: This option is a group whose members define the descriptions displayed for each section when using the 「section」 package hierarchy grouping policy. Descriptions are assigned to section trees based on the last component of the name: for instance, a member of this group named 「games」 will be used to describe the Sections 「games」, 「non-free/games」, and 「non-free/desktop/games」. Within the text of section descriptions, the string 「\n」 will be replaced by a line-break, and the string 「''」 will be replaced by a double-quote character. Option: Aptitude::Sections::Top-Sections デフォルト: "main"; "contrib"; "non-free"; "non-US"; 説明: A configuration group whose elements are the names of the top-level archive sections. The 「topdir」, 「subdir」, and 「subdirs」 grouping policies use this list to interpret Section fields: if the first path element of a package's Section is not contained in this list, or if its Section has only one element, then the package will be grouped using the first member of this list as its first path element. For example, if the first member of Top-Sections is 「main」, then a package whose Section is 「games/arcade」 will be treated as if its Section field were 「main/games/arcade」. Option: Aptitude::Simulate デフォルト: false 説明: In command-line mode, causes aptitude to just display the actions that would be performed (rather than actually performing them); in the visual interface, causes aptitude to start in read-only mode regardless of whether you are root or not. This is equivalent to the -s command-line option. Option: Aptitude::Spin-Interval デフォルト: 500 説明: The number of milliseconds to delay in between updating the 「spinner」 that appears while the problem resolver is running. Option: Aptitude::Suggests-Important デフォルト: false 説明: This is an obsolete option; use APT::AutoRemove::SuggestsImportant instead. Setting this option to true has the same effect as setting APT::AutoRemove::SuggestsImportant to true. Option: Aptitude::Suppress-Read-Only-Warning デフォルト: false 説明: If this option is false, aptitude will display a warning the first time that you attempt to modify package states while aptitude is in read-only mode. Option: Aptitude::Theme デフォルト: 説明: The theme that aptitude should use; see 「テーマ」 for more information. Option: Aptitude::Track-Dselect-State デフォルト: true 説明: If this option is set to true, aptitude will attempt to detect when a change to a package's state has been made using dselect or dpkg: for instance, if you remove a package using dpkg, aptitude will not try to reinstall it. Note that this may be somewhat buggy. Option: Aptitude::UI::Advance-On-Action デフォルト: false 説明: If this option is set to true, changing a package's state (for instance, marking it for installation) will cause aptitude to advance the highlight to the next package in the current group. Option: Aptitude::UI::Auto-Show-Reasons デフォルト: true 説明: If this option is set to true, selecting a package which is broken or which appears to be causing other packages to be broken will cause the information area to automatically display some reasons why the breakage might be occuring. Option: Aptitude::UI::Default-Grouping デフォルト: filter(missing),status,section(subdirs,passthrough),section(topdir) 説明: Sets the default grouping policy used for package lists. See 「パッ ケージ階層構造のカスタマイズ」 for additional information on grouping policies. Option: Aptitude::UI::Default-Package-View デフォルト: 説明: This option is a group whose members define the default layout of aptitude's display. See 「Customizing the display layout」 for more information. Option: Aptitude::UI::Default-Preview-Grouping デフォルト: action 説明: Sets the default grouping policy used for preview screens. See 「パ ッケージ階層構造のカスタマイズ」 for additional information on grouping policies. Option: Aptitude::UI::Default-Sorting デフォルト: name 説明: The default sorting policy of package views. See 「パッケージの並べ 方のカスタマイズ」 for more information. Option: Aptitude::UI::Description-Visible-By-Default デフォルト: true 説明: When a package list is first displayed, the information area (which typically contains the long description of the current package) will be visible if this option is true and hidden if it is false. Option: Aptitude::UI::Exit-On-Last-Close デフォルト: true 説明: If this option is true, closing all the active views will quit aptitude; otherwise, aptitude will not exit until you issue the command ア クション → 終了 (Q). See 「複数の画面を用いた作業」 for more information. Option: Aptitude::UI::Fill-Text デフォルト: false 説明: If this option is true, aptitude will format descriptions so that each line is exactly the width of the screen. Option: Aptitude::UI::Flat-View-As-First-View デフォルト: false 説明: If this option is true, aptitude will display a flat view on startup instead of the default view. Option: Aptitude::UI::HelpBar デフォルト: true 説明: If this option is true, a line of information about important keystrokes will be displayed at the top of the screen. Option: Aptitude::UI::Incremental-Search デフォルト: true 説明: If this option is true, aptitude will perform 「incremental」 searches: as you type the search pattern, it will search for the next package matching what you have typed so far. Option: Aptitude::UI::InfoAreaTabs デフォルト: false 説明: If this option is true, aptitude will display tabs at the top of the information area (the pane at the bottom of the screen) describing the different modes the area can be set to. Option: Aptitude::UI::Keybindings デフォルト: 説明: This is a group whose members define the connections between keystrokes and commands in aptitude. For more information, see 「Customizing keybindings」. Option: Aptitude::UI::Menubar-Autohide デフォルト: false 説明: If this option is set to true, the menu bar will be hidden while it is not in use. Option: Aptitude::UI::Minibuf-Download-Bar デフォルト: false 説明: If this option is set to true, aptitude will use a less obtrusive mechanism to display the progress of downloads: a bar at the bottom of the screen will appear which displays the current download status. While the download is active, pressing q will abort it. Option: Aptitude::UI::Minibuf-Prompts デフォルト: false 説明: If this option is true, some prompts (such as yes/no and multiple-choice prompts) will be displayed at the bottom of the screen instead of in dialog boxes. Option: Aptitude::UI::New-Package-Commands デフォルト: true 説明: If this option is set to false, commands such as パッケージ → インス トール (+) will have the same deprecated behavior that they did in antique versions of aptitude. Option: Aptitude::UI::Package-Display-Format デフォルト: %c%a%M %p %Z %v %V 説明: This option controls the format string used to display packages in package lists. For more information on format strings, see 「パッケージの 表示方法のカスタマイズ」. Option: Aptitude::UI::Package-Header-Format デフォルト: %N %n @ %H #%B %u %o 説明: This option controls the format string used to display the header line of package lists (ie, the line that appears between the package list and the menu bar). For more information on format strings, see 「パッケー ジの表示方法のカスタマイズ」. Option: Aptitude::UI::Package-Status-Format デフォルト: %d 説明: This option controls the format string used to display the status line of package lists (ie, the line that appears between the package list and the information area). For more information on format strings, see 「 パッケージの表示方法のカスタマイズ」. Option: Aptitude::UI::Pause-After-Download デフォルト: OnlyIfError 説明: If this option is true, aptitude will display a message after it finishes downloading packages, asking you if you want to continue with the installation. If it is OnlyIfError, a message will only be displayed if a download failed. Otherwise, if the option is set to false, aptitude will immediately proceed to the next screen after completing a download. Option: Aptitude::UI::Preview-Limit デフォルト: 説明: The default filter applied to the preview screen; see 「Search patterns」 for details about its format. Option: Aptitude::UI::Prompt-On-Exit デフォルト: true 説明: If this option is true, aptitude will display a confirmation prompt before shutting down. Option: Aptitude::UI::Styles デフォルト: 説明: This is a configuration group whose contents define what textual styles aptitude uses to display information. For more information, see 「 テキストの色とスタイルのカスタマイズ」. Option: Aptitude::UI::ViewTabs デフォルト: true 説明: If this option is set to false, aptitude will not display 「tabs」 describing the currently active views at the top of the screen. Option: Aptitude::Warn-Not-Root デフォルト: true 説明: If this option is true, aptitude will detect when you need root privileges to do something, and ask you whether you want to switch to the root account if you aren't root already. See 「root になる」 for more information. Option: DebTags::Vocabulary デフォルト: /usr/share/debtags/vocabulary 説明: The location of the debtags vocabulary file; used to load in the package tag metadata. Option: Dir::Aptitude::state デフォルト: /var/lib/aptitude 説明: The directory in which aptitude's persistent state information is stored. Option: Quiet デフォルト: 0 説明: This controls the quietness of the command-line mode. Setting it to a higher value will disable more progress indicators. テーマ aptitude のテーマは、単に、「釣り合いのとれた」設定の集まりです。テーマは 、オプションのデフォルトの値を上書きすることで機能します。つまり、あるオプ ションがシステムの設定ファイルや個人用の設定ファイルで設定されていない場合 、aptitude は標準のデフォルト値を使用する前に、利用可能であれば現在のテー マの設定を使用します。 テーマは単に、Aptitude::Themes の下の、名前のついたグループです。このグル ープに含まれる各設定オプションは、グローバルな設定の中の対応するオプション を上書きします。例えば Dselect テーマが選択されている場合、オプション Aptitude::Themes::Dselect::Aptitude::UI::Package-Display-Format はオプショ ン Aptitude::UI::Package-Display-Format のデフォルト値を上書きします。 テーマを選択するには、例えば次のように、設定オプション Aptitude::Theme を テーマの名前に設定してください。 Aptitude::Theme Vertical-Split; 以下のテーマが aptitude に付属しており 、/usr/share/aptitude/aptitude-defaults に含まれています。 Dselect このテーマを用いると、aptitude の外観および振舞いが、長年使われてきた dselect パッケージマネージャにさらに似たものになります。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs --\ Installed Packages --\ Priority required --\ base - The Debian base system c base base-file 3.0.16 3.0.16 Debian base system miscellaneous fil c base base-pass 3.5.7 3.5.7 Debian base system master password a c base bash 2.05b-15 2.05b-15 The GNU Bourne Again SHell c base bsdutils 1:2.12-7 1:2.12-7 Basic utilities from 4.4BSD-Lite c base coreutils 5.0.91-2 5.0.91-2 The GNU core utilities c base debianuti 2.8.3 2.8.3 Miscellaneous utilities specific to c base diff 2.8.1-6 2.8.1-6 File comparison utilities base-files installed ; none required This package contains the basic filesystem hierarchy of a Debian system, and several important miscellaneous files, such as /etc/debian_version, /etc/host.conf, /etc/issue, /etc/motd, /etc/profile, /etc/nsswitch.conf, and others, and the text of several common licenses in use on Debian systems. Vertical-Split このテーマは表示を再配置します。現在選択中のパッケージの説明は、パッケージ 一覧の下に現れるのではなく右に表示されます。このテーマは非常に横幅の広いタ ーミナルとともに用いると便利です。おそらく、組み込みのパッケージの階層構造 を編集するときにも便利でしょう。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs aptitude 0.2.14.1 --\ Installed Packages Modern computers support the Advanced # --\ admin - Administrative utilities Configuration and Power Interface --\ main - The main Debian archive (ACPI) to allow intelligent power i acpid 1.0.3-19 1.0.3-19 management on your system and to query i alien 8.44 8.44 battery and configuration status. i anacron 2.3-9 2.3-9 i apt-show-vers 0.07 0.07 ACPID is a completely flexible, totally i A apt-utils 0.5.25 0.5.25 extensible daemon for delivering ACPI i apt-watch 0.3.2-2 0.3.2-2 events. It listens on a file i aptitude 0.2.14.1-2 0.2.14.1-2 (/proc/acpi/event) and when an event i at 3.1.8-11 3.1.8-11 occurs, executes programs to handle the i auto-apt 0.3.20 0.3.20 event. The programs it executes are i cron 3.0pl1-83 3.0pl1-83 configured through a set of i debconf 1.4.29 1.4.29 configuration files, which can be i debconf-i18n 1.4.29 1.4.29 dropped into place by packages or by i A debootstrap 0.2.39 0.2.39 the admin. i A deborphan 1.7.3 1.7.3 i debtags 0.16 0.16 In order to use this package you need a i A defoma 0.11.8 0.11.8 recent Kernel (=>2.4.7). This can be i discover 2.0.4-5 2.0.4-5 one including the patches on Utilities for using ACPI power management マインスイーパで遊ぶ パッケージのインストールや削除に飽きた場合のために、aptitude には、伝統的 なゲーム「マインスイーパ」の 1 つのバージョンが含まれています。開始するに は アクション → マインスイーパで遊ぶ を選択してください。初期状態のマイン スイーパのボードが現れます。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Minesweeper 10/10 mines 13 seconds +--------+ | | | | | | | | | | | | | | | | +--------+ スクリーンに現れた長方形の内部には 10 個の地雷が隠されています。あなたの目 的は、これらの地雷を 1 つも爆発させずに、直感・論理・運によってその位置を 決定することです! すべての地雷の位置を決定するには、地雷を含まない桝目をす べて掘り起こさなければいけません。そうすれば、どの桝目に地雷が含まれている かに関する重要な情報が得られるからです。しかし気をつけてください。地雷を含 む桝目を掘り起こしてその地雷を爆発させた瞬間、ゲームは終了してしまいます! 桝目を掘り起こす (そしてそこに地雷が隠されているかいないかを調べる) には、 矢印キーでその桝目を選択して Enter を押してください。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Minesweeper 10/10 mines 387 seconds +--------+ | 2......| | 2111...| | 1...| | 1111...| |11...111| |...113 | |1122 | | | +--------+ 御覧のとおり、このスクリーンショットでは、ボードの隠された (何も書かれてい ない) 領域の一部が見えるようになりました。. と書かれた桝目は、どの地雷にも 隣接していない桝目です。それ以外の桝目に書かれた数字は隣接する地雷の数を表 します。 地雷が埋まっている場所がわかっている場合、そこに「旗」を立ててかまいません 。旗を立てるには、埋まっていると思う桝目を選択して f を押してください。例 えば次のスクリーンショットで私は、ボードの左端の桝目が怪しそうだと疑うこと にしました……。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Minesweeper 9/10 mines 961 seconds +--------+ | 2......| | 2111...| | 1...| |F1111...| |11...111| |...113 | |1122 | | | +--------+ 御覧のとおり、選択した桝目に F が現れました。(もう一度 f を押して) 旗を取 り除かない限り、この桝目はたとえ偶然にでも掘り起こすことができません。ある 桝目に隣接する地雷すべて (例えば、前述の旗に隣接する、1 と書かれた桝目) に 旗を立てると、その桝目のまわりを「掃除」できます。これは、隣接する桝目すべ て (もちろん旗の立てられているもの以外) を掘り起こすためのショートカットに すぎません。例えば、前述の 1 のまわりを掃除すると次のようになります。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Minesweeper 9/10 mines 2290 seconds +--------+ | 2......| | 2111...| |221 1...| |F1111...| |11...111| |...113 | |1122 | | | +--------+ 幸運なことに (それは本当に幸運だったためなのでしょうか?)、地雷の位置に関す る私の推測は当たっていました。もし間違えていたら、その瞬間、私はゲームに負 けていたでしょう。 Actions Undo Package Search Options Views Help f10: Menu ?: Help q: Quit u: Update g: Download/Install/Remove Pkgs Minesweeper Minesweeper Lost in 2388 seconds +--------+ |^2......| |^2111...| |221^1...| |^1111...| |11...111| |...113^ | |1122* ^ | | ^ ^ ^| +--------+ ゲームに負けると、すべての地雷の位置が明らかにされます。不発に終わった地雷 はキャレット記号 (^) で表され、「踏んでしまった」地雷はアステリスク (*) で 表されます。 ══════════════════════════════════════════════════════════════════════════ ^[7] 嬉しいことに、この種の要望の数は、このガイドを最初に公開した後に急激 に減少しました。ガイドの公開と要望の数の減少という 2 つの出来事の間に関係 性があったのなら、これは嬉しい出来事です。 ^[8] これを「インストールの実行」という言葉で表すこともあります。しかしそ のような場合でも、パッケージのインストールだけでなく更新や削除をしてかまい ません。 ^[9] 上述のとおり、これは、アーカイブ内のパッケージがセキュアであるという 意味ではなく、ましてや悪意がないという意味でもありません。単にパッケージが 本物だということを示すにすぎません。 ^[10] More precisely: they will be removed when there is no path via Depends, PreDepends, or Recommends to them from a manually installed package. If APT::AutoRemove::SuggestsImportant is true, a Suggests relationship is also enough to keep a package installed. ^[11] Or when immediate resolution is disabled. ^[12] The package with the highest dpkg priority, not the package with the highest apt pin priority. ^[13] This limit was imposed because more complex cost structures could make it difficult to optimize the resolver. Future versions of the program might remove some of the restrictions if they turn out to be unnecessary. ^[14] aptitude will only treat the comma as special if there is a second argument, so (for instance) 「?name(apt,itude)」 searches for the string 「apt,itude」 in the Name field of packages. While this behavior is well-defined, it may be surprising; I recommend using quoted strings for any pattern that contains characters that could have a special meaning. ^[15] Characters with a special meaning include: 「+」, 「-」, 「.」, 「( 」, 「)」, 「|」, 「[」, 「]」, 「^」, 「$」, and 「?」. Note that some of these are also aptitude metacharacters, so if you want to type (for instance) a literal 「|」, it must be double-escaped: 「?description(\~|) 」 will match packages whose description contains a vertical bar character (「|」). ^[16] バックスラッシュエスケープ \\・\n・\t も利用可能です。 ^[17] Astute readers will note that this is essentially a way to explicitly name the variable in the λ-terms corresponding to the term. A typical term would have the form 「λ x . name-equals(x, pattern)」; giving this an explicit target makes x visible in the search language. ^[18] This is provided largely for symmetry with ?true. ^[19] タグづけは現在サポートされていません。このエスケープ表記は将来使用す るためのものです。 ^[20] ターミナルによっては、「黄色」の背景は実際には茶色に見えます。 第3章 aptitude frequently asked questions 「What ... is your name?」 「I am Arthur, King of the Britons.」 「What ... is your quest?」 「I seek the Holy Grail!」 「What ... is the airspeed velocity of an unladen swallow?」 「What do you mean? An African or a European swallow?」 「Huh? I ... I don't kn---AAAAAUUUGGGHH!」 -- Monty Python and the Holy Grail 3.1. どうしたら、名前を用いてパッケージをちょうど 1 つだけ見つけられます か? 3.2. どうしたら壊れたパッケージを見つけられますか? 3.3. I want to select text, why doesn't aptitude let me disable the mouse? 3.1. どうしたら、名前を用いてパッケージをちょうど 1 つだけ見つけられます か? 「Search patterns」で述べたように、パッケージを名前で検索する際に、入 力したテキストは実際には正規表現となります。したがって、検索パターン 「^名前$」を用いれば、名前という名前のパッケージだけがマッチします。 例えば、^apt$ と入力すると、(aptitude や synaptic ではなく) apt を見 つけることが可能です。また、^g\+\+$ と入力すると、(g++-2.95 や g++-3.0 ではなく) g++ を見つけることが可能です。 3.2. どうしたら壊れたパッケージを見つけられますか? コマンド 検索 → 壊れた依存関係を検索 (b) を使用してください。 3.3. I want to select text, why doesn't aptitude let me disable the mouse? Normally, you cannot select text in an xterm while a program running in that terminal (such as aptitude) is using the mouse. However, you can override this behavior and perform a selection by holding the Shift key down while you click on the terminal. 第4章 クレジット No-one remembers the singer. The song remains. -- Pratchett Terry [FAMILY Given], The Last Hero このセクションでは、aptitude が生まれてから生涯を終えるまでに同プログラム に貢献した人々の一部を記念します。 [注 注記 記] This section is presently rather incomplete and will likely be updated and expanded as time goes on (in particular, there are many missing translation credits due to the huge number of sources of translations ^[21]). If you think you should be on this list, please email <dburrows@debian.org> with an explanation of why you think so. Translations and internationalization ブラジル語訳 Andre Luis Lopes, Gustavo Silva 中国語訳 Carlos Z.F. Liu チェコ語訳 Miroslav Kure デンマーク語訳 Morten Brix Pedersen, Morten Bo Johansen オランダ語訳 Luk Claes フィンランド語訳 Jaakko Kangasharju フランス語訳 Martin Quinson, Jean-Luc Coulon ドイツ語訳 Sebastian Schaffert, Erich Schubert, Sebastian Kapfer, Jens Seidel イタリア語訳 Danilo Piazzalunga 日本語訳 Yasuo Eto, Noritada Kobayashi リトアニア語訳 Darius ?itkevicius ポーランド語訳 Michal Politowski ポルトガル語訳 Nuno Sénica, Miguel Figueiredo ノルウェー語訳 Håvard Korsvoll スペイン語訳 Jordi Malloch, Ruben Porras スウェーデン語訳 Daniel Nylander 最初の国際化 (i18n) 用パッチ Masato Taruishi 国際化 (i18n) のトリアージ・メンテナンス Christian Perrier ドキュメント ユーザマニュアル Daniel Burrows プログラミング プログラムの設計・実装 Daniel Burrows Support for the dpkg Breaks field Ian Jackson, Michael Vogt ══════════════════════════════════════════════════════════════════════════ ^[21] ChangeLog や ChangeLog が参照する Debian バグ追跡システムのバグ報告 、aptitude のリビジョン履歴を基にして、国際化 (i18n) への貢献者のほぼ完全 な一覧をまとめ上げることは可能でしょう。しかし、そうするには時間を大量に投 資する必要があり、そのような時間は現在ないのです。 Command-line reference ══════════════════════════════════════════════════════════════════════════ 目次 aptitude — パッケージマネージャの高レベルインタフェース aptitude-create-state-bundle — bundle the current aptitude state aptitude-run-state-bundle — unpack an aptitude state bundle and invoke aptitude on it 名前 aptitude — パッケージマネージャの高レベルインタフェース 概要 aptitude [options...] { autoclean | clean | forget-new | keep-all | update } aptitude [options...] { full-upgrade | safe-upgrade } [packages...] aptitude [options...] { build-dep | build-depends | changelog | download | forbid-version | hold | install | markauto | purge | reinstall | remove | show | showsrc | source | unhold | unmarkauto | versions } packages... aptitude extract-cache-subset output-directory packages... aptitude [オプション...] search パターン... aptitude [options...] { add-user-tag | remove-user-tag } tag packages... aptitude [options...] { why | why-not } [patterns...] package aptitude [-S fname] [ --autoclean-on-startup | --clean-on-startup | -i | -u ] aptitude help 説明 aptitude は Debian GNU/Linux のパッケージシステムに対するテキストベースの インタフェースです。 ユーザはパッケージの一覧を表示したり、パッケージのインストール・更新・削除 などといったパッケージ管理作業を行ったりできます。アクションはビジュアルイ ンタフェースとコマンドラインから行えます。 Command-line actions ハイフン (「-」) から始まらない最初の引数は、プログラムが行うアクションだ と見なされます。アクションがコマンドラインで与えられない場合、aptitude は ビジュアルモードで起動します。 以下のアクションが利用可能です。 install Install one or more packages. The packages should be listed after the 「install」 command; if a package name contains a tilde character (「~」) or a question mark (「?」), it will be treated as a search pattern and every package matching the pattern will be installed (see the section 「Search Patterns」 in the aptitude reference manual). To select a particular version of the package, append 「=version」 to the package name: for instance, 「aptitude install apt=0.3.1」. Similarly, to select a package from a particular archive, append 「/archive」 to the package name: for instance, 「aptitude install apt/experimental」. You cannot specify both an archive and a version for a package. 必ずしも、コマンドラインに連ねられたパッケージすべてがインストール対象でな ければいけないわけではありません。パッケージ名に「上書き指定子」を付記する と、そのパッケージに対して aptitude に別のことをさせることが可能です。例え ば、aptitude remove wesnoth+ とすると、wesnoth を削除ではなくインストール できます。以下の上書き指定子が利用可能です。 パッケージ+ パッケージ をインストールします。 If the package was not installed, it is marked as manually installed, and the dependencies newly installed are marked with the automatic flag. If the package or the dependencies were already installed, the automatic flag is preserved. See the section about automatic installations in the documentation for more information. パッケージ+M パッケージ をインストールし、その後すぐに、自動的にインストールされたとい う印をそれに添付します (パッケージ に依存するものがなくなった場合、そのパ ッケージはすぐに削除されてしまうことに注意してください)。 パッケージ- パッケージ を削除します。 パッケージ_ パッケージ を完全削除します。すなわち、パッケージ自体とそれに関連する設定 ファイルやデータファイルを削除します。 パッケージ= パッケージ を固定します。すなわち、今後どのようなインストール・更新・削除 を行っても、このパッケージは自動的には更新されません。 パッケージ: パッケージ を現在のバージョンに一時的に固定します。つまり、インストール・ 削除・更新をすべて取り消します。「hold」 (前述) とは異なり、このコマンドを 用いても将来パッケージが自動的に更新されなくなることはありません。 パッケージ&M 自動的にインストールされたという印を パッケージ に添付します。 パッケージ&m 手動でインストールされたという印を パッケージ に添付します。 package&BD Install the build-dependencies of a package. 特別な場合として、引数を与えずに「install」を実行すると、保存されているア クションや実行されていないアクションが実行されます。 [注 注記 記] Once you enter Y at the final confirmation prompt, the 「install」 command will modify aptitude's stored information about what actions to perform. Therefore, if you issue (e.g.) the command 「aptitude install foo bar」 on packages previously uninstalled, and then the installation fails once aptitude has started downloading and installing packages, you will need to run 「aptitude remove foo bar」 to go back to the previous state (and possibly undo installations or upgrades to other packages that were affected by the 「install」 action). remove, purge, reinstall These commands are the same as 「install」, but apply the named action to all packages given on the command line for which it is not overridden. 例えば、「aptitude remove '~ndeity'」とすると、「deity」を名前に含むパッケ ージがすべて削除されます。 build-depends, build-dep Satisfy the build-dependencies of a package. Each package name may be a source package, in which case the build dependencies of that source package are installed; otherwise, binary packages are found in the same way as for the 「install」 command, and the build-dependencies of the source packages that build those binary packages are satisfied. If the command-line parameter --arch-only is present, only architecture-dependent build dependencies (i.e., not Build-Depends-Indep or Build-Conflicts-Indep) will be obeyed. markauto, unmarkauto それぞれ、自動的にインストールされた、および手動でインストールされたという 印をパッケージに添付します。パッケージの指定は「install」コマンドとまった く同じ方法で行います。例えば「aptitude markauto '~slibs'」を実行すると、 「libs」セクションのパッケージすべてに、自動的にインストールされたという印 が添付されます。 自動的にインストールしたパッケージについてのさらに詳しい情報は、aptitude リファレンスマニュアルの「自動的にインストールしたパッケージの管理」セクシ ョンを参照してください。 hold, unhold, keep Mark packages to be on hold, remove this property, or set to keep in the current state. Packages are specified in exactly the same way as for the 「install」 command. For instance, 「aptitude hold '~e^dpkg$'」 will mark all packages coming from the source package 「dpkg」 to be on hold. The difference between hold and keep is that hold will cause a package to be ignored by future safe-upgrade or full-upgrade commands, while keep merely cancels any scheduled actions on the package. unhold will allow a package to be upgraded by future safe-upgrade or full-upgrade commands, without otherwise altering its state. keep-all 設定されていたアクションをすべてのパッケージについて取り消します。つまり、 インストール・削除・更新といった面倒な状態をもったあらゆるパッケージから、 そういった状態を取り除きます。 forget-new どのパッケージが「新規」かについての内部情報を消去します (ビジュアルモード で「f」を押すのと等価です)。 This command accepts package names or patterns as arguments. If the string contains a tilde character (「~」) or a question mark (「?」), it will be treated as a search pattern and every package matching the pattern will be considered (see the section 「Search Patterns」 in the aptitude reference manual). forbid-version Forbid a package from being upgraded to a particular version, while allowing automatic upgrades to future versions. This is useful for example to avoid a known broken version of a package, without having to set and clear manual holds. By default, aptitude will select the forbidden version to be the one which the package would normally be upgraded (the candidate version). This may be overridden by appending 「=version」 to the package name: for instance, 「aptitude forbid-version vim=1.2.3.broken-4」. To revert the action, 「aptitude install package」 will remove the ban. To remove the forbidden version without installing the candidate version, the current version should be appended: 「install package=version」. update apt 入手先から入手可能なパッケージの一覧を更新します (これは、「apt-get update」と等価です)。 safe-upgrade Upgrades installed packages to their most recent version. Installed packages will not be removed unless they are unused (see the section 「Managing Automatically Installed Packages」 in the aptitude reference manual). Packages which are not currently installed may be installed to resolve dependencies unless the --no-new-installs command-line option is supplied. If no packages are listed on the command line, aptitude will attempt to upgrade every package that can be upgraded. Otherwise, aptitude will attempt to upgrade only the packages which it is instructed to upgrade. The packages can be extended with suffixes in the same manner as arguments to aptitude install, so you can also give additional instructions to aptitude here; for instance, aptitude safe-upgrade bash dash- will attempt to upgrade the bash package and remove the dash package. It is sometimes necessary to remove one package in order to upgrade another; this command is not able to upgrade packages in such situations. Use the full-upgrade command to upgrade as many packages as possible. full-upgrade Upgrades installed packages to their most recent version, removing or installing packages as necessary. It also installs new Essential or Required packages. This command is less conservative than safe-upgrade and thus more likely to perform unwanted actions. However, it is capable of upgrading packages that safe-upgrade cannot upgrade. If no packages are listed on the command line, aptitude will attempt to upgrade every package that can be upgraded. Otherwise, aptitude will attempt to upgrade only the packages which it is instructed to upgrade. The packages can be extended with suffixes in the same manner as arguments to aptitude install, so you can also give additional instructions to aptitude here; for instance, aptitude full-upgrade bash dash- will attempt to upgrade the bash package and remove the dash package. [注 注記 記] This command was originally named dist-upgrade for historical reasons, and aptitude still recognizes dist-upgrade as a synonym for full-upgrade. search Searches for packages matching one of the patterns supplied on the command line. All packages which match any of the given patterns will be displayed; for instance, 「aptitude search '~N' edit」 will list all 「new 」 packages and all packages whose name contains 「edit」. For more information on search patterns, see the section 「Search Patterns」 in the aptitude reference manual. [注 注記 記] In the example above, 「aptitude search '~N' edit」 has two arguments after search and thus is searching for two patterns: 「~N」 and 「edit 」. As described in the search pattern reference, a single pattern composed of two sub-patterns separated by a space (such as 「~N edit 」) matches only if both patterns match. Thus, the command 「aptitude search '~N edit'」 will only show 「new」 packages whose name contains 「edit」. -F オプションを与えない場合、aptitude search の出力はこのようになります。 i apt - Advanced front-end for dpkg pi apt-build - frontend to apt to build, optimize and in cp apt-file - APT package searching utility -- command- ihA raptor-utils - Raptor RDF Parser utilities 検索結果はそれぞれ異なる行に一覧表示されます。各行の第 1 文字はパッケージ の現在の状態を示します。最もありふれた状態は、システムにパッケージが存在し た形跡がないという意味の p、パッケージが削除されたがシステムに設定ファイル が残っているという意味の c、パッケージがインストールされているという意味の i、パッケージが仮想パッケージであるという意味の v です。第 2 文字は、パッ ケージに対して行うよう保存されたアクションを示します (アクションが存在する 場合で、なければ空欄が表示されます)。最もありふれた状態は、パッケージがイ ンストール予定であるという意味の i、パッケージが削除予定であるという意味の d、パッケージおよびその設定ファイルが削除予定であるという意味の p です。第 3 文字が A である場合、そのパッケージは自動的にインストールされたものです 。 For a complete list of the possible state and action flags, see the section 「Accessing Package Information」 in the aptitude reference guide. To customize the output of search, see the command-line options -F and --sort. show Displays detailed information about one or more packages. If a package name contains a tilde character (「~」) or a question mark (「?」), it will be treated as a search pattern and all matching packages will be displayed (see the section 「Search Patterns」 in the aptitude reference manual). 饒舌レベルが 1 以上の場合 (つまり、コマンドラインに -v が 1 つ以上与えられ ている場合)、そのパッケージのすべてのバージョンについて情報が表示されます 。それ以外の場合は「バージョン候補」(「aptitude install」がダウンロードす るバージョン) に関する情報が表示されます。 You can display information about a different version of the package by appending =version to the package name; you can display the version from a particular archive or release by appending /archive or /release to the package name: for instance, /unstable or /sid. If either of these is present, then only the version you request will be displayed, regardless of the verbosity level. 饒舌レベルが 1 以上の場合、パッケージのアーキテクチャ・圧縮サイズ・ファイ ル名・md5sum の各フィールドが表示されます。饒舌レベルが 2 以上の場合、各ア ーカイブについて、そのアーカイブがもつ 1 つ以上の選択バージョンが一度ずつ 表示されます。 showsrc Displays detailed information about one or more source packages. This is a thin wrapper over apt(8). source Downloads one or more source packages. This is a thin wrapper over apt(8). versions Displays the versions of the packages listed on the command-line. $ aptitude versions wesnoth p 1:1.4.5-1 100 p 1:1.6.5-1 unstable 500 p 1:1.7.14-1 experimental 1 Each version is listed on a separate line. The leftmost three characters indicate the current state, planned state (if any), and whether the package was automatically installed; for more information on their meanings, see the documentation of aptitude search. To the right of the version number you can find the releases from which the version is available, and the pin priority of the version. If a package name contains a tilde character (「~」) or a question mark ( 「?」), it will be treated as a search pattern and all matching versions will be displayed (see the section 「Search Patterns」 in the aptitude reference manual). This means that, for instance, aptitude versions '~i' will display all the versions that are currently installed on the system and nothing else, not even other versions of the same packages. $ aptitude versions '~nexim4-daemon-light' Package exim4-daemon-light: i 4.71-3 100 p 4.71-4 unstable 500 Package exim4-daemon-light-dbg: p 4.71-4 unstable 500 If the input is a search pattern, or if more than one package's versions are to be displayed, aptitude will automatically group the output by package, as shown above. You can disable this via --group-by=none, in which case aptitude will display a single list of all the versions that were found and automatically include the package name in each output line: $ aptitude versions --group-by=none '~nexim4-daemon-light' i exim4-daemon-light 4.71-3 100 p exim4-daemon-light 4.71-4 unstable 500 p exim4-daemon-light-dbg 4.71-4 unstable 500 To disable the package name, pass --show-package-names=never: $ aptitude versions --show-package-names=never --group-by=none '~nexim4-daemon-light' i 4.71-3 100 p 4.71-4 unstable 500 p 4.71-4 unstable 500 In addition to the above options, the information printed for each version can be controlled by the command-line option -F. The order in which versions are displayed can be controlled by the command-line option --sort. To prevent aptitude from formatting the output into columns, use --disable-columns. add-user-tag, remove-user-tag Adds a user tag to or removes a user tag from the selected group of packages. If a package name contains a tilde (「~」) or question mark (「? 」), it is treated as a search pattern and the tag is added to or removed from all the packages that match the pattern (see the section 「Search Patterns」 in the aptitude reference manual). User tags are arbitrary strings associated with a package. They can be used with the ?user-tag(tag) search term, which will select all the packages that have a user tag matching tag. why, why-not Explains the reason that a particular package should or cannot be installed on the system. This command searches for packages that require or conflict with the given package. It displays a sequence of dependencies leading to the target package, along with a note indicating the installed state of each package in the dependency chain: $ aptitude why kdepim i nautilus-data Recommends nautilus i A nautilus Recommends desktop-base (>= 0.2) i A desktop-base Suggests gnome | kde | xfce4 | wmaker p kde Depends kdepim (>= 4:3.4.3) The command why finds a dependency chain that installs the package named on the command line, as above. Note that the dependency that aptitude produced in this case is only a suggestion. This is because no package currently installed on this computer depends on or recommends the kdepim package; if a stronger dependency were available, aptitude would have displayed it. In contrast, why-not finds a dependency chain leading to a conflict with the target package: $ aptitude why-not textopo i ocaml-core Depends ocamlweb i A ocamlweb Depends tetex-extra | texlive-latex-extra i A texlive-latex-extra Conflicts textopo If one or more patterns are present (in addition to the mandatory last argument, which should be a valid package name), then aptitude will begin its search at these patterns. That is, the first package in the chain it prints to explain why package is or is not installed, will be a package matching the pattern in question. The patterns are considered to be package names unless they contain a tilde character (「~」) or a question mark (「?」), in which case they are treated as search patterns (see the section 「Search Patterns」 in the aptitude reference manual). If no patterns are present, then aptitude will search for dependency chains beginning at manually installed packages. This effectively shows the packages that have caused or would cause a given package to be installed. [注 注記 記] aptitude why does not perform full dependency resolution; it only displays direct relationships between packages. For instance, if A requires B, C requires D, and B and C conflict, 「aptitude why-not D」 will not produce the answer 「A depends on B, B conflicts with C, and D depends on C」. By default aptitude outputs only the 「most installed, strongest, tightest, shortest」 dependency chain. That is, it looks for a chain that only contains packages which are installed or will be installed; it looks for the strongest possible dependencies under that restriction; it looks for chains that avoid ORed dependencies and Provides; and it looks for the shortest dependency chain meeting those criteria. These rules are progressively weakened until a match is found. If the verbosity level is 1 or more, then all the explanations aptitude can find will be displayed, in inverse order of relevance. If the verbosity level is 2 or more, a truly excessive amount of debugging information will be printed to standard output. This command returns 0 if successful, 1 if no explanation could be constructed, and -1 if an error occurred. clean 以前ダウンロードした .deb ファイルをパッケージキャッシュディレクトリ (通常 /var/cache/apt/archives) から削除します。 autoclean もうダウンロードできない、キャッシュされたパッケージを削除します。これによ って、完全に削除しないかぎりキャッシュが時間とともに肥大化してしまい制御で きなくなる、という事態を防げます。 changelog 指定されたソースパッケージまたはバイナリパッケージの各々について、Debian パッケージ更新履歴をダウンロードして表示します。 By default, the changelog for the version which would be installed with 「aptitude install」 is downloaded. You can select a particular version of a package by appending =version to the package name; you can select the version from a particular archive or release by appending /archive or /release to the package name (for instance, /unstable or /sid). download 指定されたパッケージの .deb ファイルをカレントディレクトリにダウンロードし ます。 This is a thin wrapper over apt(8). extract-cache-subset Copy the apt configuration directory (/etc/apt) and a subset of the package database to the specified directory. If no packages are listed, the entire package database is copied; otherwise only the entries corresponding to the named packages are copied. Each package name may be a search pattern, and all the packages matching that pattern will be selected (see the section 「Search Patterns」 in the aptitude reference manual). Any existing package database files in the output directory will be overwritten. Dependencies in binary package stanzas will be rewritten to remove references to packages not in the selected set. help 利用可能なコマンドとオプションを簡潔にまとめて表示します。 オプション 以上のアクションの振る舞いを変更するのに、以下のオプションが利用可能です。 どのオプションも全てのコマンドに使えますが、オプションによっては特定のコマ ンドに適用できず無視されます。 --add-user-tag tag For full-upgrade, safe-upgrade, forbid-version, hold, install, keep-all, markauto, unmarkauto, purge, reinstall, remove, unhold, and unmarkauto: add the user tag tag to all packages that are installed, removed, or upgraded by this command as if with the add-user-tag command. --add-user-tag-to tag,pattern For full-upgrade, safe-upgrade, forbid-version, hold, install, keep-all, markauto, unmarkauto, purge, reinstall, remove, unhold, and unmarkauto: add the user tag tag to all packages that match pattern as if with the add-user-tag command. The pattern is a search pattern as described in the section 「Search Patterns」 in the aptitude reference manual. For instance, aptitude safe-upgrade --add-user-tag-to "new-installs,?action(install)" will add the tag new-installs to all the packages installed by the safe-upgrade command. --allow-new-upgrades When the safe resolver is being used (i.e., --safe-resolver was passed, the action is safe-upgrade, or Aptitude::Always-Use-Safe-Resolver is set to true), allow the dependency resolver to install upgrades for packages regardless of the value of Aptitude::Safe-Resolver::No-New-Upgrades. --allow-new-installs Allow the safe-upgrade command to install new packages; when the safe resolver is being used (i.e., --safe-resolver was passed, the action is safe-upgrade, or Aptitude::Always-Use-Safe-Resolver is set to true), allow the dependency resolver to install new packages. This option takes effect regardless of the value of Aptitude::Safe-Resolver::No-New-Installs. --allow-untrusted Install packages from untrusted sources without prompting. You should only use this if you know what you are doing, as it could easily compromise your system's security. --disable-columns This option causes aptitude search and aptitude versions to output their results without any special formatting. In particular: normally aptitude will add whitespace or truncate search results in an attempt to fit its results into vertical 「columns」. With this flag, each line will be formed by replacing any format escapes in the format string with the corresponding text; column widths will be ignored. For instance, the first few lines of output from 「aptitude search -F '%p %V' --disable-columns libedataserver」 might be: disksearch 1.2.1-3 hp-search-mac 0.1.3 libbsearch-ruby 1.5-5 libbsearch-ruby1.8 1.5-5 libclass-dbi-abstractsearch-perl 0.07-2 libdbix-fulltextsearch-perl 0.73-10 As in the above example, --disable-columns is often useful in combination with a custom display format set using the command-line option -F. This corresponds to the configuration option Aptitude::CmdLine::Disable-Columns. -D, --show-deps For commands that will install or remove packages (install, full-upgrade, etc), show brief explanations of automatic installations and removals. これは設定オプション Aptitude::CmdLine::Show-Deps に相当します。 -d, --download-only 必要に応じてパッケージをパッケージキャッシュにダウンロードしますが、インス トールや削除はしません。デフォルトでは、パッケージキャッシュは /var/cache/apt/archives に保存されます。 これは設定オプション Aptitude::CmdLine::Download-Only に相当します。 -F フォーマット, --display-format フォーマット Specify the format which should be used to display output from the search and versions commands. For instance, passing 「%p %v %V」 for format will display a package's name, followed by its currently installed version and its candidate version (see the section 「Customizing how packages are displayed」 in the aptitude reference manual for more information). The command-line option --disable-columns is often useful in combination with -F. For search, this corresponds to the configuration option Aptitude::CmdLine::Package-Display-Format; for versions, this corresponds to the configuration option Aptitude::CmdLine::Version-Display-Format. -f コマンドラインで要求されたアクションを無視することになってもなお、破損パッ ケージの依存関係を修正しようとします。 これは設定項目 Aptitude::CmdLine::Fix-Broken に相当します。 --full-resolver When package dependency problems are encountered, use the default 「full」 resolver to solve them. Unlike the 「safe」 resolver activated by --safe-resolver, the full resolver will happily remove packages to fulfill dependencies. It can resolve more situations than the safe algorithm, but its solutions are more likely to be undesirable. This option can be used to force the use of the full resolver even when Aptitude::Always-Use-Safe-Resolver is true. --group-by grouping-mode Control how the versions command groups its output. The following values are recognized: • archive to group packages by the archive they occur in (「stable」, 「unstable」, etc). If a package occurs in several archives, it will be displayed in each of them. • auto to group versions by their package unless there is exactly one argument and it is not a search pattern. • none to display all the versions in a single list without any grouping. • package to group versions by their package. • source-package to group versions by their source package. • source-version to group versions by their source package and source version. This corresponds to the configuration option Aptitude::CmdLine::Versions-Group-By. -h, --help 簡潔なヘルプメッセージを表示します。help アクションと同一です。 --log-file=file If file is a nonempty string, log messages will be written to it, except that if file is 「-」, the messages will be written to standard output instead. If this option appears multiple times, the last occurrence is the one that will take effect. This does not affect the log of installations that aptitude has performed (/var/log/aptitude); the log messages written using this configuration include internal program events, errors, and debugging messages. See the command-line option --log-level to get more control over what gets logged. This corresponds to the configuration option Aptitude::Logging::File. --log-level=level, --log-level=category:level --log-level=level causes aptitude to only log messages whose level is level or higher. For instance, setting the log level to error will cause only messages at the log levels error and fatal to be displayed; all others will be hidden. Valid log levels (in descending order) are off, fatal, error, warn, info, debug, and trace. The default log level is warn. --log-level=category:level causes messages in category to only be logged if their level is level or higher. --log-level may appear multiple times on the command line; the most specific setting is the one that takes effect, so if you pass --log-level=aptitude.resolver:fatal and --log-level=aptitude.resolver.hints.match:trace, then messages in aptitude.resolver.hints.parse will only be printed if their level is fatal, but all messages in aptitude.resolver.hints.match will be printed. If you set the level of the same category two or more times, the last setting is the one that will take effect. This does not affect the log of installations that aptitude has performed (/var/log/aptitude); the log messages written using this configuration include internal program events, errors, and debugging messages. See the command-line option --log-file to change where log messages go. This corresponds to the configuration group Aptitude::Logging::Levels. --log-resolver Set some standard log levels related to the resolver, to produce logging output suitable for processing with automated tools. This is equivalent to the command-line options --log-level=aptitude.resolver.search:trace --log-level=aptitude.resolver.search.tiers:info. --no-new-installs Prevent safe-upgrade from installing any new packages; when the safe resolver is being used (i.e., --safe-resolver was passed or Aptitude::Always-Use-Safe-Resolver is set to true), forbid the dependency resolver from installing new packages. This option takes effect regardless of the value of Aptitude::Safe-Resolver::No-New-Installs. This mimics the historical behavior of apt-get upgrade. --no-new-upgrades When the safe resolver is being used (i.e., --safe-resolver was passed or Aptitude::Always-Use-Safe-Resolver is set to true), forbid the dependency resolver from installing upgrades for packages regardless of the value of Aptitude::Safe-Resolver::No-New-Upgrades. --no-show-resolver-actions Do not display the actions performed by the 「safe」 resolver, overriding any configuration option or earlier --show-resolver-actions. -O 順序, --sort 順序 Specify the order in which output from the search and versions commands should be displayed. For instance, passing 「installsize」 for order will list packages in order according to their size when installed (see the section 「Customizing how packages are sorted」 in the aptitude reference manual for more information). Prepending the order keyword with a tilde character (~) reverses the order from ascending to descending. The default sort order is name,version. -o キー=値 設定ファイルオプションを直接設定します。例えば -o Aptitude::Log=/tmp/my-log を用いると、aptitude のアクションを /tmp/my-log に記録できます。設定ファイルオプションについてのさらに詳しい情報は 、aptitude リファレンスマニュアルの「設定ファイルリファレンス」セクション を参照してください。 -P, --prompt Always display a prompt before downloading, installing or removing packages, even when no actions other than those explicitly requested will be performed. これは設定オプション Aptitude::CmdLine::Always-Prompt に相当します。 --purge-unused If Aptitude::Delete-Unused is set to 「true」 (its default), then in addition to removing each package that is no longer required by any installed package, aptitude will also purge them, removing their configuration files and perhaps other important data. For more information about which packages are considered to be 「unused」, see the section 「Managing Automatically Installed Packages」 in the aptitude reference manual. THIS OPTION CAN CAUSE DATA LOSS! DO NOT USE IT UNLESS YOU KNOW WHAT YOU ARE DOING! This corresponds to the configuration option Aptitude::Purge-Unused. -q[=n], --quiet[=n] すべての進行状況を逐一表示させず、したがって出力を記録可能にします。プログ ラムの出力をより少なくするために、このオプションを何回も繰り返し与えてもか まいません。しかし apt-get とは異なり、aptitude では、-q を複数回与えた場 合は -y を与えることはできません。 任意で =n をつけると、出力の少なさを直接設定できます (例えば 、/etc/apt/apt.conf の設定を上書きするのに利用できます)。このときプログラ ムは、-q をちょうど n 回与えたときのように振る舞います。 -R, --without-recommends Do not treat recommendations as dependencies when installing new packages (this overrides settings in /etc/apt/apt.conf and ~/.aptitude/config). Packages previously installed due to recommendations will not be removed. This corresponds to the pair of configuration options APT::Install-Recommends and APT::AutoRemove::RecommendsImportant. -r, --with-recommends 新しいパッケージをインストールする際に、推奨を依存関係として扱います (これ は、/etc/apt/apt.conf および ~/.aptitude/config の設定を上書きします)。 This corresponds to the configuration option APT::Install-Recommends --remove-user-tag tag For full-upgrade, safe-upgrade forbid-version, hold, install, keep-all, markauto, unmarkauto, purge, reinstall, remove, unhold, and unmarkauto: remove the user tag tag from all packages that are installed, removed, or upgraded by this command as if with the add-user-tag command. --remove-user-tag-from tag,pattern For full-upgrade, safe-upgrade forbid-version, hold, install, keep-all, markauto, unmarkauto, purge, reinstall, remove, unhold, and unmarkauto: remove the user tag tag from all packages that match pattern as if with the remove-user-tag command. The pattern is a search pattern as described in the section 「Search Patterns」 in the aptitude reference manual. For instance, aptitude safe-upgrade --remove-user-tag-from "not-upgraded,?action(upgrade)" will remove the not-upgraded tag from all packages that the safe-upgrade command is able to upgrade. -s, --simulate コマンドラインモードで、通常なら実行されるアクションを、実際には実行せずに 表示します。これには root 権限は要りません。ビジュアルインタフェースでは、 使用者が root であるかないかに関わらず、常に読み取り専用モードでキャッシュ を開きます。 これは設定オプション Aptitude::Simulate に相当します。 --safe-resolver When package dependency problems are encountered, use a 「safe」 algorithm to solve them. This resolver attempts to preserve as many of your choices as possible; it will never remove a package or install a version of a package other than the package's default candidate version. It is the same algorithm used in safe-upgrade; indeed, aptitude --safe-resolver full-upgrade is equivalent to aptitude safe-upgrade. Because safe-upgrade always uses the safe resolver, it does not accept the --safe-resolver flag. This option is equivalent to setting the configuration variable Aptitude::Always-Use-Safe-Resolver to true. --schedule-only パッケージの状態を変化させるコマンドに対して、操作をその場では実行せずに、 将来実行するよう設定します。引数を与えずに aptitude install を実行すると、 設定されたアクションを実際に行うことができます。これは、ビジュアルモードで 相当する選択を行ってからプログラムを正常に終了させるのと等価です。 例えば、aptitude --schedule-only install evolution を実行すると、evolution パッケージを後でインストールするよう設定できます。 --show-package-names when Controls when the versions command shows package names. The following settings are allowed: • always: display package names every time that aptitude versions runs. • auto: display package names when aptitude versions runs if the output is not grouped by package, and either there is a pattern-matching argument or there is more than one argument. • never: never display package names in the output of aptitude versions. This option corresponds to the configuration item Aptitude::CmdLine::Versions-Show-Package-Names. --show-resolver-actions Display the actions performed by the 「safe」 resolver and by safe-upgrade. When executing the command safe-upgrade or when the option --safe-resolver is present, aptitude will display a summary of the actions performed by the resolver before printing the installation preview. This is equivalent to the configuration option Aptitude::Safe-Resolver::Show-Resolver-Actions. --show-summary[=MODE] Changes the behavior of 「aptitude why」 to summarize each dependency chain that it outputs, rather than displaying it in long form. If this option is present and MODE is not 「no-summary」, chains that contain Suggests dependencies will not be displayed: combine --show-summary with -v to see a summary of all the reasons for the target package to be installed. MODE can be any one of the following: 1. no-summary: don't show a summary (the default behavior if --show-summary is not present). 2. first-package: display the first package in each chain. This is the default value of MODE if it is not present. 3. first-package-and-type: display the first package in each chain, along with the strength of the weakest dependency in the chain. 4. all-packages: briefly display each chain of dependencies leading to the target package. 5. all-packages-with-dep-versions: briefly display each chain of dependencies leading to the target package, including the target version of each dependency. This option corresponds to the configuration item Aptitude::CmdLine::Show-Summary; if --show-summary is present on the command-line, it will override Aptitude::CmdLine::Show-Summary. 例12 Usage of --show-summary --show-summary used with -v to display all the reasons a package is installed: $ aptitude -v --show-summary why foomatic-db Packages requiring foomatic-db: cupsys-driver-gutenprint foomatic-db-engine foomatic-db-gutenprint foomatic-db-hpijs foomatic-filters-ppds foomatic-gui kde printconf wine $ aptitude -v --show-summary=first-package-and-type why foomatic-db Packages requiring foomatic-db: [Depends] cupsys-driver-gutenprint [Depends] foomatic-db-engine [Depends] foomatic-db-gutenprint [Depends] foomatic-db-hpijs [Depends] foomatic-filters-ppds [Depends] foomatic-gui [Depends] kde [Depends] printconf [Depends] wine $ aptitude -v --show-summary=all-packages why foomatic-db Packages requiring foomatic-db: cupsys-driver-gutenprint D: cups-driver-gutenprint D: cups R: foomatic-filters R: foomatic-db-engine D: foomatic-db foomatic-filters-ppds D: foomatic-filters R: foomatic-db-engine D: foomatic-db kde D: kdeadmin R: system-config-printer-kde D: system-config-printer R: hal-cups-utils D: cups R: foomatic-filters R: foomatic-db-engine D: foomatic-db wine D: libwine-print D: cups-bsd R: cups R: foomatic-filters R: foomatic-db-engine D: foomatic-db foomatic-db-engine D: foomatic-db foomatic-db-gutenprint D: foomatic-db foomatic-db-hpijs D: foomatic-db foomatic-gui D: python-foomatic D: foomatic-db-engine D: foomatic-db printconf D: foomatic-db $ aptitude -v --show-summary=all-packages-with-dep-versions why foomatic-db Packages requiring foomatic-db: cupsys-driver-gutenprint D: cups-driver-gutenprint (>= 5.0.2-4) D: cups (>= 1.3.0) R: foomatic-filters (>= 4.0) R: foomatic-db-engine (>= 4.0) D: foomatic-db (>= 20090301) foomatic-filters-ppds D: foomatic-filters R: foomatic-db-engine (>= 4.0) D: foomatic-db (>= 20090301) kde D: kdeadmin (>= 4:3.5.5) R: system-config-printer-kde (>= 4:4.2.2-1) D: system-config-printer (>= 1.0.0) R: hal-cups-utils D: cups R: foomatic-filters (>= 4.0) R: foomatic-db-engine (>= 4.0) D: foomatic-db (>= 20090301) wine D: libwine-print (= 1.1.15-1) D: cups-bsd R: cups R: foomatic-filters (>= 4.0) R: foomatic-db-engine (>= 4.0) D: foomatic-db (>= 20090301) foomatic-db-engine D: foomatic-db foomatic-db-gutenprint D: foomatic-db foomatic-db-hpijs D: foomatic-db foomatic-gui D: python-foomatic (>= 0.7.9.2) D: foomatic-db-engine D: foomatic-db (>= 20090301) printconf D: foomatic-db --show-summary used to list a chain on one line: $ aptitude --show-summary=all-packages why aptitude-gtk libglib2.0-data Packages requiring libglib2.0-data: aptitude-gtk D: libglib2.0-0 R: libglib2.0-data -t リリース, --target-release リリース Set the release from which packages should be installed. For instance, 「aptitude -t experimental ...」 will install packages from the experimental distribution unless you specify otherwise. This will affect the default candidate version of packages according to the rules described in apt_preferences(5). これは設定項目 APT::Default-Release に相当します。 -V, --show-versions パッケージのどのバージョンがインストールされるか表示します。 これは設定オプション Aptitude::CmdLine::Show-Versions に相当します。 -v, --verbose いくつかのコマンド (例えば show) が付加的な情報を表示するようにします。さ らに詳しい情報を得るために、このオプションを何回も繰り返し与えてもかまいま せん。 これは設定オプション Aptitude::CmdLine::Verbose に相当します。 --version aptitude のバージョンや、そのコンパイル方法に関する情報を表示します。 --visual-preview コマンドラインからパッケージのインストールや削除を行うときに、通常のプロン プトを表示する代わりに、ビジュアルインタフェースを立ち上げてそのプレビュー 画面を表示します。 -W, --show-why In the preview displayed before packages are installed or removed, show which manually installed package requires each automatically installed package. For instance: $ aptitude --show-why install mediawiki ... The following NEW packages will be installed: libapache2-mod-php5{a} (for mediawiki) mediawiki php5{a} (for mediawiki) php5-cli{a} (for mediawiki) php5-common{a} (for mediawiki) php5-mysql{a} (for mediawiki) When combined with -v or a non-zero value for Aptitude::CmdLine::Verbose, this displays the entire chain of dependencies that lead each package to be installed. For instance: $ aptitude -v --show-why install libdb4.2-dev The following NEW packages will be installed: libdb4.2{a} (libdb4.2-dev D: libdb4.2) libdb4.2-dev The following packages will be REMOVED: libdb4.4-dev{a} (libdb4.2-dev C: libdb-dev P<- libdb-dev) This option will also describe why packages are being removed, as shown above. In this example, libdb4.2-dev conflicts with libdb-dev, which is provided by libdb-dev. This argument corresponds to the configuration option Aptitude::CmdLine::Show-Why and displays the same information that is computed by aptitude why and aptitude why-not. -w 幅, --width 幅 Specify the display width which should be used for output from the search and versions commands (in the command line). By default and when the output is seen directly in a terminal, the terminal width is used. When the output is redirected or piped, a very large "unlimited" line width is used, and this option is ignored. これは設定オプション Aptitude::CmdLine::Package-Display-Width に相当します 。 -y, --assume-yes yes/no プロンプトが表示されたときにユーザが「yes」と入力したと仮定します。 特に、パッケージをインストール・更新・削除するときに現れるプロンプトを隠し ます。必須パッケージの削除などといった「危険な」アクションに対するプロンプ トはそのまま表示され続けます。このオプションは -P を上書きします。 これは設定オプション Aptitude::CmdLine::Assume-Yes に相当します。 -Z インストール・更新・削除される各パッケージがどの程度のディスク領域を使用ま たは解放するかを表示します。 これは設定オプション Aptitude::CmdLine::Show-Size-Changes に相当します。 以下のオプションがプログラムのビジュアルモードに適用できますが、これらは主 に内部で使用するためのものです。あなたがこれらを自分で使う必要は、通常はあ りません。 --autoclean-on-startup Deletes old downloaded files when the program starts (equivalent to starting the program and immediately selecting Actions → Clean obsolete files). You cannot use this option and 「--clean-on-startup」, 「-i」, or 「-u」 at the same time. --clean-on-startup Cleans the package cache when the program starts (equivalent to starting the program and immediately selecting Actions → Clean package cache). You cannot use this option and 「--autoclean-on-startup」, 「-i」, or 「-u」 at the same time. -i Displays a download preview when the program starts (equivalent to starting the program and immediately pressing 「g」). You cannot use this option and 「--autoclean-on-startup」, 「--clean-on-startup」, or 「-u」 at the same time. -S ファイル名 標準の状態ファイルではなく ファイル名 から拡張状態情報をロードします。 -u Begins updating the package lists as soon as the program starts. You cannot use this option and 「--autoclean-on-startup」, 「--clean-on-startup」, or 「-i」 at the same time. 環境変数 HOME If $HOME/.aptitude exists, aptitude will store its configuration file in $HOME/.aptitude/config. Otherwise, it will look up the current user's home directory using getpwuid(2) and place its configuration file there. PAGER 「aptitude changelog」が呼び出されたときに、この環境変数が設定されていると 、aptitude は更新履歴を表示するのにそれを用います。設定されていない場合の デフォルトは more です。 TMP TMPDIR が設定されていなく TMP が設定されている場合、aptitude は TMP に一時 ファイルを保存します。そうでない場合は /tmp に保存します。 TMPDIR この環境変数で示される一時ディレクトリに aptitude は一時ファイルを保存しま す。TMPDIR が設定されていない場合、TMP が使用されます。TMP も設定されてい ない場合、aptitude は /tmp を使用します。 Files /var/lib/aptitude/pkgstates The file in which stored package states and some package flags are stored. /etc/apt/apt.conf, /etc/apt/apt.conf.d/*, ~/.aptitude/config The configuration files for aptitude. ~/.aptitude/config overrides /etc/apt/apt.conf. See apt.conf(5) for documentation of the format and contents of these files. See also apt-get(8), apt(8), aptitude-doc-言語 パッケージの /usr/share/doc/aptitude/html/言語/index.html ══════════════════════════════════════════════════════════════════════════ 名前 aptitude-create-state-bundle — bundle the current aptitude state 概要 aptitude-create-state-bundle [options...] output-file 説明 [注 注記 記] This command is mostly for internal use and bug reporting in exceptional cases, it is not intended for end-users under normal circumstances. aptitude-create-state-bundle produces a compressed archive storing the files that are required to replicate the current package archive state. The following files and directories are included in the bundle: • $HOME/.aptitude • /var/lib/aptitude • /var/lib/apt • /var/cache/apt/*.bin • /etc/apt • /var/lib/dpkg/status The output of this program can be used as an argument to aptitude-run-state-bundle(1). オプション --force-bzip2 Override the autodetection of which compression algorithm to use. By default, aptitude-create-state-bundle uses bzip2(1) if it is available, and gzip(1) otherwise. Passing this option forces the use of bzip2 even if it doesn't appear to be available. --force-gzip Override the autodetection of which compression algorithm to use. By default, aptitude-create-state-bundle uses bzip2(1) if it is available, and gzip(1) otherwise. Passing this option forces the use of gzip even if bzip2 is available. --help Print a brief usage message, then exit. --print-inputs Instead of creating a bundle, display a list of the files and directories that the program would include if it generated a bundle. File format The bundle file is simply a tar(1) file compressed with bzip2(1) or gzip(1), with each of the input directory trees rooted at 「.」. See also aptitude-run-state-bundle(1), aptitude(8), apt(8) ══════════════════════════════════════════════════════════════════════════ 名前 aptitude-run-state-bundle — unpack an aptitude state bundle and invoke aptitude on it 概要 aptitude-run-state-bundle [options...] input-file [ program [arguments...]] 説明 [注 注記 記] This command is mostly for internal use and bug reporting in exceptional cases, it is not intended for end-users under normal circumstances. aptitude-run-state-bundle unpacks the given aptitude state bundle created by aptitude-create-state-bundle(1) to a temporary directory, invokes program on it with the supplied arguments, and removes the temporary directory afterwards. If program is not supplied, it defaults to aptitude(8). オプション The following options may occur on the command-line before the input file. Options following the input file are presumed to be arguments to aptitude. --append-args Place the options that give the location of the state bundle at the end of the command line when invoking program, rather than at the beginning (the default is to place options at the beginning). --help Display a brief usage summary. --prepend-args Place the options that give the location of the state bundle at the beginning of the command line when invoking program, overriding any previous --append-args (the default is to place options at the beginning). --no-clean Do not remove the unpacked state directory after running aptitude. You might want to use this if, for instance, you are debugging a problem that appears when aptitude's state file is modified. When aptitude finishes running, the name of the state directory will be printed so that you can access it in the future. This option is enabled automatically by --statedir. --really-clean Delete the state directory after running aptitude, even if --no-clean or --statedir was supplied. --statedir Instead of treating the input file as a state bundle, treat it as an unpacked state bundle. For instance, you can use this to access the state directory that was created by a prior run with --no-clean. --unpack Unpack the input file to a temporary directory, but don't actually run aptitude. See also aptitude-create-state-bundle(1), aptitude(8), apt(8)