ACCEPT_KEYWORDS
ACCEPT_KEYWORDS 変数では、パッケージマネージャーにebuildのどの KEYWORDS 値を受け入れさせるかを設定します。この変数は、 stable か testing のいずれかをデフォルトとして選択するために使用されます。
どこで変数を設定するか?
この変数は、通常は プロファイル によって自動設定されます。しかし、推奨されることではありませんが、 /etc/portage/make.conf 内では システム全体に対して 、 /etc/portage/package.accept_keywords 内では パッケージ単位で 、またコマンドライン上では emerge 実行単位で さえも、変数を上書きすることが可能です。
ACCEPT_KEYWORDS 変数をコマンドラインで上書きすること、例えば ACCEPT_KEYWORDS=<キーワード> emerge -av <パッケージ名> のようなコマンドを使うことは、一般的には悪い方法です。なぜなら、この方法では変数が恒久的には保持されないので、その後、パッケージマネージャーが思わぬ動作をすることがあるからです。
stable と unstable のキーワード
多くのプロファイルでの
ACCEPT_KEYWORDS
のデフォルト値は、
amd64
や
arm
のように、そのアーキテクチャのみになります。これらの場合、パッケージマネージャーは
KEYWORDS
にそのアーキテクチャが含まれている ebuild のみをインストール対象として受け付けます。まだ本稼働に向いていない ebuild を使いたいユーザーは、そのアーキテクチャ名の最初に
~
を以下のようにつけてください。
ACCEPT_KEYWORDS="~amd64"
ACCEPT_KEYWORDS はインクリメンタルな変数なので、testing のキーワード ( ~amd64 ) を追加する時は、stable のキーワード ( amd64 ) を指定するべきではありません。
システム全体について設定する以外にも、 package.accept_keywords のファイル(またはディレクトリ)で、パッケージごとに設定する方法もあります。
# games
games-fps/doomsday ~amd64
さらに package.accept_keywords では、 ACCEPT_KEYWORDS 変数の通常の値の他に、3種の特別な値が利用可能です。 [1] :
-
*— そのパッケージにつき、どれかのアーキテクチャで stable になっているものを有効 -
~*— そのパッケージにつき、どれかのアーキテクチャでテスト中 (unstable) 以上になっているものを有効 -
**— そのパッケージは全て有効 ( KEYWORDS 値を一切無視)
最後の選択肢は、ライブパッケージのバージョン(SVN/Git/Mercurial パッケージバージョン)のために有用です。ライブのebuildは、 KEYWORDS 変数を持っていないためです。
~ arch と ~* の挙動は異なります: ~ arch は arch を含みますが、~* は * を含みません。あるパッケージの、いずれかのアーキテクチャで stable または unstable としてマークされている最新のバージョンを使用するためには、"* ~*" を指定してください。
関連項目
- KEYWORDS — KEYWORDS 変数は、その ebuild がどの アーキテクチャ 上で安定しているか、あるいはまだテスト段階にあるかを表します。
- ナレッジベース: 特定のパッケージに対してキーワードを許可する
- ナレッジベース: すべてのパッケージに対してキーワードを許可する
参照
- ↑ Portageのマニュアル (2015-01-30 版以降)参照