Need help installing NVIDIA Driver (incomplete installation)

First 2 commands went smooth but when trying to re-install, got this:

    ~  sudo mhwd -i pci video-hybrid-intel-nvidia-470xx-prime
Warning: no matching device for config 'video-hybrid-intel-nvidia-470xx-prime' found!
> Installing video-hybrid-intel-nvidia-470xx-prime...
Sourcing /etc/mhwd-x86_64.conf
Has lib32 support: true
Sourcing /var/lib/mhwd/db/pci/graphic_drivers/hybrid-intel-nvidia-470xx-prime/MHWDCONFIG
Processing classid: 0300
Sourcing /var/lib/mhwd/scripts/include/0300
:: Synchronizing package databases...
 core downloading...
 extra downloading...
 community downloading...
 multilib downloading...
resolving dependencies...
looking for conflicting packages...
warning: dependency cycle detected:
warning: eglexternalplatform will be installed before its nvidia-470xx-utils dependency

Packages (8) egl-wayland-2:1.1.11-4  eglexternalplatform-1.1-2  lib32-nvidia-470xx-utils-470.182.03-1  libxnvctrl-470xx-470.182.03-3  linux61-nvidia-470xx-470.182.03-10  nvidia-470xx-settings-470.182.03-3  nvidia-470xx-utils-470.182.03-2  nvidia-prime-1.0-4

Total Installed Size:  569.23 MiB

:: Proceed with installation? [Y/n] 
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
error: failed to commit transaction (conflicting files)
egl-wayland: /usr/lib/libnvidia-egl-wayland.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libEGL_nvidia.so.0 exists in filesystem
nvidia-470xx-utils: /usr/lib/libGLESv1_CM_nvidia.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libGLESv2_nvidia.so.2 exists in filesystem
nvidia-470xx-utils: /usr/lib/libGLX_nvidia.so.0 exists in filesystem
nvidia-470xx-utils: /usr/lib/libcuda.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvcuvid.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-cfg.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-encode.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-fbc.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-ifr.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-ml.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-opticalflow.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-ptxjitcompiler.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvoptix.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libEGL_nvidia.so.0 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libGLESv1_CM_nvidia.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libGLESv2_nvidia.so.2 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libGLX_nvidia.so.0 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libcuda.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvcuvid.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-encode.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-fbc.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-ifr.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-ml.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-opticalflow.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-ptxjitcompiler.so.1 exists in filesystem
Errors occurred, no packages were upgraded.
Error: pacman failed!
Error: script failed!

Does it mean the packages were not removed when running a 2nd command?

did you installed the nvidia drivers from nvidia site, or from any other site other than official repos or AUR?

I did. When my system failed to boot into DE after I installed recommended nvidia-390xx bumblebee, I logged into TTY and among other things I tried installing the 418 nvidia driver (downloaded from nvidia web site) using this guide:
https://linuxconfig.org/how-to-install-the-nvidia-drivers-on-manjaro-linux
It failed with the following:

Well Intel’s GLX is working, That is the normal way to switch GPUs on such setup:

# Normal
glxinfo | grep "OpenGL renderer"
# Dedicated nvidia gpu
prime-run glxinfo | grep "OpenGL renderer"

So it works on demand, not all the time. Just add prime-run before the command.

To have a GUI for switching the whole desktop, there are: optimus-manager or envycontrol. Both do the same. Nvidia-settings don’t provide such a switch by default nowadays.

Thanks your post is very informative unfortunately after running the commands in in this post

nvidia drivers got removed and wouldn’t install back as per the last command. I need to troubleshoot this first before trying the optimus manager and other things from your links.

Look, a DKMS package contains instructions which compiles the module against the current kernel, if you use mhwd, it will use the precompiled module which matches current kernel. DKMS and PRECOMPILED are the same driver, but the packages conflicts.

So if you install video-hybrid-intel-nvidia-470xx-prime with mhwd it will install linux61-nvidia-470xx if installed linux61. The i915 (intel) module is installed anyway with video-linux.

I would advise you remove every thing nvidia related, but not the mhwd packages.

pamac list | grep nvidia | grep -v mhwd

Reboot and run the setup again.

if you installed them from third party sites, you need to remove them, otherwise you will end up with the exist in filesystem issue …
so run the command you installed them and append at the end this:
--uninstall
something like this:

