using OpenSUSE 13.2 32bit, I installed lxqt from the main repo (perhaps some files are from the lxde repo?)
my problem is lxqt uses xdg-su for granting root privileges, as lxqt seams to be using qt5 I installed libKF5Su5 but still lxqt uses a terminal for granting root privileges (basically for yast), what package am I missing, do I need to restart lxqt so that it uses libKF5Su5
?
libKF5Su5 is part of KDE Frameworks5 (“KDE 5”). I doubt that lxqt can use that.
Anyway, the desktop file for YaST says it should be started via xdg-su (it contains just the line “Exec=/usr/bin/xdg-su -c /sbin/yast2”), so there’s nothing wrong with that, that’s how it is designed.
It’s xdg-su’s job to find the best tool according to the desktop environment you use.
But AFAICS, xdg-su does not have the slightest idea that lxqt even exists (in 13.2 at least), so it uses a standard xterm and su. (on lxde it would use gnomesu)
What tool would you use normally in lxqt to gain root privileges? Does it include something like kdesu/gnomesu?
Maybe edit the desktop file to use kdesu instead? If you install kde-cli-tools5, you should have the KF5 version of kdesu which uses libKF5Su5.
PS: If you set the environment variable XDG_CURRENT_DESKTOP to KDE, xdg-su should use kdesu automatically if available. But that might leadt other programs as well into thinking they run inside a KDE session.
I thought that there was something missing as xdg-su is called only when starting yast, usually a gui app would start and ask for root like kdesu or gnomesu, I noticed that lxqt depends on a lot of qt5 libraries and pcmanfm-qt (lxqt’s file manager) uses a gui to ask for root password.
I guess what I’m asking is am I missing a package or not, is xdg-su the way to grant root privileges the default for lxgt?
ps. I’ve got kde4 installed, perhaps because I changed from kdm to lightdm (it was a mate issue) kdesu isn’t called?
lxde works fine without xdg I belive it uses gbome-su
Again, the YaST desktop file specifies to run “/usr/bin/xdg-su -c /sbin/yast2”, so that’s what’s being run.
And that’s the same regardless of the DE you use, even in KDE or GNOME “/usr/bin/xdg-su -c /sbin/yast2” is run.
But there it detects that it is running inside KDE or GNOME, and uses kdesu or gnomesu respectively.
I noticed that lxqt depends on a lot of qt5 libraries and pcmanfm-qt (lxqt’s file manager) uses a gui to ask for root password.
And how does pcmanfm-qt’s Exec line look like?
AFAICS, pcmanfm-qt only has a desktop file to start it normally (not as root), so probably it switches to root itself when necessary (and asks for the password then)?
YaST doesn’t support that, you have to run it as root.
I guess what I’m asking is am I missing a package or not, is xdg-su the way to grant root privileges the default for lxgt?
xdg-su is the way to run applications as root for every desktop, it is desktop-agnostic.
It is only a shell script that tries to detect what DE you are using, and then call the appropriate tool (kdesu, gnomesu).
But it doesn’t support lxqt yet, so the fallback “tool” is used which is an xterm running “su -”.
ps. I’ve got kde4 installed, perhaps because I changed from kdm to lightdm (it was a mate issue) kdesu isn’t called?
As mentioned earlier, xdg-su uses $XDG_CURRENT_DESKTOP as one way to determine which DE is running (it falls back to other checks if this is unset). This is set by kdm (and at least gdm AFAIK), so lightdm might indeed be the problem here.
Try switching back to kdm (edit /etc/sysconfig/displaymanger’s DISPLAYMANAGER variable) and see if it helps.
But again, I don’t see anything regarding lxqt in xdg-su, so it probably will still fall back to the generic method.
And I had a look at lxqt’s .desktop file now, it doesn’t specify any “DesktopNames” (which kdm uses to get the name of the session), so the display manager should not make any difference.
lxde works fine without xdg I belive it uses gbome-su
As I wrote already, xdg-su uses gnome-su if it detects it is running inside lxde.