開始する
すべては、いつものように、今回は13.04にUbuntuの新しいリリースに切り替えたという事実から始まりました。 すぐに使えるディストリビューションにはネットワークカード( RLT8168E )用のfireがめったにないので、私はLinuxで最も成功したマザーボードではないことがわかりました 。 しかし、これは大きな問題ではありませんよね? コンパイル用のパッケージを入手したら、Linuxの最新のfireをオフサイトからダウンロードしました 。 私はすでにUbuntu 12.10でこれを行いましたが、キャッチを示すものはありませんでした。
キャッチ
突然、これらの「fire」 はコンパイルされません 。 テキストに少し誤りを入れて、私はlinux@conference.jabber.ruでアドバイスを求めに行きました。 そこで彼らは、サイトからfireを取ることは常に良い考えではなく、リポジトリに私のネットワークカード用のパッケージがあると私に言った。 嬉しい驚き。 確かに、リポジトリでfireのあるパッケージを探すことから始める価値がありました。 しかし、判明したように、同じモジュール内のコードはその中にあり、コンパイル時に同じようにクラッシュします。
ソリューションを検索する
Ubuntuリポジトリからのパッケージの問題はすでにより深刻な状況であり、 Ubuntu MOTU (Masters of the Universe )に精通しました。 彼らのウィキでは、パッケージを最新の状態に保ち、Ubuntuプロジェクトを一般的に支援する方法についての魅力的な指示を見つけることができます。 freenode.netの#ubuntu-motu IRCチャネルに参加した後、リポジトリからこのパッケージを修正する方法を尋ね始めました。 そこで彼らは、最良の選択肢はUbuntu以前の段階、つまりdebianリポジトリで大部分のdebパッケージを入手するところから問題を解決することだと私に説明しました。
Debian
誰とどのように連絡すればよいか分からないので、私はすぐにこのパッケージのメンテナーに手紙を書くことにしました(後で知りましたので、そうしないことをお勧めします)。 各debパッケージにはメンテナーフィールドがあり(たとえば、less file.debを使用すると表示されます)、連絡先の電子メールを受信しました。 私は、彼らが言うには、パッケージのインストールがそのようなエラーでクラッシュし、パッケージのバージョンがそのようなものであり、私のUbuntuのバージョンがそのようなものであり、この機器の所有者として、私が修正を支援したいと書いています。 彼が答える前に、1日も経っていませんでした。 彼は、問題があると書いて、それをランチパッドでグーグルで調べ、 見つかったバグについてdebianに実際に報告する価値があるかどうかについて調べました 。 ポイントは、新しいカーネルのソースコードに定義されているものがなくなることだと想定しています。 彼は、これらの定義を削除するコミット、またはこのケースのドキュメントを見つけるように頼みました。 突然のリクエストですが、このコミットが見つかりました。
修正する
パッケージメンテナは、ハードウェアでテストできるように指示パッチを送ってきました。 少し調整して、彼は成功についてのメッセージを送り返しました! したがって、ネットワークカードモジュール用のパッチがコンパイルされ、私の名前がパッチテスターとして表示されます。 私にとっては、それが誇りと作業開始の継続の大きな理由でした:)
次に、結果のdebパッケージをテストし、メンテナーがsidリポジトリに送信しました。これは、debianでのこのパッケージの履歴が終了する場所です。
MOTUに戻る
debianのパフォーマンスは優れていますが、私はUbuntuユーザーであり、このパッケージが必要です。 パッケージがリポジトリに移動することを期待して、MOTUに戻りました。 しかし、そのような急ぎすぎは楽観的でした:)パッケージを現在のリリースとLTSに入れることに関して、 SRUと呼ばれるログに記録されたプロセス全体があることがわかります。 文書は私にとって巨大で不透明に見えたので、SRUの責任者を探し始めました。 チャンネル#ubuntu-releaseでそれらを見つけました。 彼らは非常に良い人であることが判明し、短い会話の後、sidから直接取得され、パッケージの状態を「まったく動かない」から「私のために働く」に変換するため、リリースでパッケージを受け入れることにしました。 したがって、この記事の執筆時までに、RLT8168ネットワークカードのすべてのユーザーと現在のバージョンのカーネルは、リポジトリから直接fireをインストールできるようになります。
RealTekのモジュールの開発者に問題の存在とそのパッチについて何度か通知しましたが、残念ながらそれらからの反応はありませんでした。
次は?
debian開発者のコーナーを読んだ後、すばらしいドキュメント、 たくさんのみなしご化されたパッケージ、そして議論が必要なパッケージを見ました。 debianコミュニティは、「技術的な知識があり、フリーソフトウェアと空き時間に興味がある新しい開発者を常に探している」ことを考えて、debパッケージの作成について研究し始めました。 そして、これはLinuxの世界を少し良くする素晴らしい機会だと思います;)
なぜ記事なのか?
この記事が、あなたが超過激なプログラマーでなくても、お気に入りのディストリビューションを支援することが本物であることを理解するのに役立つことを願っています。 コミュニティには新しい血が必要であり、これに関して貴重な経験を得ることができること;)
PS
ハブに私のメンターになり、将来、デビアンのメンテナーになる弁護士になることができる人がいるなら、私はとても幸せです。