Switch between Nvidia drivers without driver removal possible?

The last proprietary nvidia driver update for my RTX3080 broke VS code and brave GUI somehow(it tries to render the window but can’t, gonna have to make a post somewhere to figure that one out), everything was fine with the previous one(580xx I think, which is sadly not available anymore and none of the other fix the issue), but it also works with the open driver at least.

My problem is that I end up switching between the 2 a lot since I sometime need the proprietary driver since it works better for games and the best way I found is to leave the open driver installed and install or remove the proprietary driver as needed with mhwd and reboot.

I’m assuming we can’t just reload the graphic driver on the fly and rebooting is unavoidable, but is there a way to leave both installed(the proprietary driver has no issue with the open driver remaining installed, at least none that I noticed) and simply choose which to use on the next reboot?

I’m using both Brave and visual-studio-code-bin, with an RTX 3080.

I may have other issues. I have a draft almost ready to post.

But these two apps, and all my other apps work fine.

And I’m using:

pacman -Qs nvidia-open
local/linux618-nvidia-open 590.48.01-9 (linux618-extramodules)
    NVIDIA open kernel modules for linux618

What is the output of your inxi -Gxxx ?

On the fly.. Nvidia. Maybe someday, if we all dream hard enough.

I have never tried to have multiple drivers installed. Does it make you uninstall? (And not just use the last installed one?)

The Manjaro helper scripts do a lot to make it easier. Work I’d rather not do, so I would just let it uninstall what’s needed, if that’s the case.

I haven’t tried the open one, the many different nvidia driver are so confusing that I needed to do more research to figure out what is what, which I haven’t spent the time to do yet.
I’ve been using mhwd-nvidia for proprietary.

This is the output(I’m currently using video-linux)

Device-1: NVIDIA GA102 [GeForce RTX 3080] vendor: EVGA driver: nouveau
    v: kernel arch: Ampere pcie: speed: 16 GT/s lanes: 16 ports:
    active: DP-2,DP-3 empty: DP-1,HDMI-A-1 bus-ID: 0e:00.0 chip-ID: 10de:2206
    class-ID: 0300
  Display: wayland server: X.org v: 1.21.1.21 with: Xwayland v: 24.1.9
    compositor: kwin_wayland driver: X: loaded: modesetting
    alternate: fbdev,vesa dri: zink gpu: nouveau d-rect: 6000x2520
    display-ID: 0
  Monitor-1: DP-2 pos: top-right model: LG (GoldStar) ULTRAWIDE
    serial: 177759 res: mode: 2560x1080 hz: 100 scale: 100% (1) dpi: 97
    size: 673x284mm (26.5x11.18") diag: 730mm (28.8") modes: max: 2560x1080
    min: 640x480
  Monitor-2: DP-3 pos: bottom-l model: LG (GoldStar) 34GN850
    serial: 007NTFA54907 res: mode: 3440x1440 hz: 100 scale: 100% (1) dpi: 109
    size: 800x335mm (31.5x13.19") diag: 867mm (34.1") modes: max: 3440x1440
    min: 640x480
  API: EGL v: 1.5 platforms: device: 0 drv: zink device: 1 drv: swrast gbm:
    drv: zink surfaceless: drv: zink wayland: drv: zink x11: drv: zink
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: mesa v: 25.3.4-arch1.1 glx-v: 1.4
    direct-render: yes renderer: zink Vulkan 1.4(NVIDIA GeForce RTX 3080 (NVK
    GA102) (MESA_NVK)) device-ID: 10de:2206 display-ID: :1.0
  API: Vulkan v: 1.4.335 layers: 6 surfaces: N/A device: 0
    type: discrete-gpu driver: mesa nvk device-ID: 10de:2206
  Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
    de: kscreen-console,kscreen-doctor wl: wayland-info
    x11: xdpyinfo, xprop, xrandr

It doesn’t try to uninstall video-linux, it just gives priority to the proprietary driver so if that’s installed, that’s what it’s using.
That’s why I was wondering if it was possible to switch between both, they cohabit with no problem whatsoever as far as I can tell.

Our generation (and Turing aka RTX 2000 series) GPUs and newer use this package now. Nvidia is moving to open source drivers. Not to be confused with the Nouveau driver.

Everything older was dropped. :slightly_frowning_face:

It’s using their 590 series drivers (the latest).

And it’s what the Manjaro modified, but Nvidia supplied driver assistant said:

$ nvidia-driver-assistant
Detected GPUs:
  NVIDIA GeForce RTX 3080 - (pci_id 0x2216)

Detected system:
  Manjaro Linux 

Please copy and paste the following command to install the open kernel module flavour:
  sudo pacman -S linux618-nvidia-open

Using the open one doesn’t fix my problem, those 2 apps are still unhappy with the gpu driver.

Device-1: NVIDIA GA102 [GeForce RTX 3080] vendor: EVGA driver: nvidia

vs code does a bunch of these:

[3880:0203/024408.098108:WARNING:media/gpu/vaapi/vaapi_wrapper.cc:129] Should skip nVidia device named: nvidia-drm
[3880:0203/024408.098176:WARNING:media/gpu/vaapi/vaapi_wrapper.cc:1549] Forcibly using value of --render-node-override
[3634:0203/024408.313649:ERROR:content/browser/gpu/gpu_process_host.cc:999] GPU process exited unexpectedly: exit_code=139
[3634:0203/024408.313664:WARNING:content/browser/gpu/gpu_process_host.cc:1441] The GPU process has crashed 9 time(s)
[3634:0203/024408.313676:FATAL:content/browser/gpu/gpu_data_manager_impl_private.cc:415] GPU process isn't usable. Goodbye.

And brave:

[4348:4348:0203/024903.688361:ERROR:content/browser/gpu/gpu_process_host.cc:1004] GPU process exited unexpectedly: exit_code=139
[4348:4348:0203/024903.915367:ERROR:content/browser/gpu/gpu_process_host.cc:1004] GPU process exited unexpectedly: exit_code=139
[4348:4348:0203/024904.143365:ERROR:content/browser/gpu/gpu_process_host.cc:1004] GPU process exited unexpectedly: exit_code=139
[4348:4348:0203/024904.143390:FATAL:content/browser/gpu/gpu_data_manager_impl_private.cc:415] GPU process isn't usable. Goodbye.

Edit: Btw, I did try to uninstall the open source driver as well, in case that was causing incompatibilities but no change.