sudo bash NVIDIA-Linux-x86_64-XXX.XX.run --uninstall

dont run this command, this is an example…
if the removing was without error, install the drivers from official repos:
sudo mhwd -i pci video-hybrid-intel-nvidia-470xx-prime
if no errors, reboot

Oh look we are back to ‘you did it wrong undo it’ :sweat_smile:

I jest … but while the confusion around supported driver series is granted, this is back to the crux of the issue as it was already assumed, though disregarded, 2 dozen posts ago.

Hopefully soon you can begin again.

Removed the 418 driver I installed from nvidia site, there were a few “something not found” messages along the way but it got removed and I checked the /var/lib/dkms where it was installed and all the 418 directories with files were removed.

tried reinstalling the nvidia-470xx prime and got the same error:

    ~  sudo mhwd -i pci video-hybrid-intel-nvidia-470xx-prime
[sudo] password for viko: 
Warning: no matching device for config 'video-hybrid-intel-nvidia-470xx-prime' found!
> Installing video-hybrid-intel-nvidia-470xx-prime...
Sourcing /etc/mhwd-x86_64.conf
Has lib32 support: true
Sourcing /var/lib/mhwd/db/pci/graphic_drivers/hybrid-intel-nvidia-470xx-prime/MHWDCONFIG
Processing classid: 0300
Sourcing /var/lib/mhwd/scripts/include/0300
:: Synchronizing package databases...
 core downloading...
 extra downloading...
 community downloading...
 multilib downloading...
resolving dependencies...
looking for conflicting packages...
warning: dependency cycle detected:
warning: eglexternalplatform will be installed before its nvidia-470xx-utils dependency

Packages (8) egl-wayland-2:1.1.11-4  eglexternalplatform-1.1-2  lib32-nvidia-470xx-utils-470.182.03-1  libxnvctrl-470xx-470.182.03-3  linux61-nvidia-470xx-470.182.03-10  nvidia-470xx-settings-470.182.03-3  nvidia-470xx-utils-470.182.03-2  nvidia-prime-1.0-4

Total Installed Size:  569.23 MiB

:: Proceed with installation? [Y/n] 
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
error: failed to commit transaction (conflicting files)
egl-wayland: /usr/lib/libnvidia-egl-wayland.so exists in filesystem
egl-wayland: /usr/lib/libnvidia-egl-wayland.so.1 exists in filesystem
egl-wayland: /usr/lib/libnvidia-egl-wayland.so.1.1.11 exists in filesystem
nvidia-470xx-utils: /usr/bin/nvidia-bug-report.sh exists in filesystem
nvidia-470xx-utils: /usr/bin/nvidia-cuda-mps-control exists in filesystem
nvidia-470xx-utils: /usr/bin/nvidia-cuda-mps-server exists in filesystem
nvidia-470xx-utils: /usr/bin/nvidia-debugdump exists in filesystem
nvidia-470xx-utils: /usr/bin/nvidia-modprobe exists in filesystem
nvidia-470xx-utils: /usr/bin/nvidia-persistenced exists in filesystem
nvidia-470xx-utils: /usr/bin/nvidia-smi exists in filesystem
nvidia-470xx-utils: /usr/bin/nvidia-xconfig exists in filesystem
nvidia-470xx-utils: /usr/lib/libEGL_nvidia.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libEGL_nvidia.so.0 exists in filesystem
nvidia-470xx-utils: /usr/lib/libGLESv1_CM_nvidia.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libGLESv1_CM_nvidia.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libGLESv2_nvidia.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libGLESv2_nvidia.so.2 exists in filesystem
nvidia-470xx-utils: /usr/lib/libGLX_nvidia.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libGLX_nvidia.so.0 exists in filesystem
nvidia-470xx-utils: /usr/lib/libcuda.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libcuda.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvcuvid.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvcuvid.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-cfg.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-cfg.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-eglcore.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-encode.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-encode.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-fbc.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-fbc.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-glcore.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-glsi.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-ifr.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-ifr.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-ml.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-ml.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-ptxjitcompiler.so exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-ptxjitcompiler.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/libnvidia-tls.so exists in filesystem
nvidia-470xx-utils: /usr/lib/vdpau/libvdpau_nvidia.so exists in filesystem
nvidia-470xx-utils: /usr/lib/vdpau/libvdpau_nvidia.so.1 exists in filesystem
nvidia-470xx-utils: /usr/lib/xorg/modules/drivers/nvidia_drv.so exists in filesystem
nvidia-470xx-utils: /usr/share/glvnd/egl_vendor.d/10_nvidia.json exists in filesystem
nvidia-470xx-utils: /usr/share/man/man1/nvidia-cuda-mps-control.1.gz exists in filesystem
nvidia-470xx-utils: /usr/share/man/man1/nvidia-modprobe.1.gz exists in filesystem
nvidia-470xx-utils: /usr/share/man/man1/nvidia-persistenced.1.gz exists in filesystem
nvidia-470xx-utils: /usr/share/man/man1/nvidia-smi.1.gz exists in filesystem
nvidia-470xx-utils: /usr/share/man/man1/nvidia-xconfig.1.gz exists in filesystem
nvidia-470xx-settings: /usr/bin/nvidia-settings exists in filesystem
nvidia-470xx-settings: /usr/share/applications/nvidia-settings.desktop exists in filesystem
nvidia-470xx-settings: /usr/share/man/man1/nvidia-settings.1.gz exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libEGL_nvidia.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libEGL_nvidia.so.0 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libGLESv1_CM_nvidia.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libGLESv1_CM_nvidia.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libGLESv2_nvidia.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libGLESv2_nvidia.so.2 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libGLX_nvidia.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libGLX_nvidia.so.0 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libcuda.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libcuda.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvcuvid.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvcuvid.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-eglcore.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-encode.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-encode.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-fbc.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-fbc.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-glcore.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-glsi.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-ifr.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-ifr.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-ml.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-ml.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-ptxjitcompiler.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-ptxjitcompiler.so.1 exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/libnvidia-tls.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/vdpau/libvdpau_nvidia.so exists in filesystem
lib32-nvidia-470xx-utils: /usr/lib32/vdpau/libvdpau_nvidia.so.1 exists in filesystem
Errors occurred, no packages were upgraded.
Error: pacman failed!
Error: script failed!

