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 的构建流程相关联,要么旨在实现快速开发。
使用此目标可以创建当前仓库状态的软件包。这可能需要安装数个软件包。如果构建失败,该目标会尝试提供帮助,例如当需要从外部位置获取缺失文件时。
存在多个可用于定制软件包的 OPTIONS,例如:
选项通过以下形式传递:
# make package CORE_NAME=my_new_name
通常,选项要么设置为合理的默认值,要么在运行时自动检测。
该目标会从上游仓库的当前分支拉取最新提交。
该目标将运行软件包构建,并替换系统中当前已安装的软件包。
从运行中的系统获取所有已知文件的变更。
对仓库运行多项语法检查。建议在 GitHub 上提交拉取请求之前执行此操作。
分别对 MVC PHP 代码和 Python 运行 PSR12 与 PEP8 风格检查。
为了更方便地开发,你可能希望使用 OPNsense 虚拟机并安装 os-debug 插件,该插件将提供必要的工具。
在代码库上运行多个自动 sanitizer。