Major updates: - Complete Rust rewrite (pilot-v2/) with working MQTT client - Fixed MQTT event loop deadlock (background task pattern) - Battery telemetry for Linux (auto-detected via /sys/class/power_supply) - Home Assistant auto-discovery for all sensors and switches - Comprehensive documentation (AVANCEMENT.md, CLAUDE.md, roadmap) - Docker test environment with Mosquitto broker - Helper scripts for development and testing Features working: ✅ MQTT connectivity with LWT ✅ YAML configuration with validation ✅ Telemetry: CPU, memory, IP, battery (Linux) ✅ Commands: shutdown, reboot, sleep, screen (dry-run tested) ✅ HA discovery and integration ✅ Allowlist and cooldown protection Ready for testing on real hardware. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1.4 KiB
1.4 KiB
Deploiement
Pre-requis
- Broker MQTT accessible.
- Fichier config YAML valide.
- Droits systeme pour power/screen si necessaire.
Linux
- Installer le binaire
pilot. - Placer la config dans
/etc/pilot/config.yaml(ou./config.yaml). - Creer un utilisateur
pilot(recommande). - Copier le service systemd
packaging/pilot.servicevers/etc/systemd/system/pilot.service. - Activer + demarrer:
sudo systemctl daemon-reloadsudo systemctl enable pilotsudo systemctl start pilot
- Verifier les logs:
journalctl -u pilot.
Permissions (selon backend power/screen) :
- backend
linux_sudoers: autorisershutdownetrebootvia sudoers. - backend
gnome_busctl: necessite une session utilisateur GNOME active.
Exemple sudoers:
pilot ALL=(ALL) NOPASSWD: /sbin/shutdown
pilot ALL=(ALL) NOPASSWD: /sbin/reboot
Windows
- Copier
pilot.exe. - Placer la config dans
C:\ProgramData\Pilot\config.yaml(ou./config.yaml). - Installer une tache planifiee ou un service.
- Verifier les logs (fichier ou Event Viewer selon config).
Upgrade / rollback
- Conserver
backup_v1/<timestamp>. - Revenir a v1 en reactiver le service v1 ou lancer le script v1.
Debug
- Verifier
pilot/<device>/statusetavailability. - Activer logs debug dans la config.