Cannot log in after updating to Fedora 44

I’m running Fedora on my Framework laptop since Fedora 39, if I recall correctly. Updates to newer Fedora versions always went well until… this morning. I updated from F43 to F44 and since then, I cannot log in to my Gnome session. Instead of launching my gnome session, it just stays there, on the password screen. The keyboard and mouse still work, but none of the button actually do something. I cannot even shutdown or reboot the computer using the UI.

I can still connect using SSH though.

I managed to open a session by manually stopping and starting the GDM service. I tried renaming .config to .config_back, create a new user,… but none of the suggestions I have found so far work.

And yes, if I manually restart GDM, my session opens but I still encounter the same issue after my session locks : i type my password and then nothing happens, I stuck out of my session.

How can I diagnose and hopefully fix this issue?

Thanks!

Some logs might shed some light on which issue this is; apparently, there are no shortage of bug reports about situations similar to yours.

Via ssh, run this right after a failed login attempt:
journalctl -b 0 | grep -E "gdm|gnome-shell|session|pam|wayland" | tail -60

Also, looking for some specific “known” issues could help, too:
journalctl -b 0 | grep -iE "session never registered|pam_lastlog|keyring|failed to start gdm|dbus"

You need to provide more details. Use journalctl in a terminal to look for errors. This can take some effort to find “filters” that select the relevant messages. If you are not familiar with journalctl, start with https://docs.fedoraproject.org/en-US/quick-docs/viewing-logs/.

Here are the corresponding logs :

journalctl -b 0 | grep -E "gdm|gnome-shell|session|pam|wayland" | tail -60

https://pastebin.com/bYWwbdrQ

and

journalctl -b 0 | grep -iE "session never registered|pam_lastlog|keyring|failed to start gdm|dbus"

https://pastebin.com/Fgsqm90u

Does this makes any sense to you? Feel free to ask for any other logs!
And thank you very much for you help!

Can it be that you still have the option to change to x11? Before putting the PW, can you click on the gear and see what it shows you there, please?

I saw quite a lot of x-11 errors in the logs.

There are 2 options : Gnome and Gnome classic. Same issue with both.
I though X11 was not available anymore in recent versions of Fedora?

Well, this part of the logs seems off:

nxexec[3118]: pam_unix(nx:session): session opened for user gdm-greeter(uid=60578) by (uid=978)
audit: op=PAM:session_open ... acct="gdm-greeter" exe="/usr/NX/bin/nxexec"

That output seems to suggest nxexec is opening a PAM session as gdm-greeter and that shouldn’t be happening.

How about we try stopping and disabling NoMachine temporarily:

sudo systemctl stop nxserver.service  # or nxd, depending on NX version
sudo systemctl disable nxserver.service
sudo systemctl restart gdm

After a reboot, does everything work?

Oh yeah! It works, I can log in to my session even after a reboot! So I guess the root cause is NoMachine that for some reasons does not work on Fedora 44? I’ll uninstall it since I don’t use it anymore!

Thank you so much for your help!

That’s great!

You may also want to just “tidy up” things, too; i.e., rm -rf ~/.local/share/keyrings/ and then log-out/-in.

There’s also a part of your log (dbus-broker-launch: Ignoring duplicate name 'org.gnome.keyring' in service file ...) that seems to indicate plenty of duplicated D-Bus service entries, which suggests there are leftover service files from a previous desktop environment installation. You have some KDE entries like org.kde.kwalletd5/6 alongside GNOME ones. That won’t cause the login failure directly, but it is messy and worth cleaning up eventually with sudo dnf remove of any unused DE packages.

Thanks, I’ll definitely have a look at that!

sudo systemctl stop nxserver.service # or nxd, depending on NX version
sudo systemctl disable nxserver.service

Just a usability tip, recent systemd doesn’t need those two separately, you can do use the “now” flag to have a single command

sudo systemctl --now disable nxserver.service