Gentoolkit
Gentoolkit は、Gentoo システムと、特に Portage の管理を容易にするためのツールセットです。
Gentoo はユニークなディストリビューションであり、他のシステムにはないような詳細が一部に存在します。Gentoo の使用を助けるために開発された多くのツールが寄贈され、app-portage/gentoolkit にまとめられています。
Gentoolkit は、ユーザーのパッケージ管理や彼らのシステムで起こっている事の追跡を補助するためのツールを含んでいます。多くのユーザー - 特にシステムをしばしばアップデートするユーザー - は Gentoolkit をインストールしておくことで恩恵を受けるでしょう。
Gentoolkit のコマンドは man ページを同梱しています。各コマンドの完全なドキュメンテーションについては、"man <command>" を実行してください。
インストール
Emerge
root #
emerge --ask app-portage/gentoolkit
euse
euse は make.conf での USE フラグを、直接ファイルを編集することなく、セット (無効化/有効化) するために使用されます。また、フラグのステータス (有効/無効)、フラグの種類 (グローバル/ローカル) など、USE フラグについての詳細な情報を得るためにも使用されます。
USE フラグの詳細については USE Flags を参照してください。完全なヘルプとすべてのオプションについては euse -h をご覧ください。
呼び出し
user $
euse --help
euse (0.5.1-r1) Syntax: euse <option> [suboptions] [useflaglist] Options: -h, --help - show this message -V, --version - show version information -i, --info - show descriptions for the given useflags -I, --info-installed - show descriptions for the given useflags and their current impact on the installed system -g, --global - show only global use flags (suboption) -l, --local - show only local use flags (suboption) -a, --active - show currently active useflags and their origin -E, --enable - enable the given useflags -D, --disable - disable the given useflags -R, --remove - remove all references to the given flags from make.conf and package.use to revert to default settings -P, --prune - alias for --remove -p, --package - used with -E, -D, and -R to apply to a specific package only Notes: euse currently works for global flags defined in make.globals, make.defaults, make.conf, use.force, and use.mask and local flags defined in package.use and individual package ebuilds. It might have issues with cascaded profiles. If multiple options are specified only the last one will be used.
USE フラグを表示する
euse -a コマンドは現在有効な USE フラグと、それがどこで有効化されたかを表示します。
euse はフラグがセットされているか否か、またフラグがセットされている場所を表示するために 7 つの列を使用します。大文字はセットされていること、小文字はセットされていないことを示します:
- +/-: 有効か否か
- "E": 環境変数 (Environment) でセットされている
- "C": make.Conf でセットされている
- "D": make.Defaults でセットされれている
- "G": make.Globals でセットされている
- "F": use.force でセットされている
- "m": use.mask で反転されている
すべての場所で有効化されている値は [+ECDGFm]
、すべての場所で無効化されている値は [-ecdgfM]
、すべての場所で設定されていない値は [- ]
のようになります。
euse -a の出力例 (省略されています):
user $
euse -a
[...] flac [+ D ] fortran [+ D ] fuse [- ] (fuse) gbm [- ] (archive) gdbm [+ D ] gif [+ D ] gnutls [- ] (gnutls) gpm [+ D ] gtk [+ D ] gui [+ D ] hdri [+ C ] heif [+ C ] hpcups [+ C ] hwaccel [- ] (hwaccel) iconv [+ D ] [...]
同様に、有効なグローバルUSEフラグを表示するには euse -a -g コマンドが使用されます。euse -a -l コマンドは有効なローカルUSEフラグについて同様にします。-g
や -l
は euse のサブオプションであり、正しく動作するにはこれらの前に(-a
のような)オプションが必要です。
USE フラグをセット、アンセットする
euse は USE フラグをセット、アンセット、または make.conf から削除することができます。このために使われるコマンドは euse -E flagname (フラグを有効化)、euse -D flagname (フラグを無効化)、そして euse -P flagname (フラグを削除、あるいは"除去") です。
euse -E や euse -D コマンドそれ自体を(フラグなしで)使用してはいけません。 /etc/portage/make.conf 内ですべてのUSEフラグをセット/アンセットしてしまいます。バックアップが /etc/portage/make.conf.euse_backup に保存されはしますが、euse -E や euse -D を使用する際は注意を払ってください!
USE フラグを有効化する
-E
オプションを用いて USE フラグを有効化します。
root #
euse -E 3dfx
/etc/portage/make.conf was modified, a backup copy has been placed at /etc/portage/make.conf.euse_backup
コマンドが実行された後の /etc/portage/make.conf ファイルはこのようになります:
make.conf
3dfx USEフラグを有効化した後USE="alsa acpi apache2 -arts cups cdr crypt cscope -doc fbcon \ firefox gd gif gimpprint gnome gpm gstreamer gtkhtml imlib \ innodb -java javascript jpeg libg++ libwww mad mbox md5sum \ mikmod mmx motif mpeg mpeg4 mysql ncurses nvidia \ ogg odbc offensive opengl pam pdflib perl png python \ quicktime readline sdl spell sse ssl svga tcltk tiff truetype usb \ vanilla X xosd xv xvid x86 zlib 3dfx"
USE フラグを無効化する
-D
オプションを用いて USE フラグを無効化します。
root #
euse -D 3dfx
/etc/portage/make.conf was modified, a backup copy has been placed at /etc/portage/make.conf.euse_backup
コマンド実行後の /etc/portage/make.conf:
make.conf
3dfx USEフラグを無効化した後USE="alsa acpi apache2 -arts cups cdr crypt cscope -doc fbcon \ firefox gd gif gimpprint gnome gpm gstreamer gtkhtml imlib \ innodb -java javascript jpeg libg++ libwww mad mbox md5sum \ mikmod mmx motif mpeg mpeg4 mysql ncurses nvidia \ ogg odbc offensive opengl pam pdflib perl png python \ quicktime readline sdl spell sse ssl svga tcltk tiff truetype usb \ vanilla X xosd xv xvid x86 zlib -3dfx"
euse はフラグを /etc/portage/make.conf から除去せず、
-
(マイナス) をフラグの前に追加してフラグをアンセットします。フラグを削除するには-P
(prune) オプションを使用してください。あるいはテキストエディタを使用して手動でファイルを更新してください。無効になっているUSEフラグは、make.confに存在しないフラグとは異なります。無効になっているUSEフラグは積極的に機能を無効にしようとしますが、リストにフラグが載っていない場合、パッケージの管理者が設定している既定の値 - 有効か無効かのいずれか - が使用されます。
USE フラグ (の設定) を削除する
USE フラグを削除するには-P
(purge) オプションを使用します。
root #
euse -P 3dfx
コマンド実行後の/etc/portage/make.confファイルの例:
make.conf
3dfx USE フラグを無効化した後USE="alsa acpi apache2 -arts cups cdr crypt cscope -doc fbcon \ firefox gd gif gimpprint gnome gpm gstreamer gtkhtml imlib \ innodb -java javascript jpeg libg++ libwww mad mbox md5sum \ mikmod mmx motif mpeg mpeg4 mysql ncurses nvidia \ ogg odbc offensive opengl pam pdflib perl png python \ quicktime readline sdl spell sse ssl svga tcltk tiff truetype usb \ vanilla X xosd xv xvid x86 zlib"
そのほかのツール
revdep-rebuild
このツールを、一般的用途のために実行する必要はありません。Portageの機能であるpreserve-libsによって、元々の目的はもはや時代遅れのものとなっています。今のこのツールの主な目的は、開発者が実行手順を提示した場合の特定のライブラリのためのABIの変更です。
このツールはGentooのリバース依存関係を再構築します。これは依存パッケージの更新の結果壊れたパッケージを探すため、インストールされている ebuild をスキャンします。それらのパッケージをユーザーのために自動的にemergeすることもできますが、一定のパッケージは現在インストールされている依存関係の下では正しく動作しないこともあり、こうした場合にはその壊れたパッケージをより最近のバージョンにアップグレードしなければなりません。
revdep-rebuildはフラグをemergeに渡すので、--pretendフラグを使用して何が再度emergeされるのか事前に確認することができます。
user $
revdep-rebuild -p
* Configuring search environment for revdep-rebuild * Checking reverse dependencies * Packages containing binaries and libraries broken by a package update * will be emerged. * Collecting system binaries and libraries * Generated new 1_files.rr * Collecting complete LD_LIBRARY_PATH * Generated new 2_ldpath.rr * Checking dynamic linking consistency [ 48% ] * broken /usr/lib/gstreamer-0.10/libgsttaglib.la (requires /usr/lib/libtag.la) [ 64% ] * broken /usr/lib/libgdkglext-x11-1.0.la (requires /usr/lib/libGLU.la) [ 67% ] * broken /usr/lib/libgtkglext-x11-1.0.la (requires /usr/lib/libGLU.la) [ 85% ] * broken /usr/lib/python2.6/site-packages/gtk-2.0/gtk/gdkgl/_gdkgl.la (requires /usr/lib/libGLU.la) * broken /usr/lib/python2.6/site-packages/gtk-2.0/gtk/gtkgl/_gtkgl.la (requires /usr/lib/libGLU.la) [ 97% ] * broken /usr/qt/3/lib/libqt-mt.la (requires -lpng) [ 100% ] * Generated new 3_broken.rr * Assigning files to packages * /usr/lib/gstreamer-0.10/libgsttaglib.la -> media-plugins/gst-plugins-taglib * /usr/lib/libgdkglext-x11-1.0.la -> x11-libs/gtkglext * /usr/lib/libgtkglext-x11-1.0.la -> x11-libs/gtkglext * /usr/lib/python2.6/site-packages/gtk-2.0/gtk/gdkgl/_gdkgl.la -> dev-python/pygtkglext * /usr/lib/python2.6/site-packages/gtk-2.0/gtk/gtkgl/_gtkgl.la -> dev-python/pygtkglext * /usr/qt/3/lib/libqt-mt.la -> x11-libs/qt * Generated new 4_raw.rr and 4_owners.rr * Cleaning list of packages to rebuild * Generated new 4_pkgs.rr * Assigning packages to ebuilds * Generated new 4_ebuilds.rr * Evaluating package order * Generated new 5_order.rr * All prepared. Starting rebuild emerge --oneshot --pretend dev-python/pygtkglext:0 media-plugins/gst-plugins-taglib:0.10 x11-libs/gtkglext:0 x11-libs/qt:3 These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] media-plugins/gst-plugins-taglib-0.10.17 [ebuild R ] x11-libs/gtkglext-1.2.0 [ebuild R ] x11-libs/qt-3.3.8b-r2 [ebuild R ] dev-python/pygtkglext-1.1.0 * Now you can remove -p (or --pretend) from arguments and re-run revdep-rebuild.
パッケージを再ビルドするには revdep-rebuild を -p
フラグなしで実行します。これで、リストされたパッケージが再度emergeされます。
eread
eread はバージョン2.1以降の Portage によって生成されるelogファイルを表示するシンプルなユーティリティーです。elogファイルの保存は、2つの変数を /etc/portage/make.conf でセットすることで有効化できます:
make.conf
elogを有効化するPORTAGE_ELOG_CLASSES="log" PORTAGE_ELOG_SYSTEM="save"
これは elog メッセージを保存する唯一の方法です。Portage の elog システムがどのように動作するかについての詳細は Portage Handbook 内の適切なページを参照してください。
elog を思うように設定できたら、eread を実行してログファイルを表示します。
user $
eread
This is a list of portage log items. Choose a number to view that file or type q to quit. 1) app-portage:gentoolkit-0.2.4_pre2:20070320-000256.log 2) app-portage:gentoolkit-0.2.4_pre2:20070320-000258.log 3) app-portage:gentoolkit-0.2.4_pre2:20070320-000319.log 4) app-portage:gentoolkit-0.2.3:20070320-000408.log Choice?
番号を選択すると PAGER 環境変数で指定されているページングプログラムを使用してファイルが表示されます。PAGER がセットされていない場合には less が使用されます。PAGER 環境変数は eselect (pager
モジュール)を使用してセットできます。
elog アイテムを表示した後、ファイルを削除するかどうか尋ねられます。
eclean
eclean は古いソースファイルや古いバイナリパッケージをシステムから削除するツールです。
パッケージをビルド・インストールする際にはソースファイルがダウンロードされ DISTDIR 、通常は /var/cache/distfiles に保存されます。これらは、定期的に掃除しないと時間とともに数ギガバイトのデータが蓄積してしまうこともあります。ユーザーは、eclean-distを実行して DISTDIR のソースファイルをクリーンアップする必要があります。
quickpkg や FEATURES="buildpkg"
を使用してインストール済みパッケージのアーカイブを作成することができます。それらのアーカイブされたパッケージは PKGDIR、通常は /var/cache/binpkgs に保管されます。それらがもはや不要になったり古すぎたりする場合、eclean-pkg を実行してそれらを PKGDIR から削除することができます。システムにあるすべてのバイナリパッケージは最新のバージョンのみにしておくのがよいでしょう。
eclean についての詳細や不要なデータのないシステムを維持するための豆知識については、man eclean を読むか、eclean の記事を参照してください。
関連項目
- Equery — Portage における一般的な操作をより簡単にするためのツール
- Eclean — リポジトリのソースファイルやバイナリパッケージを削除するツールです。
- Epkginfo — a tool used to display package metadata information.
- Q applets — C で書かれた小さくて素早い Portage クエリ (query) ユーティリティーのコレクションです。
- Useful Portage tools — ebuild リポジトリから入手できる Gentoo 固有の、特に Portage のための、システム管理ツールのリストを提供します。
This page is based on a document formerly found on our main website gentoo.org.
The following people contributed to the original document: Matt Butcher, John P. Davis, Erwin, Shyam Mani, Xavier Neys, Karl Trygve, José Luis Rivero, Joshua Saddler, Douglas Anderson
They are listed here because wiki history does not allow for any external attribution. If you edit the wiki article, please do not add yourself here; your contributions are recorded on each article's associated history page.