Variables Ansible personnalisées
Présentation
Le fichier /etc/recoverybox/custom_config.yml permet de personnaliser le déploiement Ansible de la RecoveryBox sans modifier les fichiers du rôle.
Ce fichier est géré automatiquement par le script RecoveryBox_install.sh lors de la configuration interactive. Il est ensuite passé en extra-vars au playbook Ansible (ansible/Install.yml).
Note : Vous pouvez aussi créer/modifier ce fichier manuellement avant de lancer une installation en mode
custom(sudo ./RecoveryBox_install.sh custom).
Structure du fichier
Le fichier doit contenir un dictionnaire YAML avec les variables à surcharger. Exemple minimal :
# /etc/recoverybox/custom_config.yml
recoverybox_enable_kiwix: false
recoverybox_hotspot_conf:
ssid: "mon-recoverybox"
password: "motdepasse123"
Liste complète des variables personnalisables
Versions des composants
| Variable | Défaut | Description |
|---|---|---|
recoverybox_version_library |
"1.1.0" |
Version de la bibliothèque RecoveryBox (GitHub releases) |
recoverybox_version_fonts |
"master" |
Version des polices (branche Git) |
recoverybox_version_rtlsdr |
"v1.3.6" |
Version RTL-SDR Blog (tag Git) |
recoverybox_version_brouter_container |
"v1.7.9" |
Version du conteneur BRouter (Docker) |
recoverybox_version_brouter_web |
"0.18.1" |
Version interface web BRouter (GitHub releases) |
recoverybox_version_meshtastic_web |
"2.7.1" |
Version client web Meshtastic (Docker) |
recoverybox_version_kiwix |
"3.8.2" |
Version Kiwix-serve (Docker) |
recoverybox_version_simple_hotspot |
"1.0" |
Version simple-hotspot (Docker) |
recoverybox_version_owrx |
"1.2.118" |
Version OpenWebRX+ (Docker) |
recoverybox_version_tileserver |
"v5.6.0" |
Version TileServer-GL (Docker) |
recoverybox_version_planetiler |
"0.10.2" |
Version Planetiler (Docker) |
Attention
Ne modifiez ces versions que si vous avez une raison précise (compatibilité, bug connu). Les versions listées sont testées et validées, si la version que vous souhaitez utiliser est différente, vérifiez avec rb-update qu'il n'y a pas une nouvelle version de RecoveryBox qui inclut cette modification.
Activation/désactivation des services
| Variable | Défaut | Description |
|---|---|---|
recoverybox_enable_apache |
true |
Active Apache2 (requis pour Library, Console, Kiwix web) |
recoverybox_enable_library |
true |
Active la bibliothèque PDF locale (nécessite Apache) |
recoverybox_enable_owrx |
true |
Active OpenWebRX+ (SDR web) |
recoverybox_enable_brouter |
true |
Active BRouter (moteur de routage hors-ligne) |
recoverybox_enable_tileserver |
true |
Active TileServer-GL (serveur tuiles vectorielles OSM) |
recoverybox_enable_console |
true |
Active la console web d'administration (ShellInABox) |
recoverybox_enable_kiwix |
true |
Active Kiwix (Wikipédia hors-ligne) |
recoverybox_enable_meshtastic |
true |
Active les services Meshtastic (web client + daemon) |
recoverybox_enable_hotspot |
true |
Active le point d'accès Wi-Fi (hotspot) |
Note
Si recoverybox_enable_apache: false, l'ensemble des services web seront automatiquement désactivés par le playbook.
Attention
Si recoverybox_enable_hotspot: false, le point d'accès Wi-Fi ne sera pas créé et l'ensemble des services sera inaccessible.
Interfaces réseau
| Variable | Défaut | Description |
|---|---|---|
recoverybox_interface_wlanap |
"wlanAP" |
Nom de l'interface Wi-Fi renommée pour le hotspot |
recoverybox_interface_wan |
"Wan" |
Nom du bridge WAN (côté Internet) |
recoverybox_interface_lan |
"Lan" |
Nom du bridge LAN (côté local + hotspot) |
Configuration du Hotspot
Objet recoverybox_hotspot_conf avec les clés suivantes :
| Clé | Défaut | Description |
|---|---|---|
ssid |
"recoverybox" |
Nom du réseau Wi-Fi (SSID) |
password |
"recoverybox" |
Clé WPA2-PSK (8 à 63 caractères) |
mode |
"g" |
Mode PHY : g (2.4 GHz), a (5 GHz), acs (auto) |
channel |
"11" |
Canal Wi-Fi (ex: 1, 6, 11, 36, 0 pour auto/ACS) |
auth_algs |
"1" |
Algorithmes d'authentification (1 = Open System) |
wpa |
"2" |
Version WPA (2 = WPA2) |
wpa_key_mgmt |
"WPA-PSK" |
Gestion des clés |
wpa_pairwise |
"TKIP CCMP" |
Chiffrement pairwise |
rsn_pairwise |
"CCMP" |
Chiffrement RSN (WPA2) |
network |
"192.168.200.0" |
Réseau IP du hotspot |
mask |
"24" |
Masque de sous-réseau (CIDR) |
ip |
"192.168.200.1" |
IP passerelle du hotspot |
dhcp_range_start |
"192.168.200.100" |
Début plage DHCP |
dhcp_range_end |
"192.168.200.200" |
Fin plage DHCP |
Important : L'interface Wi-Fi doit supporter le mode AP pour le canal et le mode choisis.
Configuration Meshtastic (nœud externe)
Objet recoverybox_meshtastic_node :
| Clé | Défaut | Description |
|---|---|---|
mac |
"00:00:00:00:00:00" |
Adresse MAC du nœud Meshtastic (pour réservation DHCP statique) |
ip |
"192.168.200.101" |
IP fixe attribuée au nœud Meshtastic |
Utilisé uniquement si
recoverybox_enable_meshtastic: trueet qu'un nœud physique est connecté.
Téléchargements Kiwix
Liste recoverybox_kiwix_files (chaque élément est un objet) :
| Clé | Description |
|---|---|
category |
Catégorie : wikipedia, maps, wikivoyage, ted, stackexchange, etc. |
language |
Code langue ISO 639-1 : fr, en, es, de, etc. |
enable |
true/false pour activer ce téléchargement |
arg |
Variante : all_mini, all_nopic, all_maxi (voir download.kiwix.org) |
Exemple :
recoverybox_kiwix_files:
- category: wikipedia
language: fr
enable: true
arg: "all_nopic"
- category: wikipedia
language: en
enable: true
arg: "all_nopic"
- category: maps
language: en
enable: false
arg: "france"
Téléchargements cartographiques
| Variable | Défaut | Description |
|---|---|---|
recoverybox_download_brouter |
true |
Télécharge les segments BRouter (routing vélo/rando/voiture) |
recoverybox_download_mbtiles |
true |
Télécharge world.mbtiles pour TileServer-GL (carte monde) |
Attention : Ces téléchargements peuvent représenter plusieurs Go. Désactivez (
false) si bande passante ou espace disque limité et que ceux-ci sont déjà téléchargés.
Exemple complet
# /etc/recoverybox/custom_config.yml
# Exemple de configuration personnalisée
# Versions (optionnel - gardez les défauts sauf besoin spécifique)
# recoverybox_version_brouter_container: "v1.7.9"
# Services : on désactive Kiwix et OpenWebRX pour gagner de la place
recoverybox_enable_kiwix: false
recoverybox_enable_owrx: false
# Hotspot personnalisé
recoverybox_hotspot_conf:
ssid: "RecoveryBox-MonSite"
password: "PassSecurise123!"
mode: "g"
channel: "6"
network: "10.0.0.0"
mask: "24"
ip: "10.0.0.1"
dhcp_range_start: "10.0.0.50"
dhcp_range_end: "10.0.0.150"
# Nœud Meshtastic connecté en USB/Ethernet
recoverybox_meshtastic_node:
mac: "aa:bb:cc:dd:ee:ff"
ip: "10.0.0.10"
# Kiwix : seulement Wikipédia FR sans images
recoverybox_kiwix_files:
- category: wikipedia
language: fr
enable: true
arg: "all_nopic"
# Pas de téléchargement cartes (bande passante limitée)
recoverybox_download_brouter: false
recoverybox_download_mbtiles: false
Utilisation avec RecoveryBox_install.sh
Générer le fichier (mode interactif)
sudo ./RecoveryBox_install.sh config
→ Lance uniquement le menu de configuration et écrit /etc/recoverybox/custom_config.yml
Installation avec config existante
sudo ./RecoveryBox_install.sh custom
→ Utilise le fichier existant, saute le menu, lance directement le playbook Ansible
Installation complète (génère + applique)
sudo ./RecoveryBox_install.sh
→ Menu interactif → écrit custom_config.yml → lance Ansible
Bonnes pratiques
- Ne modifiez pas les fichiers du rôle (
ansible/roles/recoverybox/defaults/main.yml) — ils sont gérés par Git/Ansible et seront écrasés. - Utilisez uniquement
/etc/recoverybox/custom_config.ymlpour vos surcharges. - Validez la syntaxe YAML avant de lancer l'installation :
bash python3 -c "import yaml; yaml.safe_load(open('/etc/recoverybox/custom_config.yml'))"