Nvidia driver removal

Hi,

In short, I’ve decommissioned my old Nvidia GPU for a 9070 XT.

While the 9070 works fine as it is currently, I figured it would be wise to clean up the old nvidia drivers.

So my line of thought was to use sudo pacman -Ss nvidia | egrep -i installed to gather a list of currently installed nvidia packages and remove them one by one.

However there are a few that I’m struggling to remove and would like some guidance.

[matcha@matcha-machine ~]$ sudo pacman -Ss nvidia | grep -A1 installed
extra/egl-gbm 1.1.2.1-1 [installed]
    The GBM EGL external platform library
extra/egl-wayland 4:1.1.19-1 [installed]
    EGLStream-based Wayland external platform
extra/egl-x11 1.0.1-1 [installed]
    NVIDIA XLib and XCB EGL Platform Library
--
extra/libvdpau 1.5-3 [installed]
    Nvidia VDPAU library
--
extra/nvidia-utils 570.144-3 [installed]
    NVIDIA drivers utilities
--
multilib/lib32-nvidia-utils 570.144-1 [installed]
    NVIDIA drivers utilities (32-bit)

Below are examples of the errors I’m seeing:

[matcha@matcha-machine ~]$ sudo pacman -Rs nvidia-utils
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing nvidia-utils breaks dependency 'nvidia-utils=570.144' required by lib32-nvidia-utils
[matcha@matcha-machine ~]$ sudo pacman -Rs libvdpau
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing libvdpau breaks dependency 'libvdpau' required by ffmpeg
:: removing libvdpau breaks dependency 'libvdpau' required by ffmpeg4.4
:: removing libvdpau breaks dependency 'libvdpau' required by mpv
[matcha@matcha-machine ~]$ sudo pacman -Rs egl-x11
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing egl-x11 breaks dependency 'egl-x11' required by nvidia-utils

I stumbled across a thread where we could use -Rsc to remove packages that are dependent…but I think its odd that I’d have to remove steam for example..to remove an nvidia driver but perhaps I’m still accustomed to the “windows” way of thought.

[matcha@matcha-machine ~]$ sudo pacman -Rsc nvidia-utils
checking dependencies...
:: ffmpeg optionally requires nvidia-utils: Nvidia NVDEC/NVENC support
:: ffmpeg4.4 optionally requires nvidia-utils: Nvidia NVDEC/NVENC support
:: htop optionally requires lsof: show files opened by a process
:: libvdpau optionally requires nvidia-utils: driver for NVIDIA
:: sdl3 optionally requires vulkan-driver: vulkan renderer
:: vulkan-icd-loader optionally requires vulkan-driver: packaged vulkan driver
warning: dependency cycle detected:
warning: eglexternalplatform will be removed after its nvidia-utils dependency
warning: dependency cycle detected:
warning: lib32-libglvnd will be removed after its lib32-nvidia-utils dependency
warning: dependency cycle detected:
warning: lib32-mesa will be removed after its lib32-libglvnd dependency
warning: dependency cycle detected:
warning: lib32-harfbuzz will be removed after its lib32-freetype2 dependency
warning: dependency cycle detected:
warning: lib32-pam will be removed after its lib32-systemd dependency

Package (65)             Old Version              Net Change 

