I’m using Nixos for 3 months now for development on my Razer Blade and am absolutely loving it 3>
But there’s one thing that’s pretty annoying since the beginning:
When I enable GDM and Gnome, and then log in in GDM, the internal display of the laptop does not get detected. I need to connect an external monitor over HDMI to get an image. But even then, I cannot switch to the internal screen using the gnome settings or xrandr as it is not detected. (it’s not in the list)
But the funny part is:
Before logging in, GDM shows an image on both screens, so at least GMD detects both screens and the internal screen only turns black after login.
The workaround I currently have is that I use LightDM. When I log in using LightDM, gnome does detect the internal screen and everything works fine. ALMOST. When I use LightDM, i have no way to lock my screen (gnome does not display a lock icon in the menu), and when I lock the screen via console, and then try to log back in again, the previous session gets terminated an I need to start over again. So really not ideal.
Interestingly, I don’t have this problem on Nixos-unstable. But I’d like to avoid using unstable if possible, because I have some other problems with it (some systemd services showing red when starting up and FTP does for some reason no longer work in nautilus)
What needs to be said is, that the Razer Blade has two GPUs, and I have configured it to use only the NVIDIA card. Here’s the part of my configuration.nix file that’s related to the display stuff:
services.xserver.displayManager.gdm.enable = true; services.xserver.desktopManager.xterm.enable = false; services.xserver.desktopManager.gnome3.enable = true; services.xserver.videoDrivers = ["nvidia" ]; hardware.nvidia.optimus_prime.enable = true; hardware.nvidia.optimus_prime.nvidiaBusId = "PCI:1:0:0"; hardware.nvidia.optimus_prime.intelBusId = "PCI:0:2:0"; hardware.nvidia.modesetting.enable = true; hardware.opengl.driSupport32Bit = true;
If i replace “gdm.enable” with “lightdm.enable”, I can log in and get an image on my internal screen. But not with GDM.
Does anybody have an idea what the problem could be an how to solve it?
I’ve tried a lot of things in these 3 months (like for example overriding GDM, gnome shell or xorg server packages to be taken from unstable), and also tried updating from time to time, but the problem sadly didn’t go away, so I thought it might be better to ask on the forum rather than waiting for a fix to appear out of nowhere.