You are not logged in.

#1 2019-09-28 01:48:51

arch_kk_linux
Member
Registered: 2017-02-17
Posts: 54

"light-locker-command -l" not working

I'm using Gnome desktop environment with LightDM  as my display manager.

some how I'm unable to lock my screen using using light-locker, Here is the error response I'm getting

light-locker-command -l

** Message: 07:03:48.813: Received error message from the locker: GDBus.Error:org.freedesktop.DBus.Error.NotSupported: This method is not implemented

In the documentation It's mentioned that 'light-locker' should be started at the beginning of the session, as GNOME supports XdgAutostart  so i believe it can take care of starting the light-locker

Can any one guide me what might went wrong or where  should I look into?

Offline

#2 2019-09-28 06:22:32

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,177

Re: "light-locker-command -l" not working

Well, is light-locker running? If not, does it work if you launch it explicitly?
The xdg spec can discriminated desktop environments, ie. certain services are completely ignored outside specific DEs.

Offline

#3 2019-09-28 18:52:41

arch_kk_linux
Member
Registered: 2017-02-17
Posts: 54

Re: "light-locker-command -l" not working

Yes It is Running

 light-locker

** (light-locker:8904): WARNING **: 00:07:25.283: screensaver already running in this session

PS: Here is the response of light-locker --debug I'm not sure whether this response have any clues to investigate further.As I'm unable to understand this response. I posted here just in-case it might help you to shed some light over the issue.

[kk@k ~]$ light-locker --debug

