Page 1 sur 1

Desktop des applis ne fonctionne plus en dehors du bureau

Posté : jeu. 10 févr. 2022 16:50
par Christian_B
Bonjour,
J'avais déplacé dans des sous-répertoires du bureau (à l'époque d'une version 20.x antérieure, je ne sais plus laquelle) des lanceurs d'application d'utilisation assez rare qui encombraient mon fond d'écran.
Bien qu'on ne puisse pas les créer ailleurs que sur le bureau, il fonctionnaient et l'icône s'affichait normalement (dans Caja) une fois déplacés.

Or ce n'est plus le cas, depuis Mint 20.3 Mate je pense, à moins qu'il se soit passé autre chose récemment.
Les fichiers desktop s'affichent avec leur nom réel (... .desktop), sans icône et un double clic donne le message "Application non fiable" quand on clique dessus.

• Autres constatations :
- Sous ~/.local/share/applications aussi les fichiers apparaissent avec leur vrai nom et sans icônes.
- Par contre les fichiers sous /usr/share/applications s'affichent normalement (y compris sans passer admistrateur).
- Si je fais glisser une appli du sous-répertoire où je l'avais mise pour la remettre sur le bureau, elle apparaît et fonctionne à nouveau bormalement.
- Si j'ouvre le répertoire ~/Bureau, les exécutables fonctionnent et leur affichage est normal (dans ~/Bureau mais toujours pas dans les sous-répertoires), donc la différence de comportement n'est pas dans un traitement particulier des item du fond d'écran mais dans le comportement différent delon les répertoires. :?
- J'ai essayé avec Dolphin : tout marche normalement.

À tout hasard, j'ai réinstallé les principaux paquets concernant Caja et relancé la session graphique, sans effet.
Je n'ai pas osé désinstaller d'abord, ignorant les conséquences.

Apparemment Caja ne se sert plus des paramètres des fichiers desktop des applis (Name, Icon etc) ailleurs que sur le bureau ou pour les fichiers système. Par contre les répertoires et autres fichiers restent normaux.

Le problème est donc de savoir où Caja prend les infos pour utiliser ou non le contenu des fichiers Desktop en fonction du répertoire.
Quelqu'un a-t-il une piste ? Merci.

Re: Desktop des applis ne fonctionne plus en dehors du bureau

Posté : ven. 11 févr. 2022 09:38
par cyrille
ls /usr/share/applications/ contient les lanceurs qui apparaîtront dans ton menu

Prends un lanceur qui n'est pas fonctionnel et donnes nous un cat de ce fichier

Remets ce lanceur ensuite à l'endroit où il marche et refait un cat de ce fichier
Bien qu'on ne puisse pas les créer ailleurs que sur le bureau, il fonctionnaient et l'icône s'affichait normalement (dans Caja) une fois déplacés.
je ne comprends pas, la commande

Code : Tout sélectionner

ln -sf CIBLE NOM_LIEN
permet de realiser cette action. Par exemple :

Code : Tout sélectionner

