Nvidia graphics driver pet for Bookworm Pup64 10.0.3 and 10.0.4 versions only

Moderator: Forum moderators

User avatar
trawglodyte
Posts: 257
Joined: Mon Dec 11, 2023 11:32 am
Location: my cave
Has thanked: 234 times
Been thanked: 77 times

Re: Nvidia graphics driver pet for Bookworm Pup64 10.0.3 and 10.0.4 versions only

Post by trawglodyte »

@bigpup

That usually works, but nouveau can be pesky. I have had to place a blacklist-nouveau.conf in etc/modprobe.d and a matching one in /usr/lib/modprobe.d before, with text exactly as you posted.

So far the Boot Manager way you told me has worked every time.

low-bar learner

User avatar
mikewalsh
Moderator
Posts: 6134
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 783 times
Been thanked: 1965 times

Re: Nvidia graphics driver pet for Bookworm Pup64 10.0.3 and 10.0.4 versions only

Post by mikewalsh »

@trawglodyte :-

O-kay. I've done a bit of experimenting, and figured out what PhilB did with Fossapup64's offered Nvidia driver.

I 'installed' the Nvidia driver to Bionicpup64 some time ago via shinobar's GetNvidia; all very straight-forward, as I recall. I wanted to see if I could reproduce that one-click 'install, reboot and it's working' action. So, I set-up a test copy of Bionicpup64, made a few initial 'tweaks, then shut-down, creating a 'save'.

When I built BP64's driver originally, I told GetNvidia to create me an SFS package at the end. I extracted this, & re-built it back into a .pet.....with one extra addition. Yup; that's right......in /etc/modprobe.d, Phil had put a file called "nvidia-installer-disable-nouveau.conf", containing these lines:

Code: Select all

# generated by nvidia-installer
blacklist nouveau
options nouveau modeset=0

That seemed to be what was needed. I booted into the 'pristine' BP64, installed the re-built driver .pet with a single click, followed immediately by a re-boot. Bob's yr uncle, everything up-and-running as hoped-for.

So; now I know how ya do it!

Mike. ;)

User avatar
mikewalsh
Moderator
Posts: 6134
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 783 times
Been thanked: 1965 times

Re: Nvidia graphics driver pet for Bookworm Pup64 10.0.3 and 10.0.4 versions only

Post by mikewalsh »

.....and having re-built my Xenialpup64 recently to use Fossa's k5.4.53 kernel, along with a jump from glibc 2.23 to Busterpup64's 2.28, I thought, "Just for the hell of it, why don't I see if Phil's nVidia .pet - built for this same kernel! - will install/run here in Xenial64? Yeah; go for it..!"

So I created a duplicate of the Xenialpup64 directory, jiggered about with the boot Menu to add another entry, booted into it, installed the .pet, and re-booted. And whaddya know?

Image

Job's a good'un..! :D It'll do me (bearing in mind that, beyond the 490-series driver, this card was no longer supported anyway, so.....it's more authentic & period-specific to the age of the Puppy in any case).

Sorted. :thumbup:

Mike. ;)

User avatar
trawglodyte
Posts: 257
Joined: Mon Dec 11, 2023 11:32 am
Location: my cave
Has thanked: 234 times
Been thanked: 77 times

Re: Nvidia graphics driver pet for Bookworm Pup64 10.0.3 and 10.0.4 versions only

Post by trawglodyte »

mikewalsh wrote: Wed Jan 17, 2024 11:00 am

Yup; that's right......in /etc/modprobe.d, Phil had put a file called "nvidia-installer-disable-nouveau.conf", containing these lines:

Code: Select all

# generated by nvidia-installer
blacklist nouveau
options nouveau modeset=0

That seemed to be what was needed. I booted into the 'pristine' BP64, installed the re-built driver .pet with a single click, followed immediately by a re-boot. Bob's yr uncle, everything up-and-running as hoped-for.

If it works, it works!! I would have thought it necessary to put the blacklist-nouveau.conf file in etc/modprobe.d (and usr.lib.modprobe.d too if you're paranoid), do a reboot, and then install nvidia driver. If you're using nouveau, you are still using nouveau after you create the nouveau-blacklist.conf file and place it in the appropriate location. Only after you reboot (with your fingers crossed) is nouveau disabled.

But if you got a .pet than can do both at once without a reboot, then even better.

If in doubt, this command will return nothing if nouveau is disabled, and return several lines of text saying nouveau if nouveau is in use.

Code: Select all

lsmod | grep nouveau

I normally want to see it blank before installing an nvidia driver, but maybe with a .pet already compiled to match your kernel it doesn't matter?

low-bar learner

User avatar
mikewalsh
Moderator
Posts: 6134
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 783 times
Been thanked: 1965 times

Re: Nvidia graphics driver pet for Bookworm Pup64 10.0.3 and 10.0.4 versions only

Post by mikewalsh »

@trawglodyte :-

I think that for most people, things they want to start or run at boot, or as soon after as possible, they're happy with these in /root/Startup.

From what I understand of it, however, for stuff you need to run as early as you can, /etc/init.d or /etc/ modprobe.d seems to be the way to go......and my guess is that this is why Phil's .pet works. Because it's disabling nouveau before the X-server gets a chance to launch. Which IS what you want, no?

Mike. ;)

