Antergos / web-greeter

A modern, visually appealing greeter for LightDM.
http://antergos.github.io/web-greeter
GNU General Public License v3.0
232 stars 57 forks source link

Greeter freezes after clicking on clock #95

Closed paescuj closed 7 years ago

paescuj commented 7 years ago

After clicking on the clock in the antergos greeter theme, the user and password fields appears but the greeter kind of freezes - the cursor can still be moved around but I'm unable to click on anything or fill in the password field. Similar behaviour also in simple theme. Maybe the greeter has some problem when getting information about the user?

Versions used:

Couldn't find anything interesting in the logs:

lightdm.log:

[+0.00s] DEBUG: Logging to /var/log/lightdm/lightdm.log
[+0.00s] DEBUG: Starting Light Display Manager 1.16.7, UID=0 PID=1313
[+0.00s] DEBUG: Loading configuration dirs from /usr/share/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration dirs from /usr/local/share/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration dirs from /etc/xdg/lightdm/lightdm.conf.d
[+0.00s] DEBUG: Loading configuration from /etc/lightdm/lightdm.conf
[+0.00s] DEBUG: Using D-Bus name org.freedesktop.DisplayManager
[+0.00s] DEBUG: Registered seat module xlocal
[+0.00s] DEBUG: Registered seat module xremote
[+0.00s] DEBUG: Registered seat module unity
[+0.01s] WARNING: Failed to get list of logind seats: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.login1 was not provided by any .service files
[+0.01s] DEBUG: Adding default seat
[+0.01s] DEBUG: Seat seat0: Loading properties from config section Seat:*
[+0.01s] DEBUG: Seat seat0: Starting
[+0.01s] DEBUG: Seat seat0: Creating greeter session
[+0.01s] DEBUG: Seat seat0: Creating display server of type x
[+0.01s] DEBUG: Using VT 7
[+0.01s] DEBUG: Seat seat0: Starting local X display on VT 7
[+0.01s] DEBUG: DisplayServer x-0: Logging to /var/log/lightdm/x-0.log
[+0.01s] DEBUG: DisplayServer x-0: Writing X server authority to /var/run/lightdm/root/:0
[+0.01s] DEBUG: DisplayServer x-0: Launching X Server
[+0.01s] DEBUG: Launching process 1326: /usr/bin/X :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
[+0.01s] DEBUG: DisplayServer x-0: Waiting for ready signal from X server :0
[+0.01s] DEBUG: Acquired bus name org.freedesktop.DisplayManager
[+0.01s] DEBUG: Registering seat with bus path /org/freedesktop/DisplayManager/Seat0
[+0.01s] DEBUG: Loading users from org.freedesktop.Accounts
[+0.01s] DEBUG: User /org/freedesktop/Accounts/User1000 added
[+0.23s] DEBUG: Got signal 10 from process 1326
[+0.23s] DEBUG: DisplayServer x-0: Got signal from X server :0
[+0.23s] DEBUG: DisplayServer x-0: Connecting to XServer :0
[+0.23s] DEBUG: Seat seat0: Display server ready, starting session authentication
[+0.23s] DEBUG: Session pid=1335: Started with service 'lightdm-greeter', username 'root'
[+0.26s] DEBUG: Session pid=1335: Authentication complete with return value 0: Success
[+0.26s] DEBUG: Seat seat0: Session authenticated, running command
[+0.26s] DEBUG: Session pid=1335: Running command /usr/bin/lightdm-webkit2-greeter
[+0.26s] DEBUG: Creating shared data directory /var/lib/lightdm-data/root
[+0.26s] DEBUG: Session pid=1335: Logging to /var/log/lightdm/x-0-greeter.log
[+0.28s] DEBUG: Activating VT 7
[+0.28s] DEBUG: Activating ConsoleKit session awesome-1481735210.682160-1840387819
[+0.28s] WARNING: Error activating ConsoleKit session: GDBus.Error:org.freedesktop.ConsoleKit.Session.Error.AlreadyActive: Session already active
[+0.93s] DEBUG: Session pid=1335: Greeter connected version=1.16.7 resettable=false
[+0.93s] DEBUG: Session pid=1335: Greeter connected version=1.16.7 resettable=false
[+1.56s] DEBUG: Session pid=1335: Greeter requests data directory for user paescu
[+1.56s] DEBUG: Creating shared data directory /var/lib/lightdm-data/paescu
[+4.37s] DEBUG: Session pid=1335: Greeter start authentication for paescu
[+4.37s] DEBUG: Session pid=1399: Started with service 'lightdm', username 'paescu'
[+4.42s] DEBUG: Session pid=1399: Got 1 message(s) from PAM
[+4.42s] DEBUG: Session pid=1335: Prompt greeter with 1 message(s)

