Zorin OS version: Zorin OS 18
GNOME Shell: 46.x (mutter 46.2)
Session: X11
GPU: NVIDIA (proprietary driver)
Hardware: MSI GF63 Ultra Thin
Architecture: amd64
Summary
GNOME Shell crashes during sleep preparation, lock screen, or user switching due to an unhandled exception in Zorin GNOME Shell extensions (zorin-taskbar and zorin-appindicator). This results in the βOh no! Something has gone wrongβ screen, forcing a logout.
This is not an NVIDIA driver issue β the crash originates from Zorin-maintained GNOME Shell extensions during session mode transitions on GNOME 46.
Steps to Reproduce
- Boot into Zorin OS 18
- Log in normally
- Trigger any of the following:
- Let system auto-sleep due to inactivity
- Manually lock the screen
- Switch to another user account
- GNOME Shell crashes and shows:
βA problem has occurred and the system canβt recover. Please log out and try again.β
Expected Result
GNOME Shell should gracefully handle sleep / lock / session transitions without crashing.
Actual Result
GNOME Shell crashes and GDM cannot recover the session.
Screenshot
Affected Packages (latest from ppa:zorinos/stable)
gnome-shell-extension-zorin-taskbar
Installed: 70.1.1
Candidate: 70.1.1
gnome-shell-extension-zorin-appindicator
Installed: 60.0.1
Candidate: 60.0.1
Relevant Logs (journalctl)
TypeError: SettingsManager.getDefault() is null
Stack trace:
getDefaultGSettings@file:///usr/share/gnome-shell/extensions/zorin-appindicator@zorinos.com/settingsManager.js:54:28
_updateIconSize@file:///usr/share/gnome-shell/extensions/zorin-appindicator@zorinos.com/appIndicator.js:1558:42
_updateWhenFullyReady@file:///usr/share/gnome-shell/extensions/zorin-appindicator@zorinos.com/appIndicator.js:1013:18
async*_init/<@file:///usr/share/gnome-shell/extensions/zorin-appindicator@zorinos.com/appIndicator.js:966:22
disable/<@file:///usr/share/gnome-shell/extensions/zorin-taskbar@zorinos.com/panelManager.js:344:20
disable@file:///usr/share/gnome-shell/extensions/zorin-taskbar@zorinos.com/panelManager.js:319:20
disable@file:///usr/share/gnome-shell/extensions/zorin-taskbar@zorinos.com/extension.js:132:26
_callExtensionDisable@resource:///org/gnome/shell/ui/extensionSystem.js:220:32
_onEnabledExtensionsChanged@resource:///org/gnome/shell/ui/extensionSystem.js:646:24
async*_sessionUpdated@resource:///org/gnome/shell/ui/extensionSystem.js:847:20
...
_prepareForSleep@resource:///org/gnome/shell/ui/screenShield.js:294:22
Additional messages seen before the crash:
Failed to parse saved session file
meta_output_get_monitor: runtime check failed
Analysis
- Crash occurs during
_prepareForSleep/ session mode transitions - Zorin extensions do not handle GNOME 46 lifecycle changes correctly
SettingsManager.getDefault()returnsnullduring extension disable- GNOME Shell crashes instead of recovering
Disabling the following extensions fully resolves the issue:
zorin-taskbar@zorinos.comzorin-appindicator@zorinos.comzorin-window-move-effect@zorinos.com
This confirms the root cause is extension logic, not graphics drivers or hardware.
Temporary Workaround
Disable the affected extensions:
sudo mv /usr/share/gnome-shell/extensions/zorin-taskbar@zorinos.com \
/usr/share/gnome-shell/extensions/zorin-taskbar@zorinos.com.bak
sudo mv /usr/share/gnome-shell/extensions/zorin-appindicator@zorinos.com \
/usr/share/gnome-shell/extensions/zorin-appindicator@zorinos.com.bak
After reboot, sleep / lock / user switching works reliably.
Impact
- Affects default Zorin OS 18 desktop
- Causes frequent forced logouts
- Easily triggered on laptops due to sleep/lock behavior
- High user-facing severity
Request
Please patch the Zorin GNOME Shell extensions to safely handle GNOME 46 session transitions, or guard against SettingsManager.getDefault() returning null during disable.
Regards
Mukesh Kumar
