カスタムレポジトリの設定

Portageの公式ツリーに存在しないパッケージをインストールする際に設定する。Overlayという仕組みもあるようだが、これはツリー全体を公式ツリーに被せて使うような感じらしい。今回はツリー外の単独パッケージ(ebuildファイル)を使う方法。

カスタムレポジトリ作成

> emerge -av app-portage/repoman

repomanパッケージを導入

# カスタムレポジトリの名称を「localrepo」とする

# レポジトリ用のディレクトリ作成
> mkdir -p /var/db/repos/localrepo/{metadata,profiles}
> chown -R portage:portage /var/db/repos/localrepo

# レポジトリ名称をシステムに伝達するファイルの作成
echo 'localrepo' > /var/db/repos/localrepo/profiles/repo_name

/var/db/repos/localrepo/metadata/layout.confを以下の内容で作成し作成したレポジトリを設定する

masters = gentoo
auto-sync = false

/etc/portage/repos.conf/localrepo.confを以下の内容で作成しPortageにレポジトリ情報を伝える

[localrepo]
location = /var/db/repos/localrepo

パッケージを導入

/var/db/repos/localrepo以下に「カテゴリ」/「パッケージ」でディレクトリを作成し、ebuildファイルを配置する。

> repoman manifest

ebuildファイルの最低限の品質管理をするコマンドらしい。とりあえず、manifestファイルを生成する。

パッケージのインストール

上記作業で、非公式のebuildファイルがportageに認識されるので通常通り

> emerge -av [カテゴリ]/[パッケージ]

とするとインストールできる。