Question, can I use --force to overwrite it (unless there’s another option to overwrite them) or should I go in and delete all these existing .co and .co.1 and other configuration files manually (if safe to do so)?

if you removed it with the --uninstall that you added to the command that you installed them with, it should remove them all, and you would no longer have these exist in filesystem… but maybe something other got wrong…
yes try to overwrite them, if it installed, and there were no errors, reboot and test…

    ~  mhwd -h
Usage: mhwd [OPTIONS] <config(s)>

  --pci                                 list only pci devices and driver configs
  --usb                                 list only usb devices and driver configs
  -h/--help                             show help
  -v/--version                          show version of mhwd
  -f/--force                            force reinstallation
  -d/--detail                           show detailed info for -l/-li/-lh
  -l/--list                             list available configs for devices
  -la/--listall                         list all driver configs
  -li/--listinstalled                   list installed driver configs
  -lh/--listhardware                    list hardware information
  -i/--install <usb/pci> <config(s)>    install driver config(s)
  -ic/--installcustom <usb/pci> <path>  install custom config(s)
  -r/--remove <usb/pci> <config(s)>     remove driver config(s)
  -a/--auto <usb/pci> <free/nonfree> <classid>  auto install configs for classid
  --pmcachedir <path>                   set package manager cache path
  --pmconfig <path>                     set package manager config
  --pmroot <path>                       set package manager root

I’m not sure the --force option is there to force the install, it could be there to reinstall a package that is already installed?? I tried a few combinations of -i and -f in the command and none worked.
I don’t see another option to overwrite the files that already exist.

Is it safe to remove these files manually?

they should be safe to delete manually… but you can try:

sudo mhwd -f -i pci video-hybrid-intel-nvidia-470xx-prime

or:

sudo mhwd -i pci video-hybrid-intel-nvidia-470xx-prime --force

or overwrite them with:

sudo pacman -S nvidia-470xx-utils egl-wayland nvidia-470xx-settings lib32-nvidia-470xx-utils --overwrite '*'

then install the drivers for your kernel:

sudo pacman -S linux61-nvidia-470xx

reboot

Yeah I tried your first 2 commands already they didn’t work.
Will remove manually and try installing again. Will report back

