Catégories
Open-source Planet-libre Systeme

Terminator, le terminal ultime sous GNU/Linux

Une des grande différence entre un Linuxien et un Windowsien est le temps passé devant le terminal (console en mode graphique). Si les terminaux fournis par défaut sous GNU/Linux sont à des années lumières des pauvres consoles CMD ou PowerShell de Microsoft, ils sont encore loin derrière le logiciel dont je vais vous parler dans ce billet.

Terminator (logiciel libre sous licence GPL) propose les fonctions suivantes:

  • configuration de la fontes et des couleurs avec gestion de la transparence (association dans des profils)
  • division horizontale et verticale de la fenêtre pour disposer de plusieurs terminaux
  • chaque terminal peut disposer d’un profil différent
  • possibilité d’envoyer les lignes de commandes saisies au clavier sur un groupe de terminaux
  • capture d’écran du terminal en 2 clics de souris
  • scroll bar infinie
  • possibilité de lancer des commandes automatiquement au démarrage du terminal

Voici donc un aperçu de la bête:

Comme vous pouvez le voir, il est possible de mixer des divisions horizontales et verticales et d’associer un profil différent pour chaque terminal. Par exemple, j’ai trois profils différents:

  • default: le profil par défaut que j’utilise sur ma machine (fond bleu foncé, texte blanc)
  • tiny: un profil optimisé pour l’affichage des logs (fontes plus petite)
  • b&w: un profil monochrome

La configuration des profils est stockées dans le fichier ~/.config/terminator/config et peut donc facilement être importée entre vos différents ordinateurs.

Autre fonction très utile, le regroupement. Vous allez pourvoir diffuser, en parallèle, les commandes saisies au clavier sur un ensemble de terminaux.

Imaginons que vous deviez mettre à jour 3 serveurs. Vous commencez donc par diviser horizontalement l’écran en 3 terminaux à partir desquels vous allez vous connecter en SSH sur vos serveurs (1 serveur = 1 terminal). Vous allez ensuite regrouper les 3 terminaux en faisant un clic droit  > Regroupement > Diffuser tout. Il ne reste plus qu’à saisir une seule fois les commandes de mises à jour !

Pratique, rapide, libre, indispensable.

Catégories
Blog Open-source Planet-libre Systeme Web

Shelr, un service de screencast pour votre terminal

Shelr propose un outil pour enregistrer, rejouer et diffuser les commandes et leurs résultats saisies dans votre terminal favori (console). L’avantage par rapport à un screencast classique est que le termcast sauvegarde non pas une vidéo mais juste le texte.

Il est possible de fonctionner de manière autonome en gérant vous même vos enregistrements (ce qui peut par exemple être très pratique pour une présentation ou un cours à des élèves). Si vous souhaitez diffusez ces enregistrements sur Internet, il faut passer par le site Shelr.tv: l’inscription prends quelques secondes et l’hébergement de vos termcasts est gratuite.

Cerise sur le gâteau, les outils Shelr sont fournis sont licence GPL v3 dans un GitHub.

Installation Shelr sur votre système

Voici la procédure à suivre sur une distribution Ubuntu. Les seuls pré-requis sont d’avoir ruby et rubugems installés sur son système d’exploitation:

sudo apt-get install ruby rubygems
sudo gem install shelr

Comment utiliser le logiciel Shelr

Le logiciel en question se présente sous la forme d’un executable unique: shelr qui propose dans sa version actuelle les options suivantes:

# shelr 

Usage: shelr command [arg]
Commands:
    setup API_KEY   - setup
    record          - record new shellcast
    push RECORD_ID  - publish
    list            - print list of records
    play RECORD_ID  - play local record
    play RECORD_URL - play remote record

Enregistrement de votre premier termcast

Il suffit de saisir la commande suivante:

shelr record

Shelr va alors vous demander le nom (description) à associer à votre enregistrement puis lancer un fork de votre shell courant ou vous pourrez taper en toute transparence vos commandes à enregistrer.

Pour terminer l’enregistrement, il faut appuyer sur la combinaison CTRL-D (ou saisir la commande exit).

Afficher la liste des termcast stockés sur votre système

L’option list permet d’afficher la liste des termcasts que vous avez enregistrez:

$ shelr list

1333815250: A Glances 1.3.7 demo
1333815271: A Glances 1.3.7 demo
1333815112: A first test

Le chiffre qui précède la description est l’identifiant unique de votre termcast.

Rejouer un termcast

On utilise shelr avec l’option play suivi du numero d’identifiant:

shelr play 1333815112

Le terminal devrait s’animer tout seul, comme par magie.

Petite remarque: seul l’affichage est rejoué, pas l’exécution des commandes !

Il est également possible de fournir en argument de la commande play, l’URL d’un termcast stocké sur le site Shelr.tv

Diffuser vos termcasts sur le site Shelr.tv

Pour partager vos termcast à partir dur site Shelr.tv, il faut d’abord créer un compte en vous rendant sur la page suivante. Si vous avez un compte GitHub, Twitter ou Facebook, il est alors facile de créer un compte en quelques secondes.

Après la création du compte, vous aller obtenir un code d’API:

Il faut alors saisir la commande « shelr setup CODEAPI » dans un terminal pour associer votre ordinateur à votre compte Shelr.tv.

Pour diffuser sur le site un termcast enregistré sur votre disque il faut saisir la commande (en remplaçant l’identifiant par celui obtenu par la commande shelr list):

shelr push 1333815112

Il est également possible de diffuser le dernier enregistrement en utilisant l’alias:

shelr push last

Vous pouvez voir de nombreux exemples de termcasts sur le site Shelt.tv.

Visualiser un termcast Shelr.tv depuis une console

Une fois diffusé, vous aller obtenir l’URL de votre termcast que l’on pourra rejouer dans sa console. Par exemple, pour voir une démonstration de la dernière version bêta de mon logiciel Glances:

shelr play http://shelr.tv/records/4f81498796608031bf000003.json

Notez le .json à la fin de l’URL…

Visualiser un termcast Shelr.tv depuis un navigateur

Il est également possible, pour ceux qui non pas encore Shelr installé sur leur système, de voir le termcast directement depuis un navigateur internet depuis la page suivante: http://shelr.tv/records/4f81498796608031bf000003

Conclusion

Voilà une « killer application » qui va sûrement envahir les blogs techniques dans les prochains mois !

PS: Le compte Shelr.tv du blog de Nicolargo est disponible ici.