
Interface graphique OPNsense, API et backend système
Le projet OPNsense invite les développeurs à commencer à contribuer à la base de code. Pour vos propres besoins ou – encore mieux – à nous rejoindre pour créer le meilleur pare-feu open source disponible.
Le processus de construction a été conçu pour permettre à quiconque de construire et d'écrire du code facilement. Le plan principal de la nouvelle base de code est disponible sur :
https://docs.opnsense.org/development/architecture.html
Notre objectif est d'évoluer progressivement vers une nouvelle base de code plutôt que d'utiliser une approche de type « big bang » pour quelque chose de nouveau.
Pour créer un logiciel fonctionnel comme OPNsense, vous avez besoin des sources et des outils pour le construire. Les outils de construction d'OPNsense sont librement disponibles.
Des notes sur la façon de construire OPNsense se trouvent dans le dépôt d'outils :
https://github.com/opnsense/tools
Vous pouvez contribuer au projet de nombreuses manières, par exemple en testant les fonctionnalités, en envoyant des rapports de bogues ou en créant des demandes de tirage directement via GitHub. Toute aide est toujours la bienvenue !
Vous pouvez en savoir plus sur la contribution dans CONTRIBUTING.md.
OPNsense est et sera toujours disponible sous la licence BSD à 2 clauses :
Chaque contribution apportée au projet doit être sous licence dans les mêmes conditions afin de garder OPNsense vraiment libre et accessible pour tous.
Le dépôt propose plusieurs cibles qui soit s'intègrent dans les processus de construction de tools.git, soit visent un développement rapide.
Un paquet de l'état actuel du dépôt peut être créé en utilisant cette cible. Plusieurs paquets peuvent être nécessaires à l'installation. La cible essaiera d'aider en cas d'échec, par exemple lorsqu'un fichier manquant doit être récupéré depuis un emplacement externe.
Plusieurs OPTIONS existent pour personnaliser le paquet, par exemple :
Les options sont passées sous la forme suivante :
# make package CORE_NAME=my_new_name
En général, les options sont soit définies à des valeurs par défaut raisonnables, soit automatiquement détectées à l'exécution.
Mettre à jour tirera les derniers commits de la branche actuelle depuis le dépôt amont.
Mise à niveau exécutera la construction du paquet et remplacera le paquet actuellement installé dans le système.
Récupère les modifications du système en cours pour tous les fichiers connus.
Exécute plusieurs vérifications de syntaxe sur le dépôt. Ceci est recommandé avant de soumettre une demande de tirage sur GitHub.
Exécute les vérifications de style PSR12 et PEP8 sur le code PHP MVC et Python, respectivement.
Pour un développement plus facile, vous pouvez utiliser une machine virtuelle OPNsense et installer le plugin os-debug qui offrira les outils nécessaires.
Exécute plusieurs sanitizers automatiques sur la base de code.