x-0-greeter.log:

file:///usr/share/lightdm-webkit/themes/antergos/js/greeter.js:109:15: CONSOLE LOG cache_get() called with key: ant:background_manager:current_background
file:///usr/share/lightdm-webkit/themes/antergos/js/greeter.js:109:15: CONSOLE LOG cache_get() key: ant:background_manager:current_background value is: url(file:///usr/share/backgrounds/1.jpg)
file:///usr/share/lightdm-webkit/themes/antergos/js/greeter.js:109:15: CONSOLE LOG cache_get() called with key: ant:user:paescu:session
file:///usr/share/lightdm-webkit/themes/antergos/js/greeter.js:109:15: CONSOLE LOG cache_get() key: ant:user:paescu:session value is: awesome
file:///usr/share/lightdm-webkit/themes/antergos/js/greeter.js:109:15: CONSOLE LOG Last session for paescu was: awesome
file:///usr/share/lightdm-webkit/themes/antergos/js/greeter.js:109:15: CONSOLE LOG Adding awesome to the session list...
file:///usr/share/lightdm-webkit/themes/antergos/js/greeter.js:109:15: CONSOLE LOG cache_get() called with key: ant:user:paescu:session
file:///usr/share/lightdm-webkit/themes/antergos/js/greeter.js:109:15: CONSOLE LOG cache_get() key: ant:user:paescu:session value is: awesome
file:///usr/share/lightdm-webkit/themes/antergos/js/greeter.js:109:15: CONSOLE LOG Starting authentication for paescu.
file:///usr/share/lightdm-webkit/themes/antergos/js/greeter.js:109:15: CONSOLE LOG Session for paescu is awesome

x-0.log:

X.Org X Server 1.18.4
Release Date: 2016-07-19
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.4.6-gentoo x86_64 Gentoo
Current Operating System: Linux awesome 4.4.26-gentoo #1 SMP Tue Oct 25 20:29:02 CEST 2016 x86_64
Kernel command line: BOOT_IMAGE=/vmlinuz-4.4.26-gentoo root=/dev/mapper/vg0-root_lv ro dolvm quiet rootdelay=5
Build Date: 20 September 2016  08:26:59PM

Current version of pixman: 0.34.0
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Wed Dec 14 18:06:50 2016
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using config directory: "/etc/X11/xorg.conf.d"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(II) AIGLX: Suspending AIGLX clients for VT switch
lots0logs commented 7 years ago

Could you check the webkit dev console to see if any errors show up? (just right-click and select "Inspect Element")

paescuj commented 7 years ago

Thanks for your quick response!

Already did that, there was exactly the same output as in the x-0-greeter.log plus a few CSS errors from bootstrap and font awesome (I guess those are irrelevant)...

lots0logs commented 7 years ago

Which distro (including version) are you using?

paescuj commented 7 years ago

I'm using Gentoo with kernel version 4.4.26

lots0logs commented 7 years ago

Hmm..are you able to use any later versions of lightdm and webkit2gtk? Well lightdm isnt the problem for sure, really its most likely an issue with webkitgtk. There has been significant progress made in regards to its performance and stability since the 2.12 series...

paescuj commented 7 years ago

Just tested it with the latest versions available on Gentoo:

Still the same issue. No interesting output in the logs or in the console. I've noticed that the profile picture doesn't get displayed, while in the gtk-greeter it does.

lots0logs commented 7 years ago

Which graphics stack does your system have? Which driver are you using?

paescuj commented 7 years ago

It is a integrated Intel HD Graphics 4000 and the kernel driver in use is i915.

lots0logs commented 7 years ago

@paescuj Could you let me know if you still see this issue with the latest release?

paescuj commented 7 years ago

Unfortunately still the same issue using the latest release. However the profile picture is displayed now.

There must be a problem during the pre-authentication process. Possibly due to some special configuration / software compilation on my system. I'll try to figuring out more about this.

lots0logs commented 7 years ago

Are you using systemd on your system? If so could you check the journal after the issue occurs and post anything you find that is related to the greeter?

paescuj commented 7 years ago

Just switched from OpenRC to systemd. Now, the greeter shows a black screen with the following text:

Error opening file: No such file or directory

This is the output of the journal:

