
GUI de OPNsense, API y backend de sistemas
El proyecto OPNsense invita a los desarrolladores a comenzar a contribuir al código base. Para tus propios propósitos o – mejor aún – para unirte a nosotros en la creación del mejor cortafuegos de código abierto disponible.
El proceso de compilación ha sido diseñado para que cualquiera pueda compilar y escribir código fácilmente. El esquema principal del nuevo código base está disponible en:
https://docs.opnsense.org/development/architecture.html
Nuestro objetivo es evolucionar gradualmente hacia un nuevo código base en lugar de utilizar un enfoque de big bang hacia algo nuevo.
Para crear software funcional como OPNsense necesitas las fuentes y las herramientas para compilarlo. Las herramientas de compilación para OPNsense están disponibles gratuitamente.
Las notas sobre cómo compilar OPNsense se pueden encontrar en el repositorio de herramientas:
https://github.com/opnsense/tools
Puedes contribuir al proyecto de muchas maneras, p. ej., probando funcionalidades, enviando informes de errores o creando pull requests directamente a través de GitHub. ¡Cualquier ayuda es siempre muy bienvenida!
Puedes obtener más información sobre cómo contribuir en CONTRIBUTING.md.
OPNsense está y siempre estará disponible bajo la licencia BSD de 2 cláusulas:
https://opensource.org/licenses/BSD-2-Clause
Cada contribución realizada al proyecto debe estar licenciada bajo las mismas condiciones para mantener OPNsense verdaderamente libre y accesible para todos.
El repositorio ofrece un par de objetivos que se integran en los procesos de compilación de tools.git o que están orientados al desarrollo rápido.
Se puede crear un paquete del estado actual del repositorio usando este objetivo. Puede requerir que se instalen varios paquetes. El objetivo intentará ayudar en caso de fallo, p. ej., cuando un archivo faltante deba obtenerse de una ubicación externa.
Existen varias OPCIONES para personalizar el paquete, p. ej.:
Las opciones se pasan de la siguiente forma:
# make package CORE_NAME=my_new_name
En general, las opciones se establecen con valores predeterminados razonables o se detectan automáticamente en tiempo de ejecución.
Update extraerá los últimos commits de la rama actual del repositorio upstream.
Upgrade ejecutará la compilación del paquete y reemplazará el paquete actualmente instalado en el sistema.
Obtén los cambios del sistema en ejecución para todos los archivos conocidos.
Ejecuta varias comprobaciones de sintaxis en el repositorio. Esto se recomienda antes de enviar un pull request en GitHub.
Ejecuta las comprobaciones de estilo PSR12 y PEP8 en el código PHP MVC y Python, respectivamente.
Para un desarrollo más fácil, quizás quieras usar una VM de OPNsense e instalar el plugin os-debug, que ofrecerá las herramientas necesarias.
Ejecuta varios sanitizadores automáticos en el código base.