egl-gbm                  1.1.2.1-1                  -0.03 MiB
egl-wayland              4:1.1.19-1                 -0.10 MiB
egl-x11                  1.0.1-1                    -0.14 MiB
eglexternalplatform      1.2.1-1                    -0.02 MiB
lib32-alsa-lib           1.2.14-1                   -1.00 MiB
lib32-alsa-plugins       1.2.12-1                   -0.27 MiB
lib32-audit              4.0.3-1                    -0.12 MiB
lib32-bzip2              1.0.8-4                    -0.07 MiB
lib32-dbus               1.16.2-1                   -0.32 MiB
lib32-expat              2.7.1-1                    -0.17 MiB
lib32-fontconfig         2:2.16.2-1                 -0.32 MiB
lib32-freetype2          2.13.3-3                   -0.76 MiB
lib32-glib2              2.84.1-1                   -3.70 MiB
lib32-harfbuzz           11.2.0-1                   -2.46 MiB
lib32-icu                76.1-1                    -36.37 MiB
lib32-json-c             0.18-1                     -0.08 MiB
lib32-libcap             2.76-1                     -0.09 MiB
lib32-libdrm             2.4.124-1                  -0.35 MiB
lib32-libelf             0.193-1                    -2.59 MiB
lib32-libffi             3.4.8-1                    -0.03 MiB
lib32-libgcrypt          1.11.0-1                   -1.02 MiB
lib32-libglvnd           1.7.0-1                    -1.33 MiB
lib32-libgpg-error       1.51-1                     -0.15 MiB
lib32-libnm              1.52.0-1                   -1.38 MiB
lib32-libnsl             2.0.1-1                    -0.03 MiB
lib32-libpciaccess       0.18.1-1                   -0.04 MiB
lib32-libpipewire        1:1.4.2-1                  -0.86 MiB
lib32-libpng             1.6.48-1                   -0.28 MiB
lib32-libtasn1           4.20.0-1                   -0.08 MiB
lib32-libtirpc           1.3.6-1                    -0.17 MiB
lib32-libva              2.22.0-1                   -0.27 MiB
lib32-libx11             1.8.12-1                   -1.28 MiB
lib32-libxau             1.0.11-2                   -0.01 MiB
lib32-libxcb             1.17.0-1                   -1.03 MiB
lib32-libxcrypt-compat   4.4.38-1                   -0.17 MiB
lib32-libxdmcp           1.1.5-1                    -0.02 MiB
lib32-libxext            1.3.6-1                    -0.08 MiB
lib32-libxfixes          6.0.1-2                    -0.02 MiB
lib32-libxinerama        1.1.5-2                    -0.01 MiB
lib32-libxml2            2.14.2-2                   -1.21 MiB
lib32-libxshmfence       1.3.3-1                    -0.01 MiB
lib32-libxss             1.2.4-2                    -0.01 MiB
lib32-libxxf86vm         1.1.5-2                    -0.02 MiB
lib32-llvm-libs          1:19.1.7-2               -154.69 MiB
lib32-lm_sensors         1:3.6.0.r41.g31d1f125-3    -0.05 MiB
lib32-mesa               1:25.0.5-1               -103.21 MiB
lib32-ncurses            6.5-1                      -0.56 MiB
lib32-nspr               4.36-1                     -0.26 MiB
lib32-nss                3.111-1                    -3.00 MiB
lib32-nvidia-utils       570.144-1                -246.47 MiB
lib32-p11-kit            0.25.5-1                   -2.73 MiB
lib32-pam                1.7.0-1                    -0.75 MiB
lib32-pcre2              10.45-1                    -1.80 MiB
lib32-pipewire           1:1.4.2-1                  -4.67 MiB
lib32-spirv-tools        1:1.4.309.0-1              -5.82 MiB
lib32-sqlite             3.49.1-1                   -1.44 MiB
lib32-systemd            257.5-1                    -2.44 MiB
lib32-util-linux         2.41-1                     -1.06 MiB
lib32-vulkan-icd-loader  1.4.309.0-1                -0.55 MiB
lib32-wayland            1.23.1-1                   -0.16 MiB
lib32-xz                 5.8.1-1                    -0.21 MiB
libxcrypt-compat         4.4.38-1                   -0.17 MiB
lsof                     4.99.4-1                   -0.36 MiB
steam                    1.0.0.82-2                -18.65 MiB
nvidia-utils             570.144-3                -789.44 MiB

Total Removed Size:  1396.98 MiB

:: Do you want to remove these packages? [Y/n] 

Thanks for taking the time to read this and thank you in advance!

No reason for sudo, so dont use it.

Also .. the query flag exists;

pacman -Qs nvidia

Combining recursive (s) and cascade (c) is a recipe for disaster - it will automatically select dependencies for you so you dont run into ‘failed to prepare..’ .. but you will also end up removing a bunch of packages you dont need or want to.

pacman -Rsc ...

Dont do it.


So to your issue.

Just include the things you need to remove.

sudo pacman -Rns nvidia-utils lib32-nvidia-utils
1 Like

Thank you for the response and the information.

I tried to use the “no-save” sub-option in the Remove command/option but it still gave me an error:

[matcha@matcha-machine ~]$ sudo pacman -Rns nvidia-utils lib32-nvidia-utils 
[sudo] password for matcha: 
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing lib32-nvidia-utils breaks dependency 'lib32-vulkan-driver' required by steam

Install lib32-vulkan-radeon and vulkun-radeon before removing it.

1 Like

That did it. I was missing the lib32-vulkan-radeon package specifically. Once that was installed I was able to proceed with the command mentioned by @cscs.

Thanks!

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.