phisch / phinger-cursors

Most likely the most over engineered cursor theme.
Creative Commons Attribution Share Alike 4.0 International
592 stars 16 forks source link

Gnome-Shell crashes in overview on X11 when using phinger-cursors #14

Closed LostinSpacetime closed 6 months ago

LostinSpacetime commented 1 year ago

I encounter this problem on my desktop PC (AMD RX 6800) running Ubuntu 23.04 as well as Fedora 38. I am using the latest stable Mesa (23.1.4). Gnome-shell crushes when in overview, and one drags any window arround. It only happens on a X11-session. With Wayland everything works just fine.

phisch commented 1 year ago

I'm not sure how a cursor theme would cause gnome to crash. And the cursor files provided by phinger-cursors are just in the x11 xcursor format, there isn't anything special to it.

LostinSpacetime commented 1 year ago

I believe it is actually a gpu-driver bug. If i turn on software cursor (Option "SWcursor" "on") in xorg.conf, the gnome-shell doesn't crush. There has to be something special about phinger-cursors since there is no problem with the default (adwaita) cursor.

phisch commented 1 year ago

@LostinSpacetime could you by any chance upload the gnome shell error logs after a crash?

I'm not on gnome, but I know a few people that run gnome with phinger-cursors as their cursor theme and it works fine for them.

LostinSpacetime commented 1 year ago

User Logs: --Aug 03 21:35:41 fedora gnome-shell[4455]: No cursor theme available, please install a cursor theme Aug 03 21:35:41 fedora gnome-shell[4455]: Received an X Window System error. This probably reflects a bug in the program. The error was 'BadCursor (invalid Cursor parameter)'. (Details: serial 965948 error_code 6 request_code 95 (core protocol) minor_code 0) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the MUTTER_SYNC environment variable to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the meta_x_error() function.) Aug 03 21:35:41 fedora gnome-shell[4455]: == Stack trace for context 0x556f6c1f8110 == Aug 03 21:35:42 fedora gnome-shell[131507]: Running GNOME Shell (using mutter 44.3) as a X11 window and compositing manager Aug 03 21:35:42 fedora gnome-shell[131507]: Unset XDG_SESSION_ID, getCurrentSessionProxy() called outside a user session. Asking logind directly. Aug 03 21:35:42 fedora gnome-shell[131507]: Will monitor session 2 Aug 03 21:35:43 fedora gnome-shell[131507]: Telepathy is not available, chat integration will be disabled. Aug 03 21:35:43 fedora gnome-shell[131507]: Extension appindicatorsupport@rgcjonas.gmail.com already installed in /home/user/.local/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com. /usr/share/gnome-shell/extensions/appindicatorsupport@rgcjonas.gmail.com will not be loaded Aug 03 21:35:43 fedora gnome-shell[131507]: [impatience] enabled Aug 03 21:35:43 fedora gnome-shell[131507]: [impatience] setting new speed: 0.75 Aug 03 21:35:43 fedora gnome-shell[131507]: GameMode extension initialized Aug 03 21:35:43 fedora gnome-shell[131507]: st_widget_get_theme_node called on the widget [0x5618f288cad0 StLabel.monospace:insensitive ("100%")] which is not in the stage. Aug 03 21:35:43 fedora gnome-shell[131507]: st_widget_get_theme_node called on the widget [0x5618f296d0b0 StLabel.monospace:insensitive ("100%")] which is not in the stage. Aug 03 21:35:43 fedora gnome-shell[131507]: st_widget_get_theme_node called on the widget [0x5618f297ba40 StLabel.monospace:insensitive ("100%")] which is not in the stage. Aug 03 21:35:43 fedora gnome-shell[131507]: Error looking up permission: GDBus.Error:org.freedesktop.portal.Error.NotFound: No entry for geolocation Aug 03 21:35:44 fedora gnome-shell[131507]: Property 'libinput Accel Profile Enabled Default' for device 'HID 04b4:6014 Mouse' returned 3 items, expected 2 Aug 03 21:35:44 fedora gnome-shell[131507]: Property 'libinput Accel Profiles Available' for device 'HID 04b4:6014 Mouse' returned 3 items, expected 2 Aug 03 21:35:44 fedora gnome-shell[131507]: Property 'libinput Accel Profile Enabled Default' for device 'Logitech Gaming Mouse G502' returned 3 items, expected 2 Aug 03 21:35:44 fedora gnome-shell[131507]: Property 'libinput Accel Profiles Available' for device 'Logitech Gaming Mouse G502' returned 3 items, expected 2 Aug 03 21:35:45 fedora gnome-shell[131507]: GNOME Shell started at Thu Aug 03 2023 21:35:43 GMT+0200 (Mitteleuropäische Sommerzeit) Aug 03 21:35:45 fedora gnome-shell[131507]: Registering session with GDM Aug 03 21:35:45 fedora gnome-shell[131507]: JS ERROR: Gio.DBusError: GDBus.Error:org.freedesktop.DBus.Error.Failed: error occurred in AboutToShow

LostinSpacetime commented 1 year ago

This happens only after also editing the file /usr/share/icons/default to "Inherits=phinger-cursors". If I don't do this, I see the Adwaita cursor on some occasions.

phisch commented 1 year ago

This happens only after also editing the file /usr/share/icons/default to "Inherits=phinger-cursors". If I don't do this, I see the Adwaita cursor on some occasions.

I think this might happen because gnome shell expects a certain set of cursors to exist. And the current phinger-cursors doesn't have aliases for all the cursors they expect. I have already planned to add more aliases to the next release, which would most likely fix this issue for you.

Aside from this, non-existing cursors crashing gnome-shell does sound like a bug that should probably be reported to the gnome-shell project, I think they should handle this case more gracefully.

phisch commented 1 year ago

I'll leave this issue open until the next release.

Gnome shell crashing is a gnome-shell bug, but I will still try to add as many reasonable aliases as possible.

LostinSpacetime commented 1 year ago

I noticed that on a wayland session there is a white square instead of the cursor when dragging items in overview. I also believe that without the missing aliases, it wouldn't be necessary to edit the index.theme file in /usr/share/icons/default/. This problem should be rather new. It's probably happening since the last mutter update last week.

LostinSpacetime commented 1 year ago

I am going through the cursors/aliases Adwaita is using, and I found a few cursors that are actually missing in phinger-cursors. It's the drag and drop hand with additional symbols. (dnd-ask, dnd-copy, dnd-link, dnd-move) One can link them all to dnd-move.

The next that is missing is dotbox. I have no idea what this is for.

LostinSpacetime commented 1 year ago

Would it be better to file a new bug report for missing cursors/aliases?

phisch commented 1 year ago

@LostinSpacetime x cursor themes can come with as many or little cursors they want, there is no defined standard, and every app might request a different name for the same cursor as long as there is an alias for it. For the new release I will restructure the cursor theme anyway, following the new wayland cursor list for the standard kit and having additional cursors on top of that, with a more exhaustive list of aliases.

Your issue is a gnome-shell bug though, it should not crash because they expect a cursor to be there that isn't. You should open a bug report there as well, though they probably won't fix it and expect you to use the adwaita cursor theme anyway.

phisch commented 6 months ago

@LostinSpacetime Would you mind testing if this issue still happens using the latest 2.0-beta.1 release?

phisch commented 6 months ago

I just tested the latest GNOME release with an X11 session and the v2.0-beta.2 release of phinger-cursors, and the issue does not seem to happen.

gnome_x11.webm

LostinSpacetime commented 5 months ago

2.0 has no issues so far. Now I can use it again. Thanks! :)