Après un code 1, le menu affichait « Monté sur … », la commande pour démonter et celle pour ouvrir le répertoire : le montage n'avait pas eu lieu, et on cherchait des fichiers dans un répertoire vide. Le succès ne s'affiche plus qu'en cas de succès, et le point de montage inutilisé est retiré. L'échec, lui, avait une cause : sshfs lit « a+b » comme un chaînage d'hôtes et ne consulte jamais ~/.ssh/config pour l'alias entier. Or c'est todo.py qui nomme les VM « rebond+domaine », et cette seconde moitié est un domaine libvirt, pas un alias SSH du rebond. On résout donc l'alias par « ssh -G » et on rend à sshfs une cible qu'il ne peut plus mal lire, ProxyJump comprise. --- EN --- After exit code 1, the menu still printed "Mounted on …", the unmount command and the file-manager command: nothing had been mounted, and one went looking for files in an empty directory. The success block now only prints on success, and the unused mount point is removed. The failure itself had a cause: sshfs reads "a+b" as host chaining and never consults ~/.ssh/config for the whole alias. But todo.py is what names VMs "jump+domain", and that second half is a libvirt domain, not an SSH alias on the jump host. So we resolve the alias with "ssh -G" and hand sshfs a target it can no longer misread, ProxyJump included. Assisted-by: Claude Opus 5 |
||
|---|---|---|
| .. | ||
| auto_ask.py | ||
| database_manager.py | ||
| kdbx_manager.py | ||
| logo_ascii.txt | ||
| migration_form.py | ||
| migration_stats.py | ||
| migration_status.py | ||
| migration_status_tui.py | ||
| qemu_deploy_form.py | ||
| qemu_hardware.py | ||
| qemu_install_monitor.py | ||
| README.base.md | ||
| README.fr.md | ||
| README.md | ||
| source_todo.sh | ||
| textual_setup.py | ||
| todo.json | ||
| todo.py | ||
| todo_example.json | ||
| todo_file_browser.py | ||
| todo_i18n.py | ||
| todo_prefs.py | ||
| todo_telemetry.py | ||
| todo_upgrade.py | ||
| version_manager.py | ||
TODO is an assistant robot to use ERPLibre
Execute it with ./script/todo/todo.py or make todo.
For a new project, copy todo_example.json to private/todo/todo_override.json | private/todo/todo_override_private.json and edit it.
The mail/ package is the mail client reachable from Assistant > Mail:
several IMAP/SMTP accounts, a local cache, and a Textual TUI. See
../../doc/EMAIL.md.