^[[C[gs_debug_init] gs-debug.c:106 (00:11:06):	 Debugging enabled
[main] light-locker.c:142 (00:11:06):	 initializing light-locker 1.8.0
[main] light-locker.c:164 (00:11:06):	 Platform:
gtk:        3
systemd:    yes
ConsoleKit: no
UPower:     no
[main] light-locker.c:196 (00:11:06):	 Features:
lock-after-screensaver: yes
late-locking:           yes
lock-on-suspend:        yes
lock-on-lid:            no
settings backend:       GSETTINGS
[main] light-locker.c:198 (00:11:06):	 lock after screensaver 5
[main] light-locker.c:199 (00:11:06):	 late locking 0
[main] light-locker.c:200 (00:11:06):	 lock on suspend 1
[main] light-locker.c:201 (00:11:06):	 lock on lid 0
[main] light-locker.c:202 (00:11:06):	 idle hint 0
[query_session_id] gs-listener-dbus.c:2101 (00:11:06):	 org.freedesktop.login1.NoSessionForPID raised:
 PID 8941 does not belong to any known session


[init_session_id] gs-listener-dbus.c:2193 (00:11:06):	 Got session-id: (null)
[query_sd_session_id] gs-listener-dbus.c:2177 (00:11:06):	 Couldn't determine our own sd session id: No data available
[init_session_id] gs-listener-dbus.c:2198 (00:11:06):	 Got sd-session-id: (null)
[init_seat_path] gs-listener-dbus.c:2279 (00:11:06):	 Got seat: /org/freedesktop/DisplayManager/Seat0
[gs_listener_delay_suspend] gs-listener-dbus.c:449 (00:11:06):	 Delay suspend

Last edited by arch_kk_linux (2019-09-28 19:06:29)

Offline

#4 2019-09-28 19:59:03

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,177

Re: "light-locker-command -l" not working

It actually only says that some screensaver is running

ps aux  | grep light
loginctl session-status

Did you try this w/o gnome (but eg. an openbox session or so)?

Offline

#5 2019-09-30 16:26:19

arch_kk_linux
Member
Registered: 2017-02-17
Posts: 54

Re: "light-locker-command -l" not working

[kk@k ~]$ ps aux  | grep light
root         377  0.0  0.0 237068  6832 ?        SLsl 21:34   0:00 /usr/bin/lightdm
root         387  2.4  1.2 948136 97672 tty7     Ssl+ 21:34   0:05 /usr/lib/Xorg :0 -seat seat0 -auth /run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
root         451  0.0  0.1 199260  8164 ?        Sl   21:34   0:00 lightdm --session-child 12 19
kk          1365  0.0  0.0   6268  2340 pts/1    S+   21:38   0:00 grep light
[kk@k ~]$ loginctl session-status
1 - kk (1000)
           Since: Mon 2019-09-30 21:34:39 IST; 4min 6s ago
          Leader: 451 (lightdm)
            Seat: seat0; vc7
         Display: :0
         Service: lightdm; type x11; class user
         Desktop: gnome
           State: active
            Unit: session-1.scope
                  ├─451 lightdm --session-child 12 19
                  ├─473 /usr/bin/gnome-keyring-daemon --daemonize --login
                  └─476 /usr/lib/gnome-session-binary

Did you try this w/o gnome (but eg. an openbox session or so)?
    I didn't get you, sorry! can you please elaborate what exactly you want me to do?


PS:
I found a work around for my issue by user: lots0logs over this link:https://github.com/the-cavalry/light-locker/issues/54 But I don't want to use It, so Is there any proper solution for this issue.

Below Is the workaround proposed by @lots0logs where he made it possible by editing Xsession file.
-----------------------------------------------------------------


I was able to get it to work by launching it from lightdm's xsession wrapper script just before gnome is launched:
/etc/lightdm/Xsession

....

/usr/bin/light-locker &
echo "X session wrapper complete, running session $@"

exec $@

--------------------------------------------------------------------

So Is there any thing that can be done from my end to make "light-locker-command -l" working?

Last edited by arch_kk_linux (2019-09-30 17:38:33)

Offline

#6 2019-09-30 19:32:19

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,177

Re: "light-locker-command -l" not working

light-locker isn't running so you cannot rc it and when it complains that "screensaver already running in this session" that doesn't refer to light-locker.
Is that the complete session-status? The process list looks a bit sparse (I'd expect stuff like mutter to run)

can you please elaborate what exactly you want me to do?

https://wiki.archlinux.org/index.php/Openbox#Standalone

But since you figured that launching light-locker before gnome gets to do it's stuff works (preventing whatever process gnome starts a screensaver) I assume you'll have no issues w/ openbox either.
Unfortunately idk what provides the gnome screensaver and whether and how it's possible to deactivate it (gnome isn't exactly a "do as i say" desktop but more a "gnome devs think they know better than you" desktop…)

Offline

#7 2019-10-04 13:48:39

arch_kk_linux
Member
Registered: 2017-02-17
Posts: 54

Re: "light-locker-command -l" not working

Here is my complete data from /etc/lightdm/Xsession

#!/bin/sh
#
# LightDM wrapper to run around X sessions.

echo "Running X session wrapper"

# Load profile
for file in "/etc/profile" "$HOME/.profile" "/etc/xprofile" "$HOME/.xprofile"; do
    if [ -f "$file" ]; then
        echo "Loading profile from $file";
        . "$file"
    fi
done

# Load resources
for file in "/etc/X11/Xresources" "$HOME/.Xresources"; do
    if [ -f "$file" ]; then
        echo "Loading resource: $file"
        xrdb -merge "$file"
    fi
done

# Load keymaps
for file in "/etc/X11/Xkbmap" "$HOME/.Xkbmap"; do
    if [ -f "$file" ]; then
        echo "Loading keymap: $file"
        setxkbmap `cat "$file"`
        XKB_IN_USE=yes
    fi
done

# Load xmodmap if not using XKB
if [ -z "$XKB_IN_USE" ]; then
    for file in "/etc/X11/Xmodmap" "$HOME/.Xmodmap"; do
        if [ -f "$file" ]; then
           echo "Loading modmap: $file"
           xmodmap "$file"
        fi
    done
fi

unset XKB_IN_USE

# Run all system xinitrc shell scripts
xinitdir="/etc/X11/xinit/xinitrc.d"
if [ -d "$xinitdir" ]; then
    for script in $xinitdir/*; do
        echo "Loading xinit script $script"
        if [ -x "$script" -a ! -d "$script" ]; then
            . "$script"
        fi
    done
fi

# Run user xsession shell script
script="$HOME/.xsession"
if [ -x "$script" -a ! -d "$script" ]; then
    echo "Loading xsession script $script"
    . "$script"
fi

echo "X session wrapper complete, running session $@"

exec $@

Note: As a workaround I just need to append the line

 /usr/bin/light-locker & 

 
above 

echo "X session wrapper complete, running session $@"

By default Gnome provides  window manager so I don't think there is a need to try another  window manager like Standalone .

As an alternative method  I can use xscreensaver , for locking.

Last edited by arch_kk_linux (2019-10-04 14:06:41)

Offline

#8 2019-10-04 15:08:26

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 78,177

Re: "light-locker-command -l" not working

By default Gnome provides  window manager so I don't think there is no need to try another  window manager like Standalone .

Huhwhat?
The idea is not to replace the gnome WM (i doubt that's even possible) but to run an openbox session *instead* of gnome.
If this works (w/o the Xsession script workaround) this means light-locker is blocked by the gnome screensaver and your options would be to
a) stick w/ the "workaround"
b) use gnomes screenlocker instead (though confusingly it meanwhile seems to rely on GDM)
c) figure what provides the screensaver (dbus interface, org.freedesktop.ScreenSaver) and eleminate that.

Offline

#9 2019-11-19 07:57:09

arch_kk_linux
Member
Registered: 2017-02-17
Posts: 54

Re: "light-locker-command -l" not working

I have switched to GDM from lightdm now everything is working as expected.[Indeed openbox session worked]

Last edited by arch_kk_linux (2019-12-14 11:33:56)

Offline

Board footer

Powered by FluxBB