nlコマンドの開発に参加するための入り口となる情報をまとめます。
GNU coreutils
このページを読めば一通りのことはわかるはずです。
Coreutils - GNU core utilities
メーリングリスト
coreutilsの開発に関する議論は基本的にメーリングリスト上で行なわれます。
主に3つのメーリングリストがあります。投稿するにはまず購読しないといけません。購読するには、件名を「subscribe」だけにしてcoreutils-request@gnu.orgに空メールを送信します。
coreutils@gnu.org
アーカイブはこちらから閲覧と検索ができます。
coreutils Archive
一般的な質問や議論が行なわれるメインのメーリングリストです。新機能の要望などもここに投稿して大丈夫です。「迷ったらまずはこのメーリングリストから」というのがこのリストの運用の方針のようです。私は議論の余地があるパッチなどもこちらに投げてしまいます。バグトラッカーで追跡できないので、内部的には嫌われるやり方かもしれません。
眺めてみると結構いろんな話が投稿されていておもしろいです。例えば自分の研究内容を書いて「困ってるんだけど助けて!」みたいに聞いちゃう学生さんなどもたまに見かけます。そして意外とアドバイスがちゃんともらえます。しかし内容にによっては「まずはソースを読んでみようね?」という感じで質問の仕方について厳しく指導される場合もあり、きちんとやるべきことはやった上で尋ねるべきです。少なくともソフトウェアの発展に寄与する内容であれば、快く回答してくださる親切な方がいらっしゃると思います。
bug-coreutils@gnu.org
アーカイブはこちらから閲覧と検索ができます。
bug-coreutils Archive
バグトラッカーと連携するためのメーリングリストです。この内容はcoreutilsのリストの方にも流れます。
coreutils-announce@gnu.org
お知らせ用のメーリングリストで、リリース情報が送られてきます。
バグトラッキング
GNU bug report logs: bugs in package coreutils
このシステムは追跡と検索だけです。レポートははbug-coreutilsのメーリングリストから投稿します。
問題を報告する前に既存の報告をきちんと調べるようにしましょう。
ソースコード
公式のgitリポジトリはGNUのサーバにありますが、GitHubにもミラーがあります。
公式GNU savannahサーバ(cgit)
公式GNU savannahサーバ(gitweb)
GitHub(ミラー)
手元にダウンロードするなら、次のようにします。
$ git clone git://git.sv.gnu.org/coreutils
パッチも議論もメーリングリストで行なうのが基本ですが、GitHubにプルリクエストを送っても対応はしてもらえるようです。
設計資料
Decoded: GNU coreutils
coreutilsにはちゃんと開発ドキュメントがあります。(し、知らなかったー!)
設計だけでなくGNUのライブラリの使い方などについても触れられていているので、ソースを読む上でとても参考になると思います。
BusyBox
基本的な流れはcoreutilsと同様です。
##メーリングリスト
メーリングリストの購読
購読だけでなく、アーカイブの検索もできます。
##ソースコード
アクセス方法の説明
公式gitサーバ
GitHub(ミラー)
##バグトラッキング
バグトラッキングシステム
Bugzillaです。
##パッチの投稿
パッチ投稿の方法
基本はメーリングリストへの投稿ですが、Morrisアカウントを作れば直接gitサーバへpush
できるようになるようです。
NetBSD
NetBSD Advent Calendar 2020、23日目の記事としてこちらに書きました。
→NetBSDのnlコマンドとProblem Reports
FreeBSD
(TBD)FreeBSDのnl
は十分調査できていないため、修正等の必要が生じたら加筆します。