Best linux destro

Not true:

Once again, try Bodhi. It’s based on Ubuntu, so you can install it’s software, like I said.

Er - just as a random guess, maybe the module is already loaded? Just check if your net is up - ping something or something…

Btw, where are you geographically?

Was going to suggest the same thing.

Kumaran, have you restarted your PC and checked if you can get online?

Hey - what’s this “DKMS” thing, Platon?? -scratching head- …Never heard of it :slight_smile:

@Kumaran_sip , You try Ubuntu or Ubuntu based distro in a Live session, and you see if it detects all your hardware. If that is so, then you install and use that Linux distribution.

It’s for generating kernel modules which are not directly supported by the kernel, typically used for proprietary modules like NVidia’s.

By “generating” you mean compiling from source? How, exactly? Where does it get the source FROM?

Well it could be from source, but I dare say that generally it’s used for a proprietary kernel module (like NVidia’s), given that if it’s open source, it’s very likely already included in the Linux kernel (a notable exception would be ZFS due to license incompability).

So since NVidia’s driver is proprietary and can’t be shipped within Linux, they (NVidia) need to have a driver which can be built against the many different Linux kernel versions being used out in the wild.

NVidia’s solution to this is a ‘kernel interface layer’ which needs to be compiled specifically against each kernel. This is done through DKMS (Dynamic Kernel Module Support).

Typically as a user you don’t need to involve DKMS when you use the nvidia proprietary driver supplied by your distro packager since your distro maintainers will have built their NVidia package against the Linux kernel they ship already.

However there are exceptions, for example I use the Arch Linux ‘Zen’ kernel supplied as an alternative by the Arch distro, if I used the standard kernel supplied by Arch I would just use the Arch ‘nvidia’ package, however since I use a custom kernel, I need the ‘nvidia-dkms’ package, so that it can compile the NVidia ‘kernel interface layer’ against this custom kernel.

This is done automatically, but takes a bit of time, which I could avoid if I stuck to the standard kernel/nvidia package.

This became a bit longwinded, but hopefully you get the gist.

Aah OK, so this “DKMS” in obviously not like, a regular “insmod” kind of thing then?

Wow! Thanks! :slight_smile: You sound like a guru! Are you a contributor TO the kernel or something? :slight_smile:

No, insmod is for manually loading kernel modules which have already been compiled directly against the kernel you are using (though these modules are typically loaded automatically).

Anyway you’re welcome, hope I cleared things up more than I made them seem more complex :slight_smile:

To clarify the role of insmod:

Say that you’ve got a USB-connected device – say, a nice graphics tablet – that you use occasionally. This device needs a particular “device driver” (kernel component …) to allow Linux to recognize it. But you probably are using a generic kernel – not one that you custom-compiled. So, when you actually plug in this device, how does Linux prepare to use it?

Answer: a nifty facility known as hotplug detects that you plugged a new device in, queries the device to find out what sort of device it is, and discovers what loadable kernel module is needed to provide support for it. It then issues insmod, which causes this module to be loaded and to become(!) part of the running Linux kernel. (When you unplug the device, the process is reversed.)

(This is not the only application of insmod … various things also happen while the system is starting up.)

Now, back to your original question of “which distro?” I would simply answer: “pick one you like.” The actual “Linux kernel and set of subsystems” that they offer is more-or-less the same, but is presented in different ways. (Red Hat, Inc., for example, will undertake to support your system for you, in exchange for a subscription fee.)

If it were me, I’d suggest that you grab a copy of VirtualBox, an absolutely-free “virtual machine monitor” that happens to be backed by what is probably the biggest software company in the world, and “just give it a go.” It runs on everything, it’s easy to use and it’s rock-solid. Therefore, just grab a distro from somewhere, install it on a virtual machine, and start kicking the tires. :slight_smile: You don’t have to touch anything(!) about the host system in order to be able to do this, and you can have as many virtual machines as you please, although you probably won’t be able to run them at the same time. (Now, “what you ultimately decide to do ‘in production’” now becomes a question for another day … which you can now decide at your leisure.)

I’m curious - why use the word “against”? Surely you mean “for”?

No no, it is indeed worded that way. You say we build/ compile against something. Think about it like the compiler compares the needs of the program against its environment.
That’s the reason why sometimes when someone built a software against a library not installed on your system and not statically links it, you can’t run the program.

Kinda makes it seem like the module and the kernel are FIGHTING with each other… :slight_smile: