Nouveautés
Compatibilité macOS : 9 modules fonctionnent maintenant en dual Linux/macOS sans casser les fonctionnalités Linux existantes.
Principe : _IS_MACOS = platform.system() == 'Darwin' dans chaque module — les branches macOS s'ajoutent à côté du code Linux, jamais en remplacement.
Modules couverts
| Module | macOS |
|---|---|
| Dashboard | route -n get default, ifconfig, scutil --dns, masque hex → CIDR |
| Interfaces | networksetup -listallhardwareports + ifconfig -a |
| Wi-Fi | system_profiler SPAirPortDataType -json (airport retiré macOS 15+) |
| Topology | route -n get default + ifconfig, police Menlo |
| Bandwidth | netstat -ib, filtre lo0 |
| Firewall | parser parse_pf(), LiveRulesetWorkerMacos via pfctl + osascript |
| Connection Manager | _ListWorkerMacos, _DetailWorkerMacos, actions osascript |
| Hosts | osascript au lieu de pkexec pour écrire /etc/hosts |
| MTR | Police Menlo/Monospace |
Modules inchangés (outils identiques Linux/macOS)
dns.py, nmap_scan.py, snmp.py, whois.py
Note : Le projet reste prioritairement Linux/KDE. Le support macOS est une compatibilité additionnelle, non testée en CI.