Didn’t delete them but edit names and added .bak extension at the end so I could find them easily if something didn’t work out.
Then run an install command and it was successful

    ~  sudo mhwd -i pci video-hybrid-intel-nvidia-470xx-prime
[sudo] password for viko: 
Warning: no matching device for config 'video-hybrid-intel-nvidia-470xx-prime' found!
> Installing video-hybrid-intel-nvidia-470xx-prime...
Sourcing /etc/mhwd-x86_64.conf
Has lib32 support: true
Sourcing /var/lib/mhwd/db/pci/graphic_drivers/hybrid-intel-nvidia-470xx-prime/MHWDCONFIG
Processing classid: 0300
Sourcing /var/lib/mhwd/scripts/include/0300
:: Synchronizing package databases...
 core downloading...
 extra downloading...
 community downloading...
 multilib downloading...
resolving dependencies...
looking for conflicting packages...
warning: dependency cycle detected:
warning: eglexternalplatform will be installed before its nvidia-470xx-utils dependency

Packages (8) egl-wayland-2:1.1.11-4  eglexternalplatform-1.1-2  lib32-nvidia-470xx-utils-470.182.03-1  libxnvctrl-470xx-470.182.03-3  linux61-nvidia-470xx-470.182.03-10  nvidia-470xx-settings-470.182.03-3  nvidia-470xx-utils-470.182.03-2  nvidia-prime-1.0-4

Total Installed Size:  569.23 MiB

:: Proceed with installation? [Y/n] 
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
checking available disk space...
:: Processing package changes...
installing eglexternalplatform...
installing egl-wayland...
installing nvidia-470xx-utils...
==> If you run into trouble with CUDA not being available, run nvidia-modprobe first.
Optional dependencies for nvidia-470xx-utils
    nvidia-settings=470.182.03: configuration tool [pending]
    xorg-server-devel: nvidia-xconfig [installed]
    opencl-nvidia=470.182.03: OpenCL support
installing libxnvctrl-470xx...
installing nvidia-470xx-settings...
installing nvidia-prime...
installing lib32-nvidia-470xx-utils...
Optional dependencies for lib32-nvidia-470xx-utils
    lib32-opencl-nvidia-470xx
installing linux61-nvidia-470xx...
:: Running post-transaction hooks...
(1/8) Creating system user accounts...
(2/8) Reloading system manager configuration...
(3/8) Reloading device manager configuration...
(4/8) Arming ConditionNeedsUpdate...
(5/8) Updating module dependencies...
(6/8) Updating Kernel initcpios for Nvidia-DRM...
==> Building image from preset: /etc/mkinitcpio.d/linux61.preset: 'default'
  -> -k /boot/vmlinuz-6.1-x86_64 -c /etc/mkinitcpio.conf -g /boot/initramfs-6.1-x86_64.img --microcode /boot/intel-ucode.img
==> Starting build: '6.1.29-1-MANJARO'
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [autodetect]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: 'xhci_pci'
  -> Running build hook: [keyboard]
  -> Running build hook: [keymap]
  -> Running build hook: [consolefont]
==> WARNING: consolefont: no font found in configuration
  -> Running build hook: [filesystems]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: '/boot/initramfs-6.1-x86_64.img'
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux61.preset: 'fallback'
  -> -k /boot/vmlinuz-6.1-x86_64 -c /etc/mkinitcpio.conf -g /boot/initramfs-6.1-x86_64-fallback.img -S autodetect --microcode /boot/intel-ucode.img
==> Starting build: '6.1.29-1-MANJARO'
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: 'qed'
==> WARNING: Possibly missing firmware for module: 'bfa'
==> WARNING: Possibly missing firmware for module: 'qla1280'
==> WARNING: Possibly missing firmware for module: 'qla2xxx'
==> WARNING: Possibly missing firmware for module: 'xhci_pci'
  -> Running build hook: [keyboard]
  -> Running build hook: [keymap]
  -> Running build hook: [consolefont]
==> WARNING: consolefont: no font found in configuration
  -> Running build hook: [filesystems]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: '/boot/initramfs-6.1-x86_64-fallback.img'