User avatar
trawglodyte
Posts: 257
Joined: Mon Dec 11, 2023 11:32 am
Location: my cave
Has thanked: 234 times
Been thanked: 77 times

Re: Nvidia graphics driver pet for Bookworm Pup64 10.0.3 and 10.0.4 versions only

Post by trawglodyte »

mikewalsh wrote: Wed Jan 17, 2024 3:51 pm

for stuff you need to run as early as you can, /etc/init.d or /etc/ modprobe.d seems to be the way to go......and my guess is that this is why Phil's .pet works. Because it's disabling nouveau before the X-server gets a chance to launch. Which IS what you want, no?

I don't disagree with anything you've said. We're talking past each other, what I'm talking about is a little different. Here's an example. Let's say you're in a frugal install of BookwormPup64 and you want to install nvidia driver. You can confirm the nouveau module is loaded in terminal and get something like this...

Screenshot.png
Screenshot.png (62.38 KiB) Viewed 359 times

Placing a blacklist-nouveau.conf file with

Code: Select all

blacklist nouveau
options nouveau modeset=0

in etc/modprobe.d (and usr/lib/modprobe.d for good measure) is a good way to disable nouveau, but it doesn't do it until you reboot. The nouveau module is still loaded and you're still using it until you do so. ya dig?

So with NVIDIA's .run installers or "apt install nvidia-driver" methods you will get mixed results proceeding before a reboot. The "apt install nvidia-driver" might work on some Linux distros. If you have a .run from https://www.nvidia.com/Download/Find.aspx?lang=en-us it will probably give you an error and scold you for not disabling nouveau. That's what I'm talking about, installing the nvidia driver using the repository or a .run from NVIDIA, best practice is to make SURE nouveau is disabled, and that requires a reboot. (There are some Linux distros such as Ubuntu that give you a graphical "Other drivers" that offers you a choice of drivers, but this is just a graphical version of "apt install nvidia-driver"). As I said, this will sometimes work without disabling nouveau first, and if it does it will create the "nvidia-installer-blacklist-nouveau.conf" file as part of the process. Sometimes the nvidia.run can fail to install but it will offer to blacklist nouveau. selecting that option will also create the appropriate blacklist.conf files. Then you reboot, do the .run again and it might work the second time.

I haven't really wrapped my head around a .pet already compiled for your kernel yet though. Those other methods compile the driver for your kernel on the spot. It would be kind of hard for me to tell anybody to click the .pet without making sure nouveau was disabled first, even if the .pet makes the blacklist-nouveau.conf files. Do you see why? Because that person is still operating with nouveau module loaded and in use when they click the .pet. ya dig?

I gotta tell you that up until now I have bitten my tongue about the blacklist-nouveau.conf method, because it's confusing and also because @bigpup already has good instruction I've found myself through internet search explaining how to blacklist with Boot Manager. I've used that way several times now and it's never failed yet. But you do also have to reboot first in order for nouveau to be disabled. But since we are talking about it, I think there is a script or something in some Linux distros that attempts to defeat the nouveau-blacklist.conf and load nouveau anyway. It's hard to say because when I was learning and struggling I was also making user errors, but that pesky nouveau has a way of returning from the dead sometimes and making your blacklist-nouveau.conf file disappear.

low-bar learner

User avatar
mikewalsh
Moderator
Posts: 6134
Joined: Tue Dec 03, 2019 1:40 pm
Location: King's Lynn, UK
Has thanked: 783 times
Been thanked: 1965 times

Re: Nvidia graphics driver pet for Bookworm Pup64 10.0.3 and 10.0.4 versions only

Post by mikewalsh »

@trawglodyte :-

trawglodyte wrote: Wed Jan 17, 2024 4:42 pm

I haven't really wrapped my head around a .pet already compiled for your kernel yet though. Those other methods compile the driver for your kernel on the spot. It would be kind of hard for me to tell anybody to click the .pet without making sure nouveau was disabled first, even if the .pet makes the blacklist-nouveau.conf files. Do you see why? Because that person is still operating with nouveau module loaded and in use when they click the .pet. ya dig?

