Linuxカーネルにコントリビュートする方法
初めに
OSSという存在を知ったのは2019年の夏頃で、いつか自分もOSSの活動に貢献?挑戦?してみたいと思っていた。
Linuxカーネルについて
いくつかのOSSのコントリビュートの方法は見つかったのですが、Linuxカーネルに関するコントリビュートの方法が見つからなかったので、今後のためにまとめてみようと思いました。
(もしかしたら、どこかに記事があるのかもしれません)
Linuxカーネルのコントリビュートの方法
- Linuxカーネルのコーディングスタイルとライセンス要件に従い、コントリビューションを作成する。
- Linuxカーネルのコントリビューションを、メーリングリストの中から誰に送信するのかを決める。
- コントリビューションをメールで送信できる様にシステムの設定を行う
- メールで送信を行い返信が来るのを待つ。
大まかな手順としては、以上の通りです。
GitHubではなくメールリストで
Linuxカーネルの開発はGitHubではなく、メールリストで行います。
現在、GitHub上にあるリポジトリは閲覧専用であり、プルリクエストは受け付けていないようです。
メールでLinuxカーネルのコントリビューションを送信する時は、修正や変更が適用される様にパッチとして送信する。
パッチについて
パッチとは、Linuxカーネルのコードに加えたい修正や変更を示し、加えたい部分について、自身が「その修正・変更がどの様に役に立つのか?」や「なぜ、その方法が良いアイデアだと思うのか?」 などの理由を誰にでも読みやすいように文書化したドキュメントです。
「その修正・変更がどの様に役に立つのか?」や「なぜ、その方法が良いアイデアだと思うのか?」の文書は、パッチ内にコミットメッセージとして記載します。
コードの修正・変更については、Linuxカーネルのコーディングスタイルとライセンス要件に従いながら行います。
詳しくは下のURLに記述されています。
コントリビュートの方法がわからない時
- 基本的には、インターネットの検索エンジンで検索すれば解決方法を手に入れることが可能みたいです。。。(英語力が試されそうです)
パッチの送信後について
パッチ送信した後に、返信が返ってくるまで数週間かかることがよくあるそうなので気長に待つことが大切です。
さらに、自身が送信したパッチが完全に無視されることが時々あるそうですが、そのような時は、再びパッチを送信すると良いらしいです。
※カーネルの開発者の方々は、パッチを提出するためのガイドラインや、その他のルールを違反したパッチについても無視されます。
※時間が経ち過ぎた事に対しての怒りの文章などを記載してパッチを送信すると、そのパッチは無視され、さらに、ブラックリストに登録されるようですので注意しましょう。
最後に
ここに記載してある事は、GitHub上のLinuxカーネルのkernelPRBotが記載していた事を和訳し、要約したものです。
まだ、自分自身Linuxカーネルにコントリビュートをしていないので憶測の域でしかありませんが、今後のために備忘録として書き残します。
Linuxカーネルにコントリビュートを行った後に、再びこの記事を更新したいと思います。
参考文献
Pull requests · torvalds/linux · GitHub