Byobu : screen avec une couche de vernis (et un statut qui sauve)
En avril dernier, ce blog décrivait Screen comme un multiplexeur de terminal : détacher, rattacher, ne jamais perdre une session ssh. Six mois plus tard, byobu arrive et pose une question impertinente: si tout le monde configure le même Screen de la même façon (statut, couleurs, raccourcis), pourquoi ne pas livrer la configuration toute faite?
C’est exactement ce qu’est byobu: né dans Ubuntu sous le nom screen-profiles, renommé byobu en 2009 (le mot japonais pour les paravents décoratifs, clin d’oeil assumé), l’outil enveloppe votre Screen existant d’une couche de vernis, sans en changer le moteur.
Ce qu’apporte le vernis
- Une barre de statut en bas de terminal qui montre ce que l’admin regarde toute la journée: charge CPU, mémoire, disque, réseau, batterie, notifications apt et mises à jour. Chaque élément s’active/désactive individuellement (
F9-> toggles) et la barre se rafraîchit toute seule. - Des raccourcis F-key cohérents:
F2nouvelle fenêtre,F3/F4navigation,F5rechargement du profil,F6détachement,F7mode copie,F8renommage,F9menu de configuration,F12touche d’échappement d’urgence. Fini lesC-a cqu’on n’a jamais memorisés: les claviers de laptops ont ces touches, autant les utiliser. - Zero migration: votre Screen reste votre Screen. byobu ne fork pas le protocole, il écrit du
~/.screenrcet des scripts de statut en bash/python. Vous détachez avec byobu, vous rattachez avec Screen.
Pourquoi c’est un bon palier
Byobu fait partie de ces outils qui disent la vérité sur les logiciels de terminal: la valeur n’est pas dans le moteur, elle est dans la configuration par défaut. Screen avait le moteur depuis 1987 et une doc qui en faisait peur; byobu a pris le moteur et a fait payer l’entrée en une commande (byobu, dans Ubuntu 9.10, un apt install). Pour l’admin pressé, c’est le delta entre “je configure screen ce soir” et “je lance byobu maintenant”.
Et tmux dans tout ça?
tmux
est sorti en 2007, deux ans avant ces lignes et il règle au niveau du moteur ce que Screen traînait depuis 1987: un vrai modèle client-serveur, un découpage de panneaux propre, une configuration lisible. Mais en 2009 il n’est pas encore partout, tandis que byobu enveloppe le Screen que toutes les distributions ont déjà.
Les deux approches ne s’opposent d’ailleurs pas, parce que byobu est une couche de présentation et non un moteur: rien n’interdit qu’il apprenne un jour à s’asseoir sur tmux plutôt que sur Screen et le jour où tmux sera le défaut partout, c’est sans doute ce qui arrivera, sans que ma barre de statut s’en aperçoive. En attendant, pour l’admin qui veut le confort tout de suite sans réécrire un .screenrc, byobu reste le raccourci honnête.