Unable to start GDM / Graphical Desktop after upgrading to Fedora 43

I finally bit the bullet and managed to upgrade one of my desktop systems to Fedora 43. This system was originally installed in ~2014, probably running Fedora 20 or Fedora 21.

So no wonder there are all kinds of leftover configuration, packages, and scenarios that weren't quite foreseen by the fedora upgrades team.

Anyhow, I found that GDM was not starting properly, and after some investigation I found the following snippet:

jnuc /etc/gdm #> systemctl status gdm
* gdm.service - GNOME Display Manager
     Loaded: loaded (/usr/lib/systemd/system/gdm.service; enabled; preset: enabled)
    Drop-In: /usr/lib/systemd/system/service.d
             `-10-timeout-abort.conf
     Active: active (running) since Mon 2025-12-15 08:38:08 CET; 43min ago
 Invocation: c9fec99010b34aba82db12fd5619de30
   Main PID: 1284 (gdm)
      Tasks: 5 (limit: 9362)
     Memory: 3.1M (peak: 5.9M)
        CPU: 708ms
     CGroup: /system.slice/gdm.service
             `-1284 /usr/bin/gdm

Dec 15 08:38:19 jnuc gdm-launch-environment][3772]: PAM adding faulty module: /usr/lib64/security/pam_lastlog.so
Dec 15 08:38:20 jnuc gdm[1284]: Gdm: GdmDisplay: Session never registered, failing
Dec 15 08:38:20 jnuc gdm[1284]: Gdm: Child process -3792 was already dead.
Dec 15 08:38:20 jnuc gdm[1284]: Gdm: GdmDisplay: Session never registered, failing
Dec 15 08:38:20 jnuc gdm[1284]: Gdm: Child process -3792 was already dead.
Dec 15 08:38:20 jnuc gdm-launch-environment][3888]: PAM unable to dlopen(/usr/lib64/security/pam_lastlog.so): /usr/lib64/security/pam_lastlog.so: cannot open shared object >
Dec 15 08:38:20 jnuc gdm-launch-environment][3888]: PAM adding faulty module: /usr/lib64/security/pam_lastlog.so
Dec 15 08:38:21 jnuc gdm[1284]: Gdm: GdmDisplay: Session never registered, failing
Dec 15 08:38:21 jnuc gdm[1284]: Gdm: GdmLocalDisplayFactory: maximum number of X display failures reached: check X server log for errors
Dec 15 08:38:21 jnuc gdm[1284]: Gdm: Child process -3900 was already dead.

Oddly enough, the file /usr/lib64/security/pam_lastlog.so isn't even present in a regular Fedora 43 installation.

So what I found is that authselect is probably using a very legacy or wrong configuration, so I was able to reset it with:

jnuc /etc/gdm #> sudo authselect apply-changes
No existing configuration detected.

jnuc /etc/gdm #> authselect select local
[error] /etc/authselect/authselect.conf is missing or unreadable, system was not properly configured by authselect.
[error] Refusing to activate profile unless overwrite is requested.

Some unexpected changes to the configuration were detected.
Use --force parameter if you want to overwrite these changes.

jnuc /etc/gdm #> authselect select local --force
Backup stored at /var/lib/authselect/backups/2025-12-15-08-25-12.f0OAen
Profile "local" was selected.

jnuc /etc/gdm #> sudo authselect apply-changes
Changes were successfully applied.

jnuc /etc/gdm #> reboot

So finally after rebooting the GDM login screen came back and was able to use the system again.

Happy hacking!