Pensez-vous que la création de fichiers .desktop est difficile sous Linux ? Nous proposons quelques solutions

Créer des fichiers .desktop sous Linux

"Retournez à Windows", m'a dit la personne qui m'a initié à Linux quand il a vu que certaines choses m'étouffaient et qu'il a voulu faire comme dans le système Microsoft. Il m'a aussi dit que "Linux n'est pas Windows", et c'est vrai pour le meilleur ou pour le pire. L'inconvénient est qu'il y a des choses qui sont très simples sur d'autres systèmes et pas si simples sur ceux basés sur Linux, comme créer des fichiers .desktop, également appelés raccourcis.

Mais vous devez différencier les types de raccourcis, car tous ne sont pas identiques. Pour l'instant, je peux penser à au moins deux types de raccourcis : certains sont des liens symboliques ou liens symboliques, qui sont un très petit fichier que nous pouvons exécuter pour accéder à l'original auquel il est lié ; d'autres sont des fichiers .desktop, qui sont un type de lien direct qui contient des informations telles que le nom d'une application et sa version, et sont les fichiers responsables du lancement de nombreuses applications sous Linux.

Création de fichiers .desktop avec une application d'interface utilisateur

comme nous expliquons Ici, chez LXA, il y a des années, créer des fichiers .desktop sous Linux n'était pas si compliqué que ça. De plus, le texte fourni sert de un modèle que vous n'avez qu'à modifier pour chaque application. Mais les choses peuvent encore être simplifiées.

Disponible sur Flathub, il existe une application appelée Créateur de fichiers de bureau. en gros c'est une interface dans lequel nous lui indiquerons le nom, le chemin vers l'exécutable, s'il sera exécuté dans le terminal ou non... et elle se chargera de faire le reste pour nous. Mais si nous voulons quelque chose d'encore plus simple, nous pouvons créer nous-mêmes un script/mini-application pour faire tout cela depuis le terminal (vu dans l'image d'en-tête). Le code en Python serait le suivant :

#!/usr/bin/env python3 from io import open import os file_name = input("Nommez le fichier .desktop : ") version = input("Application version : ") app_name = input("Application name : ") app_comment = input("Commentaire de l'application : ") executable = input("Chemin vers l'exécutable : ") icon = input("Chemin vers l'icône de l'application : ") terminal = input("Est-ce qu'il s'exécutera dans le terminal ? (Vrai pour oui, Faux pour non ): ") tipo_app = input("Type d'application (mettez Application si vous avez des doutes) : ") categories = input("Catégories dans lesquelles cette application appartient : ") folder = input( "Dossier où se trouve l'exécutable : ") def createDesktop() : note = open(file_name + ".desktop", "w") entry_text = ('[Desktop Entry]') version_text = ('\nVersion=' + version ) app_name_text = ('\nName=' + app_name) comment_text = ('\nComment=' + app_comment) executable_text = ('\nExec=' + exécutable) icon_text = ('\nIcon=' + icône) terminal_text = ('\ nTerminal=' + terminal) text_tipoapp = (' \nType=' + type_app) text_categorias = ('\nCategories=' + categories) text_startupNotifyApp = ('\nStartupNotify=false') text_path = ('\nPath=' + dossier) text = (input_text + version_text + application_name_text + comment_text + executable_text + icon_text + terminal_text + app_type_text + categories_text + startupNotifyApp_text + path_text) note.write(text) note.close() appName = app_name + ".desktop" os.system('chmod + x ' + appName + '\nmv ' + appName + ' ~/.local/share/applications') print("Fichier .desktop créé avec succès. Il se trouve dans ~/.local/share/applications/ et devrait également apparaître dans le tiroir de l'application.") createDesktop()

expliquer le code

De ce qui précède :

  • La première ligne est ce qu'on appelle un "Shebang" et indique avec quoi le script doit être ouvert (cela peut être différent sur certaines distributions Linux). Cela ne devrait pas être nécessaire si nous naviguons vers le chemin où nous enregistrons le fichier .py et le lançons avec "python nom_fichier.py», mais oui si on veut s'attaquer un peu plus comme on vous expliquera plus tard.
  • Les deuxième et troisième lignes importent ce qui est nécessaire pour créer le fichier, puisqu'il est nécessaire de pouvoir écrire sur le disque dur.
  • Des variables sont ensuite créées qui seront ensuite utilisées pour écrire le contenu dans le fichier .desktop.
  • Dans la fonction createDesktop(), il ouvre d'abord un fichier, puis ajoute les paramètres d'informations de raccourci, puis crée le fichier .desktop, lui donne les autorisations d'exécution et le déplace vers le dossier ~/.local/share/.applications. Et ce serait tout.

Je dirais que cela ne pourrait pas être plus facile, mais ce serait plus facile s'il y avait un moyen de les créer avec un menu contextuel de Nautilus, Dolphin ou le gestionnaire de fichiers que nous utilisons. Le problème est que sous Linux, cela ne fonctionne pas comme ça. Dans les fichiers .desktop, vous pouvez également ajouter d'autres informations, telles que des traductions et d'autres moyens d'ouvrir des applications (comme le mode incognito dans un navigateur), de sorte que la création de ces types de raccourcis n'est pas si simple, ce qui vaut la redondance.

Et j'ai déjà oublié, si on veut pouvoir lancer le script précédent depuis n'importe quelle fenêtre de terminal, il faut déplacez le fichier .py que nous avons créé dans le dossier /bin. Ne laissez personne qui ne sait pas ce qu'il fait s'y habituer, car les exécutables vont dans ce dossier et vous devez faire attention à ce que vous touchez. Dans tous les cas, il y a toujours des options. Il suffit de savoir où chercher. De plus, créer et partager est également une chose courante sous Linux.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.