Comment trouver les fichiers * .desktop?

85

Autant que je sache, tous les raccourcis de Unity Launcher ont un fichier * .desktop correspondant. J'ai un raccourci (pour skrooge ) qui n'a pas d'icône. Comment trouver le fichier * .desktop correspondant à ce raccourci pour pouvoir y ajouter une icône?

KOVIKO
la source

Réponses:

113

C'est probablement assis, /usr/share/applications/mais si vous voulez trouver tous les .desktopfichiers du système, lancez ceci:

find / -name '*.desktop'

ou

sudo updatedb
locate *.desktop

Pour trouver des fichiers avec "skrooge" dans leur chemin ou leur nom, ajoutez un grep à la commande:

locate *.desktop | grep -iR "skrooge"
Oli
la source
21
locate -i "*skrooge*.desktop". Bien qu’il y ait principalement trois endroits, l’unité cherchera des fichiers de bureau. ~/.local/share/applications, /usr/local/share/applicationsEt /usr/share/applications. S'il existe des fichiers de bureau pour la même commande à plusieurs endroits, il utilisera le plus à gauche des trois que j'ai énumérés.
geirha
Présenté comme /usr/share/applications/kde4/skrooge.desktop. Merci. :)
KOVIKO
33

Le système stocke les fichiers .desktop dans /usr/share/applications/. Malheureusement, si vous ouvrez ce dossier dans Nautilus, les fichiers .desktop apparaissent avec l’icône spécifiée dans le fichier et le nom du fichier appelé dans le fichier. Vous ne serez pas non plus autorisé à modifier ces fichiers en cliquant dessus et en sélectionnant Modifier.

Pour éditer ces fichiers, vous devez ouvrir ce dossier dans une fenêtre de terminal. Faire une lscommande affichera tous les fichiers .desktop avec leurs noms réels. Lorsque vous localisez le fichier .desktop que vous souhaitez modifier, lancez gksudo gedit {file-name}.desktop.

Il est de pratique courante de conserver tous les fichiers .desktop que vous créez ou modifiez dans votre dossier personnel ~/.local/share/applications.

fragos
la source
Courir à partir du terminal peut être plus pratique pour certains, mais il est également possible de faire glisser Nautilus vers gedit ou un autre éditeur de texte.
Jon Hanna
quel est le point du répertoire "~ / .local / share / applications"? Les fichiers ne semblent pas être utilisés. Je ne peux pas les ajouter comme "raccourci" à Unity.
Malachiasz
2
@Malachiasz En fait, les fichiers * .desktop à partir de ~/.local/share/applicationssont rechargés au redémarrage de la session. Alors, déconnectez-vous et reconnectez-vous. Notez que ceux-ci sont spécifiques à cet utilisateur.
akshay2000
J'ai aussi trouvé utile ce Q & A ici sur le site: Comment forcer Unity reload ~ / .local / share / applications /
hakre le
8

Quelques détails supplémentaires pour compléter les autres réponses:

En règle générale, les .desktopfichiers des packages sont situés dans /usr/share/applications.

Si vous le souhaitez, vous pouvez en copier un ~/.local/share/applicationset le modifier sans avoir besoin de sudo . Articles en ~/.local/share/applicationsseront prioritaires sur les éléments correspondants dans /usr/share/applicationset /usr/local/share/applications, mais ne sont visibles que pour votre utilisateur.

Vous pouvez également placer une copie modifiée dans /usr/local/share/applicationslaquelle elle remplacera n'importe quelle entrée tout en /usr/share/applicationsétant visible par l'ensemble du système.

Notez que vous ne devez pas éditer les .desktopfichiers /usr/share/applicationsdirectement; toute modification apportée sera automatiquement remplacée lorsque l'application sera mise à jour par le gestionnaire de packages.

Extrait d' ici

Sopalajo de Arrierez
la source
+1, la réponse la plus complète sur tous
Jon Bentley