====== Lanceurs : fichiers .desktop ======
* Objet : Donner un exemple de fichier lanceur "Desktop", facilement reproductible
* Niveau requis :{{tag>débutant avisé}}
* Commentaires : //Création d'un lanceur.//
* Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-)
* Suivi : {{tag>en-chantier à-tester à-placer}}
* Création par [[user>Debian Alain]] le 27/09/2018
* Testé par [[user>Debian Alain]] le 27/09/2018
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=277945#p277945|C'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
===== Introduction =====
L'exemple utilisé ici est celui de l'application Android Studio, livrée sous la forme d'une archive ZIP (pas d'installateur donc) compressée ; après décompression de l'archive dans le répertoire /opt/ :
ls /opt/android-studio/bin/
appletviewer.policy idea.properties printenv.py studio.sh
format.sh inspect.sh restart.py studio.vmoptions
fsnotifier lldb studio64.vmoptions
fsnotifier64 log.xml studio.png
===== Installation =====
Vous pouvez, éventuellement, installer l'éditeur de menus alacarte (pour [[doc:environnements:gnome|GNOME]]) ou mozo (pour [[doc:environnements:mate:mate|MATE]]) :
apt install alacarte
qui pourra vous servir à créer, gérer et maintenir vos menus.
===== Utilisation =====
Le fichier **.desktop** est à créer dans le répertoire ''/usr/share/applications/'' s'il doit être disponible pour tous les utilisateurs du système, ou dans le répertoire ''~/.local/share/applications/'' ou même sur le bureau (''~/Bureau/'') s'il ne doit être disponible que pour l'utilisateur courant (ou sur un système mono-utilisateur) :
nano /usr/share/applications/android-studio.desktop
[Desktop Entry]
Version=1.1
Type=Application
Terminal=false
Name=Android Studio
Exec=/opt/android-studio/bin/studio.sh
Icon=/opt/android-studio/bin/studio.png
Il n'est pas //indispensable// de renseigner les chemins absolus de l'exécutable et/ou de l'icône lorsqu'ils peuvent être trouvés via le [[doc:programmation:shell:path|path]] de l'utilisateur (lequel ne contient pas le répertoire /opt, en principe).
===== Alternative =====
Pour lancer un programme depuis le shell, vous pouvez alternativement créer un lien symbolique, en exécutant une commande [[doc:systeme:ln|ln]] de ce type :
ln -s /opt/android-studio/bin/studio.sh /usr/local/bin/android-studio
Explication : cette commande crée un **lien** symbolique, dans le répertoire ''/usr/local/bin/'', dont la **cible** est le script //studio.sh//, situé dans le répertoire ''/opt/android-studio/bin/''. La frappe de la commande //android-studio// lancera l'application Android Studio depuis la console.
===== Liens utiles =====
* [[https://web.archive.org/web/20120120073307if_/http://developer.gnome.org/integration-guide/stable/desktop-files.html.fr|Fichiers desktop : positionnement de votre application dans les menus du bureau]] (GNOME, KDE, Xfce, etc.)
* [[https://freedesktop.org/wiki/Specifications/desktop-entry-spec/|Desktop Entry Specification]] (documentation freedesktop de référence ; lire //Recognized desktop entry keys//)
* [[https://freedesktop.org/wiki/Specifications/menu-spec/|Desktop Menu Specification]] (documentation freedesktop de référence ; consulter //A. Registered Categories//)