karubabuの日記

タイトルに解決と書いているものがあるけれど、別に付いていない物は解決していないというわけではないです。つまるところ記事を書いた後に解決してちょっと嬉しかったので付けました。

変更し難いebuildに自家製patchを加える方法

こんなん学校で教えて貰わなかったんですけど!
この機能を知っている人はどうやってこれを知ったものなの

ことの発端

sys-kernel/gentoo-sources-5.5.0をインストールする
そのmoduleとして、x11-drivers/nvidia-drivers-440.44-r1をビルドしようとする
この時この様なエラーが出る、具体的にはこれ
706774 – x11-drivers/nvidia-drivers-440.44-r1 with kernel 5.5 - .../work/kernel/nvidia-drm/nvidia-drm-fb.h:30:10: fatal error: drm/drmP.h: No such file or directory

解決とタイトル回収

このbugzillaのコメントに、これに対応するパッチとその適用方法が書いてある、具体的にはこれ
/etc/portage/patches - Gentoo Wiki
自分が管理していないebuildが触っているsource codeに対してパッチを煩雑な方法無しで適用出来る様になる
適当にダイレクトリを作ってパッチを置いてemergeするだけ!簡単 みんな作ってる 作ってないのはお前だけ

おわりに

この機能を知ってめちゃ嬉しかったので書いたよ
こういうのめっちゃ欲しかったけれど、やり方が分からなくて放置するみたいなことをやりまくってきたのでめちゃ有り難いね
この機能が知れたのも嬉しいのだけれど、そもそもこの様な機能が存在すること自体を知る方法が知りたいんだよなあ(◞‸◟)