It looks like with the systemd-user-sessionization of some GNOME session components, it now happens that gnome-shell is also started in the Pantheon session (which obviously breaks things).
Pantheon also uses gnome-session, with "gnome-session --session=pantheon" in the xsession file, and a "pantheon.session" file for gnome-session.
How can I prevent gnome-shell from starting in Pantheon?
A bit more details:
Pantheon requires gnome-session-xsession to work, and gnome-session-xsession Requires: gnome-shell. So I can't just conflict with gnome-shell as a workaround (even though I guess most users of Pantheon on fedora do use it alongside GNOME, so that's not a real solution either).
So I don't see any solutions or workarounds for this other than to fork old versions of both gnome-session -> pantheon-session and gnome-settings-daemon -> pantheon-settings-daemon - which is not a sustainable solution for a one-man-show. I guess upstream Pantheon will run into the same issue in a few years as well, once they switch to ubuntu 20.04 LTS as a base, but that's not going to help me for fedora 31.
Moved to gnome-session since gnome-shell doesn't start itself. CC:ed Benjamin as I believe he is probably most knowledgeable about this area.
Either pantheon session needs to use systemd properly (i.e. provide the relevant targets) or it needs to start the /usr/bin/gnome-session script with --builtin passed to it.
Using --builtin totally solved this issue for now. Thanks so much!
FEDORA-2019-e181d684aa has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-e181d684aa
pantheon-session-settings-31.0-1.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-e181d684aa
pantheon-session-settings-31.0-1.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, please make note of it in this bug report.