Is it not a good idea (if not standard protocol already) to send Linux firmware update based on CPU artitecture like 64 bit or 32 bit?

[Disclaimer: This guy just wants to know things. Ultra noob incoming.]

When I was updating Fedora 34, I saw linux-firmware package being rolled out as noarch architecture instead of x86_64 unlike what I used to see in Ubuntu. Is this normal?

Does it make no difference whether if the package is supplied in noarch or based on architecture?
ELI5! Does Ubuntu have some sort of upper hand in supplying packages with the right architecture?

Second question

Is it possible that I’m getting firmware updates of that hardware which I don’t even have in my machine? To what degree, Fedora “recognizes” the user hardware components to avoid supplying firmware which is pointless and can create problems? Because I’m seeing a long list of firmware updates, I doubt if they will be any useful for me or not.

1 Like

noarch means ‘no particular architecture’ or ‘all architectures’.

if the firmware images are not archicture-sensitive, they are distributed as noarch. It’s just a name, in Ubuntu they seem to call it all.


Yes, Linux generally ships with a lot of drivers, even for hardware that you don’t have installed on your machine. It doesn’t matter because the modules are only loaded once you need them. THe advantage is you can turn off your machine, swap out a lot of hardware, turn on the machine and it will just work, because the kernel has all the drivers locally.
Example: Swap your ethernet and wifi card and you can still go online without doing anything (provided it’s not some weird Broadcom card that requires special drivers)


If a package’s content is not architecture dependent, they are built as noarch, i.e. programs written in scripting languages like Bash, Perl, Python… Since firmware is loaded into its corresponding device while booting (i.e. Wi-Fi and Ethernet cards) and does not run on the CPU, they are architecture independent and built as a noarch package as well.


Doesn’t that increase the memory usage unnecessarily?

OMG. Checkmate.

Installing the firmware does not use memory. It uses (a small amount of) drive storage space. If used the firmware is loaded but not unless the hardware needing it is available.


Thanks, everyone for replaying.
I now understand something about packages are rolled out.