Après avoir modifié un fichier de bureau dans /usr/share/applications
, j'ai besoin de rafraîchir le menu d'application de l'icône du lanceur pour que ma modification apparaisse. Par souci de clarté, le menu qui doit être modifié est celui qui apparaît avec un clic droit lorsque le pointeur se trouve sur une icône du lanceur (la grande barre pleine d'icônes sur le côté gauche de l'écran).
La meilleure réponse serait une simple ligne de commande.
Je n'utilise pas ubuntu-2d et je ne veux pas me déconnecter / me connecter.
Je connais une solution partielle:
unity --replace
recharge tout (décoration de fenêtre, zone de notification, ...)killall ubuntu-2d-launcher
est ubuntu-2d uniquement, mais si une commande similaire sur une ligne existe pour l'unité, ce serait une bonne solution.- la déconnexion puis la reconnexion fonctionnent également, mais je ne peux pas me permettre de perdre toute ma session juste pour mettre à jour le menu.
- sur ubuntu 14.04 Je n'ai pas ce problème: toute modification apportée aux fichiers "* .desktop" semble être répercutée en direct.
Aucune suggestion ? Existe-t-il un moyen grâce à ccsm?
unity --replace
travaux? Cela ne me dérange pas le rechargement de tout.unity --replace
Travaux confirmés dans Ubuntu 16.04 mais ne rechargeront pas les applications lourdes comme Chrome, Thunderbirds ...Réponses:
La manière la plus élégante est de "redémarrer" l'icône; pour supprimer l'icône de sa position dans le lanceur et la replacer sur la même position. Le script ci-dessous fait le travail. C'est en python2, car 12.04 n'est pas fourni avec python3 par défaut. Cependant, il peut également être utilisé en python3, ne changez le shebang que dans ce cas. Le script peut également être utile (sur les versions ultérieures d'Ubuntu également) pour appliquer immédiatement une icône modifiée par exemple.
Vous pouvez simplement l'utiliser en appelant le script, avec le fichier de bureau modifié comme argument (voir ci-dessous).
Remarque : dans 12.04, si une icône actualisée représente une application en cours d'exécution , l'application en question se bloquera, comme décrit dans cette question , donc si vous l'utilisez, assurez-vous que l'application n'est pas en cours d'exécution. En 14.04, l'icône ne sera tout simplement pas actualisée en cas d'application en cours.
Le scénario
Comment l'utiliser
refresh.py
Actualisez l'icône par la commande:
Si vous voulez vraiment le rendre lisse
Rendez le script exécutable, supprimez l'
.py
extension, enregistrez-le~/bin
. Après vous être déconnecté / connecté, vous pouvez l'exécuter avec la commande:la source