==> Image generation successful
(7/8) Refreshing PackageKit...
(8/8) Updating the desktop file MIME type cache...
nvidia-470xx-utils: install reason has been set to 'explicitly installed'
nvidia-470xx-settings: install reason has been set to 'explicitly installed'
libxnvctrl-470xx: install reason has been set to 'explicitly installed'
nvidia-prime: install reason has been set to 'explicitly installed'
lib32-nvidia-470xx-utils: install reason has been set to 'explicitly installed'
linux61-nvidia-470xx: install reason has been set to 'explicitly installed'
xorg configuration file: '/etc/X11/mhwd.d/nvidia.conf'
> Successfully installed video-hybrid-intel-nvidia-470xx-prime

Going into reboot, wish me luck. :joy:

aaand I’m back to where I was before this post
https://forum.manjaro.org/t/need-help-installing-nvidia-driver-incomplete-installation/140887/20
Will continue troubleshooting later

EDIT:
Not quite to where I was there’s difference

    ~  inxi -G                                                                                                                                                                                              ✔ 
Graphics:
  Device-1: Intel 4th Gen Core Processor Integrated Graphics driver: i915
    v: kernel
  Device-2: NVIDIA GK104M [GeForce GTX 880M] driver: nvidia v: 470.182.03
  Display: x11 server: X.Org v: 21.1.8 with: Xwayland v: 23.1.1 driver: X:
    loaded: modesetting,nvidia unloaded: nouveau dri: crocus gpu: i915
    resolution: 1920x1080
  API: OpenGL v: 4.6 Mesa 23.0.3 renderer: Mesa Intel HD Graphics 4600 (HSW
    GT2)

The last line is now
vs before

API: OpenGL v: 4.6 Mesa 23.0.3 renderer: Mesa Intel HD Graphics 4600 (HSW GT2)
vs
API: OpenGL v: 4.5 Mesa 23.0.3 renderer: llvmpipe (LLVM 15.0.7 256 bits)

the driver is loaded… and as was mentioned, if you want to run specific program on nvidia, use the prime-run command, for example:
prime-run firefox
then run:
nvidia-smi
and check if firefox is running on nvidia…

Just did that

    ~  prime-run firefox

(firefox:29825): Gtk-WARNING **: 02:53:59.192: Theme parsing error: gtk.css:1649:16: '-gtk-icon-size' is not a valid property name

(firefox:29825): Gtk-WARNING **: 02:53:59.192: Theme parsing error: gtk.css:1652:16: '-gtk-icon-size' is not a valid property name
    ~  nvidia-smi
Tue May 23 02:54:25 2023       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.182.03   Driver Version: 470.182.03   CUDA Version: 11.4     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  Off  | 00000000:01:00.0 N/A |                  N/A |
| N/A   40C    P8    N/A /  N/A |      5MiB /  8112MiB |     N/A      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

well maybe the card doesnt work properly with the 470 drivers, or there is still something messed up from the third party drivers, which is more probably…
post output from:
ls /etc/modprobe.d
find /etc/X11/ -name "*.conf"

Asking again :arrow_down:

That is the test to verify if switching of GLX works.

Sorry all, didn’t have time to sit on computer after reinstalling packages.
Here’s the output of all 4 commands

    ~  ls /etc/modprobe.d
mhwd-gpu.conf  mhwd-nvidia.conf.bak
    ~  find /etc/X11/ -name "*.conf"
/etc/X11/mhwd.d/nvidia.conf
/etc/X11/xorg.conf.d/90-mhwd.conf
/etc/X11/xorg.conf.d/00-keyboard.conf
/etc/X11/xorg.conf.d/30-touchpad.conf
    ~  glxinfo | grep "OpenGL renderer"
OpenGL renderer string: Mesa Intel(R) HD Graphics 4600 (HSW GT2)
    ~  prime-run glxinfo | grep "OpenGL renderer"
OpenGL renderer string: NVIDIA GeForce GTX 880M/PCIe/SSE2

I get it the last 2 commands show that the switching works as it should.

I only scanned through the links but will read in depth in a day or two, I’m pretty sure I’ll just want to switch to nvidia and leave it on all the time, may have a few more questions on that but as of right now I’d like to thank everyone who participated and helped me figure this out.

Installing optimus-manager was butter smooth following the instructions in this link. I installed the Qt version of it and switched to using nvidia card as I wanted.
Again thank you all for your help really appreciate it.