External monitor is on discrete video card


New Member
Jul 25, 2023
Reaction score
Hello! I'm using laptop with intel integrated graphics and nvidia discrete card, and most of the time i keep nvidia one disabled to save battery, so i'm running X on intel, but sometimes i need to connect external monitor, which is not listed in xrandr when the X process is running on intel, but works fine when its on nvidia (guess the hdmi port is connected only to discrete card). So i have to log out, enable nvidia and restart the X session so that X process is running on nvidia card.
But i noticed that it is possible to enable nvidia card, play some games on it (works just fine, game process renders on nvidia even though X is on intel) and then disable nvidia card and continue using the laptop.
So what i'm interested in is if there is a way to use external monitor without restarting the session. Thx for reading, sorry for my bad english, any help appreciated

Thanks! This method allows to switch between graphics cards via prime-select or bumblebee i believe, but it requires the X process to be started with nvidia enabled, so this basically just switches the rendering card, and even when intel is selected as a rendering card, nvidia still stays on.
my card does not have any power control options, its always eating like 20w in background and can only be turned off completely if i wanna avoid that. to turn it off completely with bbswitch, the driver should be unloaded, and driver can not be unloaded after running nvidia-xconfig --prime , and X won't even start on intel anymore until config is restored back to normal.
One of the possible solutions might be to run second X server in the way so it will use separate screen and won't fight for the devices with the first X, that would also be fine for me, but that looks hard to do bcz editing Xorg configs is... an interesting task