J'utilise pam_usb et souhaite verrouiller / déverrouiller l'ordinateur lorsque la clé USB est retirée / insérée. J'utilise le verrouillage qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock et cela fonctionne parfaitement. Pour le déverrouillage, j'ai essayé une série de commandes que j'ai trouvées (la plupart d'entre elles sont agrégées ici ), mais ils ne fonctionnent pas. Plus précisément, si nous excluons ceux avec la syntaxe KDE 4, ils tombent dans 2 catégories: ceux qui utilisent qdbus (relevant path here, several variations exists) /MainApplication quit qui pendent complètement mon Xorg, et ceux qui utilisent killall contre le processus de l'écran, mais le processus redémarre immédiatement après cela!
Ma question est donc la suivante: comment déverrouiller par programmation l’écran de KDE5 verrouillé avec son casier standard?
kill `ps ax | grep "kscreenlocker" | grep -v grep | cut -d" " -f 1` ne vous sera pas d'une grande aide même si cela fonctionne dans mon cas particulier ...
qdbus org.freedesktop.ScreenSaver /ScreenSaver org.freedesktop.ScreenSaver.SetActive false ne déverrouille pas l'écran sur mon Arch Linux avec KDE Plasma 5.6.1
... org.freedesktop.SetActive true (c'est-à-dire en mode "économiseur") plutôt que via ... org.freedesktop.Lock (c'est-à-dire en mode "verrouillé"). C’est pourquoi j’ai dû recourir à kill sur tout kscreenlocker processus en cours d'exécution sous mon UID. kscreenlocker est ce qui exécute le ou les écrans de veille sélectionnés au moins dans ma configuration, cependant YMMV .
qdbus org.freedesktop.ScreenSaver /ScreenSaver org.freedesktop.ScreenSaver.Lockactive l’écran de veille en mode "verrouillé" {vous pouvez remplacer le dernier fragment parorg.freedesktop.ScreenSaver.SetActivetruemettre en place l’économiseur sans verrou} et, dans les deux cas, l’écran peut revenir avec ce dernier avecfalse- mais le moniteur (pas tout l'écran car j'ai deux moniteurs dans un virtuel ...