IliadBar porta iliadbox nella barra dei menu di macOS: stato della connessione, download, file, dispositivi LAN, Wi-Fi e servizi avanzati in un'app nativa e local-first.
Il progetto usa le API locali di Freebox OS. È pensato per iliadbox e può funzionare con gateway Freebox compatibili; le funzionalità visibili dipendono da modello, firmware e permessi concessi durante l'associazione.
- Dashboard con stato, traffico live, IP pubblico, uptime, temperature e dischi.
- Gestione download completa: magnet, URL, torrent/NZB locali, file, priorità, tracker, peer e rimozione sicura.
- File manager multi-disco con upload WebSocket, download, cartelle, rinomina, copia, spostamento, condivisione e cancellazione confermata.
- LAN, DHCP e Wi-Fi: dispositivi, lease, radio, SSID, stazioni, WPS e QR ospiti quando supportati.
- NAT, accesso remoto, SMB, FTP, UPnP, parental control, VPN, chiamate, contatti e PVR dietro capability detection.
- Eventi live con fallback al polling, notifiche configurabili e stati offline/stale/permesso negato espliciti.
- Due widget WidgetKit e CLI
ibxcon JSON stabile per automazioni. - Interfaccia italiana e inglese, scorciatoie da tastiera e diagnostica redatta.
Richiede macOS 14 o successivo e Xcode Command Line Tools.
git clone https://github.com/giveme11us/IliadBar.git
cd IliadBar
swift package resolve
./Scripts/make-app.sh
cp -R build/IliadBar.app /Applications/
open /Applications/IliadBar.appAl primo avvio IliadBar scopre la box tramite Bonjour. L'associazione richiede
una conferma fisica sulla iliadbox. Il token viene salvato nella configurazione
locale privata, leggibile solo dall'utente (0600), senza richieste del Portachiavi.
Per usare la CLI inclusa:
/Applications/IliadBar.app/Contents/MacOS/ibx discover --save
/Applications/IliadBar.app/Contents/MacOS/ibx pair
/Applications/IliadBar.app/Contents/MacOS/ibx status --jsonEsegui ibx senza argomenti per l'elenco completo dei comandi.
La stessa app gira su iPhone e iPad (iOS 17+): TabView con Home, Download, File, Rete e Impostazioni, gli stessi widget connessione/download e gli stessi sorgenti condivisi con macOS. Al primo avvio iOS chiede il permesso per la rete locale: serve per cercare la box con Bonjour.
xcodegen generate
./Scripts/make-ios-app.sh --sim # build + install + launch sul simulatorePer un dispositivo fisico o TestFlight serve DEVELOPMENT_TEAM (vedi
Development).
| Target | Ruolo |
|---|---|
IliadboxKit |
client API tipizzato, autenticazione, discovery e modelli condivisi |
IliadBar |
app SwiftUI per la barra dei menu e finestre di gestione |
IliadBarWidget |
widget connessione e download, alimentati da snapshot senza segreti |
ibx |
CLI per associazione, ispezione e automazione |
La base URL e la versione API vengono negoziate dai metadati Bonjour, con un fallback manuale. Le sessioni sono firmate localmente; nessun dato della box viene inviato a un servizio IliadBar.
swift test
./Scripts/audit-localization.sh
./Scripts/make-app.shConsulta Development, Security, Privacy, Troubleshooting e Releasing. La matrice delle capability documenta le differenze tra firmware. Il percorso verso 1.0 e le prove richieste sono in Roadmap.
IliadBar è in sviluppo pre-1.0. Le build locali sono firmate ad-hoc; le release pubbliche richiedono Developer ID, notarizzazione e firma EdDSA dell'appcast.