Pour autant que je sache, tous les raccourcis du lanceur Unity ont un fichier *.desktop correspondant. J'ai un raccourci (pour skrooge ) qui n'a pas d'icône. Comment puis-je trouver le fichier *.desktop correspondant à ce raccourci afin d'y ajouter une icône ?
Réponses
Trop de publicités?Vous pouvez trouver tous les répertoires contenant des fichiers de bureau dans la variable d'environnement XDG_DATA_DIRS. Les fichiers *.desktop peuvent se trouver dans le répertoire applications
dans chacun des répertoires de cette variable. Par exemple :
> echo $XDG_DATA_DIRS
/usr/share/ubuntu:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop
Vous pouvez utiliser ce bash script pour lister tous les fichiers du bureau utilisés par le système (par exemple pour construire le panneau ou le menu des applications) :
for p in ${XDG_DATA_DIRS//:/ }; do
find $p/applications -name '*.desktop'
done
Je n'ai pas trouvé de documentation à ce sujet mais il y a quelques informations sur cette variable d'environnement ici : https://unix.stackexchange.com/a/531664
Je ne sais pas encore quel fichier .desktop prend effet. Ma meilleure supposition est, à partir de https://wiki.archlinux.org/index.php/Desktop_entries pour faire un script comme celui-ci et l'exécuter :
#!/bin/sh
# try to find the effective desktop file
# (there seems to be no documented standard for this)
use_if_desktop_file () {
if [ -r "$1" ] &&
[ "$(xdg-mime query filetype "$1")" = application/x-desktop ]; then
echo "$1"
exit
fi
}
for d in ~/.local/share/applications /usr/local/share/applications \
/usr/share/applications; do
use_if_desktop_file "$d/$1"
use_if_desktop_file "$d/$1.desktop"
done
# no file found
exit 1
- Réponses précédentes
- Plus de réponses