Can't login after a system update

So, i think it was after a system update, i can’t login into Gnome from gdm.
I have multiple DE installed (Gnome, plasma, cosmic) and i can only login into Plasma.
When i select Gnome and try to log in, there is a black screen and then I’m redirected back to gdm.

I don’t really know how to get log from gdm.

Thank

Edit: using sddm or open-source nvidia drivers doesn’t fix it

1 Like

With Gnome, this usually happens because some extensions are crashing (or unable to load). A lot of extensions are not ready for the version of Gnome on F40, unfortunately.

Did you have any extensions installed? Could you try disabling them from the terminal using gnome-extensions?

gnome-extensions list
gnome-extensions-disable ..

and retry?

It could also be graphics drivers—are you using Nvidia?

It’s probably not gnome extension because gnome 46 worked fine for a while. Maybe it’s nvidia yes, i have a 3060ti.
I use the propriatery driver, version 550.67, with kernel 6.8.7-300.

You did a system update then this happened.
Potentially it could be related to this.

1 Like

I’m not sure since i use the precompiled kmod-nvidia version

Here is some log from gdm

$ sudo journalctl -u gdm -b
avril 22 17:19:47 fedasus gdm-password][119074]: gkr-pam: unable to locate daemon control file
avril 22 17:19:47 fedasus gdm-password][119074]: gkr-pam: stashed password to try later in open session
avril 22 17:19:47 fedasus gdm[1578]: Gdm: GdmDisplay: Session never registered, failing
avril 22 17:19:57 fedasus gdm-password][120546]: gkr-pam: unable to locate daemon control file
avril 22 17:19:57 fedasus gdm-password][120546]: gkr-pam: stashed password to try later in open session
avril 22 17:19:57 fedasus gdm[1578]: Gdm: GdmDisplay: Session never registered, failing
avril 22 17:20:04 fedasus gdm-password][121509]: gkr-pam: unable to locate daemon control file
avril 22 17:20:04 fedasus gdm-password][121509]: gkr-pam: stashed password to try later in open session
avril 22 17:20:14 fedasus gdm[1578]: Gdm: Child process -118215 was already dead

That would be the problem.
Please remove the ‘kmod-nvidia’ package which is specifically for RHEL or CentOS and install the drivers using the akmod-nvidia path so they are locally compiled as is required to match the kernel with which they are used.

When installed using akmod-nvidia the driver (kmod-nvidia-NNN… package) is locally compiled to match the newly installed kernel. When using the stand alone kmod-nvidia package the drivers do not get recompiled and thus do not match the newer kernel and cannot be loaded.

When following the instructions at rpmfusion to install the nvidia drivers you must note this
sudo dnf install akmod-nvidia # rhel/centos users can use kmod-nvidia instead which clearly shows the kmod-nvidia package is for rhel/centos. The suggested command for fedora is sudo dnf install akmod-nvidia

To remove the kmod-nvidia package use sudo dnf remove kmod-nvidia then install the akmod-nvidia package with the command above.

1 Like

I was following the doc in french, which did not mention this, but only that we have to wait some time to get the new compilated driver in the repos.
Can i ask, if i can use kmod with fedora stable ?
And, i have this package installed kmod-nvidia-6.8.7-300.fc40.x86_64-550.67-1.fc40.x86_64, which seems to corespond with the kernel version i’m running.

Also, i actually tried to uninstall nvidia drivers completly and it didn’t resolved my issue. So i guess i will try akmod-nvidia but i don’t think it will solve anything

Edit: it didn’t fix it

1 Like

How did you remove the nvidia drivers?
The package nvidia-gpu-firmware is a required package that is installed by fedora and is easy to remove when removing the nvidia drivers…
After doing the removal and install please now show us the output of dnf list installed \*nvidia\* so we can confirm exactly what packages and versions are installed at this point.

1 Like

try disable gnome-extenstions in terminal
gsettings set org.gnome.shell disable-user-extensions true

Your referenced link leads to another page for optimus and that one is obsolete since it refers to grub.cfg files that were changed in F34. Changes are no longer made to /boot/efi/EFI/fedora/grub.cfg at any time after initial install.

please now show us the output of dnf list installed \*nvidia\*

$ dnf list installed \*nvidia\*
Paquets installés
akmod-nvidia.x86_64                                      3:550.67-1.fc40                  @rpmfusion-nonfree-nvidia-driver
kmod-nvidia-6.8.7-300.fc40.x86_64.x86_64                 3:550.67-1.fc40                  @@commandline
nvidia-gpu-firmware.noarch                               20240410-1.fc40                  @updates
nvidia-modprobe.x86_64                                   3:550.67-1.fc40                  @rpmfusion-nonfree-nvidia-driver
nvidia-settings.x86_64                                   3:550.67-1.fc40                  @rpmfusion-nonfree-nvidia-driver
xorg-x11-drv-nvidia.x86_64                               3:550.67-1.fc40                  @rpmfusion-nonfree-nvidia-driver
xorg-x11-drv-nvidia-cuda-libs.x86_64                     3:550.67-1.fc40                  @rpmfusion-nonfree-nvidia-driver
xorg-x11-drv-nvidia-kmodsrc.x86_64                       3:550.67-1.fc40                  @rpmfusion-nonfree-nvidia-driver
xorg-x11-drv-nvidia-libs.x86_64                          3:550.67-1.fc40                  @rpmfusion-nonfree-nvidia-driver
xorg-x11-drv-nvidia-power.x86_64
1 Like