Jan 03 23:46:46 localhost systemd[1]: Started Light Display Manager.
Jan 03 23:46:46 localhost lightdm[21252]: ** (lightdm:21252): CRITICAL **: session_get_login1_session_id: assertion 'session != NULL' failed
Jan 03 23:46:46 localhost lightdm[21267]: pam_unix(lightdm-greeter:session): session opened for user root by (uid=0)
Jan 03 23:46:46 localhost systemd-logind[4489]: New session 6 of user root.
Jan 03 23:46:46 localhost systemd[1]: Started Session 6 of user root.
Jan 03 23:46:46 localhost org.a11y.Bus[21276]: Activating service name='org.a11y.atspi.Registry'
Jan 03 23:46:46 localhost org.a11y.Bus[21276]: ** (process:21278): WARNING **: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files
Jan 03 23:46:46 localhost org.a11y.Bus[21276]: Successfully activated service 'org.a11y.atspi.Registry'
Jan 03 23:46:46 localhost org.a11y.atspi.Registry[21283]: SpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry
Jan 03 23:46:48 localhost systemd-logind[4489]: Removed session 3.

Does the greeter relies on gnome? Because I don't have the gnome environment installed - I'm using awesome wm.

lots0logs commented 7 years ago

No it doesnt need the full gnome stack. You can see the dependencies on the README. Could you check to see if this directory exists and is not empty? /usr/share/backgrounds

paescuj commented 7 years ago

Yes, it does exist and there is a picture in it.

lots0logs commented 7 years ago

You followed the instructions on the README to build and install the greeter correct? Could you check the file permissions on /usr/share/lightdm-webkit/themes and make sure the mode is 755? Also check that the theme's index file exists: /usr/share/lightdm-webkit/themes/antergos/index.html

paescuj commented 7 years ago

Yes, I did. I can confirm that the mode of /usr/share/lightdm-webkit/themes is 755 and the file /usr/share/lightdm-webkit/themes/antergos/index.html exists.

lots0logs commented 7 years ago

Sorry this is difficult to debug remotely (obviously). Does pressing Tab allow you to focus the password entry field? When you checked the webkit dev console did you switch it to the "Console" tab and then ensure the filters were set to show all messages?

paescuj commented 7 years ago

Yes, it really is - thank you for your efforts!

No, the theme doesn't get loaded at all. Just the following: Screenshot

There aren't any messages in the "Console" tab.

lots0logs commented 7 years ago

Could you post the contents of /etc/lightdm/lightdm-webkit2-greeter.conf here?

paescuj commented 7 years ago

/etc/lightdm/lightdm-webkit2-greeter.conf:

#
# [greeter]
# debug_mode          = Greeter theme debug mode.
# detect_theme_errors = Provide an option to load a fallback theme when theme errors are detected.
# screensaver_timeout = Blank the screen after this many seconds of inactivity.
# secure_mode         = Don't allow themes to make remote http requests.
# time_format         = A moment.js format string so the greeter can generate localized time for display.
# time_language       = Language to use when displaying the time or "auto" to use the system's language.
# webkit_theme        = Webkit theme to use.
#
# NOTE: See moment.js documentation for format string options: http://momentjs.com/docs/#/displaying/format/
#

[greeter]
debug_mode          = true
detect_theme_errors = true
screensaver_timeout = 300
secure_mode         = true
time_format         = LT
time_language       = auto
webkit_theme        = antergos

#
# [branding]
# background_images = Path to directory that contains background images for use by themes.
# logo              = Path to logo image for use by greeter themes.
# user_image        = Default user image/avatar. This is used by themes for users that have no .face image.
#
# NOTE: Paths must be accessible to the lightdm system user account (so they cannot be anywhere in /home)
#

[branding]
background_images = /usr/share/backgrounds
logo              = /usr/share/lightdm-webkit/themes/antergos/img/antergos.png
user_image        = /usr/share/lightdm-webkit/themes/antergos/img/antergos-logo-user.png
lots0logs commented 7 years ago

Hmm..I am at a loss here. I don't see how it possible that you are seeing errors in the console that mention antergos-wallpapers :confused: It would be helpful to know exactly what the error said though.

paescuj commented 7 years ago

I never had errors mentioning antergos-wallpaper. Instead the greeter has freezed (https://github.com/Antergos/lightdm-webkit2-greeter/issues/95#issue-195595325) and I was unable to login.

Then I switched from OpenRC to systemd (https://github.com/Antergos/lightdm-webkit2-greeter/issues/95#issuecomment-270253109) and now I'm getting a black screen.

Probably my report in this ticket is a bit messy, so if you like to, you can close this issue and I will add a report about the black screen to issue #46.

lots0logs commented 7 years ago

I must have gotten your issue mixed up with some other issue. Sorry :grimacing:

lots0logs commented 7 years ago

@paescuj Could you open a new issue for the black screen problem? Be sure to include your logs. Thanks.