this post was submitted on 05 Aug 2024
125 points (97.0% liked)

Linux

48067 readers
701 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

My laptop is an MSI Sword 15 A11UD. But I'm really looking for a program that analyses and projects problem areas and supported/unsupported hardware

all 35 comments
sorted by: hot top controversial new old
[–] [email protected] 98 points 3 months ago* (last edited 3 months ago) (3 children)

There is a website to check which hardware is supported (on which distro). You can look up your laptop there, but beware that it is crowdsourced, so there might have been tinkering involved before submitting the results or the results may be outdated.

Click on "probe your computer" then check the results to see what your current setup supports.

https://linux-hardware.org/

[–] [email protected] 30 points 3 months ago

Of course Linux has something helpful like this! I freakin' adore Linux!

[–] [email protected] 4 points 3 months ago

This is also super useful for people deciding what to buy, when the vendor would obviously not be keen to let you plug a USB into their device and boot into the scary Linux

[–] [email protected] 4 points 3 months ago

That is pretty sweet. I start up my docker service, run the docker command and ctrl-click the link it pops up in Konsole, and voila! I see exactly what I noticed in my system, mainly that the RGB bullshit doesn't work which hurts my feelings not at all.

[–] [email protected] 34 points 3 months ago (2 children)

you could also just boot to a live distro and test your hardware. id recommend mint

[–] [email protected] 7 points 3 months ago* (last edited 3 months ago)

This was my first thought too but I think OP is more focused on those small things that only become evident after a couple weeks or even a month, after you've already invested a bunch of time and energy getting everything running the way you need it

[–] [email protected] 4 points 3 months ago

Second this idea. I did exactly this and found out that MX Linux's default DE config doesn't work correctly OotB for my setup.

[–] [email protected] 24 points 3 months ago

Yes, it's called Linux. Just boot any live usb and you'll see.

I get what you are asking: Why try hundred distros, just tell me the one that works, but I'm not aware of any such tool. If an open-source driver exists the kernel is really good at auto-detecting everything and make it work.

[–] [email protected] 23 points 3 months ago* (last edited 3 months ago) (1 children)

a quick and dirty way to find out if your hardware is supported is to try out a live usb distributions that runs entirely off of a usb stick and never makes any permanent changes to your system.

it will run MUCH slower than a regular installation; but if you see all of your hardware and drivers enumerated in lspci; you'll know that it works out of the box.

you should know that this limits you to the distros that have live usb images only; but if you go with mainstream debian, fedora, arch, etc. you'll instantly know that downstream distro's are capable of supporting with that hardware with that version of the mainstream distribution that they're forked from (eg ubuntu from debian; manjaro from arch; suse from redhat; etc.)

i used this method extensively when i was new to linux and distro hopped a lot; it taught me a lot when i first started out.

[–] [email protected] 8 points 3 months ago (1 children)

I find quite often that the Live version of a distro will work perfectly, but after install some hardware won't work anymore.

[–] [email protected] 10 points 3 months ago (2 children)

yes, that will happen.

the live distro's come included with a lot of preloaded driver/firmware that is not included with a regular installation for a myriad of reasons; but you can use lspci and lsmod from the live environment to identify the proper software you need to add to your regular installation to get that hardware working.

[–] [email protected] 4 points 3 months ago* (last edited 3 months ago) (1 children)

It's just weird that after install it can't detect my hardware and pull the drivers it needs like windows does.

[–] [email protected] 9 points 3 months ago

Sometimes it’s an ideological issue. Some distributions don’t ship nonfree drivers, some do, but require you to manually install them, and some have trouble making up their mind. This last is where you get live cds that automatically load the drivers needed for your hardware, but when you actually install, things aren’t working anymore.

[–] [email protected] 1 points 3 months ago* (last edited 3 months ago) (1 children)

Thank you, that's useful info, I didn't know about this. Could you be so kind to share some link, or say something more, about lspci and lsmod and how to proceed from them to identifying which drivers one should install? Cheers!

[–] [email protected] 2 points 3 months ago* (last edited 3 months ago) (2 children)

here's an example using my wifi card on my laptop; here i use lscpi and i've copy/pasted the stanza that pertains to the wifi card:

me@laptop:~$ lspci -v
[REMOVED]
00:14.3 Network controller: Intel Corporation Alder Lake-P PCH CNVi WiFi (rev 01)
        DeviceName: Onboard - Ethernet
        Subsystem: Intel Corporation Dual Band Wi-Fi 6(802.11ax) AX201 160MHz 2x2 [Harrison Peak]
        Flags: bus master, fast devsel, latency 0, IRQ 16, IOMMU group 9
        Memory at 601d18c000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: <access denied>
        Kernel driver in use: iwlwifi
        Kernel modules: iwlwifi
[REMOVED]

i can see that the driver name is iwlwifi and i can use that to look for related modules using lsmod:

me@laptop:~$ lsmod | grep iwlwifi
iwlwifi               598016  1 iwlmvm
cfg80211             1318912  3 iwlmvm,iwlwifi,mac80211

now i know all of the module names and i can either google them to learn how to install them or i can continue further with the package manager on the installation to further backwards engineer it. (googling is faster).

as i mentioned earlier there are caveats: downstream distros tend to use a slightly older version of their base distros so you also need to make sure that you're using the same version of the driver and kernel and adjust accordingly if it doesn't start working right away.

[–] [email protected] 2 points 3 months ago

Also do "dmesg | grep -i firmware" to see what firmware loads the kernel squirted into the various device controllers.

[–] [email protected] 1 points 3 months ago

