Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 21/11/2022, à 23:00

Arbiel

[Abandon] Lanceurs installés dans des répertoires devenus inactifs

Bonsoir

J'ai créé des lanceurs dans des répertoires divers et variés. Ils sont tous exécutables et fonctionnaient antérieurement à la 20.04, mais ils ne sont plus opérationnels, comme, par exemple ce lanceur :

arbiel@arbiel-NK3S-8-S4:~$ lanceur='/home/remi/Documents/programmation/Aide/Freedesktop/Page d'\''accueil freedesktop.desktop' 
arbiel@arbiel-NK3S-8-S4:~$ ls -l "$lanceur" && cat "$lanceur"
-rwxr-xr-- 1 arbiel arbiel 209 mai    5  2019 "/home/remi/Documents/programmation/Aide/Freedesktop/Page d'accueil freedesktop.desktop"
[Desktop Entry]
Type=Application
Version=1
StartupNotify=true
Terminal=false
Comment=Créé par forum le 23/11/16
Name=Page d'accueil freedesktop
Icon=firefox
Exec=xdg-open "https://www.freedesktop.org/wiki/"
arbiel@arbiel-NK3S-8-S4:~$ 

À vrai dire, je ne suis pas certain que ce dysfonctionnement soit apparu avec la 20.04. Ce peut être à l'occasion de l'achat de ma nouvelle machine. Ces deux événements ont peut-être été simultanés.
Depuis, j'ai modifié quelques lanceurs, de la manière suivante

arbiel@arbiel-NK3S-8-S4:~$ lanceur='/home/remi/Documents/programmation/Aide/Freedesktop/Spécifications des lanceurs - dernière version.desktop' 
arbiel@arbiel-NK3S-8-S4:~$ ls -l "$lanceur" && cat "$lanceur"
-rwxr-xr-- 1 arbiel arbiel 77 nov.  21 21:57 '/home/remi/Documents/programmation/Aide/Freedesktop/Spécifications des lanceurs - dernière version.desktop'
xdg-open "https://specifications.freedesktop.org/desktop-entry-spec/latest/"
arbiel@arbiel-NK3S-8-S4:~$ 

et bien sûr, cela fonctionne.

Comment rendre mes "vrais" lanceurs opérationnels, quelle que soit leur localisation ?

Arbiel

Dernière modification par Arbiel (Le 24/11/2022, à 14:34)


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#2 Le 22/11/2022, à 07:06

iznobe

Re : [Abandon] Lanceurs installés dans des répertoires devenus inactifs

bonjour , vu : https://doc.ubuntu-fr.org/xdg-open

il se peut que le navigateur par defaut ne soit pas defini dans ta distri ( cela arrive souvent lorsque firefox est installé en snap , verifiable avec la commande :

snap list

)

Si c' est le cas , tu peux ( si tu utilises firefox par exemple ) , mettre dans ta ligne exec :

Exec=firefox "https://www.freedesktop.org/wiki/"

ou installer une version de firefox au format .DEB ( et la definir par defaut ) .

Dernière modification par iznobe (Le 22/11/2022, à 07:09)


retour utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .

Hors ligne

#3 Le 22/11/2022, à 15:55

Arbiel

Re : [Abandon] Lanceurs installés dans des répertoires devenus inactifs

Bonjour iznobe

Je te remercie pour ces précisions. Cependant, firefox n'a pas été installé en snap

arbiel@arbiel-NK3S-8-S4:~$ snap list | grep firefox
arbiel@arbiel-NK3S-8-S4:~$ 

et j'utilise xdg-open de préférence à l'appel du logiciel par défaut, pour ne pas avoir à changer de nombreux fichiers si le logiciel par défaut vient à changer.

Et, dans mon cas, la commande

xdg-open "https://specifications.freedesktop.org/desktop-entry-spec/latest/"

fonctionne parfaitement. Et mes lanceurs fondés sur le même modèle (xdg-open) et enregistrés dans ~/.local/share/applications fonctionnent, de même que mes alias.

Arbiel


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#4 Le 22/11/2022, à 16:00

iznobe

Re : [Abandon] Lanceurs installés dans des répertoires devenus inactifs

Dans ce cas , enleve les 3 W de l' adresse de ta ligne exec : https://freedesktop.org/wiki/  et dis voir si cela fonctionne .

Dernière modification par iznobe (Le 22/11/2022, à 16:00)


