Step by step to install nvidia-450xx hybrid cards

Because many have been asking for help installing nvidia-450xx I decided to make a simple step by step tutorial.
Those who are much more experienced with Manjaro, feel free to edit this post.

Like most I used sudo mhwd -i pci video-nvidia-450xx and got and error like shown here below.

~ >>> sudo mhwd -i pci video-nvidia-450xx                                      
> Installing video-nvidia-450xx...
Sourcing /etc/mhwd-x86_64.conf
Has lib32 support: true
Sourcing /var/lib/mhwd/db/pci/graphic_drivers/nvidia-450xx/MHWDCONFIG
Processing classid: 0300
Sourcing /var/lib/mhwd/scripts/include/0300
Processing classid: 0302
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing nvidia-440xx-utils breaks dependency 'nvidia-utils' required by cuda
:: removing linux57-nvidia-440xx breaks dependency 'linux57-nvidia-440xx' required by linux-latest-nvidia-440xx
:: removing nvidia-440xx-utils breaks dependency 'nvidia-utils' required by nvidia-prime
:: removing nvidia-440xx-utils breaks dependency 'nvidia-utils' required by nvtop
Error: pacman failed!
Error: script failed!

In my case cuda, linux-latest-nvidia-440xx, nvidia-prime~ and nvtop` are stopping the installation, meaning what ever comes after ā€œrequired byā€ is stopping the process.
In my case I used

sudo pacman -R cuda linux-latest-nvidia-440xx nvidia-prime nvtop

After that you can install the 450xx driver.
I could not install video-hybrid-intel-nvidia-450xx-prime straight after, so I used video-nvidia-450xx as so

sudo mhwd -i pci video-nvidia-450xx 

then I did

sudo mhwd -i pci video-modesetting

for cuda support.

Lastly I did

sudo mhwd -i pci video-hybrid-intel-nvidia-450xx-prime

which might be totally unnecessary.

2 Likes

Why do you need to set the video mode to modesetting? Wouldnā€™t that ruin performance on the desktop cause modesetting is a non-accelerated driver? I have been using CUDA with the normal Nvidia drivers W/O modesetting for years w/o issuesā€¦

Thanks for the write up. These were the exact steps I had to take to get it working on my system.

Who said anyone is ā€˜settingā€™ modesetting?
Modesetting is the open driver built into the kernel and preferred by newer intels. (over xf86-video-intel)
PRIME with proprietary nvidia requires the intel be using modesetting. It wont work otherwise.
But the whole point of PRIME is to get switching between intel+nvidia - the modesetting isnt being applied to the nvidia card.

If you have a single nvidia card (not Optimus, dual-gpu) then none of this applies to you in any way.

But ā€¦ writing this and looking at this post again I see you are not the only one confused here.
It seems OP does not understand the difference between regular nvidia and PRIME switching either.

I guess I should edit it ā€¦ but it will be almost unrecognizable.

2 Likes

Using pacman -R might not work to uninstall packages for some people (including myself), once again because if dependencies, use pacman -Rdd instead

sudo pacman -Rdd whatever needs to be uninstalled

Here we go, this is more general, but also includes the specificsā€¦

Only *latest* (and possibly cuda?) actually needed to be removed.
The problem was more because of their method.
-dd shouldnt be necessary ā€¦ this situation shouldnt really happen at all ā€¦ it only does because of these umbrella packages and certain peripherals - none of those should need the dā€™s if you include the right ones.

Indeed in my case it was cuda that needed to be removed, and since I have some deep learning packages that require cuda -dd was necessary for me (and it might be for other people), that was probably better than using -Rcs

Oh yes definitely. I cant think of a single time anyone should use -Rcs
(s is for recursive, but only packages not required by anything else)
(c is for cascade, like s, but more greedy and destructive)
(at best the 2 together is only as bad as c, which should rarely if ever be used, at worse ā€¦ its worse)

1 Like

I actually did it once to remove cuda, and regretted it lol, it simply removed tooooo many packages, then I found out about -dd, for me Rcs means ā€œdelete the package and all its dependencesā€, I didnā€™t know about those details, thanks

Generally the safe way (and including remove save files) is -Rns.
It wont automatically grab more than it can, so if something is blocking you will be warned, and then you can add it to your line. Ex: sudo pacman -Rns pkg1 means also remove pkg2 and pkg3 but returns complaint pkg4 requires pkg1, so you then inspect, decide you dont need pkg4, and the command becomes
sudo pacman -Rns pkg1 pkg4
and it will remove pkg1, pkg2, pkg3, pkg4 and any ā€˜saveā€™ files.
Thats still the safest recursive way and I dont remove using any other method
(besides a temporary one like dd if absolutely necessary like you show above)

2 Likes