Résumé
Vous développez de petits scripts, des petites commandes bien pratiques et permettant de gagner énormément de temps, mais personne ne les utilise arguant du fait que la ligne de commandes c'est trop compliqué ou pas assez convivial... Et si vous ajoutiez rapidement et simplement une interface graphique à vos scripts ?
Il faut se rendre à l'évidence : de nombreux utilisateurs de Linux, souvent les transfuges récents de Windows, sont réticents, voire incapables d'utiliser la ligne de commandes. Il faut également reconnaître que suivant le type de données manipulées, il est parfois plus simple de disposer d'une petite interface graphique. Lorsque l'on développe des scripts et que l'on souhaite les partager, il serait dommage de limiter leur utilisation aux seuls amateurs de la ligne de commandes. De plus, si l'on souhaite rester dans la philosophie Linux, quoi de plus naturel que d'offrir à l'utilisateur la possibilité d'utiliser une interface graphique ou la ligne de commandes suivant ses préférences ?
Zenity est un outil assez complet permettant d'afficher des boîtes de dialogue GTK+ et d'interagir avec un script shell. Bien évidemment, ce logiciel n'est pas aussi puissant qu'une utilisation native de la bibliothèque GTK+... Mais pour de petites interfaces, c'est vraiment beaucoup plus simple et beaucoup plus rapide à implémenter. Dans cet article, je vous propose de découvrir quelques boîtes de dialogue disponibles et la manière de les utiliser pour communiquer avec vos scripts shell ou même Python.
1. Une fenêtre de notification
La syntaxe de la commande zenity comporte de nombreuses options relatives au type de boîte de dialogue que l'on souhaite afficher. Nous allons commencer par l'élément le plus simple : la fenêtre de notification prise au sens large. Une telle fenêtre contient un message suivi d'un bouton permettant de refermer la fenêtre une fois le texte lu.
Avant de commencer, encore faut-il disposer de la commande zenity... Par défaut, Zenity est installé sur de nombreuses distributions. Si ce n'est pas le cas pour vous, utilisez la commande associée à votre gestionnaire de paquetages. Par exemple, sur les distributions basées sur Debian, il faudra exécuter :
sudo aptitude install zenity
Revenons maintenant à la syntaxe de la commande. Pour afficher une fenêtre telle que celle présentée en figure 1 et contenant le message d'avertissement « Attention : sortie de l'école dans 10mn », il faudra taper :
zenity --warn --text="Attention : sortie de l'école...