retour utilisable de commande
MSI Z490A-pro , i7 10700 , 32 GB RAM .

Hors ligne

#5 Le 23/11/2022, à 02:41

Coeur Noir

Re : [Abandon] Lanceurs installés dans des répertoires devenus inactifs

Ubuntu, avec Gnome et Nautilus ?

Si oui, cherche pas trop loin : Nautilus n'exécute plus. Sauf les .desktop et à condition qu'ils se trouvent dans {~/.local}ou{/usr}/share/applications ou ~/Bureau ( après autorisation ).
lanceur-gnome.png

Dernière modification par Coeur Noir (Le 26/11/2022, à 00:19)


DébuterDocBien rédigerRetour commandeInsérer image | illustrations & captures d'écran <>

En ligne

#6 Le 24/11/2022, à 14:33

Arbiel

Re : [Abandon] Lanceurs installés dans des répertoires devenus inactifs

Bonjour

@Coeur Noir

J'ai déplacé mon lanceur dans les différents répertoires que tu as mentionnés. Il n'a fonctionné dans aucun d'eux.

J'abandonne l'idée d'utiliser un lanceur dans un contexte autre que la barre des lanceurs, en dehors de laquelle ils n'ont d'ailleurs aucun avantage, si ce n'est celui d'afficher une image. Fonction dont je n'ai nul besoin.

Arbiel


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#7 Le 25/11/2022, à 03:43

Coeur Noir

Re : [Abandon] Lanceurs installés dans des répertoires devenus inactifs

Arbiel a écrit :

J'ai déplacé mon lanceur dans les différents répertoires que tu as mentionnés. Il n'a fonctionné dans aucun d'eux.

Note, il faut impérativement que ce soit un lanceur bien écrit, au format .desktop qui contiendra à minima :

[Desktop Entry]
Type=Application
Terminal=false
Name=Page d'accueil freedesktop
Icon=firefox
Exec=xdg-open "https://www.freedesktop.org/wiki/"

