OPNsense 图形界面与系统管理
OPNsense 项目邀请开发者开始为代码库做出贡献。 无论是为了自身目的,或者——更好的是——加入我们, 共同打造最好的开源防火墙。
构建流程的设计旨在让任何人都能轻松构建和编写代码。 新代码库的主要架构可在以下地址获取:
https://docs.opnsense.org/development/architecture.html
我们的目标是逐步演进到新的代码库,而不是采用 “大爆炸”式的方法直接转向全新的东西。
构建工具
要创建像 OPNsense 这样可用的软件,你需要源代码以及 用于构建它的工具。OPNsense 的构建工具可自由获取。
有关如何构建 OPNsense 的说明可在 tools 仓库中找到:
https://github.com/opnsense/tools
贡献
你可以通过多种方式参与项目,例如测试 功能、提交 bug 报告,或 直接通过 GitHub 创建 pull request。 任何帮助都非常欢迎!
你可以在 CONTRIBUTING.md 上了解更多关于贡献的信息。
许可证
OPNsense 现在及将来都将始终在 2-Clause BSD 许可证下提供:
https://opensource.org/licenses/BSD-2-Clause
对项目的每一项贡献都必须以相同的许可条件进行授权, 以确保 OPNsense 真正保持自由并对所有人开放。
Makefile 目标
该仓库提供了一些目标,它们要么与 tools.git 构建流程相关联,要么旨在快速开发。
make package
可以使用此目标创建当前仓库状态的软件包。 它可能需要安装多个软件包。 如果失败,该目标会尝试提供帮助,例如当需要从外部位置获取缺失的文件时。
存在多个 OPTIONS 用于自定义软件包,例如:
- CORE_DEPENDS:软件包所需依赖项的列表
- CORE_DEPENDS_ARCH:特定 所需软件包的列表
- CORE_ORIGIN:设置兼容 FreeBSD 的软件包/端口源
- CORE_COMMENT:软件包的简短描述
- CORE_MAINTAINER:软件包维护者的电子邮件
- CORE_WWW:软件包的网址
- CORE_NAME:设置软件包名称
选项以以下形式传递:
# make package CORE_NAME=my_new_name
通常,选项要么设置为合理的默认值,要么在运行时自动检测。
make update
Update 将从上游仓库拉取当前分支的最新提交。
make upgrade
Upgrade 将运行软件包构建并替换系统中当前安装的软件包。
make collect
从运行中的系统获取所有已知文件的更改。
make lint
在仓库上运行多项语法检查。 建议在向 GitHub 提交拉取请求之前执行此操作。
make style
分别在 MVC PHP 代码和 Python 上运行 PSR12 和 PEP8 风格检查。
为了更轻松地开发,您可能希望使用 OPNsense 虚拟机并安装 os-debug 插件,该插件将提供必要的工具。
make sweep
在代码库上运行多项自动清理工具。