ハンドブック:AMD64/Portage/カスタムツリー

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page Handbook:AMD64/Portage/CustomTree and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎日本語 • ‎한국어 • ‎polski • ‎русский • ‎українська • ‎中文(中国大陆)‎
AMD64 ハンドブック
インストール
インストールについて
メディアの選択
ネットワーク設定
ディスクの準備
stage3のインストール
Gentooベースシステムのインストール
カーネルの設定
システムの設定
ツールのインストール
ブートローダの設定
締めくくり
Gentooの操作
Portageについて
USEフラグ
Portageの機能
Initスクリプトシステム
環境変数
Portageの操作
ファイルとディレクトリ
変数
ソフトウェアブランチの併用
追加ツール
カスタムPortageツリー
高度な機能
ネットワーク設定
はじめに
高度な設定
モジュール式ネットワーク
無線
機能の追加
動的な管理


Gentoo リポジトリのサブセットを使用する

パッケージやカテゴリを除外する

あるカテゴリ/パッケージを選択的にアップデートし、他のカテゴリ/パッケージを無視することができます。これは emerge --sync ステップの間に rsync にカテゴリ/パッケージを除外させることによって達成できます。

除外パターンを含むファイルの名前を /etc/portage/make.confPORTAGE_RSYNC_EXTRA_OPTS 変数で定義します:

FILE /etc/portage/make.conf除外ファイルを定義する
PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"
FILE /etc/portage/rsync_excludesすべてのゲームを除外する
games-*/*

ただし、これは依存関係の問題につながるかもしれないことに注意してください。新しい許可されたパッケージが、新しい除外されたパッケージに依存しているかもしれないためです。

非公式の ebuild を追加する

カスタムリポジトリを定義する

Gentoo リポジトリを通じて公式に利用可能でない ebuild を Portage に使用させることができます。サードパーティーの ebuild を格納する新しいディレクトリ(たとえば /usr/local/portage)を作成します。Gentoo の公式リポジトリと同じディレクトリ構造を使用してください!

root #mkdir -p /usr/local/portage/{metadata,profiles}
root #chown -R portage:portage /usr/local/portage

次に、リポジトリ用に実用的な名前を選びましょう。次の例では "localrepo" を名前に使っています:

root #echo 'localrepo' > /usr/local/portage/profiles/repo_name

Portage に、リポジトリマスターが Gentoo のメインリポジトリであること、(このリポジトリはrsync サーバー、git ミラー、あるいはその他のリポジトリソースで裏付けられているわけではないので)リポジトリを自動的に同期しないことを通知します:

FILE /usr/local/portage/metadata/layout.conf
masters = gentoo
auto-sync = false

最後に、/etc/portage/repos.conf の中にリポジトリ設定ファイルを作成してローカルシステムのリポジトリを有効にします。このファイルは Portage にローカルリポジトリが見つけられる場所を通知します:

FILE /etc/portage/repos.conf/localrepo.conf
[localrepo]
location = /usr/local/portage

複数のオーバーレイを扱う

複数のオーバーレイで開発を行ったり、Gentoo リポジトリに送る前にパッケージをテストしたり、あるいは単にさまざまなソースからの非公式 ebuild を使用したいパワーユーザーのために、app-portage/layman パッケージが layman を提供しています。これはユーザーがオーバーレイリポジトリを最新の状態に保つのを補助するツールです。

Alternatively, install app-eselect/eselect-repository to utilize the native synchronization in Portage. See also Eselect/Repository

eselect-repository

Adding repositories is simple with this tool.

For instance, to enable the hardened-development overlay:

root #eselect repository enable hardened-development
Updating of overlays added with this methods happens naturally with:
root #emerge --sync

最初に Overlays User Guide で示されているように layman のインストールと設定を行い、それからご希望のリポジトリを layman -a で追加します。

たとえば、hardened-development オーバーレイを有効にするには:

root #layman -a hardened-development

layman を通じていくつのリポジトリが使用されているかに関わらず、以下のコマンドでそれらすべてのリポジトリを更新できます:

root #layman -S

オーバーレイの取扱いについての詳細は man layman や、前にリンクした layman/overlay ユーザーガイドを読んでください。

Portage で管理されていないソフトウェア

Portage を自分で管理しているソフトウェアと共に使用する

時々、Portage でソフトウェアタイトルを提供できるにも関わらず、Portage にプロセスを自動化させることなくソフトウェアを個別に設定、インストール、メンテナンスしたい場合があります。既知の例はカーネルソースと Nvidia ドライバーです。Portage に特定のパッケージがシステムに手動でインストールされていることを知らせる(したがって、依存関係の計算の際にこの情報が考慮される)よう設定できます。このプロセスは injecting と呼ばれており、/etc/portage/profile/package.provided ファイルを通じて Portage によりサポートされています。

たとえば、手動でインストールされた gentoo-sources-4.9.16 について Portage に知らせるには以下の行を /etc/portage/profile/package.provided に追加します:

FILE /etc/portage/profile/package.providedgentoo-sources-4.9.16 を手動でインストール済みとしてマークする
sys-kernel/gentoo-sources-4.9.16
Note
このファイルはバージョンを = 演算子なしで使用します。