GentooのOverlay入門
情報が散ってて若干戸惑ったのでメモ.(自分の検索能力が低いだけ)
リンク
以下のリンクの内容を読めば,この記事の残りの部分を読む必要は無い.
-
基本
- https://wiki.gentoo.org/wiki/Ebuild_repository : (Wiki) リポジトリについて
- https://wiki.gentoo.org/wiki/Eselect/Repository : (Wiki) eselect/repository (laymanの後継とされるもの)
- https://wiki.gentoo.org/wiki/Creating_an_ebuild_repository : (Wiki) リポジトリの作成
- https://devmanual.gentoo.org/general-concepts/dependencies/ : 依存関係について
- https://devmanual.gentoo.org/general-concepts/manifest/ :
Manifest
について
-
Ebuild / EAPI
- https://devmanual.gentoo.org/quickstart/ : Ebuildクイックスタート
- https://wiki.gentoo.org/wiki/Basic_guide_to_write_Gentoo_Ebuilds : (Wiki) Ebuild執筆の基本
- https://devmanual.gentoo.org/ebuild-writing/eapi/ : EAPIについて
- https://devmanual.gentoo.org/ebuild-writing/variables/ : 変数
-
https://devmanual.gentoo.org/ebuild-writing/misc-files/metadata/ :
metadata.xml
について - https://wiki.gentoo.org/wiki/Eclass : (Wiki) Eclassについて
- https://devmanual.gentoo.org/eclass-reference/ : Eclass詳細
- おまけ
作ってみる
書きかけ. 続きは気が向いたらもう少し書く.
まず,以下を実行して雛形を作成する.標準ユーザーで実行するとなにやら怒られるが,困らないので無視して構わない.
% eselect repository create yamad /path/to/hoge
出来次第metadata/layout.conf
等を適当に編集する.
後はebuildを書くだけ.
% mkdir -p app-hoge/fuga
% vim app-hoge/fuga/fuga-1.2.3.ebuild
% ebuild app-hoge/fuga/fuga-1.2.3.ebuild manifest
これでebuildとManifest
が生成される. 上の方にあるリンク集を参考にmetadata.xml
を作成して,完成.
後はVCSで管理するなり公開するなりすれば良い.
また,Manifest
をまとめて管理したりファイルの明らかなエラーを検査したりする,repoman
というツールがあったりする.
蛇足
用語の知識さえあれば簡単に作れることがわかった. Gentooはエコシステムがいろいろ整ってて良いなと思った.
自分は個人用のものをGitHub(yamader/overlay)に置いて運用している.