that didn’t fix it

1 Like

I am not sure this has anything to do with the GPU or drivers.
In my VM with f40 there have been a couple times (and last update was one – I just did the update and reboot) where the system hung with black screen and non-blinking cursor at upper left.
A hard power off then restart allowed it to boot normally.

1 Like

If these common issues aren’t it, best to look at the logs to see what the errors are and diagnose the issue from there:

Edit: also worth trying: create a new user and see if that works—this will tell us if it’s something related to the particular user account or if it’s something system wide

Hum, interesting, it works perfectly with a newly created user.

Some info that might help:

As i said earlier, i have COSMIC (the DE from popOs, and gnome installed). From a plasma session, i can launch a nested cosmic-session.
But i can’t launch gnome-session, it will send me back to gdm.

I can’t launch COSMIC and Gnome from gdm, but i can launch plasma, so it might be due to a config that COSMIC and Gnome use.

As for logs, here is the log when i try to launch Gnome from gdm

$journalctl -xe | grep gnome-session
avril 23 16:37:45 fedasus /usr/libexec/gdm-wayland-session[114722]: dbus-daemon[114722]: [session uid=42 pid=114722] Activating service name='org.freedesktop.systemd1' requested by ':1.2' (uid=42 pid=114724 comm="/usr/libexec/gnome-session-binary --autostart /usr" label="system_u:system_r:xdm_t:s0-s0:c0.c1023")
avril 23 16:37:45 fedasus gnome-session[114724]: gnome-session-binary[114724]: WARNING: Could not check if unit gnome-session-wayland@gnome-login.target is active: Erreur lors de l’appel de StartServiceByName pour org.freedesktop.systemd1 : Process org.freedesktop.systemd1 exited with status 1
avril 23 16:37:45 fedasus gnome-session-binary[114724]: WARNING: Could not check if unit gnome-session-wayland@gnome-login.target is active: Erreur lors de l’appel de StartServiceByName pour org.freedesktop.systemd1 : Process org.freedesktop.systemd1 exited with status 1
avril 23 16:37:46 fedasus gnome-session-binary[114724]: Entering running state
1 Like

I don’t really know why, but i can login into Gnome and COSMIC again. All i did was running this 3 commands

dconf reset /org/gnome/desktop/a11y/keyboard/enable
dconf reset /org/gnome/mutter/experimental-features
sudo dbus-run-session -- gnome-shell --display-server --wayland &> SomeFile2.txt
1 Like

Ok so it only worked for some time…

Here is the log of sudo dbus-run-session -- gnome-shell --display-server --wayland &> SomeFile2.txt

dbus-daemon[19688]: [session uid=0 pid=19688] Activating service name='org.gtk.vfs.Daemon' requested by ':1.0' (uid=0 pid=19689 comm="gnome-shell --display-server --wayland" label="unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023")
dbus-daemon[19688]: [session uid=0 pid=19688] Successfully activated service 'org.gtk.vfs.Daemon'
libmutter-Message: 18:45:06.703: Running GNOME Shell (using mutter 46.1) as a Wayland display server
libmutter-Message: 18:45:06.750: Made thread 'KMS thread' realtime scheduled
libmutter-Message: 18:45:06.801: Device '/dev/dri/card1' prefers shadow buffer
libmutter-Message: 18:45:06.802: Added device '/dev/dri/card1' (nvidia-drm) using atomic mode setting.
libmutter-Message: 18:45:06.803: Created gbm renderer for '/dev/dri/card1'
libmutter-Message: 18:45:06.803: Boot VGA GPU /dev/dri/card1 selected as primary
** Message: 18:45:06.804: Obtained a high priority EGL context
** Message: 18:45:06.805: Obtained a high priority EGL context
dbus-daemon[19688]: [session uid=0 pid=19688] Activating service name='org.a11y.Bus' requested by ':1.3' (uid=0 pid=19689 comm="gnome-shell --display-server --wayland" label="unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023")
dbus-daemon[19688]: [session uid=0 pid=19688] Successfully activated service 'org.a11y.Bus'
libmutter-Message: 18:45:06.993: Using public X11 display :1, (using :2 for managed services)

(gnome-shell:19689): libmutter-WARNING **: 18:45:06.993: WL: error: XDG_RUNTIME_DIR is invalid or not set in the environment


(gnome-shell:19689): libmutter-ERROR **: 18:45:06.993: Failed to create socket
== Stack trace for context 0x562cebdd78f0 ==
A connection to the bus can't be made
1 Like

This could be the issue—anything in your config that unsets or messes with these default environment variables?

I’d check the difference in logs b/w the failed case and the new user caae that works. That may also give us some hints.

Damn, i think i found the root cause of this: Zellij autostart.

ZELLIJ_AUTO_ATTACH="true"
ZELLIJ_AUTO_EXIT="true"

# if [[ -z "$ZELLIJ" ]]; then
#     if [[ "$ZELLIJ_AUTO_ATTACH" == "true" ]]; then
#         zellij attach -c
#     else
#         zellij
#     fi

#     if [[ "$ZELLIJ_AUTO_EXIT" == "true" ]]; then
#         exit
#     fi
# fi

I should have figured out before, because my term was a bit buggy sometime.
But i didn’t known that DE source the .bashrc file when starting.
KDE was the only one to not failed for some reason…

Anyway, i’m never touching zellij again, and thank a lot for your help guys

1 Like