I recently disabled “legacy” (X11R5) session management in xfce4-session in Debian, and it seems that this revealed some kind of bug.
A Debian user (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=751725) reported that his session was not saved anymore (he tried rxvt and various x11-apps). It seems that only Xfce-based apps (I guess linked against libxfce4ui or libxfce4util) are saved in the session, along with few exceptions (calibre for example).
I'm unsure where the problem really lies, but there definitely seem to be a problem.
Any pointer on how to debug this further is welcome.
So this bug is fun.
First you can kinda see what xfsm is up to by defining the XFSM_VERBOSE but it wasn't showing as much as I would like, so there's a patch in git master to do more.
I was using a couple applications to start with but narrowed things down to just devhelp. I did notice the warning in the .xsession-errors:
(devhelp:29884): Gtk-WARNING **: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files
But there's https://wiki.gnome.org/Projects/SessionManagement/NewGnomeSession which still was talking about using xsmp so I figured everything was ok and the bug is still in xfsm.
I also know most of the gnome applications are going over to GtkApplication in GTK3. So I looked in there and https://developer.gnome.org/gtk3/3.14/GtkApplication.html#GtkApplication--register-session it's supposed to handle it for the clients. Awesome. It defaults to disabled, but good enough as devhelp does set it to TRUE in dh_app_new:
Looking around GTK+ in the various application files, I didn't see anything referencing xsmp and hardcoded calls to org.gnome.SessionManager in gtk_application_impl_dbus_startup
So I'm guessing everyone is expected to copy gnome's SessionManager DBUS API or keep using the "legacy" session management? I not sure copying gnome's API is a great idea as they control both GTK and the session manager and can change things in lock-step (i.e GTk 3.14 with Gnome 3.14) but break things for us.
I haven't looked into KDE's session manager at this time.
It does not add much information but this is the related bug in gnome:
Not many intentions to fix it for now. :(
Thanks for linking in the bug report Matias. Since this looks like there's some
dbus methods to write in and it may take a while, it's been postponed from
being a "critical bug" for 4.12. But it's on the todo list
(In reply to Eric Koegel from comment #3)
> Thanks for linking in the bug report Matias. Since this looks like there's
> dbus methods to write in and it may take a while, it's been postponed from
> being a "critical bug" for 4.12. But it's on the todo list
Note that same thing happens in 4.8 and 4.10.
Yeah, it's a change on Gnome's end. I assume to support wayland and mir. Looks like we need to implement:
*** Bug 11470 has been marked as a duplicate of this bug. ***
Can confirm this bug. Thunar, xfce4-terminal and firefox are restored while the gnome application evolution is not loaded. Evolution does not even appear in xfce4-session-settings.
Are there any updates on this or beta-code which might be tested?
-- GitLab Migration Automatic Message --
This bug has been migrated to xfce.org's GitLab instance and has been closed from further activity.
You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.xfce.org/xfce/xfce4-session/-/issues/24.
Please create an account or use an existing account on one of our supported OAuth providers.
If you want to fork to submit patches and merge requests please continue reading here: https://docs.xfce.org/contribute/dev/git/start#gitlab_forks_and_merge_requests
Also feel free to reach out to us on the mailing list https://mail.xfce.org/mailman/listinfo/xfce4-dev