
OPNsense GUI、API、およびシステムバックエンド
OPNsense プロジェクトは、開発者の皆さんがコードベースへの貢献を始めることを歓迎します。 自分の目的のため、あるいは – さらに良いことには – 最高のオープンソースファイアウォールを共に創り上げるために、ぜひご参加ください。
ビルドプロセスは、誰でも簡単にコードをビルドし、作成できるように設計されています。 新しいコードベースの概要は、次の場所で入手できます。
https://docs.opnsense.org/development/architecture.html
私たちの目標は、ビッグバン的なアプローチで新しいものに移行するのではなく、新しいコードベースへ段階的に進化させることです。
OPNsense のような動作するソフトウェアを作成するには、ソースとそれをビルドするためのツールが必要です。 OPNsense のビルドツールは無料で入手できます。
OPNsense のビルド方法に関するメモは、tools リポジトリにあります。
https://github.com/opnsense/tools
プロジェクトにはさまざまな方法で貢献できます。例: 機能のテスト、バグレポートの送信、GitHub からの直接のプルリクエスト作成などです。 どんな助けでも大歓迎です!
貢献についての詳細は CONTRIBUTING.md をご覧ください。
OPNsense は、今後も常に 2-Clause BSD ライセンスのもとで利用可能です。
https://opensource.org/licenses/BSD-2-Clause
プロジェクトへのすべての貢献は、OPNsense を誰にとっても真に自由でアクセスしやすい状態に保つため、同じ条件でライセンスされる必要があります。
このリポジトリには、tools.git のビルドプロセスに関連するものと、高速な開発を目的としたものの両方のターゲットが用意されています。
このターゲットを使用すると、リポジトリの現在の状態のパッケージを作成できます。 いくつかのパッケージのインストールが必要になる場合があります。 失敗した場合、このターゲットは支援を試みます。たとえば、不足しているファイルを外部の場所から取得する必要がある場合などです。
パッケージをカスタマイズするためのオプションがいくつかあります。例:
オプションは次の形式で渡されます:
# make package CORE_NAME=my_new_name
一般に、オプションは適切なデフォルトに設定されるか、実行時に自動的に検出されます。
update は、現在のブランチの最新コミットをアップストリームリポジトリから取得します。
upgrade はパッケージビルドを実行し、システムに現在インストールされているパッケージを置き換えます。
実行中のシステムから既知のすべてのファイルについて変更を取得します。
リポジトリに対していくつかの構文チェックを実行します。 GitHub でプルリクエストを出す前に推奨されます。
PSR12 と PEP8 のスタイルチェックを、それぞれ MVC PHP コードと Python に対して実行します。
開発を容易にするために、OPNsense VM を使用し、必要なツールを提供する os-debug プラグインをインストールするとよいでしょう。
コードベースに対していくつかの自動サニタイザーを実行します。