ln -sf /home/ragnarok/wifi.sh /home/ragnarok/compil/Test.sh
Le lien / lanceur (si s'en est un) a bien été créé ailleurs que sur le bureau

Code : Tout sélectionner

ls -l /home/ragnarok/compil/
total 48
-rwxr-xr-x 1 ragnarok ragnarok 16616  8 janv.  2021 hello
-rw-r--r-- 1 ragnarok ragnarok    94  8 janv.  2021 hello.c
-rwxr-xr-x 1 ragnarok ragnarok 17184  8 janv.  2021 test2
-rw-r--r-- 1 ragnarok ragnarok   657  8 janv.  2021 test2.c
lrwxrwxrwx 1 ragnarok ragnarok    22 11 févr. 09:35 Test.sh -> /home/ragnarok/wifi.sh

Re: Desktop des applis fonctionnent quand ils veulent

Posté : sam. 12 févr. 2022 01:29
par Christian_B
@cyrille
Je n'utilise pas ln pour créer des "lanceurs d'applications" (ou plutôt des alias avec cette commande). Il n es'agit pas de shell ou d'exécutables mais de fichiers desktop.

Sous Mate, on appelle "lanceur" un fichier desktop créé sur le bureau (fond d'écran) ou un tableau de bord, par le menu contextuel ("Créer un lanceur ..." dans le cas du bureau).
Un tel fichier est d'ailleurs très similaire à un fichier desktop créé à partir d'un item de menu par "Ajouter au bureau", sauf qu'il ne contient pas les infos détaillées de langues, catégories etc.

Exemple de déclaration :
Type : Application
Nom : Notes2
Commande : sticky
Commentaire :

crée un fichier Notes2.desktop :

Code : Tout sélectionner

#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Name[fr_FR]=Notes2
Exec=sticky
Icon=sticky
Icon[fr_FR]=sticky
Name=Notes2
Je crée aussi un lanceur "Notes" par le menu ( ⇒ fichier sticky.desktop) de même aspect et fonctionnement.
Je les déplace dant un nouveau sous répertoire ~/Bureau/Test et ... les deux sont bons - :-o :shock:
Par contre mes anciens lanceurs déplacés ne le sont toujours pas
Alerte rouge. Tests de créations, déplacements : Conclusion étrange (faut suivre) :
- Les nouveaux lanceurs dans un nouveau sous-répertoire sont bons.
- Les lanceurs (anciens ou nouveaux) que j'ai déplacés (à la souris) dans un ancien sous-répertoire deviennent défectueux, même en les remettant dans un autre. En quelque sorte mes anciens sous-répertoires portent la poisse :twisted:
Remarque : les fichiers desktop ne sont pas modifiés et le fait de les marquer comme exécutables ne change rien.

Sauf que ... je redémarre l'interface graphique et tous mes lanceurs hors bureau deviennent mauvais :x
Conclusion provisore : il doit exister quelque part une liste au fonctionnement compliqué qui détermine comment se comportent les lanceurs (avertissement, icône ....) ou plutôt comment Caja s'en sert.
Cela rejoint le problème de savoir pourquoi les fichiers sous ~/.local/share/Applications comportent toujours l'avertissement "Lanceur d'application non fiable".

Apparemment cette information était conservée correctement et ne l'est plus. Régression de la version 20.3 ? :cry: :cry: :cry:

Re: Desktop des applis ne fonctionne plus en dehors du bureau

Posté : sam. 12 févr. 2022 08:11
par cyrille
Je n'utilise pas ln pour créer des "lanceurs d'applications" (ou plutôt des alias avec cette commande). Il n es'agit pas de shell ou d'exécutables mais de fichiers desktop.
ln ne crée pas de lanceur, simplement un lien symbolique entre fichiers|dossiers qu'ils soient executables ou non ...

Pour le reste, space, je n'ai pas mate...

Re: Desktop des applis ne fonctionne plus en dehors du bureau

Posté : sam. 12 févr. 2022 10:18
par Christian_B
Je sais bien, c'est pour ça que je parlais d'alias (plus ou moins synonyme de lien logique pour moi). Il y a eu un malentendu au départ.

Tu prenais l'exemple d'un shell, mais les applications graphiques habituelles (sous gtk) i.e. la plupart de celle que je démarre à partir d'une icône dans Caja, ne démarrent pas correctement dans un terminal ou à partir d'un script. Il leur faut le desktop. Dans le cas récent de Font Manager, j'ai appliqué ton idée de le démarrer à partir d'un terminal et il démarre (avec une fenêtre spartiate mais qui fonctionne, c'est l'essentiel). Mais derrière gtk crie au secours dans le terminal. Beaucoup d'applis ne fonctionnent pas du tout comme ça.

Dans le vocabulaire de Mate (pour les autres je pense qu'il y a un équivalent) "Application", dans le choix donné quand on crée un lanceur, signifie "Application graphique". On peut aussi choisir "Application dans un terminal" pour ouvrir un terminal et lancer facilement une commande avec des paramètres usuels usuels. Ou choisir "Emplacement" pour ouvrir un répertoire avec des propriétés différentes de celles d'un lien.

Pour voir, je fais :

Code : Tout sélectionner

ln -s /usr/share/applications/sticky.desktop ~/Bureau
ln -s /usr/share/applications/sticky.desktop ~/Bureau/Test/
Ça marche (faisable aussi par glisser-déposer), mais évidemment ça fait des liens aux propriétés bien différentes de celles des lanceurs.
Dans ce cas, par les propriétés de l'objet obtenu, je ne peux pas modifier par exemple la ligne de commande, faute de droits (heureusement) mais si j'utilise un lien depuis un fichier sous ~/.local/share/applications, l'original est modifié. Danger ! Pas le but si je veux personnaliser le lanceur du bureau.

Mon problème reste entier.

Re: Desktop des applis ne fonctionne plus en dehors du bureau

Posté : mar. 28 juin 2022 09:53
par thyam
Sujet de 2 mois ou plus sans réponse : sujet classé et verrouillé.
Si besoin de rouvrir => mp à un membre de l'équipe