I gotta tell you that up until now I have bitten my tongue about the blacklist-nouveau.conf method, because it's confusing and also because @bigpup already has good instruction I've found myself through internet search explaining how to blacklist with Boot Manager. I've used that way several times now and it's never failed yet. But you do also have to reboot first in order for nouveau to be disabled.

Heh. Trust me, you're preaching to the choir here, bud.

I've never had an issue with using shinobar's getNvidia. Yes, it compiles/builds the drivers'n'stuff on the spot, there & then. As part of doing so, there's scripting in there that makes it quite clear you have no choice BUT to disable nouveau.....because it won't permit the process to start until you do. I'm fully aware that 'nouveau' interferes with the whole process, and needs to be removed before you compile/build/install the official drivers.

Now; what's your 'take' on the following.....bearing in mind what you've just said about the 'Other Drivers' section in Ubuntu? I installed one of dimkr's VanillaDPups, and wanted to install the official driver, so I asked him about it. He insisted that you cannot build the driver yourself, and that you MUST always install the ready-built Nvidia driver package from the official repos.......a package that somebody else has already compiled, built and packaged FOR YOU. Recognise any parallels with what you've just said? :o

I would assume that there must be some scripting in there as part of the installation process which disables nouveau first.......but you just can't be 100% certain of that, can you? Anyhoo; I tried both packages that were available, neither of which worked. Dimkr is a big believer in always following correct, proper, approved, 'official' procedure......which is just one reason I'm amazed he's been with Puppy as long as he has! We take short-cuts and do stuff "on-the-fly" like crazy in Puppyland; this behaviour must make him cringe, especially for someone who seems to be of the opinion that only official devs should ever be allowed to actually do anything! Strangely, he didn't have an answer for me..... :roll:

Hell, I dunno. Maybe I'm just gettin' jaded after all these years....

Mike. :?

User avatar
trawglodyte
Posts: 257
Joined: Mon Dec 11, 2023 11:32 am
Location: my cave
Has thanked: 234 times
Been thanked: 77 times

Re: Nvidia graphics driver pet for Bookworm Pup64 10.0.3 and 10.0.4 versions only

Post by trawglodyte »

@mikewalsh

In a more general sense, I want to make it very easy for someone to get Puppy installed and working. As much as it pains me to say this, I probably agree with @dimkr that there should be some fool-proof standardized official procedure documented somewhere for this.

I'm sort of thinking of two types of people. One would be people who just want a friendly OS they can get their apps on and use instead of Windows. These people don't want to learn how to use terminal or a load of Linux stuff, just switching from Microsoft Office to Libre Office might be a struggle for them. I've heard you mention retirees and I whole-heartedly agree that we're entering an era where retirees may have even had computers in high-school and certainly have more familiarity than a decade or two ago. Even blue collar dudes getting older may take to computers as a hobby when doing outdoor activities / sports and so forth becomes less of an option for them. Puppy would be excellent for them to do that.

The other type is someone who is interested in Linux and may really take to it, even learn to code and become a hobbyist or pro developer, but that initial hurdle of getting the OS installed so they can start learning and playing should be reduced as much as possible.

But I'm of two minds on this, it's really trying, failing, doing things over 10X that has taught me what little I know, and that struggle is rewarding. I certainly don't want to discourage anyone from experimenting with every way imaginable, digging through the man pages and --help documentation, or becoming afraid to fail. We get more information from our failures than our successes and it's beautiful there's 100 different ways of doing things which may be a good way for one person and not another.

EDIT- I could be wrong, but I don't think the "drivers" in the repo are compiled for you. It is a program that compiles it on the spot. It was very confusing for me when I heard people on Puppy Linux forums say drivers are kernel-specific because in broader Linux-land we always say things like "go to nvidia website and download the driver". I think the Puppy Linux people are correct though. What you get from NVIDIA or the repo isn't technically a driver, it is a program which compiles the driver. So, if you get a 525.147.05 .run from NVIDIA, you can use that on any 64-bit Linux OS no matter what kernel and it will build the driver for you (assuming you have all the proper dev and compiler stuff it wants, and that the compiler that made your kernel matches the compiler installed with your OS, and you have nouveau disabled, and whatever else it nit-picks you about before it will run). Judging by the output from "apt install nvidia-driver" in terminal it does much the same thing. I should note here, since I am leaving this message on BookwormPup64. I don't think you want to try apt install nvidia-driver on BookwormPup64. The way BookwormPup64 interacts with the repository is different from some Linux distros. I mean, try at your own risk I guess.

low-bar learner

Post Reply

Return to “BookwormPup”