Constant hanging/crashes on LXQt after upgrading to NixOS 25.11

Two days ago (2026-04-20), I upgraded my NixOS desktop in the lab from 24.11 to 25.11. Mozilla Firefox started crashing after minutes or hours of usage, and Kitty (a GPU-based terminal emulator) also started freezing spontaneously. The LXQt desktop environment also experienced spontaneous freezes after the update. I was able to switch to another TTY and terminate the graphical session in some cases, but had to force a power off in others.

I tried having a Kitty window running dmesg -w, but it showed nothing interesting before freezing with the LXQt desktop environment. I also tried to strace Firefox, but I’m probably not competent enough to locate the cause of the crash in such a massive log. (I attached the strace log to Firefox’s crash reports.)

Does anyone experience similar issues? How could I further debug this?

I’m reluctant to roll back to 24.11, but cannot stay on 25.11 if such problems persist.

Did you rule out OOM issues? (Check journal.)

I just experienced another LXQt freezing and was able to switch to tty2. I found no OOM record in dmesg or journalctl.

$ sudo dmesg -T | grep -i "killed process"

$ sudo dmesg -T | grep -i "oom"
[Wed Apr 22 20:04:14 2026] systemd[1]: Listening on Userspace Out-Of-Memory (OOM) Killer Socket.

$ sudo journalctl -k | grep -i "oom"
Apr 22 20:04:14 nixos-202404 systemd[1]: Listening on Userspace Out-Of-Memory (OOM) Killer Socket.

$ sudo journalctl -k | greo "out of memory"

Can you share your full journal contents, hardware details and as much of your configuration.nix and related files as possible?

Given the tty is still working I’d suspect graphics driver issues, but that’s an educated guess at best.

Thank you for helping out, and sorry for late reply.

The following GitHub Gists conctains the NixOS/Home Manager configuration files. Which logs should I collect?

I found some new clues.

I experienced a Kitty freezing incident that almost freezed the whole graphical session. After switching to another tty (tty switching does not always work in similar situations), I found the last three lines of `dmesg -w` outputs:

[ 8595.933545 ] noveau 0000:01:00.0: .kitty-wrapped[11291]: job timeout, channel 88 killed!
[ 8595.934295 ] noveau 0000:01:00.0: .kitty-wrapped[11291]: error fencing pushbuf: -19
[ 8601.664969 ] traps: .lxqt-panel-wra[2709] general protection fault ip:7f66ca01f9dd sp:7fff10ce9810 error:0 in libQt6Core.so.6.10.2[21f9dd,7f66c9ed300+45e000]

That’s the kind of thing that would be nice to know, what hardware are you running?

This looks like either hardware failure or a kernel bug.

In either case, if you’re using an nvidia GPU, using nouveau is generally not recommended, I’d suggest switching to the nvidia driver (which is also open source, under the same MIT license nixpkgs uses, these days). Having to use an out-of-tree driver still sucks, of course, but at least it works and you get the performance you paid extra for. Otherwise you might as well buy AMD GPUs, they’ll perform better than an nvidia card with nouveau, integrate better with the kernel and userspace graphics stack, and be like 2/3 of the price.

2 Likes

The problem no longer appears after switching to the open source Nvidia driver. Thanks a million for helping out!