このリポジトリには、すべての Alpine Linux パッケージの APKBUILD ファイルと、必要なパッチおよびスクリプト (存在する場合) が含まれています。
また、GitLab (GitLab CI 経由) でのこれらのパッケージのテスト (したがってビルド) に関連する追加のファイルとディレクトリもいくつか含まれています。
貢献したい場合は、貢献者ガイドを読んで、GitLab でマージ リクエストを送信するか、Alpine aports メーリング リスト (~alpine/[email protected]) で git パッチを送信してください。 (注: このメーリング リストは現在機能していません)
Alpine Linux の aports ツリーは 3 つのリポジトリ (ディレクトリ) で構成されます。これら 3 つのリポジトリにはそれぞれ、独自のポリシー、ユースケース、ワークフローのセットがあります。以下は、パッケージに適用する必要がある基本ポリシーの定義です。追加のポリシーが適用される場合があります。開発者ガイドラインを参照してください。
メイン リポジトリ内のパッケージは、Web サイトで定義されている公式リリース サイクル ドキュメントに従ってサポートされる必要があります。疑わしい場合は、代わりにパッケージをコミュニティ リポジトリに移動する必要があります。メイン リポジトリ内のパッケージのポリシーは、このパッケージが基本システムで期待されるのに合理的であり、リリース ページに記載されているように、パッケージを保守できる開発者が割り当てられているかどうかです。 main のパッケージには、ソース コードが同梱されている場合は適切なドキュメントが含まれており、提供されている場合はテスト スイートが有効になっていることが期待されます。新しいパッケージがメイン リポジトリに直接導入されることはほとんどなく、次のワークフローに従う必要があります: testing => main
。
コミュニティ リポジトリ内のパッケージは、Web サイトで定義されている公式リリース サイクル ドキュメントに従ってサポートされる必要があります。コミュニティ内のパッケージは、メイン リポジトリに属しておらず、テスト リポジトリでテストが終了したパッケージです。パッケージにはメンテナが必要で、提供されている場合はテスト スイートが有効になっている必要があり、ソース コードが提供している場合はドキュメントを同梱することが推奨されます。新しいパッケージがコミュニティ リポジトリに直接導入されることはほとんどなく、 testing => community
ワークフローに従う必要があります。
テスト リポジトリ内のパッケージは、Web サイトで定義されている公式リリース サイクル ドキュメントに従っておらず、公式リリースには含まれておらず、エッジ ブランチでのみ出荷されます。このリポジトリは、パッケージの導入とテストを目的として、また他のリポジトリのステージング領域として特別に設計されています。パッケージは前述のポリシーに準拠しておらず、正しくビルドできることのみが必要です。パッケージが動作していることが確認されたら、そのリポジトリに設定されているポリシーに従って、できるだけ早く他のリポジトリの 1 つにパッケージを移動する必要があります。パッケージが 6 か月以内に移動されない場合は、保守者に通知し、9 か月後に削除されます。
.githooks
ディレクトリには、いくつかの便利な git フックがあります。これらを使用するには、このリポジトリのクローンを作成した後、次のコマンドを実行します。
git config --local core.hooksPath .githooks