Ubuntu – Does Ubuntu contain Non-free kernel blobs and other non-free system components

canonicaldistro-recommendationkernelopen sourceproprietary

I heard Richard Stallman say that Ubuntu contains non-free blobs. Why does it have such blobs and what functions do these non-free blobs and system components do that free software can't? Does Canonical include these to keep control of Ubuntu project?

Are there any distros that don't include such non-free firmware blobs by default?

Best Answer

Stallman is correct. The Linux kernel includes several pieces of nonfree firmware for peripheral devices. This firmware is not stored on the device; it must be copied to the device every time it boots. Without the "blobs," the device can't be used. The advantage of downloading firmware to the device is that it allows updating the device by simply updating the firmware on the computer.

The problem with these "blobs" is that they are just that--a chunk of binary distributed by the manufacturer. The knowledge to run the devices is often kept proprietary. Richard Stallman and other free software advocates object to this because they are not provided the source code used to create the binaries. Most distributions, including the official Linux kernel, still ship these blobs because they vastly improve compatibility with devices (there's not an open alternative to them), and because it's "just" firmware.

(Side note: some people note that if you advocate for open firmware then you're only a couple steps away from advocating for open HDL diagrams for FPGAs, which would compromise companies' hardware intellectual property. However, note that firmware can still be malicious; for example, cellular modem firmware has unrestricted network access and pretty broad access to the system as well. That's one justification for the absolutist stance of "no non-free software.")

There are many distros that create "truly libre" Linux distributions. One of the more popular ones is called Trisquel. They're based on Ubuntu, and have a thorough deblobbing process. The FSF uses this distro when they want to hand out Live CDs. The one that I last heard of Stallman using is called GNewSense; it's based on Ubuntu and Debian. Anything that the FSF endorses will be totally blob-free.