fichier nommé comme-tu-veux.desktop et enregistré sous /usr/share/applications ( côté système, pour tous les utilisateurs ) ou ~/.local/share/applications ( pour l'utilisateur de cette session uniquement ; remplacera un lanceur de même nom qui proviendrait de /usr/share/applications ).
Placés là, les lanceurs sont alors visibles dans le menu des applications - vrai pour tous les env. de bureau.
De là, en fonction de l'env. de bureau, tu peux ensuite placer ce lanceur ailleurs : mettre en favori, l'épingler, dans un dock ou un panel ou sur un bureau…
Sous Gnome~Nautilus, un fichier .desktop n'a pas besoin d'être exécutable ( puisque de toute façon Nautilus n'exécute plus rien… ) ce qui compte c'est son emplacement.

Par défaut, dans un .desktop :
⋅ Exec= ira regarder dans les chemins du $PATH ( dont ~/.local/bin ) s'il trouve un élément de nom correspondant ;
⋅ Icon= ira regarder dans /usr/share/icons et ~/.local/share/icons s'il trouve un élément de nom correspondant. Et dans ~/.icons aussi par souci de compatibilité ( chemin déprécié. )
Sinon il faut des chemins absolus vers ces éléments ( un fichier exécutable, un fichier image pour une icône. )

Donc tu peux placer sous ~/.local/bin ( directement ou via des liens symboliques ) toutes sortes de machins exécutables, avec des noms en un seul mot et en minuscules ( important ) :
⋅ sans rien faire de plus en tapant ces noms dans un terminal, tu lances ces éléments ( qui eux devront porter le droit d'exécution ) ;
⋅ et dans un fichier .desktop, à la ligne Exec= tu utilises ces mêmes noms.

Ça peut paraître compliqué mais ça a au moins un avantage : une fois qu'un lanceur est bien fait, on n'a plus à revenir dessus, c'est seulement l'élément qu'il cible qu'on modifiera éventuellement.

Mais ça implique un fichier .desktop en bonne et due forme.

Dernière modification par Coeur Noir (Le 25/11/2022, à 03:53)


DébuterDocBien rédigerRetour commandeInsérer image | illustrations & captures d'écran <>

En ligne

#8 Le 25/11/2022, à 19:13

Arbiel

Re : [Abandon] Lanceurs installés dans des répertoires devenus inactifs

Bonsoir

@Coeur Noir
Après plusieurs manipulations infructueuses dont je n'ai pas mémorisé exactement la succession, j'ai finalement réussi à ce que mon lanceur fonctionne.

Il est clair que ma configuration peut paraître compliquée et que de plus simples doivent exister.

Je suis parti du principe (ou plutôt de l'hypothèse) qu'une nouvelle installation qui utiliserait le même répertoire pour /home que l'installation courante, pourrait y remplacer des fichiers de paramètres d'une quelconque application par des fichiers qui se trouveraient incompatibles avec la version courante. Une telle situation rendrait bien difficile un retour de cette nouvelle installation à l'installation courante.

J'ai ainsi créé dans une partition distincte de ma partition /home un répertoire "gnu", que je monte sur /gnu et dans lequel j'enregistre les fichiers systèmes que je suis conduit à modifier. Je monte ces fichiers modifiés par fstab sur les fichiers systèmes correspondants. J'ai procédé de la sorte pour mes lanceurs, enregistrés dans /gnu/lanceurs que je monte sur ~/.local/share/applications. Je n'ai aucun lanceur dans le répertoire sous-jacent.

Il est possible que les difficultés que j'ai rencontrées viennent de cette manière de faire.

Pour arriver à faire fonctionner le lanceur, j'ai supprimé le montage de /gnu/lanceurs et j'ai copié le lanceur dans ~/.local/share/applications. Je l'ai alors vu apparaître dans la liste des applications. Je l'ai ajouté à la liste des favoris (la barre des lanceurs). J'ai déplacé le lanceur dans /gnu/lanceurs, remis en place le montage. Il est resté dans la barre des lanceurs, et fonctionne.

J'ai créé un lien symbolique sur mon bureau, mais ce lien ne fonctionne pas.

Il serait peut-être plus simple d'enregistrer les fichiers modifiés dans les répertoires adéquates de /home/$USER. L'avantage, à mes yeux, de ma manière de procéder est que fstab indique clairement les chemins des fichiers que je modifie, et je n'ai pas besoin de les mémoriser.

Mais, globalement, dans la mesure où nautilus ne sait pas traiter ces lanceurs éparpillés dans dans répertoires quelconques comme ils sont traités dans la barre des lanceurs, il n'y a pas vraiment à les préférer à l'enregistrement d'une simple commande dans un fichier exécutable.

Je me rabats donc sur une telle solution.

Arbiel


Arbiel Perlacremaz
LDLC Aurore NK3S-8-S4 Ubuntu 20.04
Abandon d'azerty au profit de bépo, de google au profit de Lilo et de la messagerie électronique violable au profit de Protonmail, une messagerie chiffrée de poste de travail à poste de travail.

Hors ligne

#9 Le 25/11/2022, à 19:36

Coeur Noir

Re : [Abandon] Lanceurs installés dans des répertoires devenus inactifs

Ce qui ne m'enlève toujours pas ce doute, dans ta situation :
un lanceur - dans Ubuntu~Gnome avec Nautilus - ne peut pas être autre chose qu'un fichier .desktop ( donc rédigé en respectant les conventions de ce format de fichier ) et ne fonctionnera qu'à partir des 2 emplacements évoqués.

S'il s'agit d'exécuter d'autres types de fichiers ( par ex. des scripts bash ) alors il vaut mieux les enregistrer dans des emplacements prévus pour des exécutables ( /usr/bin, ~/.local/bin ) et alors tu pourras créer des fichiers .desktop dont la ligne Exec= cible ces exécutables.

L'idée en gros c'est qu'il n'y a plus de méthode « graphique » pour lancer directement un exécutable, en dehors d'un lanceur .desktop en bonne et due forme, qui lui-même cible un exécutable rangé dans les endroits conventionnels.

Tes « appli's » ( ou scripts, ou autres exécutables ) perso's, tu les ranges dans /home/$USER/.local/bin ;
Les lanceurs pour ces appli's perso's, tu les ranges dans /home/$USER/share/applications

D'une installation à l'autre, tu sauvegardes le contenu de ces 2 dossiers → pas besoin de fstab pour ça.

Sinon tu peux t'inspirer de ça - éventuellement sans la partie profil/icône dédiés.

Dernière modification par Coeur Noir (Le 26/11/2022, à 00:14)


DébuterDocBien rédigerRetour commandeInsérer image | illustrations & captures d'écran <>

En ligne