Je rappelle que mon problème de base était de concevoir un lanceur à mettre dans un dock ou dans un tableau de bord assurant le lancement d'une application graphique (ex.: xed) avec les privilèges administrateur.
Bien sûr, on obtient ce lancement avec la commande suivante dans un terminal ou en passant par "Alt F2" ou dans la ligne "exec" d'un lanceur:
Ça ouvre un terminal qui demande le mot de passe. Ce terminal se ferme immédiatement après la fermeture de l'application demandée (ici xed)
La méthode est assez propre si ce n'est ce terminal qui reste inutilement ouvert à côté.
On peut aussi lancer via la commande :
C'est encore moins joli du fait que le terminal ne se ferme pas; en outre, ça ne marche pas dans un lanceur ni par "Alt F2".
Voici ma solution :
créer un dossier "Applications_root" (ou tout autre nom) dans ~/.local/share/ (L'emplacement n'est pas impératif mais me semble assez élégant et évite de mélanger torchons et serviettes)
-créer dans ce dossier ~/.local/share/Applications_root/ un fichier exécutable bash nommé par exemple "lance_xed" contenant ceci :
Code : Tout sélectionner
#!usr/bin/bash
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY "xed" && exit
se rendre dans ~/.local/applications/ et y créer un fichier .desktop nommé comme vous voulez contenant ceci :
Code : Tout sélectionner
[Desktop Entry]
Name=Text Editor
Name[fr]=Éditeur de texte (admin)
Comment[fr]=DANGER ! Privilèges administrateur
Exec=/home/jd/.local/share/Applications_root/lance_xed
Terminal=false
Type=Application
Icon=/home/jd/.local/share/Icones_et_avatars/admin-text.png
J'ai copié le lanceur xed de /usr/share/applications/ , supprimé les lignes inutiles, changé l'icône pour en montrer la particularité, le commentaire, et, dans la commande "exec" la référence au fichier bash ci dessus.
Ce lanceur peut maintenant être tiré dans un dock.
Au clic dessus, on obtient cette fenêtre :
et après validation le programme appelé avec les privilèges root.
soit exactement ce que je demandais et parfaite imitation de "gksudo".
En étant arrivé là de manière un peu empirique en suivant la logique de ma pensée je ne sais pas si c'est bien catholique. En effet, mes compétences informatiques sont insuffisantes mais ça fonctionne.
J'attends toutes remarques utiles et je remercie vivement tous ceux qui se sont penchés sur le sujet. Je passe en "résolu"
Il nous fallut bien du talent pour être vieux sans être adulte (Jacques Brel : Chanson des vieux amants)
Pc : Gigabyte B550M DS3H | Linux Mint 21.3 Virginia | Cinnamon 6.0.4 | 5.15.0-91-generic x86_64 bits | AMD Ryzen 5 4600G with Radeon Graphics bits: 64 type: MT MCP smt: enabled | 32 Go | Advanced Micro Devices, Inc. [AMD/ATI] Renoir