Fantastic, this is extremely helpful, thank you! 🥇 I wanted to test a couple of distros for my Thinkpad, and I'll make sure to check and save this kind of information from live USBs.

[–] [email protected] 17 points 3 months ago (1 children)

@Melatonin
I installed a linux onto an USB stick
installed Hw-probe. Created a little script that saved the result to disk. and opened the browser to the result page.

And went to a Store:

  1. Insert USB Stick
  2. Press SHIFT on a Windows PC
  3. Than do a Power off on Windows
  4. chose reboot to stick
  5. connect smart-phone with thetering
  6. run HW-Probe script

I was allowed to do that on every store i visited. Mostly I asked if the local staff would like see a running linux.

That way I choosed my current laptop

[–] [email protected] 8 points 3 months ago

Seems like a pretty slick way to drop some malware payloads, may I ask if this was recently?

[–] [email protected] 12 points 3 months ago (1 children)

All Linux distros are Linux based. There isn't that much variation. The only things that could change support are:

  • kernel version

  • Nvidia kernel modules

  • Ubuntu kernel

[–] [email protected] 1 points 3 months ago* (last edited 3 months ago)

I will say that depending on a distro, there may be more growing pains than others. Like Elementary OS vs MInt vs PopOS

Edit: elementary being behind on versioning, and popOS being the most versatile out of the box.

[–] [email protected] 7 points 3 months ago* (last edited 3 months ago)

What works/doesn't work is mostly down to what version of the kernel a distro ships. Most hardware drivers will be compiled into the kernel, or if not, shipped with the distro as kernel modules which get loaded as needed. Either way, the kernel version determines what is and isn't possible on a given install.

DualSense 5 support for example was introduced in Linux Kernel 5.15, IIRC.

Most distros ship a relatively up-to-date kernel, and hence, the actual hardware support is essentially identical. When it isn't, it's down to excluded/included kernel modules, which is usually something you can change if needed.

Others have already commented on the actual ways to find out what will and won't work, but in general, a newer Linux kernel means better hardware support.

If you try something, and some things don't work, you'll either have to figure out how to install and load the appropriate kernel module to get the appropriate driver working, or simply swap out the whole kernel for a newer version.

This is tricky on some installs, like Ubuntu based distros, very impractical on immutable systems, and super easy on distros like arch.

The real complications come when configuring things that Linux doesn't just automatically figure out sometimes. Fingerprint sensors, fan curves... If that stuff isn't a known and implemented standard on a given device, getting it to work isn't a matter of finding the right distro or kernel version.

[–] [email protected] 6 points 3 months ago (1 children)
[–] [email protected] 2 points 3 months ago (3 children)

I just looked at pop os, doesn't seem like a bad option, what are the downvotes about?

I do have Nvidia btw, does that=problems?

[–] [email protected] 3 points 3 months ago

Generally, yes. It's not nearly as bad as say 2015 but NVidia has a long standing history of being difficult to deal with, and users having to make constant compromises. For instance, NVidia hasn't had properly working Wayland support on most environments until recently due to the awful flickering that many users experienced. Things like power saving, dual GPU handoff, general OpenGL performance, frame stability and tearing (X.Org), etc. have been either historical and/or current pain points for using NVidia GPUs vs AMD or Intel GPUs.

[–] [email protected] 2 points 3 months ago (1 children)

Managing drivers for nvidia is a constant headache for the nvidia linux community. Pop os devs manage them for you (with a QA team) with pop os so your system never breaks from a bad nvidia update

Downvotes probably from snarky "arch btw" users that like to micromanage their system

[–] [email protected] -1 points 3 months ago

Downvotes probably from snarky “arch btw” users that like to micromanage their system

Wtf. This is actually snarky for absolutely no reason. It could be anyone and you just pick out of the blue arch. And no, I don't use Arch directly, but that has nothing to do with it (I would comment this if you mentioned any other distro too).

[–] [email protected] 1 points 3 months ago

Not anymore. As of driver version 555 Nvidia works just as well as anything.

[–] [email protected] 5 points 3 months ago

If the distro just boots into a live session, you can get a pretty good idea there. They're all working off of roughly the same kernel and driver and firmware sets, give or take some distros being a year out of date. The slower distros have something like "backports" or "enablement kernels" to still give you the option of pulling in newer stuff.

The graphics situation (compositor and mesa and kernel drivers and userland driver libraries) is more complicated. Especially with Nvidia. Your distro choice makes a much bigger impact there.

[–] [email protected] 4 points 3 months ago* (last edited 3 months ago)

More consistent way would be to just check the Linux kernel version. Most distros are going to be running the default kernel with everything enabled, so you shouldn't need to worry about specific kernel options being disabled, unless you're using something really esoteric and not meant for general desktop usage. If you need 3rd party (nvidia) drivers, nouveau works out of the box, and should at least get you to the point you can install the proprietary driver, should you wish to taint your kernel in that way :'(

[–] [email protected] 4 points 3 months ago

Second hwtest suite.

Distros just ship packages, some rare drivers may be missing, distros have different versions of drivers, some are external and packagers just take proprietary code and make it compatible, like with NVIDIA on Fedora.

[–] [email protected] 3 points 3 months ago

FAFO is always the ol' reliable

live distro usbs will help with that as others said.

[–] [email protected] 2 points 3 months ago

Linux has live ISOs. Flash one on a USB stick, boot off of it and mess around. Generally, these days, everything except the fingerprint sensor/facial recognition thing and sometimes wifi adapter will work out of the box.

[–] [email protected] -2 points 3 months ago

Yes, such a program is called an installer. /s

Sorry, I don't have an answer for you that's more helpful than the rest of the comments here, they all did well. I second booting a live system.