[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Gelöst] Re: KWin dbus Befehl mit anderem User



Am 18.09.2017 um 21:28 schrieb Sebastian Reinhardt:
> Hallo,
>
> Ich hab mir hier ein kleines Perl-Script "gebastelt". Das
> startet(attached/ bzw. stopt(detached) das "softHDDevice" von "vdr". Da
> das "softHDDevice" mit dem Compositing bei KDE nicht klar kommt, da
> laufen Bild und Ton nicht synchron, schalte ich das beim Starten des
> "softHDDevice" automatisch ab und beim Schließen wieder an.
>
> Das funktioniert problemlos, wenn ich das als angemeldeter User
> ausführe. Nun kann ich das aber auch aus dem "vdr" mit der
> IR-Fernbedienung bedienen (das Script aufrufen). Dabei wird aber das
> Compositing nicht geschaltet. Scheinbar bekommt das Script, wenn es aus
> dem vdr heraus als User "vdr" gestartet wird keinen Zugriff auf "KWin"
> oder "dBus" des Desktop-Nutzers. Dann liefert z.B. der Befehl "qdbus
> org.kde.kwin /KWin compositingActive" keine Rückmeldung....
>
> Gestartet bzw. gestoppt wird das "Compositing" im Script mit dem Befehl:
> "qdbus org.kde.kwin /KWin toggleCompositing"
>
> Hat da jemand eine Idee, wie man das sinnvoll lösen kann?
>
Hallo,

Hab selber eine Lösung gefunden:

"DISPLAY=:0 sudo -u $DISPLAY_USER qdbus org.kde.kwin /KWin
compositingActive"

Nat. wird vornweg der Nutzer, der das Script ausführt, mit dem Nutzer,
der den Bildschirm ausführt, verglichen und auch die X-Servernummer
(hier ":0") ermittelt. Nur, wenn die User nicht gleich sind, wird das
Kommando so angewendet. Auch musste ich eben den Systemnutzer "vdr" in
die "sudoers" eintragen ("vdr ALL=(ALL) NOPASSWD: ALL"). Gefällt mir
noch nicht 100%'ig, aber geht erst mal.

-- 
Mit freundlichen Grüßen

Sebastian Reinhardt



Reply to: