Nvidia, Kubuntu, and My Reluctant Return to Windows 11
My latest attempt to make Linux work on a modern Nvidia laptop ended, predictably, with a return to Windows 11.
Published: 14 May, 2025
I’ve been a dedicated Linux user for over a decade. Daily driving it on my Thinkpad T480 for years now. I’m comfortable in the terminal, I’ve wrestled with my fair share of config files, and I generally know my way around the ecosystem. So, when I recently acquired a new laptop equipped with an Nvidia GPU, I approached it with a familiar mix of hope and caution. My plan was to install Kubuntu 24.04 because I prefer Plasma over Gnome.
The installer booted with the wrong display scaling for this laptop’s QHD screen. Everything looked tiny but the installation itself was a breeze. On first boot, Plasma was still too tiny on the QHD screen. I had to manually open display settings to set the scaling to 150%.
The real breaking point came when I tried to use my External Monitor.
My standard setup involves docking the laptop and connecting it to my 21-inch 1080p external monitor. This is pretty common. I plugged it in.
The system performance immediately tanked. The lag was severe – not just a minor stutter, but a profound sluggishness that made the machine almost unusable. Moving windows felt like dragging them through treacle. Typing input had a significant delay. Even the mouse cursor struggled to keep up.
This, unfortunately, is where the familiar descent into troubleshooting began. I’m no stranger to this dance when Nvidia is involved. I spent the next four hours systematically working through potential solutions, drawing on years of experience and countless forum threads:
- Nvidia Drivers: I tried the latest Nvidia 570 series drivers, and even gave the
nvidia-driver-open
package a shot. Now scaling is fixed and can’t be changed at all. The desktop would also freeze randomly. I tried rebooting multiple times, unplugging and plugging the monitor back in. It magically started to work at one point. - X11 vs. Wayland: Flipped between them repeatedly. On X11, trying to get the laptop’s QHD screen scaled to something like 125% or 150% while keeping the 1080p external monitor at 100% was the usual
xrandr
nightmare. Fractional scaling on the primary often led to blurriness, and trying to get different factors per monitor… well, if you’ve been there, you know. The lag, while perhaps slightly less than Wayland with the external monitor, was still very present. - On Wayland, the per-monitor scaling was handled much better in theory, but the lag with the external monitor persisted, occasionally leading to system instability.
- PRIME Configuration: Explored
nvidia-settings
, toggledprime-select
betweenon-demand
,intel
, andnvidia
. Ensured modesetting was enabled via kernel parameters (nvidia-drm.modeset=1
). - Compositor Settings: Experimented with KWin’s compositor settings, disabling effects, trying different backends.
- Xorg.conf: Yes, I even resorted to manually crafting
xorg.conf
snippets, trying to force modes and sync settings.
Each potential fix I found online either applied to a different hardware/software version or simply didn’t resolve the core issue. The common denominator in many threads was the persistent difficulty of getting a smooth, correctly scaled multi-monitor setup (especially with mixed DPIs) on Linux with Nvidia laptops.
After four hours, with a growing headache and a distinct lack of progress, I had to be honest with myself. While I can, and sometimes do, enjoy the process of deep-diving into system configuration, this is my primary machine for getting work done. I need it to be reliable and efficient.
With a sense of resignation, I downloaded the Windows 11 ISO. The installation was, as one might expect, uneventful. Drivers were handled automatically. Display scaling? Per-monitor, fractional, crisp, and easy to configure for both the QHD internal display and the 1080p external. The external monitor? Plugged it in, and it just worked. Instantly. No lag, no fuss.
It’s a deeply frustrating outcome. I genuinely prefer the Linux environment – its philosophy, its flexibility, its power. And as a programmer, the Linux command line, package management, and overall development ecosystem are simply far superior for my workflow. Yet, here I am. The thought of daily driving Windows 11, an OS that increasingly treats its users like children, shoves ads in your face at every opportunity, and feels riddled with telemetry and spyware, is genuinely depressing. But the alternative, on this specific hardware, was an unusable desktop.
So, for this modern Nvidia-equipped laptop, the path of least resistance, and frankly, the only path to a usable daily driver experience for my needs, led me back to the lesser of two evils. The dream of a truly seamless, “it just works” Linux desktop experience on Nvidia laptop hardware, especially with HiDPI internal screens and LoDPI external displays, still feels elusive after all these years. Maybe next year, eh?