2 votes

Comportement différent lors du lancement à partir du terminal au lieu du lanceur Unity

J'ai écrit deux programmes Perl/Gtk. Lorsqu'ils sont lancés à partir du menu du tableau de bord, ils fonctionnent parfaitement.

Cependant, si j'essaie de les lancer à partir du terminal en utilisant la même commande que celle qui se trouve dans leurs fichiers .desktop, leur lanceur Unity sera flou et restera inactif lorsqu'on cliquera dessus, si je le garde dans la barre Unity.

Le problème est résolu si la partie Exec du fichier de bureau est remplacée par

perl path_to_script

Cependant, cela entraîne d'autres problèmes, notamment un avertissement lintien et l'obligation pour toutes les applications Perl GUI exécutées à partir du terminal d'adopter le même lanceur.

Ce problème est assez ennuyeux car l'un des programmes dépend d'un autre programme (Python) pour être lancé et cela se traduit par un lanceur flou et inactif.

0voto

dgkontopoulos Points 21

J'ai trouvé ce qui n'allait pas. J'ai dû entrer la bonne StartupWMClass dans le fichier .desktop.

Pour ceux qui ont des difficultés, lancez l'application à partir du terminal et exécutez dans un autre terminal la commande

xprop | grep WM_CLASS

Cliquez sur votre application et la sortie de la commande précédente sera

WM_CLASS(STRING) = "result"

Ajoutez la ligne suivante au fichier .desktop :

StartupWMClass=result

Remplacez résultat par votre sortie.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X