web-dev-qa-db-fra.com

Pourquoi mon lanceur personnalisé s'ouvre-t-il sous une icône distincte?

J'ai créé un fichier de lancement personnalisé:

[Desktop Entry]
Type=Application
Name=P4V
Comment=Perforce Visual Client
Icon=/usr/lib/p4v/P4VResources/icons/P4-V_128x128.png
Exec=/usr/bin/p4v
Terminal=false
Categories=Development;

Et traîné ce fichier sur mon lanceur. Cependant, lorsque je clique sur l'icône, l'application s'ouvre sous une 2ème icône différente (je clique sur celle du haut, mais sur l'application située sous celle du bas):

launcher icons

L'icône inférieure n'est présente qu'après le lancement de l'application à l'aide de l'icône P4v supérieure que j'ai ajoutée manuellement.

10
ctote

Si une application génère une seconde icône, pas étant générique

Si une application génère une seconde icône dans le lanceur Unity autre que que aa gris, icône générique, il doit déjà exister un (autre) lanceur existant, appelant p4v dans sa commande principale:

Le fichier .desktop d'une application a par définition une commande "principale" sur la première ligne, commençant par Exec=. C'est la commande qui est exécutée lorsque l'icône est cliquée dans le lanceur (Unity). En dehors de cela, un fichier .desktop () peut avoir une ou plusieurs sections de raccourci, disponibles lorsque vous cliquez avec le bouton droit de la souris sur l'icône représentant Unity lanceur.

Plusieurs fichiers .desktop appelant la même application dans leur commande principale

Les symptômes que vous rencontrez peuvent survenir lorsque plusieurs fichiers .desktop dans /usr/share/applications ou ~/.local/share/applications ont la même commande ("main-") dans leur en premier Exec= ligne, mais les fichiers portent un nom différent.

P4v par défaut devrait installer (et a probablement déjà installé) un fichier .desktop, nommé p4vasp.desktop dans /usr/share/applications.

Comment réparer
Votre problème devrait être résolu si vous supprimez votre propre fichier (probablement local) .desktop, puis exécutez p4v à partir de Dash et fixez-le au lanceur.

Que faire si vous souhaitez personnaliser le lanceur existant?

Si vous souhaitez modifier le comportement du fichier .desktop ou par exemple son icône:

  • copier le fichier de /usr/share/applications vers ~/.local/share/applications
  • ne pas changer le nom du fichier
  • ouvrez le fichier dans gedit (faites-le glisser sur une fenêtre gedit ouverte) et apportez les modifications souhaitées.
  • déconnectez-vous puis reconnectez-vous, la version locale du fichier .desktop annulera la version globale.

Pour revenir en arrière, supprimez simplement le fichier local, déconnectez-vous puis reconnectez-vous.

Relatif à ce post

9
Jacob Vlijm